Joke Twitter Bot
Description
This is a Twitter bot that will periodically tweet out a joke obtained from a joke API https://icanhazdadjoke.com/
Installation
Run npm i
to install dependencies
Setup
An environment file is required to contain the secret keys for the Twitter API and the joke API's URL. The naming convention for this file is [STAGE].env.json
, for example dev.env.json
.
This is the env file that should be placed in the project root.
{ "JOKES_API_URL":"https://icanhazdadjoke.com/", "TWITTER_CONSUMER_KEY": "YOUR KEY GOES HERE", "TWITTER_CONSUMER_SECRET": "YOUR KEY GOES HERE", "TWITTER_ACCESS_TOKEN_KEY": "YOUR KEY GOES HERE", "TWITTER_ACCESS_TOKEN_SECRET": "YOUR KEY GOES HERE"}
Testing
The bot can be invoked manually during development with the following command
sls invoke local -f bot
Deployment
- Both the
STAGE
andREGION
options can be used with this bot. If left out the bot will default todev
stage andeu-west-1
region.
Deploy command
sls deploy --stage dev --region eu-west-1
Notes
The API request in helpers/jokes.js
sets a custom User-Agent header to identify users to the joke API owners. Please customise this to your library name.