Communications & engagement
DLT-compliant SMS and WhatsApp with a delivery-state machine and failover, circulars and notices with read-tracking, and surveys to close the loop - so messages land and you can prove it.
See it live
Watch the real flow run
Reach every parent - and prove it was delivered.
The payoff
Outcomes, not features
Start to finish
Inside communications & engagement
The real end-to-end flow - from the school's first action to the audited, reason-coded outcome.
- 1Compose against DLT-registered templatesSMS and WhatsApp go out on DLT-registered templates through real vendor adapters - WhatsApp Cloud, MSG91, Exotel voice and RCS - so messages are compliant and carry the right sender identity, not ad-hoc text.
- 2Every send resolves consent firstBefore a message dispatches, a pure reconciler flattens both preference stores most-restrictive-wins: a channel stop, a disabled preference, a DND category or a quiet window all deny the send. Promotional traffic additionally needs a granted lawful basis. Consent is enforced, not assumed.
- 3Deliver with failover and a live state machineA single dispatch seam tries each configured provider in turn and reports no_provider or all_failed honestly. Every message advances a strictly forward-only delivery state - queued to sent to delivered to read, or into a terminal failed - reconciled from provider delivery receipts.
- 4Prove it landed, then close the loopCirculars and notices carry read-tracking and delivery proof; browser and app push ride FCM, APNs and web-push; and surveys with skip logic gather feedback - so you can show a message was read, not just sent.
The building blocks
The modules that do the work
The 5 modules that make up communications & engagement.
Comms & delivery
DLT templates, delivery-state machine, SMS / WhatsApp failover.
Notices & engagement
Circulars, read-tracking, delivery proof.
Notifications
Browser and app push, SMS and email backbone.
Surveys & feedback
Ask families and staff; act on what you hear.
School website builder
Build and publish the school’s public website; pages, media and a custom domain.
Signature automations
What most systems don't do
Built-in mechanics you won't find elsewhere - running in the product, not drawn on a slide.
Provider failover with an honest outcome
dispatchWithFailover walks the resolved provider list for a channel and attempts each in order; if nothing is bound it returns no_provider, and once every candidate is exhausted it returns all_failed - never a silent drop.
A strictly forward-only delivery state machine
Provider delivery receipts advance a ranked state machine - queued(0) to sent to delivered to read(3), with failed as a terminal sink reachable from any non-terminal state - so a late or out-of-order receipt can never regress a message that already reached read.
Consent flattened most-restrictive-wins before dispatch
reconcileDeliverability decides deny or allow over a PII-free state: a channel stop, disabled preference, DND category or quiet window each blocks the send, and promotional messages require a granted lawful basis - a permissive value in one store can never override a restriction in the other.
Read receipts and a custom domain
Notice read-tracking is idempotent (a repeat mark is a no-op via ON CONFLICT DO NOTHING) so read counts stay honest, and the website builder publishes each tenant on its own subdomain slug or a single unique custom domain resolved on a public, session-less read plane.
Straight answers
Communications & engagement - common questions
What happens if a message provider is down?
The dispatch seam tries each configured provider for that channel in order. If none is bound it tells you no_provider up front, and only after every candidate has failed does it report all_failed - there is no silent loss, and the outcome is recorded per message.
Can I prove a circular was actually read, not just sent?
Yes. Notices carry read-tracking with a delivery proof, and the per-reader read mark is idempotent, so read counts reflect distinct readers rather than double-counting a re-open. WhatsApp interactive-button acknowledgements are captured for emergency broadcasts.
Do you support push notifications and a school website?
Browser and app push run on FCM, APNs and web-push (VAPID), each failing closed to a dev stub until a real credential is bound. The website builder gives every school its own pages, media and one custom domain published to a public read plane.