Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

We discuss in this page This page provide details on what data is collected, and how is then stored, exposed and transmitted between the chatbot user, the chatbot app and Moodle.

...

Similarly, user’s inputs are posted by the communication service provider into the Chatbot plugin, which are followed by the chatbot prompts that are send via the security protocol dictated by the communication service provider.

Info

The current Communication Service Provider is Twilio

Data in Transit

Data transmitted between the Moodle API and the Chatbot app, as well as data Moodle Chatbot App communicates with two external tools:

  • Moodle Platform.

  • Communication service provider (twilio).

Moodle Platform: Moodle Chatbot App relies on using Moodle API to display information such as course details and activity details. Moodle API requires access via tokens. This enables a user to use specified functions to work outside moodle without any sharing credentials. For more information, check Moodle’s documentation: https://docs.moodle.org/402/en/Using_web_services

Communication service provider (Twilio): Moodle Chatbot App requires a connection to receive/send user’s input and Bot messages. This is done by using Twilio’s webhooks to trigger all featured functionalities. Data exchanged with the communication service provider is always transferred as encrypted, via https (port 443). This communication service provider secures its information by checking both webhook provided to Twilio and webhook used in Moodle Chatbot App. If both URLs match, then the data is procesed. For more information, check Twilio’s documentation: https://www.twilio.com/docs/usage/webhooks/webhooks-security

Data at rest

...

Moodle Plugin: the plugin creates two custom tables in Moodle that are used to store the session log and an app log.

  • Session log: status of the conversation by user. Allows users to always come back to continue the chatbot conversation in the same paints after a session expires.

  • App log: log of all traffic, showing all user input as well as content sent to the user.

Chatbot app: the app requires to store information about user last step/input in the chat. Chatbot App stores this information in the Session log table created by Moodle Plugin.