Inspiration

We wanted to create a chatbot that would be useful for any type of team that uses slack. Neither one of us knew much about chat bots and thought it would be a great learning opportunity.

What it does

When it is directly messaged, you can ask it to create a survey. You can create a name for the survey, a question for the survey, and a type - free response or multiple choice. If you choose the type to be multiple choice, it will ask you what you want the answer choices to be.

How we built it

We decided to use the Botkit package for node, We decided to use Botkit because it is very popular for making bots for slack. It can also connect to other messaging platforms. We also used node to connect to Slack, and Firebase for a simple. lightweight database to save survey info.

Challenges we ran into

The initial challenge was deciding what framework to choose, and then learning to use that framework as we developed. It was especially challenging due to somewhat lacking documentation. We had to do lots of test to understand what objects were being passed into different methods and the structure of those objects. Testing was also a challenge because we didn't have an automated process.

Accomplishments that we're proud of

We were able to connect the bot to our slack channel and have the main conversation flow established. It creates the survey and send the data to Firebase for storage.

What we learned

That good documentation can be a godsend! Also we learned about connecting bots to slack and sending messages, listening for messages and building conversations in Botkit.

What's next for Slack Survey Bot

Next, it will send out the survey to all the channel members, collect responses and attach it to the appropriate survey. Then it will be able to analyze the results.

Built With

Share this project:

Updates