Admin GuidesILT & VILT Sessions

ILT & VILT Sessions

Who this guide is for: Tenant administrators and instructors who schedule and run instructor-led training — in a room (ILT) or over video (VILT).


Overview

An ILT/VILT session is a scheduled, capacity-limited event that learners attend. Sessions always live inside a course, in a session module — never standalone. That is deliberate: it means attendance counts toward course completion, certificates, and compliance reporting exactly like any other module, instead of being a second, parallel record of who was trained.

The structure is:

Course
 └── ILT / VILT Series module   ← a course can have several
      └── Series                ← a cohort: one group of learners and its dates
           ├── Session          (Tue 09:00, Room 3, capacity 12)
           └── Session          (Thu 14:00, Zoom, capacity 30)

A learner enrolled in the course picks one series per session module — for example “Morning cohort” or “Evening cohort” — and is registered for every published session in that series. The series is the “same class, different cohort” concept: a learner who cannot make the morning dates picks the evening series instead.

A course can hold more than one session module when it has genuinely different live components (for example a theory workshop and a practical assessment). Each module has its own series, and the learner picks one series in each.


Prerequisites

  • Permission to schedule sessions: Owner, Admin, or an Instructor assigned to the course (instructors are limited to their assigned courses).
  • A course draft you can edit. Session modules, series and new sessions are added in the course editor’s Modules tab, which is read-only on a published course until you choose Start new version.
  • For VILT, one of two things — a connected video account (see Zoom for VILT or Google Meet for VILT), or a meeting URL you already hold, pasted into the session’s meeting link field. With neither, creating the VILT session is refused rather than producing a session nobody can join. A manual link works fine, but carries no auto-attendance and no recording capture — see Manual meeting link below.

1 - Adding the session module to a course

  1. Open Courses, open the course, and go to the Modules tab.
  2. Add a module and choose the type ILT / VILT Series, then click Add Module.
  3. Optional: click Edit on the module row to set Completes when — Present at any session (the default) or Present at every session — then Save. See section 5.
  4. Click Manage Series on the module row to open its series panel.

2 - Creating a session series

  1. In the series panel, click + Add Series.
  2. Give it a title learners will recognise — “Forklift Safety — Morning cohort”, not “Series 1” — and an optional description.
  3. Click Create Series. An empty series holds no sessions yet.

The series is what a learner chooses; the sessions inside it are its dates. A series that learners have already picked cannot be deleted.


3 - Scheduling a session

Inside the series, click + Add Session and fill in:

FieldRequiredNotes
Session titleYesShown in the learner’s calendar invite and every reminder
Session typeYesILT (In-person) or VILT (Virtual)
Start / EndYesEntered in your browser’s local time
CapacityNoLeave blank for unlimited. Setting it enables the waitlist
InstructorNoA user picked from your organization (type at least two letters of their name). Only active users with the Instructor, Admin or Owner role are offered (custom roles are not, see below). The person you pick can run this session — see The session’s instructor below
LocationNoILT: room or address, shown in the calendar invite. Optional for VILT
Video accountVILT onlyThe connected Zoom or Google Meet account; a meeting is created for you. Default connected account uses the first one
Meeting linkVILT onlyOr paste a meeting link (optional) — a meeting URL you already hold. Supply it and no meeting is created — see below

Click Add Session. Every new session is saved as a Draft; publish it from the session’s row (see Draft vs Published).

The session also records a timezone, shown as Timezone on the session page and used for the video meeting: your own profile timezone, or the organization default (Settings → General, Owner) when your profile has none.

A description can be added later from the session page (Planned sessions → Manage → Edit), which also lets you change the title, start and end, instructor, location (ILT) and capacity.

The session’s instructor

Pick the instructor in the Instructor field when you add the session, or later from the session page (Edit). Clear the field and save to remove them. The learner calendar, the course player and attendance reports show the instructor’s name.

Naming someone gives them this session only:

They canThey cannot
Find the session under Planned sessions and open itEdit the session (title, times, place, capacity, instructor)
See the rosterPublish or cancel the session
Mark attendance (one by one or Mark All Present)Bulk enroll, remove a registration, or change a learner’s series
Show the QR check-in code for an in-person sessionAdd a recording or send an announcement
Export the session rosterEdit the course, its other sessions or the series

Being named does not make them an instructor of the course. To let an instructor manage every session of a course, assign them to the course instead (the course’s instructors). When the named instructor opens the session page, a note at the top explains what they can do there.

Sessions created before this field existed may show an instructor name entered as text. That name stays visible on the session as a label until you pick a user; picking a user replaces it for good, so clearing the instructor later leaves the session with no instructor. A text name grants no access.

Current limitation: custom roles. Only users with the built-in Instructor, Admin or Owner role can be named. A user whose teaching rights come only from a custom role is not offered and is refused on save, because the session-only limit above applies to the built-in Instructor role. Give them the Instructor role (it can be stacked on their current role) to name them.

