A Discord application to call your phone (yes, your actual phone) through Twilio in case of emergencies.
- If you're managing some form of service, like a webserver or Discord bot then your staff can call your cellphone if it's down.
- If a server you're admin in is getting raided and you're not available, they can call your cellphone to let you know.
Generally, it's a way for other Discord members to contact you through your phone. The main purpose is to be even more available, like when you don't have Wi-Fi/celluar data availale.
- Deploy with Workers
- Insert the environment variables listed in the
wrangler.toml
file. You can either use thewrangler
command, or do it through the worker dashboard. - Edit the Discord application and set the interactions endpoint to
https://phone.WORKER_SUBDOMAIN.workers.dev/interaction
. This is where the bot will receive interactions. - Go to
https://phone.WORKER_SUBDOMAIN.workers.dev/update-commands?key=DISCORD_PUBLIC_KEY
to update and register the/call
slash command. - Add the bot by visiting
/invite
. Make sure to uncheck "Public bot" in the Discord Developer portal so other people can't add it to servers you don't want to have access to call you. - It might take some time before the command appears because of Discord's caching, but you should be able to use the
/call
command within the hour!
sequenceDiagram
autonumber
participant D as Discord API
participant W as Cloudflare Worker
participant T as Twilio API
activate D
D->>W: Send an interaction
activate W
alt signature header is not valid
W-->>D: 401 Unauthorized
end
W->>T: Send call request
activate T
T->>T: Calls the user
T-->>W: 200 OK
deactivate T
W-->>D: 200 OK (with Interaction Response)
deactivate D
deactivate W
loop until call is finished
T->>W: Call Status Update
activate T
activate W
W->>D: Update Interaction with new status
activate D
D-->>W: 200 OK
deactivate D
W-->>T: 200 OK
deactivate T
deactivate W
end
It might cost a tiny little bit of money after you've used up your free trial at Twilio. The amount really depends on your location, the Twilio phone number's location etc. - but the free trial will probably get you a long way already.
I think it's obvious enough... but I will not pay for your phone number.