Skip to content

Latest commit

 

History

History
61 lines (39 loc) · 2.27 KB

README.md

File metadata and controls

61 lines (39 loc) · 2.27 KB

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.

Technical details

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.

If you want to defray my hosting costs, there's always bitcoin and Patreon.