Reports: Engagement analytics

Maintained by Picture of Adam Olley Adam Olley, Picture of Ashley Holman Ashley Holman
The Engagement Analytics block provides information about student progress against a range of indicators. As the name suggests the block provides feedback on the level of "engagement" of a student, in this plugin "engagement" refers to activities which have been identified by current research to have an impact on student success in an online course.
158 sites
18 fans

Moodle Engagement Analytics for Moodle 2


This plugin is useless on its own, you should also get the mod and block plugins that are part of the set.


The Engagement Analytics block provides information about student progress against a range of indicators. As the name suggests the block provides feedback on the level of "engagement" of a student, in this plugin "engagement" refers to activities which have been identified by current research to have an impact on student success in an online course. The plugin was developed as part of a NetSpot Innovation Fund project by Monash University (Project manager: Dr Phillip Dawson), with code by NetSpot developers (Ashley Holman and Adam Olley).

From the project plan: "We intend to implement a block that teachers can add to their Moodle course that will provide them with a quick graphical snapshot of which students are at risk." (Dr Phillip Dawson)

It is important to note that the purpose of the plugin is to provide teaching with information only, it does not automatically take any action based on the indicators eg NO email or notification is sent to students automatically. If desired the teacher would follow up on the information themselves, based on what they know about the student and their other communications.


Code: Adam Olley <>
Code: Ashley Holman <>
Concept: Phillip Dawson <>
Indicator Algorithms: Phillip Dawson <>


This plugin is part of set Engagement Analytics.


Picture of Adam Olley
Adam Olley (Lead maintainer): Developer
Picture of Ashley Holman
Ashley Holman: Developer
Picture of Damien Bezborodov
Damien Bezborodov: Developer
Picture of Danny Liu
Danny Liu: Developer
Picture of Phillip Dawson
Phillip Dawson: Concept & Algorithms
Picture of Corey Wallis
Corey Wallis: Developer
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Ruben Cancho
    Fri, 21 Aug 2015, 10:32 PM
    Ok, I found that git version is up to date!
  • Picture of Ruben Cancho
    Sat, 22 Aug 2015, 4:54 AM
    Ok, now I've got a problem in the "Manage indicators" page:

    Fatal error: Call to undefined function report_engagement_is_core_indicator() in /var/www/moodle/report/engagement/renderer.php on line 158

    My plugin versions (obtained all of them from git today) are:
    mod: 2015072700
    block: 2014042900
    report: 2015072700

    Any hints?
  • Picture of Ruben Cancho
    Sat, 22 Aug 2015, 5:26 AM
    I commented the function call (seems to be defined in lib.php but not called, anyway it's only decorative) and now the page renders but there is no config option. Is this an unfinished feature?
  • Picture of Luiz F. C. Martins
    Mon, 31 Aug 2015, 10:11 PM
    Hi all,

    Do you have any plans to release a new version supporting Moodle 2.8 and 2.9?
    Thank you.
  • Picture of Danny Liu
    Tue, 16 Feb 2016, 3:54 AM
    This fork has been tested on 2.7, 2.9, and 3.0, and has some additional functionality:
  • Picture of Mark Sharp
    Tue, 16 Feb 2016, 6:07 PM
    Hi Danny, I've been playing with your fork, I can also confirm it does work in M3.0, except for a small issue I had because I'm using PHP7, which you may want to fix.

    In /report/engagement/locallib.php you have some `break;` statements outside of loops; they're not allowed in PHP7. Lines 304 & 309.
  • Picture of Danny Liu
    Thu, 14 Apr 2016, 4:52 PM
    Thanks Mark; have fixed up these stray breaks.
  • Picture of Ewout ter Haar
    Sun, 22 May 2016, 12:49 AM
    Hello Danny,

    I installed your fork on our test server (M2.9) and it installed just fine. But I can't open any report in any course, because the SQL query
    SELECT CONCAT(c.userid, '_', c.objectid) AS user_objectid, COUNT(*) AS countnumber
    FROM (SELECT id, userid, timecreated AS time, courseid AS course, CAST(objectid AS char(64)) AS objectid
    FROM mdl_logstore_standard_log
    WHERE target = 'discussion'
    AND action = 'viewed' UNION SELECT id, userid, time, course, CAST(info AS char(64)) AS objectid
    FROM mdl_log
    WHERE module = 'forum'
    AND action = 'view discussion') c
    WHERE c.course = '6603'
    AND c.time >= '1438570800'
    AND c.time <= '1463848204'
    GROUP BY user_objectid
    never returns, not even for courses with a small number of students (80). Do I read did query correct and does the sub-select return all of the logs with views of forums in all of Moodle? If that's the case, this query will not work with large installations, right?
  • Picture of Danny Liu
    Mon, 23 May 2016, 1:05 PM
    Hi Ewout,

    Thanks for letting me know about this oversight. I've fixed it up in the master branch in my fork (added course into the where clauses). Before this fix, we were successfully running the query (and the plugin) in courses with over 1000 students and a log table that had millions of rows. The fix should hopefully speed things up - let me know how you go. If the query isn't returning for even a small number of students, there might be something else amiss?
  • Picture of Ewout ter Haar
    Tue, 7 Jun 2016, 2:48 AM
    Hi Danny, I think the extra where clause did the trick. Thanks!
  • Picture of virginia alonso
    Wed, 5 Oct 2016, 12:23 PM
    Hi, does the plugin work on 3.1? I tried installing it but the dependencies aren't in the right syntax I believe... Let me know, thank you!
  • Picture of Caitlyn Duggan
    Fri, 31 Mar 2017, 9:45 AM
    We are using the Engagement Analytics plugin here and are getting an error when a user with the teacher role tries to edit the settings in the report at course level.

    We are on Moodle version 3.1.2. We would like teachers to be able to update the weightings in the report for their courses. However, Teacher role is getting an error: Sorry, but you do not currently have permissions to do that (Manage engagement analytics report). I have double-checked the permissions: "Manage engagement analytics report" has "Allow" set at both site and course level.

    Has anyone got any suggestions, or can you test on your install for me?
    Many thanks - Caitlyn - TAFE NSW
  • Wazza
    Mon, 28 Jan 2019, 6:41 PM
    Is this still maintained?
  • Picture of Porno Tube
    Mon, 4 Feb 2019, 11:06 PM
    i put one plugin in my site Sexo but i see the same error
  • Picture of john petroulis
    Fri, 15 Mar 2019, 8:18 PM
    Hello to everyone! I am a PhD Student in the field of Online Learning Environments. My team and I want to use "Engagement analytics" to conduct a research according the contribution of gamification techniques on engaging students increasing their participation inside a forum. What I want to ask is the fact that when I click on students' name or on "View course report" link a new empty page opens without showing me anything. Could anyone provide me with some guidelines? Thank you very much in advance!
1 2 3
Please login to post comments