Communications ยท Media

Self-hosted communication platform for a Romanian media company.

Matrix homeserver, SMS breaking-news alerts, and editorial workflow integration for a 120-person national media organisation. Zero third-party message access.

120+
staff migrated
0
third-party message access
6 wks
full deployment
4
departments bridged
Jan 28, 2026 ยท 8 min read Self-hosting Matrix in 2026: what changed Read โ†’ Feb 17, 2026 ยท 11 min read How 47Comms routes SMS at scale Read โ†’
Feb 24, 2026 · 12 min

Nginx as a reverse proxy: TLS, rate limiting, upstream health

The Nginx reverse proxy configuration in front of the Dendrite Matrix homeserver โ€” TLS termination, rate limiting for registration endpoints, and upstream health checks.

Read →

Background

A national Romanian media organisation โ€” approximately 120 editorial, technical, and administrative staff โ€” had grown to rely on WhatsApp groups for breaking-news coordination and a self-managed Slack workspace for internal communications. Both created problems that had become impossible to ignore.

WhatsApp gave the organisation no control over message data. Conversations between editors, journalists, and sources mixed freely with personal use, creating serious source-protection risks. Reporters working on sensitive investigations had no way to segment communications from the rest of the organisation. Slack, while more controllable, came with a substantial per-seat cost and โ€” under the free plan โ€” limited message history. Neither platform could integrate with the organisation's editorial workflow system.

The organisation had a specific additional requirement: a reliable SMS alert system for breaking news distribution to subscribers, currently handled through an external provider with poor delivery reliability and no delivery receipt log. They needed a replacement that would give them carrier-level visibility and a tamper-evident delivery audit trail for regulatory purposes.

Approach

We ran two parallel workstreams that shared infrastructure but had different timelines: Matrix homeserver deployment for internal communications, and 47Comms SMS integration for subscriber alerts.

Workstream 1 โ€” Matrix homeserver

We deployed a Dendrite homeserver on dedicated on-premises hardware โ€” the organisation's preference given their sensitivity to cloud message storage. Dendrite was chosen over Synapse for its lower memory footprint (the server runs on hardware shared with the editorial workflow system) and its Go codebase (easier to maintain for their internal team). Federation was enabled but restricted to a carefully maintained allowlist of trusted homeservers โ€” the organisation wanted the option to federate with specific journalism-sector Matrix networks in future without opening federation entirely.

Room structure was designed with the editorial team before deployment. Rather than migrating existing WhatsApp and Slack group structures directly, we held a one-hour workshop with department heads to map their actual communication patterns. This produced a cleaner room hierarchy: an organisation-wide announcements room (read-only for most staff), department rooms, project rooms with automatic archiving, and a set of high-security rooms for sensitive investigations with additional encryption requirements.

Element X was the client of choice. Push notifications were self-hosted via a UnifiedPush-compatible relay rather than going through Google or Apple FCM โ€” an important requirement given the organisation's source-protection concerns. Staff on iOS used the Ntfy app as a push relay.

"We had journalists sending source communications over personal WhatsApp because we had nothing better. That's the problem that had to stop. The Matrix deployment gave us, for the first time, a communication system we actually control."

โ€” Head of Digital, Confidential Media Client (Romania)

Workstream 2 โ€” SMS breaking-news alerts

47Comms was deployed as the SMS gateway for breaking-news subscriber alerts, replacing the previous external provider. The integration connected directly to the organisation's editorial workflow system via webhook: when an editor marks a story as "breaking" and selects target subscriber segments, 47Comms dispatches the SMS campaign with multi-carrier routing and real-time delivery tracking.

The tamper-evident delivery log was a specific regulatory requirement โ€” Romanian broadcast authorities require evidence of notification dispatch for certain categories of public interest alerts. 47Comms's append-only audit log, with cryptographic chaining, satisfied this requirement and produced an exportable compliance report on demand.

Delivery reliability improved significantly: the previous provider averaged 94.2% delivery for EU mobile numbers over 30 days; 47Comms averaged 98.7% over the same measurement period post-migration, primarily due to automatic carrier failover when a primary carrier degraded.

Migration and training

Staff migration ran in phases over two weeks. We started with the technical team (who needed no hand-holding), then editorial leadership, then the full newsroom. Each group received a 30-minute onboarding session with a printed quick-reference card. The most common friction point was iOS push notifications โ€” setting up the Ntfy relay required a few steps that we simplified into a one-page guide with screenshots. Within three weeks of deployment, WhatsApp usage for work communications had dropped to near-zero with no mandate from management โ€” the new system was simply better for the use case.

98.7%
SMS delivery rate (was 94.2%)
0
third-party access to messages
3 wks
to near-zero WhatsApp work usage
100%
delivery audit trail compliance

At the six-month check-in, the editorial team had created a second investigation room for a new long-term project โ€” setting it up themselves, without involving 47Network. That's the outcome we aim for: infrastructure the client owns and can operate independently.

Delivery timeline

01

Discovery & room design โ€” Week 1

Hardware assessment, editorial workflow API documentation review, department head workshop for room structure design. UnifiedPush relay shortlisted.

02

Matrix homeserver deployment โ€” Weeks 2โ€“3

Dendrite installation and configuration on-premises, TLS via Nginx, federation allowlist, room structure creation, Element X rollout to technical team. UnifiedPush relay deployed. iOS push guide produced.

03

47Comms integration โ€” Weeks 2โ€“4 (parallel)

47Comms deployment, editorial workflow webhook integration, subscriber list migration from previous provider, carrier routing configuration, delivery audit trail verification.

04

Staff migration โ€” Weeks 4โ€“5

Phased onboarding: technical team, then editorial leadership, then full newsroom. Three 30-minute group sessions plus drop-in support hours. Quick-reference card printed for each desk.

05

Handover & documentation โ€” Week 6

Runbook delivery, admin training for two internal staff, Prometheus monitoring dashboard handover, 30-day support window. First breaking-news SMS alert sent via 47Comms on day 38.

← All Case Studies NGO Matrix deployment →
Feb 25, 2026 · 12 min

Loki log aggregation with Promtail

The Loki stack collecting logs from Dendrite, nginx, and bridges โ€” correlated with Prometheus metrics in Grafana for full-picture incident response.

Read →