Infrastructure high complexity backend
0
Dependencies
3
Dependents
0
Entities
0
Integrations

Description

Queue-based dispatcher that abstracts over email and SMS provider SDKs, handling retry logic, exponential back-off, dead-letter queuing, and provider failover. Provides a unified dispatch interface consumed by both the Email Notification Service and SMS Notification Service, and exposes delivery metrics for observability.

Feature: Email / SMS Notifications

notification-delivery-infrastructure

Responsibilities

  • Enqueue outbound email and SMS jobs with configurable retry policies
  • Execute retries with exponential back-off on provider errors or timeouts
  • Route to the correct provider SDK based on channel type and organization configuration
  • Move permanently failed messages to a dead-letter queue for manual inspection
  • Expose delivery throughput and error-rate metrics for monitoring

Interfaces

enqueue(job: NotificationJob): string
processQueue(): void
getDeliveryStatus(jobId): DeliveryStatus
retryFailed(jobId): void
getMetrics(): QueueMetrics
configureProvider(channel, orgId, config): void