Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pjf/rickastley
National Rick Astley Hotline
https://github.com/pjf/rickastley
Last synced: about 4 hours ago
JSON representation
National Rick Astley Hotline
- Host: GitHub
- URL: https://github.com/pjf/rickastley
- Owner: pjf
- License: mit
- Created: 2016-04-02T16:28:59.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-12-26T20:25:51.000Z (almost 2 years ago)
- Last Synced: 2024-05-09T10:17:17.154Z (7 months ago)
- Language: Python
- Size: 21.5 KB
- Stars: 239
- Watchers: 8
- Forks: 16
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# 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-7425Want me to continue bringing whimsy to the world? [Support me on Patreon](https://www.patreon.com/_pjf).
You can also [become a fan on Facebook](https://www.facebook.com/full.commitment).
# Technical details
The National Rick Astley Hotline brings joy to thousands of people each year. It uses the following software stack:
- [Twilio](https://www.twilio.com/) for the front-end numbers.
- [Flask](http://flask.pocoo.org/) for running the microserver that handles requests from Twilio.
- [Zappa](https://github.com/Miserlou/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.txtTo run, simply:
$ . venv/env/activate # If not already in your venv
$ python rickroll.pyThis runs the flask server on a local port, so you can poke around with it.
The [flask quickstart](http://flask.pocoo.org/docs/0.11/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](https://aws.amazon.com/documentation/lambda/), a
scalable, serverless platform which removes the overhead of needing to maintain an underlying
server. The [Zappa documentation](https://github.com/Miserlou/Zappa#zappa---serverless-python-web-services)
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 deployRecord 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](https://blockchain.info/address/18pgvfqWGs2CvurmNvq58h499RRTPCh3mz) and [Patreon](https://www.patreon.com/_pjf).