A VILT session normally gets its link from a meeting EmbayLMS creates on a connected Zoom or Google Meet account. When you already have a meeting — your own Zoom link, Microsoft Teams, Webex, or a room your team always uses — paste it into Or paste a meeting link (optional) instead and EmbayLMS creates nothing.

You can also set or clear it later: open the session from Planned sessions, then use Manual meeting link in the Video Meeting panel. Save an address to set it, clear the field and save to remove it. Learners join a manual-link session exactly as they join any other — the link appears on the session page and in reminders.

Three things to know:

  • Absolute https:// addresses only. Anything else is rejected with a message saying so; the link is shown to every registered learner, so it has to be a real destination.
  • A meeting EmbayLMS created wins. If a session has both, learners join the created meeting and the manual link waits in reserve.
  • Automation does not apply. EmbayLMS did not create the meeting and receives no events about it, so attendance is not marked automatically and no recording is captured. You mark attendance on the roster yourself. If auto-attendance matters, connect the account instead.

Draft vs Published

A Draft session is invisible to learners. Nothing is sent. Use draft while you are still confirming a room or an instructor.

Publish — on the session’s row in the series panel, or on the session page — is the moment the session becomes real: learners who pick the series from then on are registered for it. Publish only when the date is firm — learners put it in their calendars, and moving it afterwards emails everyone.

Learners who had already picked the series before a session was published are added to it when you publish: everyone with an active enrollment who chose this series is registered (waitlisted once the session is full) and the ones who get a seat are emailed a registration confirmation with the calendar invite. A learner who had cancelled their place in that session stays out.


4 - How learners register

A learner picks a series on the course page when enrolling, and is registered for every published session in it; the course page then lists it under Your sessions. If they were enrolled without picking one (an admin enrollment, for example), the course page asks them to choose a cohort for each session module.

The course enrollment sends the usual enrollment confirmation. As soon as the learner picks a series, each session they are seated in sends a registration confirmation with its calendar invite (.ics); the reminder before the session (see section 7) and any later reschedule carry the invite again. A waitlist place sends nothing until the learner gets a seat. When the course needs approval, the invites go out when the request is approved, and the learner is also seated in any session of their series published while the request waited; a rejected request gives its seats back to the waitlist. If the organization has connected Microsoft 365, the session also appears in their Outlook calendar.

Administrators can register people on a session too: on the session page, click Bulk Enroll Learners and choose them one of two ways, then click Enroll:

  • Pick people (the default): type at least two letters of a name in Learners to enroll and choose each person from the list. You can add up to 200 people at a time; people already registered or waitlisted on this session are not offered. Remove a person with the × on their name.
  • Paste emails: enter one email address per line (or comma-separated) in Email addresses. A single address works the same way. Addresses that match no one are listed back as not found.

The people must already exist in the organization, and a manager or group admin can enroll only people in their own scope: anyone else they pick or paste is not enrolled, and the result says how many people are not in their team. An instructor can bulk enroll only on sessions of their own courses. Bulk enrollment:

  • enrolls anyone not yet in the course, with this session’s series as their cohort, so they are registered for every published session of that series (this one included), exactly as if they had picked it themselves;
  • registers people already enrolled in the course on this session;
  • places people on the waitlist once the session is full;
  • emails everyone who gets a seat a registration confirmation with the calendar invite;
  • reports, without seating them, people whose enrollment is waiting for approval or on the course waitlist, and people the course’s enrollment rules refuse (closed enrollment window, unmet prerequisites, a full course);
  • works only on a published session that has not started. On a draft session the panel says to publish the session first.

Cancelling and removing a registration

Learners cancel their own place from Training Sessions (or the session module in the course player) with Cancel registration — Leave waitlist when they only hold a waitlist place — and confirm in the dialog. They can do this until the session starts.

You remove a learner from the session’s Roster: Remove on their row (seated learners and the waitlist section alike), then confirm. Removing needs the right to manage enrollments, the session in your scope (an instructor: their own courses) and the learner in your scope (a manager: their reports). It is refused once the session has started.

Either way the learner gets a “registration cancelled” email that takes the session out of their calendar, and when the place was a seat, the first learner on the waitlist is promoted automatically (next section). Both actions are recorded on the audit log. To give a learner their place back, register them again with Bulk Enroll Learners.

Waitlists

When a session has a capacity and it fills, further registrations join the waitlist instead of failing. The learner is told up front — on a full series the course page shows Join waitlist — and afterwards sees their place: Waitlisted for [date] — position 3 of 5 on the course page, and their position in the course player.

Order is first-come: the time each learner joined the waitlist. That order is the one the roster shows and the one every promotion follows.

