Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Sandbox/Version demo/3.0

From OHC Network Wiki
Revision as of 04:25, 5 July 2026 by Admin (talk | contribs) (OHC identity seed)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
🧊 You are viewing documentation frozen at CARE 4.0. For the latest version see Sandbox/Version demo.
guideplatformCARE 3.0 – 4.0


⚠️ Warning
This is a sandbox demonstration of the wiki's versioning system. It is not real documentation. See Sandbox/Version demo for the latest version.

Notification system (v3.0)

Version 3.0 introduced templates, delivery tracking, and batching.

Channels

Channel Added in Notes
Email 1.0 Now supports HTML templates
In-app 2.0 Now supports rich cards with actions
SMS 2.0 Template-based (character-count aware)
Push (mobile) 3.0 FCM / APNs via unified adapter
Webhook 3.0 For external integrations

Template engine

Messages now use a Jinja2-like template language:

Hello {{ recipient.name }},

Your appointment with Dr. {{ provider.name }} is confirmed for
{{ appointment.datetime | format_date }}.

{% if appointment.requires_fasting %}
⚠️ Please fast for 12 hours before your visit.
{% endif %}

Delivery tracking

Every notification now records:

Field Type Description
status enum queued → sent → delivered → read → failed
attempts int Number of delivery attempts
delivered_at datetime When the channel confirmed receipt
read_at datetime When the user opened/acknowledged
error text Last failure reason (if any)

Batching

Notifications to large groups now batch automatically:

  • Email: up to 500 per SES API call
  • Push: up to 1000 per FCM multicast
  • Configurable batch window (default: 30 seconds)

What improved over 2.0

  • Rich templates instead of hardcoded strings
  • Full delivery lifecycle tracking
  • Push notifications for mobile apps
  • Webhook channel for third-party systems
  • Batch sends for high-volume scenarios

Still missing

  • No scheduling (send-at-time)
  • No A/B testing of message variants
  • No per-organization channel config (global only)