You will need to have a Moodle instance setup and running to use SMS. Please see the Moodle website for details on installing and setting up Moodle if you don't already have a functioning instance. Once you have Moodle installed, follow the instructions below to setup SMS integration.

  1. Login to your Moodle installation as a site-wide admin

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/7246e656-a2ed-41a5-b70a-b33d8e1ec502/moodleconfig01.png

  1. Go to Site administration -> Plugins -> Authentication -> Manual accounts in the side menu. Change the "Email address" field to "Locked" and save. This disallows users to change their own email and is required for proper SMS account syncing, so do not skip this step.

Note: If you use additional authentication mechanisms, such as Email-based self-registration, you must also ensure the email address is "Locked" in that mechanism's settings as well. In the case of a read-only authorization mechanism, such as LDAP, you must externally guarantee user emails will not change.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b8df7116-f61c-4a17-b4a1-d458f3d9ea0c/moodleconfig02.png

  1. Go to Site administration -> Plugins -> Web Services -> Overview in the side menu. This provides a general overview of the steps required to integrate Moodle with an SMS installation.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/2ab3d71d-a0cc-489a-bbb9-1ceb83a82ea4/moodleconfig03.png

  1. Click on the "Enable Web Services" link, then enable Web Services and save.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/97110292-070c-4765-8a3b-d39ede1dd164/moodleconfig04.png

  1. Return to the Overview page, then click on "Enable Protocols". Enable the "REST protocol" and save.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a8c1108c-c17d-4fdb-a246-136153986325/moodleconfig05.png

  1. Return to the Overview page, then click on "Create a specific user". You will need to create an SMS Moodle account at this time. The specific details of the account, such as the email, first/last name, username, and password are not important. It is very important however, for security reasons, to choose an email that you own and a secure password. You will not actually need to login to this account at any point.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/05d9da70-f9dd-4601-970e-594198c4e5c8/moodleconfig06.png

  1. Go to Site administration -> Users -> Permissions -> Define roles in the side menu. At this time you will create an SMS role for the SMS user. Click on "Add a new role". Do not specify a role, archetype, or role present. Instead, just click "Continue".

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/f0ca01ef-ebcf-478a-a07d-84189a164238/moodleconfig07.png

  1. On the next page, input a name for the role. Under the "Context types where this role may be assigned" section, select "System". You must also select "allow" for the following 21 permissions: