Moodle plugins directory: Attendance Register | Moodle.org
Attendance Register
This is an activity module for tracking time spent by Students (or other users) in a Course or in a related group of Courses.
Online activity is automatically tracked.
Users may also (optionally) record "offline" sessions of work.
The module will show aggregate report by user, or detailed report at user's session level.
Printable versions of all reports are available.
It also supports activity completion rules by minimum time in the Course.
By defaults, it tracks only activity in the Course the instance is in.
You may change this behaviour by module instance configuration. You may track all Courses in the same Category or Courses "meta-linked" to this Course.
By default, it tracks only Student's activity.
You may choose whose activity will be tracked by modifying Role Capabilities.
By default, only Teachers, Managers and Administrator may see other report of other user's activities.
You may change this behaviory by modifying Role Capabilities.
The Module is currently translated in English and Italian.
Documentation and an FAQ (small - work in progress) are available in English only.
Note
this module is based on the idea of the old Register module for Moode 1.x, but it is not an update of this module.
You cannot upgrade or restore Register data from Moodle 1.9 using this Attendance Register module.
Please note that this module is not related to Attendance module.
Attendance Register (this module) automatically calculates time spent online in Moodle's courses, while Attendance module allow teacher to explicitly certify attendance to a specific "offline" session.
Important note about Moodle >2.7 compatibility
The newest version of this plugin supports the new logging system introduced by Moodle 2.7
The time recorded by a Register in "category" mode COULD NEVER BE the sum of time recorded by all "course" Register in the category. This is due to the way the "time online" is calculated.
I'll try to explain
The user is considered "online" for the time span between two consecutive Moodle's Log entries, if the time between these entries is less than Register's Session Timeout.
The Register mode determines Log entries to be considered:
* "category": will consider all log entries of all Courses in the Category
* "course": will consider only log entries of the Course the Register instance is in
The Register DOES NOT track if in the time between 2 considered log entries the user goes to another Course and come back (this would be terribly inefficient and costly)
For example, imagin you have courses A and B in the same Category.
You put a "course" mode Register in each of these Courses.
You put another Register, in "category" mode, in any one of these two courses.
A user logs in and goes back and forth between courses A and B quickly.
Session recorded by the "category" mode Register will be probably the most realistic
Sessions recorded by "course" mode Registers will probably overlap.
Definitely, the sum of the Sessions in the "course" mode Register will never be the Sessions of the "category" Register.
If I want to calculate the sum of total spent time of all the courses using the outcomes of "course" mode of all courses in the category should build an SQL query is that right?
Which table(s) from moodle database should I use for this query?
Is there another way to do this?
I suggest not doing this way and using a "category" Register instance for real aggregate reports.
Aggregating by SQL is possible, but the query woudn't be a simple "select" and "group by" on a table.
If you have a look at mdl_attendanceregister_* tables you should mostly be able to understand the meaning of each of them
Are you considering porting this very useful module to Moodle 2.5?
Thank you in advance.
Daniel
For anyone: I've not yet tested the module with 2.5 extensively, so it is not marked as "2.5 fully compartible".
But it doesn't mean it will not work on 2.5
I'm administrating a moodle site for a training program with 300 students enrolled in 4 categories (7 courses in each category) . Every day 70 students are online at the same time. Student's total spent time is not appearing in time but after 5 to 12 hours. Cron jobs are running every 15 min. Is there an explanation?
Thank you in advance.
George
there was a known issue delaying new sessions until next user login in some cases.
I've just released a new version that should fix this problem, delaying no more than minutes after last user activity (and next cron run, off course)
Thank u
The query triggering new session creation is rather tricky and hard to test in real world conditions
Is there any risk erase data from previous mdl_attendanceregister_* tables when I'll install the new 2013070601 version?
The training program ends in 3 days and depends directly on this module. I don't want to have unpleasant surprises.
The steps are:
1. Download and unpack the module in the subsubdiractory "attendance" (this is the name I gave) in the "mod" subdirectory.
2. Visit http://yoursite.com/admin to finish the installation
is that right?
It has been changed only the algorithm for triggering when a new session could be calculated.
About installation, AFAIK the subdirectory name cannot be arbitrary.
The directory name must be the internal name of the module ("attendanceregister" in this case) or weird things could happen.
When you download the zip from this official archive, you may see that the zip contains a correctly named directory.
You could unzip it directly in ./mod directory (if it is an Activity Module, as this one).
If you are upgrading, unzip overwriting old files.
Visiting Admin index page is required to complete the process(you could also do it by command line, but this is another story )
This will update the database schema (if required, none in this case) and update the record of the installed module's version
All this is a general rule, not related to this module only.
Alignment seems okay with the stripped down Standard but it appears themes based on bootstrap cause the php dynamic html table to misalign. (I'm not savvy enough to change the php coding on the table and this isn't a showstopper.) It's a great extension and it would be fabulous when you officially release it for 2.5 moodle that maybe you could add in some cellpadding. Again, thanks for a wonderful extension which should be part of moodle's core!
This module is my favorite place to monitor student attendance.
I look forward to the stable release for Moodle 2.5
thank you
Daniel