• Stars
    star
    238
  • Rank 168,282 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created over 8 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

National Rick Astley Hotline

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.

More Repositories

1

exobrain

Automate your life with Exobrain
Perl
218
star
2

masterwork-dwarf-fortress

Patches and bugfixes applied to Meph's amazing Masterwork Dwarf Fortress
Ruby
33
star
3

autodie

Make functions succeed or die in Perl, with lexical scope.
Perl
33
star
4

skyrim-requiem-wine

A guide to running Skyrim/Requiem under Linux/Wine
28
star
5

anki-deck-scraper

Scrape all shared anki decks
HTML
24
star
6

ipc-system-simple

Perl module to make running system commands and capturing errors as simple as possible.
Perl
19
star
7

perl589delta

The perl589delta.pod file for the 5.8.9 release of Perl
Perl
11
star
8

trillr

Perl tip example code
Perl
8
star
9

pjf.github.io

Paul Fenwick's personal website
HTML
7
star
10

remember-the-beeminder

My own personal tools for integrating RTM and Beeminder
Perl
7
star
11

talks

Talks by Paul Fenwick
Perl
6
star
12

Markdown-phpBB

Markdown to phpBB converter
Perl
6
star
13

WebService-HabitRPG

Access the HabitRPG API from Perl
Perl
6
star
14

fiction-is-awesome

Makefile
4
star
15

nms-compute

A profitability calculator for No Man's Sky
Rust
4
star
16

okc-archive

Archive messages from OkCupid
Perl
4
star
17

snapback

Automatically backup your machine to btrfs when a disk is plugged in
Perl
4
star
18

idonethis-perl

WebService::Idonethis - Interface with the iDoneThis website
Perl
4
star
19

sweeperbot

SweeperBot - Play Windows minesweeper automatically
Perl
3
star
20

perl-fortunes

A collection of modern perl fortunes.
3
star
21

proc-uid

Proc::UID - Sensibly manipulate Unix privileges in Perl.
Perl
3
star
22

scuba-table-nodeco

SCUBA::Table::NoDeco Perl Module - Calculate no decompression dive times
Perl
3
star
23

dh-make-perl

Debian's dh-make-perl (unofficial, PJF's branch)
Perl
3
star
24

clockwork-masters

Code for the Celestial Bodies exhibition in Melbourne
C++
3
star
25

open-source-and-social-change

My talk on Open Source and Social Change
Makefile
2
star
26

facebook-stalk

Harvest information from people on Facebook
2
star
27

taint-more

Make Perl's taint mode more paranoid
Perl
2
star
28

games-everquest-loglineparser

Parse EverQuest log files in Perl
Perl
2
star
29

future-is-awesome

The Future is Awesome (and what you can do about it) (talk)
Perl
2
star
30

voting-condorcet-rankedpairs

Implements the Ranked Pairs Condorcet voting system in Perl.
Perl
2
star
31

Games-GuitarHero-Stats

Grab your on-line guitar hero stats in Perl!
Perl
2
star
32

ksp-gamedata

My GameData directory for Kerbal Space Programme. Now you can have mods like PJF!
C#
1
star
33

exobrain-twitter

Twitter components for exobrain
Perl
1
star
34

WWW-Facebook-GetFriends

Get friends from Facebook. No auth required.
Perl
1
star
35

exobrain-habitrpg

HabitRPG component for Exobrain
Perl
1
star
36

pinpp

pinpp - The Pinpoint Preprocessor
Perl
1
star
37

4sq-list-clone

Clone 4sq lists like a champion!
Perl
1
star
38

foocal

Perl
1
star
39

KS-KSPStuff-Migration

CKAN Migration tools after KerbalStuff went down
Perl
1
star
40

WWW-Facebook-Graph

Access the Facebook Graph API from Perl
1
star
41

App-HabitXMPP

XMPP/Gtalk/Jabber server for HabitRPG
Perl
1
star
42

orc-fortress-wiki

Wiki of the Orc Fortress mod in Masterwork Dwarf Fortress
1
star
43

WebService-ZombiesRun

Thin interface for fetching Zombies, Run! data
Perl
1
star
44

ShelfRenamer

Rename your shelves and other storage buildings in RimWorld
C#
1
star
45

tidal-locking

1
star
46

WebService-Beeminder

Beeminder API module for Perl
Perl
1
star
47

app-stalksquare

Command-line tools for stalking people on FourSquare. Please don't use for evil.
Perl
1
star
48

TransportCostsRebalanced

Rebalance transport costs in Rise of Industry
C#
1
star