Skip to content

Scheduling & Managing Sessions


Instructor Workflow

Schedule a New Session

Navigate to Live Classes → Schedule Session (or go to /instructor/live-classes/create).

FieldDescription
TitleSession name shown to students
DescriptionOptional overview; use Suggest with AI if CourseAI is enabled
Starts At / Ends AtDate and time in the instructor's timezone
Delivery MethodNative (built-in classroom) or an external provider (Zoom, Meet, Teams)
CourseOptional — link the session to a course for enrollment gating and topic completion
TopicOptional — link to a specific topic to auto-complete it when attendance threshold is met
Co-HostsAdditional instructors who can manage the room
Max ParticipantsOverrides the global default; base WebRTC caps at 10
Recording EnabledOnly effective with Premium LiveKit
Chat / Screen ShareEnable or disable per session
Require EnrollmentWhen enabled, only students enrolled in the linked course can join
Sync Course EnrollmentsPre-populate participants from enrolled students at scheduling time

Click Schedule to create the session. The session enters Scheduled status.


View a Session

Go to Live Classes → My Sessions and click any session to open its detail page.

The detail page shows:

  • Session status (scheduled, live, ended, cancelled)
  • Participant list with roles (Host, Co-Host, Attendee)
  • Attendance records (join time, leave time, duration)
  • Links to host the room or edit the session

Host a Session

On the session detail page (or from the sessions list), click Host. This:

  1. Transitions the session status to Live (or re-joins if already live)
  2. Opens the in-browser classroom (native) or the external meeting host link
  3. For Premium LiveKit: starts server recording automatically if LIVECLASS_RECORDING_AUTO_START=true

The host can also click End Session from the sessions list or detail page to close the room and finalize attendance.


Edit / Delete a Session

  • Edit — available while the session is scheduled. Navigate to the session detail and click Edit.
  • Delete — removes the session and all associated records. Available in any non-live status.

Warning: Deleting a session also removes all attendance, chat, and recording records for that session. This action cannot be undone.


AI Assistance (requires CourseAI module)

When the CourseAI module is enabled and configured, the session form shows two AI helpers:

ButtonWhat it does
Suggest descriptionAuto-generates a 2–3 sentence description from the session title and optional course context
Suggest poll questionsGenerates question ideas based on the session title and description — paste them into your polls before going live

After the session ends, instructors can trigger a Post-session summary from the session detail page, which uses Q&A and chat history to produce a bullet-point instructor summary.


Admin Workflow

View All Sessions

Navigate to Admin → Live Classes (/admin/live-classes).

Admins can see all sessions across all instructors, filter by status, and delete any session.

Create a Session (Admin)

Admins can schedule sessions the same way instructors do from /admin/live-classes/create.


Student Workflow

Browse Upcoming Sessions

Navigate to Live Classes in the student sidebar (/student/live-classes).

The list shows all upcoming sessions the student is eligible to join (enrolled in the linked course, or public sessions). Each row shows title, instructor, start time, and a Join button.

Join a Session

The Join button appears within the pre-join window (default: 10 minutes before start through 15 minutes after scheduled end).

  • Native sessions — clicking Join opens the in-browser classroom at /student/live-classes/{id}/room
  • External sessions — clicking Join redirects to the external meeting link (Zoom / Meet / Teams). No pasting links manually.

Topic Completion

When a student attends at least 70% of a session's duration (configurable via LIVECLASS_MIN_ATTENDANCE), the linked LMS topic is automatically marked as complete. Badges and course progress update accordingly.


Session Status Lifecycle

scheduled → live → ended
                 ↘ cancelled
StatusMeaning
scheduledCreated, not yet started
liveHost has opened the room
endedSession closed; attendance finalized
cancelledDeleted or cancelled before starting