National Rick Astley Hotline
You're welcome, Internet.
- Australia: +61-3-8652-1453
- New Zealand: +64-9-886-0565
- UK: +44-11-7325-7425
- USA: +1-760-706-7425
Want me to continue bringing whimsy to the world? Support me on Patreon.
You can also become a fan on Facebook.
The National Rick Astley Hotline brings joy to thousands of people each year. It uses the following software stack:
- Twilio for the front-end numbers.
- Flask for running the microserver that handles requests from Twilio.
- Zappa for deploying the flask app to AWS/Lambda.
Running this code
First, set up your virtual environment and install the requirements:
$ virtualenv venv $ . venv/bin/activate $ pip install -r requirements.txt
To run, simply:
$ . venv/env/activate # If not already in your venv $ python rickroll.py
This runs the flask server on a local port, so you can poke around with it.
The flask quickstart explains how you can run flask on a public server, at which point you can point a Twilio webhook at your server and you've built your own hotline!
Deploying with Zappa
The main service runs using AWS Lambda, a
scalable, serverless platform which removes the overhead of needing to maintain an underlying
server. The Zappa documentation
provides detailed set-up instructions, but if you have your
~/.aws/credentials file in order,
it should be as simple as:
$ . venv/bin/activate $ zappa init $ zappa deploy
Record the URL it spits out, connect it as a webhook to your own phone number with Twilio, and you have your own serverless Rick Astley Hotline!
How much do you spend bringing joy to Rick Astley fans?
As of mid 2018, connection costs were averaging about $900 USD/yr. It's totally worth it for the joy it brings others.