Automation in Moodle

Last month I wrote a blog post about gamification and how the use of gamification plugins could be used to increase user engagement. Another way this could be achieved is through automation. We could look at automation as the removal of barriers and allow learning to happen without third-party intervention.

Moodle has recently sent out their own newsletter about automated processes in Moodle Workplace. That article is available from the link below:

Moodle Workplace is not the only instance of Moodle that contains automation. There are quite a few plugins in Moodle that allow for automation of some of the processes. In this post, I would like to share how we can use plugins in Moodle to create some automation of tasks, like course enrolment and notifications.

The plugins we will be looking at are listed below. This may not be a complete list, but it’s what we regularly use with our clients.

Enrolment Notifications

Course Notifications

Sub courses

  • Subcourse behaves as a graded activity. The grade for each student is automatically fetched from a final grade in another course. This allows course designers to organize the learning content into separate units.


Course completed enrolment

Workplace Course Certificate

Profile field-based cohort membership

Maybe the best way to explain how each of the plugins work, would be to show how we used them to create some automation in Moodle. For this example, we would like to add users to Moodle and then automatically assign the users to a course and send out notifications.

Let’s start by creating a cohort in Moodle for our new group of users.

Once we have the cohort in place, we need to create a custom profile field that will allow us to define the different types of job roles for the users. For this we will use the drop-down menu profile field and add in values for different job roles.

Now that we have that done, the first bit of automation can be applied. We will use the profile field-based plugin to automatically assign users to our cohort based on the profile field job role.

Next we need to create our course and do some configuration there. We will use the cohort sync enrolment method to automatically enroll our users into the course.

We could use either the enrol_notificationsabc plugin or the moofactory notifications plugin to send users a welcome email.

Lastly, we will also use the reengagement plugin to send out reminders to users as they progress through the course.

Let’s now look at how this all works.

We could use the bulk upload method to add our users to the site. Make sure that the profile field Job Role is one of the values defined in your list.

Once the users have been added to the site the following will happen:

  1. The Profile field-based cohort membership plugin will add the users to the correct cohort.
  2. Since the cohort is linked to a course using cohort sync, the users will be automatically enrolled into the course.
  3. The Course notifications plugin will send a Welcome email that you have composed, welcoming the users to the course.
  4. The Reengagement plugin will continually nudge the users to complete a topic or remind them if they have not been into the course to X number of days.
  5. Once the users have completed the course, the Workplace Course Certificate will automatically generate and issue the users their certificate.

Two of the plugins I have not mentioned in the above example are the Subcourse and Course completed enrolment plugin. Both of these plugins can be used to automatically assign a user to a new course on completion of the existing course. The two work in a slightly different way, but both are effective in linking multiple courses together.

The Subcourse plugin is added to a course, like an activity and allows you to link to another course based on activity completion. This activity completion can be the completion of Course A before the user has access to Course B. The important thing to note here is that it’s based on activity completion and the Subcourse is an activity in a parent course.

Course completed enrolment
This plugin is added to Course B as an enrolment method. A condition is set in the plugin specifying which course must first be completed before the user is allowed to access the course. As a bonus you can also configure a welcome message that can be sent to the users.

Ultimately the take-away from this is that certain tasks in Moodle can be automated. Be that as simple as using the cohort sync enrolment method for adding users to a course, or the Reengagement plugin to remind users to return and complete an activity.

Leave a Reply

Your email address will not be published. Required fields are marked *