Session Booking

From MoodleDocs
Revision as of 20:04, 19 October 2021 by Mustafa Hajjar (talk | contribs)
Session Booking
Type Local module
Set N/A
Downloads Enter the plugins directory link
Issues Enter the bug tracker URL
Discussion Enter the link to the forum or discussion thread
Maintainer(s) Mustafa Hajjar

Session Booking is a plugin that allows aviation training organizations (ATO) manage instructor-led training sessions. The plugin allows student pilots to post their availability for instructor-led sessions, and instructors to book sessions against student availability. It provides a workflow that starts with students posting availability time slots, instructors booking against student posted time slots, and finally instructors grading assignments associated with joint session.

Session booking workflow


The plugin also allows course managers in assigning students to specific instructors, and monitor instructor participation in instructor-led sessions. In addition, student sessions are prioritized based on a weighted scoring mechanism based on four variables: session recency, lesson completion, course activity, and availability posting. Also, priority can be configured to give more weight to any of the four variables in the plugin settings.

The module was created and is currently maintained by Mustafa Hajjar.

<<embeded youtube video>>

Installation

Moodle plugins install

1. Download SessionBooking zip

2. Site administration > Plugins > Install plugins

3. Drop or upload the zip file

CLI install

$ cd [path-to-moodle]\local
$ mkdir booking
$ cd booking
$ git clone https://github.com/zcodemonkeyz/SessionBooking.git

Features

The following are the highlights and key features of Session Booking:

  • Allows instructors to book students based on their recorded availability
  • Allows students to record and manage their weekly availability for sessions
  • Allows course managers in assigning students to instructors
  • Tracks instructor participation in conducting student sessions
  • Tracks flight data and tracks student pilot log book entries
  • Manages email communication between students and instructors
  • Provides a dashboard for instructors and course administrators to visualize student progression throughout the course
  • Provides a custom student prioritization mechanism for booking sessions based on student's session recency, course activity, availability posting, and lesson completion

Availability posting

availability.png

Students can post their availability on a weekly calendar view once a preset wait period had passed after the last conducted session. The calendar view can be accessed from the left navigation panel under the 'My availability' link. The navigation panel can be displayed by clicking the 'hamburger' icon [ Ξ ] to toggle the drawer.

Students can copy postings of a week and paste them into a different week when switching between differents weeks, and can also clear any posting for the active week being viewed (don't forget to [Save] prior to navigating to a different week).

Availability posting


The local time can be set in the User Profile page under timezone to reflect the correct student timezone.

Note: postings are only visible to instructors when the current lesson and all past lessons have been completed.

Booking sessions

Instructors can book against student posted availability from the left navigation menu under the 'Session booking' link. The view lists all active students, their session priority, booking & grading actions, and course progression for each student. Completed and graded sessions are marked in blue, tentatively booked sessions prior to student confirmation are marked in orange, and confirmed bookings are marked in green.

Session booking
Session booking

In active 'Book' button indicates that the student has not completed pending lessons for the upcoming exercise (assignment). Once the student completes current and all past lessons, the 'Book' will become active.

Pilot logbook

Upon completion of an instructor-led session, the instructor adds the flight time duration, session duration, and potentially solo flight time duration when applicable. Students can access their logbook from the left navigation panel under the 'My logbook' link. The view provides a summary of the total flight times, session times, and solo flight times. For each session a more detailed log data is displayed including flight date, flight durations, aircraft type, pilot callsign, the primary and secondary pilot in command, PIREP number, and finally departure and arrival airport ICAO code.

Student logbook
Student logbook

Setup

Session booking has multiple settings that can be set to configure the plugin's behavior. There are two kinds of settings for Session booking, one set that affects the plugin behavior that is only accessible to site administrators 'Plugin settings', and the other set is specific to each course and accessible to course managers 'Course settings'.

  • First session time: indicates the starting hour for availability posting.
  • Last session time: indicates the ending hour for availability posting.
  • Availability posting weeks lookahead: indicates how many weeks ahead a student can post.
  • Wait period: indicates the standard wait period after last session and for on-hold, suspension, and instructor overdue session calculation.
  • Recency prioritization: is a multiplier for weighing recency in prioritization score.
  • Slot count prioritization: is a multiplier for weighing availability posting count in prioritization score
  • Course activity prioritization: is a multiplier for weighing course activity in prioritization score
  • Lesson completion prioritization: is a multiplier for weighing lesson completion in prioritization score

How to report a bug

Capabilities

Roles and capabilities are supported since the version for Moodle 1.9. Beta User role can be defined to soft-launch the plugin.

Feature ideas and requests

Note: This section will be moved to the tracker feature requests.