MovingBlocks / GooeyJr

Next round of development on Gooey, our chatbot based on Hubot
2 stars 16 forks source link
coffescript hubot

GooeyJr

This repo contains an upgraded version of Hubot that was started during Google Code-In 2016 for MovingBlocks. Its goal is to replace the aging Gooey bot that was built on Hubot a long time ago.

See the Hubot Readme for basic details on how Hubot works

Environment setup

Running the bot on IRC

So now:

Once you've done this, you can now configure the bot by first giving it a nickname that will be displayed on IRC:

It should automatically start after you have entered the above commands (there might be a slight delay), but if not try: heroku ps:scale web=1.

To turn off the bot type heroku ps:scale web=0. You can also restart the bot by typing heroku ps:restart web.

If you face any errors, make sure to check the logs by typing heroku logs.

Have fun!

Additional configuration for irc.freenode.net

If you are testing out GooeyJr, there is no need to set this up. Espernet will work fine for testing purposes.

Unlike Espernet, Freenode requires SASL authentication for any user connecting from AWS (which Heroku uses). Therefore, we need to set the following environment variables to allow our bot to connect to Freenode from Heroku. You will need to register an account on Freenode using your email before setting this up.

heroku config:add HUBOT_IRC_USESASL="true"
heroku config:add HUBOT_IRC_USERNAME="YOUR_USERNAME"
heroku config:add HUBOT_IRC_PASSWORD="YOUR_PASSWORD"

Note: Ensure that HUBOT_IRC_NICK is set to the same nickname used to register for your freenode account i.e. HUBOT_IRC_NICK should be the same as HUBOT_IRC_USERNAME.

You will also need to change the server to Freenode. To do this, enter heroku config:add HUBOT_IRC_SERVER="irc.freenode.net". The channel will be #terasology, the same as with Espernet.

Running the bot on Slack

Deploying GooeyJr on Slack in similar to deploying it on IRC, except you'll be using the develop branch instead.

You only need to add the HUBOT_SLACK_TOKEN configuration to allow the bot to connect to your Slack workspace.