Last week when being in the hospital waiting for my brother to get surgery I realized there could be some way to automatically inform the patient's relatives of the current status of the surgery. This could in some way calm them down and get ready to go to the waiting area if they're not in the hospital yet, etc.
What it does
People don't usually like downloading apps that do the same as the famous ones already in the store. So to integrate this solution we decided to use chatbots to improve the user experience by enabling conversational feedback always more pleasant for the final user. Also it can be integrated with channels the users are already familiar to such as Facebook Messenger, SMS, Skype, even Whatsapp. This chatbot allows you to check the current status of an ongoing surgery or check the today's meal for the patient (the patient can do so too). It also automatically send you push notifications so you don't have to constantly check the status manually. We also integrated the bot with the Cisco Spark platform.
How we built it
We buit it using Microsoft Bot Framework for developing the bot's business logic and conversational flow. MBF provides a seamless integration with a variety of different channels. We built a simple REST API using Node.js and Restify to manage the patient's status, today's meals and hospital data, sort of simulating a hospital database. The bot connects to this database to check the status of a patient. We used Firebase Database as an asynchronous and real time database. This allowed us to trigger notifications on status change.
Challenges we ran into
When trying to integrate Cisco Spark's API there is not way to make it work with Microsoft Bot Framework. So we created a middleware to make this possible. Also notifying the final user asynchronously and proactively was not easy so we had to use Firebase Database to trigger notifications.
Accomplishments that we're proud of
Implenting Cisco Spark's bridge to work with Microsoft Bot Framework and making the user experience more human by using chatbots. Also we are proud of making the bot proactive by allowing it to automatically know when the status of a patient has changed and notifying the relatives.
What we learned
We've learned to use the Cisco Spark API along with Microsoft Bot Framework and to easily build chatbots on different channels.
What's next for Patient Status Bot
Add more features, add NLP, improve the integration with Cisco Spark's API to use all of its functionalities.