When a seat is freed, the first waitlisted learner is promoted automatically and emailed a registration confirmation with their calendar invite. A seat is freed when a seated learner cancels, when you remove them from the roster, when they move (or are moved) to another series, and when their enrollment request is rejected. Promotion only happens while the session has a free seat and has not started, and it is recorded on the audit log. It skips deactivated users and learners whose enrollment is still waiting for approval. Raising the capacity does not promote anyone: promote from the roster.

Promoting from the roster

The session’s Roster (open the session from Planned sessions) has a waitlist section under the seated learners, in order, with each learner’s position and when they joined. Each row has Promote:

  1. Click Promote on the learner you want to seat.
  2. If a seat is free (someone cancelled, or you raised the capacity), the learner is seated immediately and receives the registration confirmation + calendar invite — the same message an automatic promotion sends.
  3. If the session is full, the row asks for a reason and offers Promote anyway. This seats the learner over capacity on purpose — an extra chair, a manager’s approval — and the reason is recorded on the audit log with who did it.

Promotion is refused once the session has started. Promoting one learner does not reorder the rest: positions simply close up.

SituationWhat Promote does
Seats availableSeats the learner, notifies them, updates the calendar event roster
Session full, no reason givenRefused — the row asks for a reason
Session full, reason given, Promote anywaySeats over capacity; audit records forced + the reason
Session already startedRefused

Changing a learner’s series

“Picked the wrong cohort” is the most common live-training support request, so there are two ways to fix it — and only one of them needs you.

Learners move themselves from the course page (Your sessions → Change series) until the first session of their current series starts, and only while no attendance has been recorded for them in it. They see the calendar impact before confirming and get one email with a CANCEL and an invite calendar file.

You move them — with no time restriction — from either place the learner appears:

  • the course editor’s Enrollments tab: Move series on the enrollment row;
  • a session’s Roster: Move series on the learner’s row.

Both open the same dialog: pick the module (when the course has several session modules), pick the target series, optionally give a reason, review the calendar impact and confirm. What an admin move does differently:

Learner self-serviceAdmin move
Allowed after the first session startedNoYes
Allowed after attendance was recordedNoYes — the attendance record stays on its session; only the other registrations are cancelled
Reason—Optional; recorded in the audit log (series_switch_admin_override) and shown in the learner’s confirmation
Target series fullWaitlisted (LMS-328)Waitlisted, and the dialog says so before you confirm

Either way, the learner gets one confirmation email carrying two calendar files (old sessions cancelled, new sessions added), and the instructors of both series are notified that their roster changed — when a session’s instructor is a user account rather than only a typed name. The learner’s course progress is untouched — only the session dates move.


5 - Running the session and recording attendance

Attendance is what completes the module, so it is the step that matters for compliance. On the session’s Roster, the attendance column and the bulk action appear once the session has started.

MethodWhen to useHow
Mark individuallySmall sessions, or correctionsSet each learner to Present or Absent, then Save Attendance
Mark All PresentEveryone showed upOne action on every seated learner
QR self-check-inIn-person sessions with a queue at the doorSee QR Attendance Check-In
Automatic (Zoom)Zoom meetings EmbayLMS created on a connected accountA learner is marked present when they join; when the meeting ends, registrants who never joined are marked absent

Marking a learner Present counts toward the session module for them, which advances course progress and can trigger completion, a certificate, and the compliance record. Marking Absent does not — the learner stays incomplete for that module.

How many sessions it takes is the module’s Completes when setting in the course editor (see Course Management → How modules complete): Present at any session (the default) completes the module on the first Present; Present at every session waits until the learner is present at every non-cancelled session of their series. The rule is the same whichever way attendance is recorded — roster, QR check-in or Zoom automation. A completed module is not withdrawn by a later Absent edit.

Recordings

For VILT, once the session has ended, a Recording field appears on the session page: paste a recording URL so learners can review it in the course player. With Zoom cloud recording enabled, the link is captured automatically when processing finishes (only into an empty field).


6 - Changing a session after it is published

This is where sessions differ most from other content: registered learners already have this in their calendar.

ChangeWhat learners get
Reschedule (start/end or place changes, via Edit)A “session rescheduled” email with an updated calendar invite that replaces the old entry rather than adding a second one. A title-only edit sends no email
Cancel the session (Cancel Session, then Confirm Cancel?)A “session cancelled” email to registered and waitlisted learners; the calendar entry is withdrawn
A learner’s registration is cancelled (by them, or with Remove on the roster)A confirmation to that learner only — the session is still running for everyone else. If they held a seat, the first waitlisted learner gets it and their invite
Announcement (Announcements)A subject and message you write, emailed to every registered learner — for “bring your certification card” or “we have moved to Room 4”

Use an announcement for anything that is not a schedule change. A reschedule email tells people the time moved; it is the wrong vehicle for “parking is on the north side”.


