# 3. Mobile Offline Features

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

---

## 3. Mobile Offline Features

### 3.1 Data Saver Mode Configuration
**What it does:** The Super Admin configures the data saver mode so mobile learners can minimize data usage while learning.

**Sub-features:**
- Data saver enablement: data saver mode toggled on or off by default
- Data saver behavior: the behavior under data saver (compressed video, no auto-play, image quality reduction)
- Data usage cap: the daily or monthly data usage cap per learner
- Data usage warning: the warning threshold before the cap is reached
- Data usage tracker: the per-learner data usage tracking
- Available on web
- Event logging (action performed)
- Audit logging of data saver mode configuration

**Super Admin User Journey:**
1. As a Super Admin, open the data saver mode configuration.
2. Set the default enablement and data saver behavior.
3. Define the data usage cap and warning threshold.
4. Save and verify a learner's data usage is tracked and capped.

**Rules & Edge Cases:**
- A data saver mode on by default applies to all learners unless overridden.
- A data saver behavior of compressed video reduces the video bitrate.
- A data usage cap blocks further data-consuming actions when reached.
- A data usage warning is sent once when the warning threshold is crossed.
- A data usage tracker records usage per learner per day and per month.
- A cap of zero disables data-consuming features entirely.
- Configuration changes are audit-logged with the actor and timestamp.

### 3.2 Adaptive Video Quality Settings
**What it does:** The Super Admin configures the adaptive video quality so video auto-adjusts to network speed with manual override and a data usage tracker.

**Sub-features:**
- Auto-adjust enablement: auto-adjust of video quality based on network speed
- Quality tiers: the quality tiers available (low, medium, high, auto)
- Manual quality selection: the manual quality selection override
- Quality fallback: the fallback quality on a sustained slow network
- Data usage tracker: the data usage per video session
- Available on web
- Event logging (action performed)
- Audit logging of adaptive video quality settings

**Super Admin User Journey:**
1. As a Super Admin, open the adaptive video quality settings.
2. Enable auto-adjust and define the quality tiers.
3. Set the manual selection override and fallback quality.
4. Save and verify video quality adjusts to network speed.
5. Check the data usage tracker per session.

**Rules & Edge Cases:**
- An auto-adjust quality selects the highest tier the network can sustain.
- A manual quality selection overrides auto-adjust for the session.
- A quality fallback drops to a lower tier after a sustained slow network.
- A data usage tracker accumulates the bytes used per video session.
- A quality tier not in the allowed set is not offered.
- A network speed below the lowest tier plays the lowest tier.
- Configuration changes are audit-logged with the actor and timestamp.

### 3.3 Offline Video Player Configuration
**What it does:** The Super Admin configures the offline video player so downloaded videos play reliably without connectivity.

**Sub-features:**
- Player enablement: the offline video player toggled on or off
- Playback features: the playback features available offline (resume, speed, seek)
- Picture-in-picture: the picture-in-picture mode for offline video
- Offline playback limit: the limit on offline playback sessions
- Player quality: the quality of offline playback
- Available on web
- Event logging (action performed)
- Audit logging of offline video player configuration

**Super Admin User Journey:**
1. As a Super Admin, open the offline video player configuration.
2. Enable the player and select the playback features.
3. Configure picture-in-picture and the offline playback limit.
4. Save and verify a downloaded video plays offline with the configured features.

**Rules & Edge Cases:**
- An offline video player off shows no offline playback option.
- A playback feature of resume restores the last watched position.
- A picture-in-picture mode allows the video to play while the app is backgrounded.
- An offline playback limit restricts the number of offline sessions.
- A player quality is capped at the downloaded video quality.
- A playback of an expired download is blocked.
- Configuration changes are audit-logged with the actor and timestamp.

### 3.4 Gesture Controls Configuration
**What it does:** The Super Admin configures the gesture controls so learners can interact with video and diagrams using swipes, taps, and pinches.

**Sub-features:**
- Gesture enablement: gesture controls toggled on or off
- Swipe controls: the swipe to skip forward and backward
- Double-tap bookmark: the double tap to bookmark a position
- Pinch zoom: the pinch to zoom on diagrams
- Gesture sensitivity: the sensitivity threshold for gestures
- Available on web
- Event logging (action performed)
- Audit logging of gesture controls configuration

**Super Admin User Journey:**
1. As a Super Admin, open the gesture controls configuration.
2. Enable gestures and configure the swipe, double-tap, and pinch behaviors.
3. Set the gesture sensitivity.
4. Save and verify the gestures work on the mobile player.

**Rules & Edge Cases:**
- A gesture controls off disables all gesture interactions.
- A swipe forward skips a configured number of seconds.
- A double tap creates a bookmark at the current position.
- A pinch zoom scales the diagram within the allowed zoom range.
- A gesture sensitivity too low ignores small movements.
- A gesture on a non-interactive surface is ignored.
- Configuration changes are audit-logged with the actor and timestamp.

### 3.5 Push Notification for Offline Content
**What it does:** The Super Admin configures push notifications for offline content so learners are notified about downloads, expiries, and sync events.

**Sub-features:**
- Notification enablement: push notifications for offline content toggled on or off
- Download notifications: notifications on download start, completion, and failure
- Expiry notifications: notifications before downloaded content expires
- Sync notifications: notifications on sync completion and failure
- Notification schedule: the quiet hours for offline content notifications
- Available on web
- Event logging (action performed)
- Audit logging of push notification for offline content

**Super Admin User Journey:**
1. As a Super Admin, open the push notification configuration for offline content.
2. Enable notifications and select the event types.
3. Set the quiet hours schedule.
4. Save and verify a learner receives a download completion notification.

**Rules & Edge Cases:**
- A notification enablement off suppresses all offline content notifications.
- A download notification is sent on start, completion, and failure.
- An expiry notification is sent before the content expires.
- A sync notification is sent on sync completion and failure.
- A quiet hours schedule suppresses notifications within the window.
- A notification for a suppressed event type is not sent.
- Configuration changes are audit-logged with the actor and timestamp.
