Python | JavaScript
A simple GroupMe bot that reacts to messages sent within a group.
- Quickly get our sample bot up and running in your groups
- Deploy the code to heroku
- Create a bot
- Configure to your bot's credentials
- Make changes to the bot
- Pull the code down to your local machine
- Configure the local environment variables to your bot's credentials
- GroupMe account
- Heroku account
- Heroku CLI
Be sure to log in to Heroku, using your Heroku credentials, then click the link below.
You should be taken to a page that looks like this:
Optionally, you can give your app a name, or instead leave it blank and let Heroku name it for you (you can change it later).
Go to: https://dev.groupme.com/session/new
Use your GroupMe credentials to log into the developer site.
Once you have successfully logged in, go to https://dev.groupme.com/bots/new
Fill out the form to create your new bot:
- Select the group where you want the bot to live
- Give your bot a name
- Paste in the URL of your newly deployed Heroku app
http://your-app-name-here.herokuapp.com/
- (Optional) Give your bot an avatar by providing the URL of an image
- Click submit!
Go here to view all of your bots: https://dev.groupme.com/bots
Click on the one you just created.
On your Bot's page, copy the Bot ID
Go here to see all of your Heroku apps and select the one you just created before:
https://dashboard-next.heroku.com/apps
On your app page, click settings in the top navigation:
On your app's setting page, find the Config Vars section and click the Reveal Config Vars button:
Then click edit:
Fill out the form to add an environment variable to your app:
- In the "key" field type: BOT_ID
- In the "value" field paste your Bot ID that you copied in the previous steps
- Click the save button
Go to GroupMe and type "/ping" in the group where your bot lives to see it in action.
Within terminal, change directory to the location where you would like the files to live, then run this command:
heroku git:clone -a YOUR_APP_NAME_HERE
And then change directory into the new folder
cd YOUR_APP_NAME_HERE
You will need to set the BOT_ID
environment variable so that your bot will know where to send its messages.
If you don't know what your Bot ID is, please refer back to this section, where it is explained how to retrieve it.
In your terminal, run
export BOT_ID=INSERT_YOUR_BOT_ID_HERE
You may wish to add this to a file that runs each time you start your shell, such as ~/.bashrc
.
For Heroku, run:
heroku config:set BOT_ID=INSERT_YOUR_BOT_ID_HERE
To test your bot locally, open terminal and install dependencies:
pip3 install -r requirements.txt
Then start a local server.
FLASK_APP=bot.py flask run
or use gunicorn to imitate the production Heroku environment:
gunicorn bot:app
Then navigate to http://localhost:8000
in a browser.