Infrastructure medium complexity backend
0
Dependencies
0
Dependents
0
Entities
0
Integrations

Description

Abstracts communication with external email relay and SMS gateway providers behind a unified interface. It handles provider-specific authentication, request formatting, and response normalisation so that EmailSmsNotificationService remains decoupled from any single vendor. Manages connection pooling, rate limiting, and provider failover to maintain delivery reliability across varying network conditions.

Feature: Email/SMS Notifications

notification-dispatch-client

Sources & reasoning

No explicit email/SMS source passage exists, but the follow-up dissatisfaction data (line 116) motivates multi-channel delivery to users without consistent app access. Blueprint marks email-sms-notifications [v1.0]. Second phase ordinal = v1.0.

  • Oppfølging av likepersoner: 40 % var ikke fornøyd med oppfølgingen i spørreundersøkelse. Scenariobaserte push-meldinger og kalendersynkronisering.

Responsibilities

  • Translate normalised dispatch requests into provider-specific API calls for email relay and SMS gateway
  • Manage authentication credentials and token refresh for each external provider
  • Enforce rate limits and queue excess requests to prevent provider throttling
  • Normalise provider responses and error codes into a consistent DeliveryReceipt format
  • Support provider failover by routing to a secondary provider on persistent failure

Interfaces

dispatchEmail(payload: EmailPayload): ProviderReceipt
dispatchSms(payload: SmsPayload): ProviderReceipt
healthCheck(): ProviderHealth
getProviderStatus(provider: ProviderType): ProviderStatus