DeliveryOptions - IEEE-Team-3/map GitHub Wiki

Overview

Delivery options define how and where notifications are delivered to users. Depending on the user's preferences, notifications can be sent via multiple channels such as email, in-app alerts, or push notifications. This flexibility allows users to customize their notification experience.

Available Delivery Options

  • Email: Send notifications directly to the user's email address.
  • Push Notifications: Send real-time alerts to the user's mobile or desktop device.
  • In-App Alerts: Display notifications within the app itself, often in the form of banners, modals, or icons.
  • SMS: Send notifications via text message (if configured).

Example Delivery Option Configuration

const DeliveryOptionSchema = new Schema({
  method: { type: String, enum: ['Email', 'Push', 'In-App', 'SMS'], required: true },
  enabled: { type: Boolean, default: true },
});

Example Delivery Flow

  1. A notification is triggered based on an event, such as a new message in a chat.
  2. The system checks the user's delivery preferences.
  3. Notifications are sent through the chosen delivery methods, such as email and push notifications.
+-------------------------------------------+
| Delivery Option    | Push               |
|-------------------------------------------|
| Enabled           | [X] Yes            |
| Method            | Email, Push        |
| Notification Type | New Message        |
+-------------------------------------------+
⚠️ **GitHub.com Fallback** ⚠️