7 - Reminders

Registered learners are reminded before the session automatically — about 24 hours ahead on the standard platform setting. The reminder carries the calendar invite, so a learner who lost an earlier email can still get the event into their calendar.

Session emails follow the tenant’s email templates and each learner’s notification preferences — see Notifications.


Configuration Reference

SettingWhereDefaultEffect
Completes whenSession modulePresent at any sessionWhether one Present or Present at every session completes the module
Session typeSessionILTILT uses the location as a room or address; VILT shows the video account and meeting link fields
CapacitySessionUnlimitedSetting a number enables the waitlist
StatusSessionDraftDraft is invisible to learners; Publish makes it live
InstructorSessionNoneA user with the Instructor, Admin or Owner role. They run this session (roster, attendance, QR check-in) and get nothing at course level
Video accountSession (VILT)Default connected accountCreates the meeting and enables Zoom auto-attendance
Manual meeting linkSession (VILT)NoneAn https:// URL you already hold. No meeting is created; an auto-created meeting takes precedence over it; no auto-attendance or recording capture
RecordingSession (VILT, after it ends)NoneShown to learners in the course player
TimezoneYour profile, else Settings → General—Recorded on the session when it is created and used for the video meeting

Troubleshooting

SymptomLikely cause / fix
A learner says “Change series” is missing on their course pageTheir series has started, or attendance was recorded for them — the page shows which. Move them yourself from the Enrollments tab or the roster.
I moved a learner and their old session still shows them as presentBy design: an admin move keeps registrations that carry an attendance record. The learner is registered for the new series in addition.
”This person can’t be named instructor” when savingThe person was deactivated, deleted, or lost their Instructor, Admin or Owner role after you searched. Pick someone else, or restore their role in Users first.
The instructor I picked says they cannot edit the sessionBy design: the named instructor runs the room only. An admin, or an instructor assigned to the course, makes other changes.
The learner did not get the change emailCheck their notification preferences (Session series changed can be muted) and the tenant email log. The calendar sync to Outlook (when connected) runs regardless.

Learners cannot see the session

  1. Confirm the session status is Published, not Draft.
  2. Confirm the learner is enrolled in the course and has picked this series — session visibility follows course enrollment and the series choice.
  3. If the learner cancelled their place in this session, they are no longer registered: register them again with Bulk Enroll Learners on the session.

Manage Series is missing on the module

The course is published and you are viewing it read-only. Choose Start new version to open a draft; the Modules tab then shows Manage Series. Sessions that already exist can still be edited, published or cancelled from Planned sessions at any time.

A learner says they never got a calendar invite

  1. Check Settings → Audit → Email log (Owner) for that recipient — it records sent, suppressed, skipped and failed for every message.
  2. If the status is suppressed, the address previously hard-bounced or the recipient marked a message as spam. See Notifications troubleshooting.
  3. If the status is skipped, email is not configured in this environment.
  4. A waitlist place sends no invite: the invite arrives when the learner gets a seat. A request waiting for approval sends its invites once approved.

A rescheduled session created a duplicate entry in someone’s calendar

The updated invite replaces the original by matching its identifier. A duplicate means the learner accepted the first invite from a forwarded copy rather than the original message — ask them to delete both and accept the latest invite.

Zoom attendance did not record automatically

  1. Confirm the Zoom account is connected under Settings → Integrations → Video Conferencing (Owner).
  2. Confirm the meeting was created by EmbayLMS on that account — a hand-pasted meeting link carries no participant reporting.
  3. Learners who never joined are marked absent only when the meeting ends.
  4. Mark attendance manually in the meantime; a later automatic update does not overwrite a manual mark.

Creating a VILT session is refused

The tenant has no usable video connection and the session has no manual meeting link. Either connect an account under Settings → Integrations → Video Conferencing, or paste a meeting link on the session. The refusal is deliberate: the alternative was a session that saved with no way to join it and nobody told.

That session also has a meeting EmbayLMS created, which takes precedence. Learners join the created meeting; the manual link is kept in reserve. To make the manual link the one they use, open Override the stored Zoom URLs on the session page, clear Join URL and click Save URLs.

The waitlist did not promote anyone

Automatic promotion fires when a seat is freed (a cancellation, a removal, a series move, a rejected enrollment request), and only while the session has a free seat and has not started. Raising the capacity does not promote anyone. After raising capacity, open the roster’s waitlist section and click Promote on the learners in order — each gets the confirmation and invite.

A learner asks where they are on the waitlist

They can see it themselves: the course page and the course player show their position. The roster’s waitlist section shows the same order.

A learner completed the session but the course still shows incomplete

Attendance completes the session module only. Check the module’s Completes when setting (with Present at every session they must attend every session of their series) and the course’s other modules — a learner can attend the class and still owe a quiz.