Release Archive Back to Home
💬 Version 7.5.0

Release Notes

A completely rebuilt SMS system — a multi-provider gateway you configure per provider, an interactive class & section recipient workflow with phone validation, and optimized bulk sending with per-recipient delivery results.

Released: 8 August 2026
3 Commits
23 Files Changed
3,350+
Lines Added
23
Files Modified
3
Commits

New Features

Multi-Provider SMS Gateway New

SMS is now driven by a pluggable provider architecture — a gateway registry, a shared driver contract, and concrete Legacy and Automas drivers. A new SMS Providers admin page lets you pick the active provider and fill in provider-specific credentials, with validation that the gateway is fully configured before anything is sent and sensible fallback endpoint defaults.

Interactive Class & Section Recipient Flow New

Sending to a class or section is now a guided workflow: recipients load from the server with paging and search, invalid numbers are filtered out, and you send only to the students you explicitly check. A number can be corrected inline — the fix is saved with a student change-log entry — and send scoping is tightened so only selected, in-scope students receive the message.

Optimized Bulk Sending New

The driver layer gains a sendBulk contract with a safe default that cleans recipients and sends one-by-one, plus an optimized Automas implementation that batches recipients per request and maps each gateway response back to the original recipient. Batch-wide failures are handled consistently, and the service delegates bulk sending to whichever driver is active.

Improvements

Clearer Delivery Outcomes

The send flow now classifies raw gateway responses as sent, partial, or failed, logs which provider handled each message, and surfaces clearer admin feedback when a delivery is rejected. SMS logs and settings track the provider used, so history stays auditable across gateways.

Bangladeshi Phone Normalization & Validation

Numbers are normalized and validated to Bangladeshi formats before sending, with duplicate and blank entries filtered automatically — cutting wasted sends and failed deliveries from malformed numbers.

Looking for an earlier release? Browse the release archive.