Supplemental 3CX PBX 911 Alert System
Budget: $750 – $1,500 USD
Project Brief: 3CX Rivell Routing
Overview
3CX’s built-in 911 alerting lacks the flexibility Rivell requires. We need a standalone, web-based server application—3CX Rivell Routing—hosted on Windows Server 2022 in our datacenter. This solution will receive and route emailed 911 notifications from a 3CX PBX and alert the respective organization of the 911 call thorugh mail, SMS, and voice call, with the routing logic based on 3CX group membership for each PBX instance.
Core Requirements
1. Email Intake & Parsing
Source: 911 alerts sent from 3CX PBXs.
Recipient Address Format: <pbxurl>@rivell.net
Email Format:
FROM: Emergency Alert
SUBJECT: %%EMERGENCYRULENAME%% - %%EMERGENCYNUMBER%% was dialed from extension %%CALLFROM%% ID: %%CALLERNAME%%
BODY: %%EMERGENCYRULENAME%% - %%EMERGENCYNUMBER%% was dialed from extension %%CALLFROM%% ID: %%CALLERNAME%%
These variables will be automatically populated by 3CX.
Security: Email body will include a randomized unique string to verify origin.
Allowlist: Only PBXs explicitly listed in the backend allowlist should be processed.
2. Notification Delivery
Methods supported:
Email
SMS (via Twilio or SendGrid)
Voice Call (TTS-generated message using Twilio)
Routing logic:
Based on the group of the extension that dialed 911.
Notify designated users with their selected notification methods.
Backend & Infrastructure
Platform: Windows Server 2022 (in Rivell’s datacenter)
Database: SQLite for configuration and user/group storage
Email Processor: Must support parsing subject line variables and body tokens
Audit Logging: Track changes to PBX, user, and notification settings
Alert Volume: Expectation is fewer than 100 alerts per year
PBX Instances: Start with 10 PBXs, but design should allow scalable expansion
Frontend Web Portal
Authentication
Login screen with:
Username & Password
Microsoft and Google SSO support
2FA required for admin users
User Roles
Admin Users (Rivell team, @rivell.com):
View and manage all PBXs
Search PBXs by name
Add/edit PBX details, users, groups, and notification preferences
Assign client-level admins
Basic Users (Client users):
Limited to their own PBX
Can view and edit: Groups, Users, Notification preferences. Cannot see or manage other organizations
PBX Management Interface
Add PBX prompt should collect:
Name of the organization
URL of the 3CX instance
3CX group names
Users per group
User Management:
Each user has checkboxes for:
Email notifications
SMS notifications
Voice call notifications
Checkbox to assign user as PBX-level admin
UI Requirements
Clean, Rivell-branded interface
Mobile-friendly/responsive
Dashboard layout for easy PBX navigation and overview
Notifications/logs section for admins
Summary of Technologies
Backend: .NET Core or equivalent (web API & email handler)
Frontend: React, Vue.js, or similar
Database: SQLite
SMS/Voice: Twilio or SendGrid
Auth: Microsoft/Google SSO, 2FA
OS: Windows Server 2022
Next Steps
Please confirm:
Timeline and estimated delivery milestones
Overview
3CX’s built-in 911 alerting lacks the flexibility Rivell requires. We need a standalone, web-based server application—3CX Rivell Routing—hosted on Windows Server 2022 in our datacenter. This solution will receive and route emailed 911 notifications from a 3CX PBX and alert the respective organization of the 911 call thorugh mail, SMS, and voice call, with the routing logic based on 3CX group membership for each PBX instance.
Core Requirements
1. Email Intake & Parsing
Source: 911 alerts sent from 3CX PBXs.
Recipient Address Format: <pbxurl>@rivell.net
Email Format:
FROM: Emergency Alert
SUBJECT: %%EMERGENCYRULENAME%% - %%EMERGENCYNUMBER%% was dialed from extension %%CALLFROM%% ID: %%CALLERNAME%%
BODY: %%EMERGENCYRULENAME%% - %%EMERGENCYNUMBER%% was dialed from extension %%CALLFROM%% ID: %%CALLERNAME%%
These variables will be automatically populated by 3CX.
Security: Email body will include a randomized unique string to verify origin.
Allowlist: Only PBXs explicitly listed in the backend allowlist should be processed.
2. Notification Delivery
Methods supported:
SMS (via Twilio or SendGrid)
Voice Call (TTS-generated message using Twilio)
Routing logic:
Based on the group of the extension that dialed 911.
Notify designated users with their selected notification methods.
Backend & Infrastructure
Platform: Windows Server 2022 (in Rivell’s datacenter)
Database: SQLite for configuration and user/group storage
Email Processor: Must support parsing subject line variables and body tokens
Audit Logging: Track changes to PBX, user, and notification settings
Alert Volume: Expectation is fewer than 100 alerts per year
PBX Instances: Start with 10 PBXs, but design should allow scalable expansion
Frontend Web Portal
Authentication
Login screen with:
Username & Password
Microsoft and Google SSO support
2FA required for admin users
User Roles
Admin Users (Rivell team, @rivell.com):
View and manage all PBXs
Search PBXs by name
Add/edit PBX details, users, groups, and notification preferences
Assign client-level admins
Basic Users (Client users):
Limited to their own PBX
Can view and edit: Groups, Users, Notification preferences. Cannot see or manage other organizations
PBX Management Interface
Add PBX prompt should collect:
Name of the organization
URL of the 3CX instance
3CX group names
Users per group
User Management:
Each user has checkboxes for:
Email notifications
SMS notifications
Voice call notifications
Checkbox to assign user as PBX-level admin
UI Requirements
Clean, Rivell-branded interface
Mobile-friendly/responsive
Dashboard layout for easy PBX navigation and overview
Notifications/logs section for admins
Summary of Technologies
Backend: .NET Core or equivalent (web API & email handler)
Frontend: React, Vue.js, or similar
Database: SQLite
SMS/Voice: Twilio or SendGrid
Auth: Microsoft/Google SSO, 2FA
OS: Windows Server 2022
Next Steps
Please confirm:
Timeline and estimated delivery milestones