# 1. Live Session Scheduling & Access

User Type: **Student**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 1. Live Session Scheduling & Access

### 1.1 Live Session Calendar
**What it does:** Shows the Student a calendar of upcoming live sessions: instructor-led classes, doubt-clearing sessions, and webinars. The Student can view sessions by date, filter by subject, and see the session details (topic, instructor, time, duration). The calendar helps the Student plan around live sessions.

**Sub-features:**
- Calendar of upcoming live sessions
- Filter sessions by subject and date
- Session detail (topic, instructor, time, duration)
- Session type (class, doubt-clearing, webinar)
- Add a session to the Student's personal calendar
- Session reminders before the start
- Calendar available on web and mobile
- Calendar event logging (viewed, reminder set)
- Audit logging of the live session calendar

**Student User Journey:**
1. Student opens "Live" → "Calendar" and sees the upcoming sessions.
2. Student filters to Mathematics sessions this week.
3. Student opens a session and sees the topic, instructor, and time.
4. Student adds the session to their personal calendar.
5. A reminder is sent before the session starts.
6. Student views the calendar on the mobile app.
7. Student opens Profile → "Activity" and confirms the calendar events are recorded.

**Rules & Edge Cases:**
- The calendar lists upcoming live sessions.
- Filters operate on subject and date.
- A session reminder is sent before the start (per the platform's lead time).
- The calendar is available on web and mobile.
- Calendar events (viewed, reminder set) are logged with the session and the timestamp.
- The live session calendar is audit-logged with the account, the session, and the timestamp.

### 1.2 Join a Live Session
**What it does:** Lets the Student join a live session at its scheduled time. The Student taps "Join" from the session detail or a notification, enters the session room, and is admitted. Joining is gated by the Student's subscription and enrollment in the relevant course.

**Sub-features:**
- Join a live session at its scheduled time
- Join from the session detail or a notification
- Session room with the instructor and other Students
- Admission gated by subscription and enrollment
- Waiting room before the session starts
- Late join handling
- Join event logging (joined, admitted)
- Audit logging of the join a live session

**Student User Journey:**
1. The session reminder is sent; Student taps "Join".
2. Student enters the waiting room before the session starts.
3. The instructor admits the Student into the session room.
4. Student sees the instructor and other Students.
5. For a late join, Student is admitted when available.
6. Student opens Profile → "Activity" and confirms the join events are recorded.

**Rules & Edge Cases:**
- Joining requires an active subscription and enrollment in the course.
- A waiting room is shown before the session starts.
- A late join is admitted when the session is in progress.
- Join events (joined, admitted) are logged with the session and the timestamp.
- The join a live session is audit-logged with the account, the session, and the timestamp.

### 1.3 Session Attendance and History
**What it does:** Tracks the Student's attendance at live sessions and keeps a history of past sessions. The Student sees which sessions they attended, missed, or joined late, and can review the session history. Attendance is a part of the Student's engagement record.

**Sub-features:**
- Attendance tracking per session (attended, missed, late)
- Session history (past sessions)
- Attendance rate over a period
- Missed session indicator
- History available on web and mobile
- History event logging (viewed)
- Audit logging of the session attendance and history

**Student User Journey:**
1. Student opens "Live" → "History" and sees the past sessions.
2. Each session shows the attendance status (attended, missed, late).
3. The attendance rate over the last month is shown.
4. A missed session is indicated.
5. Student views the history on the mobile app.
6. Student opens Profile → "Activity" and confirms the history events are recorded.

**Rules & Edge Cases:**
- Attendance is recorded as attended, missed, or late.
- The attendance rate is computed over the selected period.
- A missed session is indicated in the history.
- The history is available on web and mobile.
- History events (viewed) are logged with the session and the timestamp.
- The session attendance and history is audit-logged with the account, the session, and the timestamp.
