Inspiration

This is inspired by an interface design course. In the transition to a new stage of learning, college freshmen are in specific need of developing their study habits and skills to achieve independent work in higher education. We designed a chatbot StudyBuddy to support freshman’s behavoiral change. Previously we administered interviews with peer tutors and surveys freshmen at Pitt’s CS department, which we found students have difficulties managing their project and time. Thus, we want to build a chatbot to support computer science freshman's assignment and their study habits.

What it does

We built a chatbot over Slack that uses natural language to interact with users, provide tips, manage their assignment workload and schedules.

How we built it

We built the chatbot by taking advantage of Slack of its chat capabilities as a tool with both mobile and desktop clients. We leveraged Google Cloud Platform's DialogFlow in creating the dialogue patterns for the chat agent to respond to the users. Using Slack API we made calls to the agent facing the user. Using Dialogflow API we could send across the DialogFlow responses to be processed by a backend API - Heroku for every dialogue pattern.

Challenges we ran into

The first challenge we ran into was to set up a two-way dialogue setup between DialogFlow and Slack, since the agents have "integration", but sending and receiving custom data that provides a richer context for the dialogue. We overcame this by setting up our API service backend which ran our custom js code on Heroku which could as the middle man between slack and Dialogflow in terms of custom data exchange. We also ran into several issues owing to the version of DialogFlow which we eventually fixed by writing code using the inline editor available on the DialogFlow Cloud-based Firebase

Accomplishments that we're proud of

A fully running chatbot on Slack that interacts with users in creative and interactive ways using natural languages. The chatbot contains the following features:

  1. Tips.
  2. Survey. In order to help students to periodically diagnose their study habits. We will push the LASSI survey every other week so we can monitor students’ study habits over time.
  3. breaking-down tasks
  4. reminders

What we learned

UX design pattern, how to build a bot on Slack, how to connect the DialogueFlow and Slack using heroku server. How to enhance our end-user experiences and deploy a real technical implementation.

What's next for Study Buddy Chatbot

We will conduct our user study to evaluate our chatbot usability and refine the interactions.

Built With

Share this project:

Updates