Skip to content

jmoseley/discord-relay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

discord-relay

Relay for outbound webhooks for Discord messages.

API Usage

GET /bot/auth?clientId=

Helper to get a bot added to a channel. Redirects to the Discord OAuth endpoint.

POST /bot/add

Body parameters:

  • botToken (required)
  • webhookUri (including protocol) (required)
  • method (one of GET or POST) (required)
  • headerName1 (optional)
  • headerValue1 (optional)
  • headerName2 (optional)
  • headerValue2 (optional)
  • headerName3 (optional)
  • headerValue3 (optional)
  • headerName4 (optional)
  • headerValue4 (optional)
  • headerName5 (optional)
  • headerValue5 (optional)

This adds your bot to the server and makes it begin listening to messages. This will also be persisted so it will start whenever the server starts.

Install Deps

  1. Install yarn
  2. Install modules: yarn

Running the Service

yarn start

Local Development

Uses forever and nodemon to restart after changes and errors.

First, download and start DynamoDB locally:

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html#DynamoDBLocal.DownloadingAndRunning

Start DynamodDB: java -Djava.library.path=./dynamodb_local_latest/DynamoDBLocal_lib -jar ./dynamodb_local_latest/DynamoDBLocal.jar -inMemory

DISCORD_CLIENT_ID=<value> DISCORD_CLIENT_SECRET=<value> DISCORD_OAUTH_REDIRECT_URI=<value> COOKIE_SECRET='123456' yarn dev

Deploy

Using Heroku, deployment is easy.

  1. Install Heroku CLI
  2. Login: heroku login
  3. Push: git push heroku master