Plugin name: Ejection Seat Limit (local_ejectionseat_limit)
Latest version: 4.1.0
Supports: Moodle Workplace 4.1, 4.2, 4.3, 4.4
Non-Core Dependencies: None
Introduction
Power Tools are plugins based on custom solutions for Moodle LMS and Workplace that are available in a subscription service that ensures regular maintenance and upgrade support. If you have any questions or would like to request a Power Tools subscription, please reach out in the Help Desk.
Usage
The Ejection Seat Limit (local_ejectionseat_limit) plugin allows limits to be set on the number of active participants in a course at one time when cohorts are used. A ‘maximum duration’ is set to limit the amount of time a user can be inactive within the course before their session is ended. Course sessions are created when a user first enters a course. Every time a user interacts with a resource or activity while in the course, the session is renewed. This does not affect a user’s ability to log into the site or their maximum time allowed in the course. It only dictates how long a user can sit idle on a page in the course. Users who attempt to access a course that is full are redirected to an page notifying them that there are not any available session for the course.
This plugin implements a limit on the number of concurrent users in a given cohort/course combination. Admins set up limits in the plugin configuration page and users who attempt to login to a course that is currently full are redirected to an error page.
Key concepts
Manage Ejectionseat Settings
Begin by navigating to Site Admin > Plugins > Local > Manage ejectionseat settings.
Adjust the ejectionseat settings as if necessary.
Unlimited access for unrestricted courses determines if users can access a course
Leaving the box unchecked (default option) prevents any users other than admins and teachers from accessing the course.
Checking the “unlimited access” option allows users into any course that does not have restrictions set up.
Limits per page defines the number of limits (rows) shown per page in the “manage restrictions” report page.
Manage Ejectionseat Restrictions and Settings
Navigate to Site Admin > Plugins > Local > Manage ejectionseat restrictions.
To add a new restriction, click on the blue “Add” button in the top left.
A modal window will appear in which the restriction options can be set.
Select the appropriate Cohort and Course from the respective drop-down menus.
In the Maximum duration field, enter the maximum amount of time a session should remain active once a user interacts with a page. (If a user is inactive for longer than the set maximum duration and a new user wants to access the course, the ejectionseat plugin will revoke the inactive user’s session and allow a new user to enroll. The inactive user will need to wait for another seat to open up.)
Enter the maximum number of allowed users (number of “seats”) in the User limit field.
If a custom redirect message should be shown for this course/cohort combo, enter that message in the Custom message field. If a message is not entered, the default message “No available sessions for course titled “ will be used.
Select the Save changes button.
The Ejection seat settings page will be updated to reflect the new restriction. (The Limits per page restriction that was set in the Manage ejectionseat settings determines the maximum number of rows that will appear. If not edited the default is 10.)
Restrictions can be edited or deleted using the respective buttons.
When a user attempts to access a course that is full, they will be redirected to an “access restricted” page. The user can try again to access the course at any time. Once another session has expired, the new user will be able to log in to the course as normal.
Concurrent users report
The “concurrent users report” page will allow admins to see a summary of each cohort/course combo and the current number of active sessions as well as the maximum duration and limit.
Navigate to Site Admin > Plugins > Local > Concurrent users report.
This report is automatically updated every 30 seconds but can be manually refreshed by clicking the Refresh button. The Status field displays whether a course is available or full.
Each cohort/course combination is a link and if clicked it will display a new table with details about each session active in that course.
Users in this course can be manually ejected by clicking on the Eject button associated with their name in the Actions column.