queb
What it does
queb (Queen's University Event Bot) is a Facebook Messenger chat bot allowing users to learn about local events in their area. It is aimed at Queen's students and residents of Kingston, but anyone can converse with the bot to learn about events in their area.
How we built it
Built by Stephen (@BearGuy) and Simon (@skhzhang) at QHacks 2017 (qhacks.io) at Queen's University within a timespan of 36 hours. It was the first time we ever worked with chat bots or Natural Language Processing, and was an amazing way to learn.
We use Facebook's Graph API and @tobilg's API at https://github.com/tobilg/facebook-events-by-location to get data about events. Everything was put together using Node and Express, and was built using Gomix (gomix.com).
Users directly interact with queb using Facebook Messenger (https://developers.facebook.com/docs/messenger-platform/), which connects with wit.ai (http://wit.ai) handling the Natural Language Understanding and Processing work.
The bot's Facebook page is at https://www.facebook.com/queb17/, but you might need to ask Stephen for rights before you can talk to it.
Challenges we ran into
This is the first time either of us had seriously tried to build a bot, and the first time either of us truly delved into natural language processing. At first we didn't know the nuances and even core functionality, training our bot was more like teaching it bad habits than making a credible chat bot. We aren't big node users either, so we forgoed trying to structure the project in an elagant way.
Accomplishments that we're proud of
Using the facebook-events-core-by-location-core library, we were able to find local events and display them in a way that Messenger was made for. The bot is able to compare location and time desires from the user, and is able to filter events appropriately to meet their demands.
What we learned
Manual bot training is tedious yet initially important. In the future, I'd look more into automating bot training the bot to make more time for features creation.
What's next for quebChatBot
We need to solidify it's vocabulary and get it to consistently respond to commands correctly. We would like to integrate with Queen's Events, a group on campus that looks to help students organize, market, and contribute to events around Queens and the Kingston area.
Log in or sign up for Devpost to join the conversation.