# 2. Session Management

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

---

## 2. Session Management

### 2.1 Session Scheduling
**What it does:** The Super Admin schedules study room sessions so learners know when the co-study sessions happen.

**Sub-features:**
- Session creation: the creation of a study session
- Session time: the time of the session
- Session duration: the duration of the session
- Session recurrence: the recurrence of the session
- Session listing: the listing of all sessions
- Available on web
- Event logging (action performed)
- Audit logging of session scheduling

**Super Admin User Journey:**
1. As a Super Admin, open the session scheduling.
2. Create a session with a time and duration.
3. Set the recurrence.
4. Verify it appears in the session listing.

**Rules & Edge Cases:**
- A session creation requires a room and a time.
- A session time is the start time of the session.
- A session duration is the length of the session.
- A session recurrence repeats the session.
- A session listing shows all sessions.
- A session without a room cannot be created.
- Session actions are audit-logged with the actor and timestamp.

### 2.2 Pomodoro Timer
**What it does:** The Super Admin configures the Pomodoro timer so the study sessions follow the Pomodoro technique.

**Sub-features:**
- Timer configuration: the configuration of the Pomodoro timer
- Work interval: the work interval of the timer
- Break interval: the break interval of the timer
- Timer presets: the presets of the timer
- Timer status: the status of the timer
- Available on web
- Event logging (action performed)
- Audit logging of Pomodoro timer

**Super Admin User Journey:**
1. As a Super Admin, open the Pomodoro timer.
2. Configure the work and break intervals.
3. Set the timer presets.
4. Review the timer status.

**Rules & Edge Cases:**
- A timer configuration defines the Pomodoro settings.
- A work interval is the focused study period.
- A break interval is the rest period.
- A timer preset is a saved timer configuration.
- A timer status reflects the state (running, paused).
- A timer with a zero work interval is invalid.
- Timer actions are audit-logged with the actor and timestamp.

### 2.3 Synchronized Timer
**What it does:** The Super Admin enables the synchronized timer so the Pomodoro timer is synchronized for all learners in the room.

**Sub-features:**
- Sync enablement: the enablement of the synchronized timer
- Sync status: the status of the synchronization
- Sync drift: the drift of the timers
- Sync correction: the correction of the timer drift
- Sync log: the log of the synchronization
- Available on web
- Event logging (action performed)
- Audit logging of synchronized timer

**Super Admin User Journey:**
1. As a Super Admin, open the synchronized timer.
2. Enable the synchronized timer for a room.
3. Save the sync settings.
4. Review the sync status.

**Rules & Edge Cases:**
- A sync enablement turns the synchronized timer on.
- A sync status reflects the state (synchronized, out of sync).
- A sync drift is the difference between the timers.
- A sync correction aligns the timers.
- A sync log records the synchronization events.
- A timer out of sync is corrected automatically.
- Sync actions are audit-logged with the actor and timestamp.

### 2.4 Minimal Chat
**What it does:** The Super Admin configures the minimal chat so the chat is limited to reduce distraction.

**Sub-features:**
- Chat enablement: the enablement of the minimal chat
- Chat limits: the limits of the chat
- Chat messages: the messages in the chat
- Chat moderation: the moderation of the chat
- Chat log: the log of the chat
- Available on web
- Event logging (action performed)
- Audit logging of minimal chat

**Super Admin User Journey:**
1. As a Super Admin, open the minimal chat.
2. Enable the minimal chat and set the limits.
3. Save the chat settings.
4. Review the chat messages and log.

**Rules & Edge Cases:**
- A chat enablement turns the minimal chat on.
- A chat limit restricts the chat (message length, frequency).
- A chat message is a message in the chat.
- A chat moderation removes inappropriate messages.
- A chat log records the chat messages.
- A chat message exceeding the limit is blocked.
- Chat actions are audit-logged with the actor and timestamp.

### 2.5 Session Recording
**What it does:** The Super Admin manages the session recording so the study sessions can be recorded for review.

**Sub-features:**
- Recording enablement: the enablement of the session recording
- Recording storage: the storage of the recordings
- Recording playback: the playback of the recordings
- Recording retention: the retention of the recordings
- Recording log: the log of the recordings
- Available on web
- Event logging (action performed)
- Audit logging of session recording

**Super Admin User Journey:**
1. As a Super Admin, open the session recording.
2. Enable the session recording for a room.
3. Save the recording settings.
4. Review the recordings and log.

**Rules & Edge Cases:**
- A recording enablement turns the session recording on.
- A recording storage holds the recordings.
- A recording playback plays the recording.
- A recording retention defines how long the recordings are kept.
- A recording log records the recordings.
- A recording without consent is not stored.
- Recording actions are audit-logged with the actor and timestamp.

### 2.6 Session Attendance
**What it does:** The Super Admin tracks the session attendance so the participation in the study sessions is measured.

**Sub-features:**
- Attendance tracking: the tracking of the attendance
- Attendance status: the status of the attendance (present, absent)
- Attendance rate: the rate of the attendance
- Per-learner breakdown: the attendance per learner
- Attendance log: the log of the attendance
- Available on web
- Event logging (action performed)
- Audit logging of session attendance

**Super Admin User Journey:**
1. As a Super Admin, open the session attendance.
2. Review the attendance tracking and status.
3. Check the attendance rate and per-learner breakdown.
4. Review the attendance log.

**Rules & Edge Cases:**
- An attendance tracking records who attended the session.
- An attendance status reflects the state (present, absent).
- An attendance rate is the attendance over the total learners.
- A per-learner breakdown separates the attendance per learner.
- An attendance log records the past attendance.
- A session with no attendees shows an empty state.
- Attendance actions are audit-logged with the actor and timestamp.
