The Unofficial Blue Alliance Slack Bot Setup

These instructions provide essential information for Slack Admins and authorized users to install our hosted TBASlackBot for their Slack Team. If you are looking to build and run your own instance, please refer to the source code for requirements and installation instructions.

Please read these instructions thoroughly before installing!

Currently, the bot is in a beta state, with most query functions and notifications working properly. That said, iteration in development has been on features and functions, not extensive testing. In other words, you may find bad output, or even ways to break the bot.

How to Use the Bot - and some Warnings

After setting up the bot, the bot will message the user that set it up with some basic information. By default, the bot does not join any channels (including #general) on your team. Team members can open a DM with the bot and issue commands, and members with appropriate permissions can /invite the bot into other channels.

WARNING: The Slack Event API (which the bot uses to receive messages) does not allow the bot, or you, to filter what messages are received. The bot will receive a copy of every message sent and received in the channels the bot is invited to. Currently all messages the bot receives are shown on console temporarily to aid with debugging, and are not permanently saved, or written to disk. Therefore nothing said in a channel the bot has been invited to, at this time, is private. Presently only one person has access to the console output, our programming mentor. The message logging will continue to be reduced as development moves on, as we have no interest in your channel chat.

If this concerns you, simply don’t invite the bot to any channels.

Information We Keep, and Why

What we Keep Why we Keep it
Commands, parameters, and who sent it Usage statistics, troubleshooting
Any feedback sent Troubleshooting and improving the bot
Slack Team OAuth Tokens To authenticate the bot to Slack
Slack Team Name For future use in bot replies
Slack User Id and Short Name For use in troubleshooting, and for the bot to reply to users by name
Slack ChannelId, Name, and Type Id and Type are used to send replies, name is used in troubleshooting

We keep and store the least amount of information possible to troubleshoot and efficiently do the work the bot was designed for.

Interacting with the Bot

Please refer to our Documentation for how to work with TBABot, or send help to the bot at any time.

About Slack Permissions

The bot requests a number of permissions when you set it up. Many are used today, some are added for soon-to-be-added features, and some are for future-proofing. Here’s a list of the permissions we request and why we request them (as shown in the authorization screen):

Permission Reason
Confirm your identity Added by Slack, not us
Access information about your channels and direct messages This is used to keep a list of channels the bot can access
Access information about your team Future: Contains only team name, Slack domain, and icon
Access your team’s Do Not Disturb settings Future: Allows the bot to see if a user is in do not disturb mode, and act accordingly
Access your profile and your team’s profile fields To reference the user by name in replies
Send messages as The Blue Alliance Slack Bot Self explanatory
Add a bot user with the username @tbabot Self explanatory
Access your team’s profile information See the profile access description above

Updates and Improvements

The bot is currently being updated almost daily with improvements and updates. We strongly encourage users to use the help changelog command to keep on top of changes and new features.

Bugs, Problems, Feature Requests

There is the feedback command in the bot itself, or feel free to post an issue on GitHub once the source code is released.

Gracious Professionalism®

The TVHS Dragons offers this service to the FIRST® Robotics Competition community with the understanding that users will honor the ideals of Gracious Professionalism in how the bot is used. This would include, but is not limited to, excessive or abusive usage (please don’t ask the bot about every team), or attempting to follow every FRC team. TBABot is currently hosted by one of our mentors at their personal expense.

Ready to add the bot?

Just click here:

Add to Slack