SMS Broadcasting Application & Management Portal
Budget: $750 – $1,500 USD
This project is for experienced developers that have already have experience with related applications.
The goal is for authorized numbers to be able to send a mass SMS to employees by sending a message to the SMS number and including the target group name as the first word.
Group name will be case insensitive.
Secure https webpage with lets encrypt SSL certificate.
Web portal will allow for admins and clients to log in and manage users and groups and view logs.
SMS API reference:
https://developers.telnyx.com/docs/api/v2/messaging
https://developers.telnyx.com/docs/v2/messaging/quickstarts/sending-sms-and-mms
https://developers.telnyx.com/docs/v2/messaging/quickstarts/receiving-sms-and-mms
Admin portal
Can create, edit, delete client accounts.
Can edit API keys and SMS phone number for each client account.
Can login as sub user to debug or assist with issues.
Can add, remove users both admin and sub account users.
Can limit total messages sub account can send per month.
Can view log file of system from admin portal.
Reporting, can view total messages for month and can view total messages per client.
Client portal:
Can see used messages and remaining number of messages (sent and received) based on sub account limit set by admin. (If 1 SMS message is sent to 200 users, message sent by authorized user =1 + 200 = 201 messages total)
Can add, remove authorized senders. First Name, Last Name, Position, Cell Number, authorized groups, check box to associate user with one or many groups.
Can create, edit, delete groups.
Can add, remove, edit users.
Users: list all, or by group. search by name, phone number, group.
Can view reports,
reports show the message that was sent, what user and phone number originated the message and a delivery report for each number that it was sent to.
Can send message from portal. enter number or select existing group. and type message and click send button.
Break into multiple messages if over max character limit for single message.
message report sent via sms to senders number after completion.
Auto purge logs over 60 days.
Client creates group named allstaff and enables auto subscribe (This is optional - this needs to be checkbox or toggle option and if enabled the client will need to set an autoresponse message that will be sent to numbers that have joined.)
Client authorizes 15035553434 to send messages to allstaff group
an employee sends "nightshift" to SMS number and it adds them to the nightshift group. System autoreplies with welcome message set by client : "You have been added to the allstaff group - Reply STOP to leave the group"
Anyone replying stop (case insensitive) will be removed from the notification system and this must be logged so that the client can see that they were removed from the group.
Auto respond to incoming message if it is not an authorized broadcast message from an authorized sender.
Example: authorized number sends message but does not match valid group: No matching group found.
Example: unauthorized number sends message with valid group: You are not authorized to broadcast messages to this group
Example: unauthorized user sends message with no valid group: This number is for broadcast notifications only - No incoming messages are accepted.
Authorized number 15035553434 sends message with valid group: Message sent to $group results: success
Example:
15035553434 sends message to +18003441212
Message: 'Allstaff Just a reminder that the staff meeting is July 17th at 10AM' - The system will only forward the message to the allstaff group members if it originates from that groups authorized senders list.
15035553434 sends message to +18003441212
Message: 'nightshift Just a reminder that the staff meeting is July 17th at 10AM' The system will only forward the message to the nightshift group members if it originates from that groups authorized senders list.
This needs to be solid and reliable and survive Linux OS updates. Preferred NODE.js
The goal is for authorized numbers to be able to send a mass SMS to employees by sending a message to the SMS number and including the target group name as the first word.
Group name will be case insensitive.
Secure https webpage with lets encrypt SSL certificate.
Web portal will allow for admins and clients to log in and manage users and groups and view logs.
SMS API reference:
https://developers.telnyx.com/docs/api/v2/messaging
https://developers.telnyx.com/docs/v2/messaging/quickstarts/sending-sms-and-mms
https://developers.telnyx.com/docs/v2/messaging/quickstarts/receiving-sms-and-mms
Admin portal
Can create, edit, delete client accounts.
Can edit API keys and SMS phone number for each client account.
Can login as sub user to debug or assist with issues.
Can add, remove users both admin and sub account users.
Can limit total messages sub account can send per month.
Can view log file of system from admin portal.
Reporting, can view total messages for month and can view total messages per client.
Client portal:
Can see used messages and remaining number of messages (sent and received) based on sub account limit set by admin. (If 1 SMS message is sent to 200 users, message sent by authorized user =1 + 200 = 201 messages total)
Can add, remove authorized senders. First Name, Last Name, Position, Cell Number, authorized groups, check box to associate user with one or many groups.
Can create, edit, delete groups.
Can add, remove, edit users.
Users: list all, or by group. search by name, phone number, group.
Can view reports,
reports show the message that was sent, what user and phone number originated the message and a delivery report for each number that it was sent to.
Can send message from portal. enter number or select existing group. and type message and click send button.
Break into multiple messages if over max character limit for single message.
message report sent via sms to senders number after completion.
Auto purge logs over 60 days.
Client creates group named allstaff and enables auto subscribe (This is optional - this needs to be checkbox or toggle option and if enabled the client will need to set an autoresponse message that will be sent to numbers that have joined.)
Client authorizes 15035553434 to send messages to allstaff group
an employee sends "nightshift" to SMS number and it adds them to the nightshift group. System autoreplies with welcome message set by client : "You have been added to the allstaff group - Reply STOP to leave the group"
Anyone replying stop (case insensitive) will be removed from the notification system and this must be logged so that the client can see that they were removed from the group.
Auto respond to incoming message if it is not an authorized broadcast message from an authorized sender.
Example: authorized number sends message but does not match valid group: No matching group found.
Example: unauthorized number sends message with valid group: You are not authorized to broadcast messages to this group
Example: unauthorized user sends message with no valid group: This number is for broadcast notifications only - No incoming messages are accepted.
Authorized number 15035553434 sends message with valid group: Message sent to $group results: success
Example:
15035553434 sends message to +18003441212
Message: 'Allstaff Just a reminder that the staff meeting is July 17th at 10AM' - The system will only forward the message to the allstaff group members if it originates from that groups authorized senders list.
15035553434 sends message to +18003441212
Message: 'nightshift Just a reminder that the staff meeting is July 17th at 10AM' The system will only forward the message to the nightshift group members if it originates from that groups authorized senders list.
This needs to be solid and reliable and survive Linux OS updates. Preferred NODE.js