/rushbot

A sketchy mass SMS system using the Twilio and GroupMe APIs

Primary LanguagePython

Rushbot

A sketchy mass SMS system using the Twilio and GroupMe APIs.

img

Have you ever needed to implement a mass-bidirectional-SMS-at-scale system overnight? with $25 budget? Rusbot was originally intended for fraternal recruitment purposes but can easily be adapted to critical communication infrastructure.

Your risk tolerance is the only limit!

Rushbot works in two parts: a cli for sending the initial mass text and a webserver for handling conversations.

SMS CLI

To send out a mass text run the following:

python3 rushbot.py send_list.csv

where send_list.csv a csv with the following format:

firstName, lastName, phoneNumber

It will send a formatted message to every row in the csv using the recipients first name so they will at least read the message out of concern that some random person knows their name. This can be customized by changing the msg_body variable.

It's important that the phone number has an american country code. Rushbot is a true patriot and refuses to talk to non US numbers.

webserver

If you don't just want to shout into the void you might want to set up the webserver before running the cli. The webserver is a simple flask application with two routs /webhook for receiving messages from twilio and forwarding them to a the groupMe API and /callback for forwarding messages from the groupMe API to the twilio api. After deploying the flask application it's important to keep the IP address supper secret because I never got around to implementing any sort of authentication protocol. Someone could potentially form a malicious post request and send messages on your organizations behalf.

Also remember to copy the csv you used to send out the mass text to the same directory as the flask application or else Bingo won't know anyone's Name-O

Responding to responses

If someone responds to your mass sms it should pop up in your dedicated group message like this:

img

To reply to them simply reply like you normally would in a groupme group chat and it will it will start a message chain.