Skip to main content

Notification Channels

The Notification service supports three delivery channels, all backed by Azure Communication Services.

Email​

The IEmailService sends HTML-formatted emails:

  • Uses Azure Communication Services Email
  • Renders the EmailTemplate.html with dynamic variable substitution
  • Supports batch sending to multiple recipients

Email Content​

Emails include:

  • Alert type and severity
  • Camera name and location
  • Timestamp of the event
  • Direct link to the camera in the frontend

SMS​

The ISmsService sends text messages:

  • Uses Azure Communication Services SMS
  • Concise message format due to character limits
  • Includes essential alert details and a shortened link
  • Currently blocked pending resolution of a legal issue

Phone Call​

The IPhoneCallService initiates automated phone calls:

  • Uses Azure Communication Services Call Automation
  • Delivers a text-to-speech notification message repeated 3 times
  • Each alert type has a dedicated callback endpoint for handling call lifecycle events
  • See Phone Call Callbacks for details on the callback flow

Alert Service​

The IAlertService manages alert state:

  • Creates and tracks alert records
  • Associates alerts with cameras and events
  • Provides alert history for the Admin API dashboard

Recipient Grouping​

When a notification is triggered, users are grouped by their delivery preference:

  • Email only β€” Users who opted for email notifications
  • SMS only β€” Users who opted for SMS notifications
  • Phone call β€” Users who opted for phone call notifications
  • Combinations β€” Users may have multiple delivery types (flags-based enum)