In a hectic world it is more important than ever to take care of your health. Sleep is very important part of our lives, and we wanted to integrate health data into your daily tools.
What it does
Theresa fetches data from end user's ŌURA account and can answer several questions about the sleep data in natural language. Theresa has access to your history data so you can track back your sleep. It is possible to ask about sleep duration, quality and heart rates for example. Theresa asks user's feeling at the morning. Theresa can tell what was the main problem in user's sleep based on user input and sleep data from ŌURA.
How we built it
Theresa bot is developed on Microsoft Bot Framework. It has a nodejs backend hosted in Heroku container. Natural language processing to transform chat messages to entities and intents is done using IBM Watson. Theresa is connected to the ŌURA REST-API in order to analyze sleep data of the end user. With the help of Bot Framework, Theresa can be used via Skype, Telegram, Slack and all other major messaging platforms.
Challenges we ran into
Main problems was with integrating the ŌURA's OAUTH2 authentication to the chat bot. We resolved the basic problem of redirecting back to the chat, by using custom HTML-site working together with the bot but decided not to develop the authentication flow in order to focus creating better interaction about the end user's sleep data.
Accomplishments that we're proud of
We managed to develop very useful bot in short period of time with the help of Watson APIs. We managed the train the bot to understand different ways to ask the questions quite well. We managed to create possibility to collect qualitative data and add features through simple and intuitive UI.
What we learned
We learned how to use Microsoft Bot Framework and especially how to use IBM Watson APIs. We also learned interesting facts about sleeping and how to improve it in daily basis.
What's next for Theresa
It would be easy to train Theresa more intents. We have ideas how to collect more qualitative data about the sleep of user and use it to improve ŌURA algorithms. Currently Theresa answers basically just facts about the raw data, but it would be great to ask Theresa about how to improve sleep and health. For example, it would be nice to ask Theresa "How can I make my sleep better?" or "What was my problem last week?"