Often time restaurant owners get similar questions from customers from many different media. Questions regarding menu, delivery service, reservation, working hours, dress code and so on have pretty much a straight forward answer. It would be great to have a service that would provide automated answers to those questions. Also if we can channel all the conversations from different media to a single platform, that would make life way easier. That was the inspiration for this platform and it went way beyond that.
What it does
This is a chatbot building platform for restaurants from where owners of the restaurants can easily integrate a chatbot into their websites and their facebook page. Using this platform, users are also able to run facebook and google ads campaigns without having to go to facebook/google ads manager dashboard. Here is a list of features that are covered by the platform.
- Users can easily create a chatbot by setting up a few variables from the dashboard.
- By adding a few lines of code (provided in the dashboard), users can integrate a chat window to their website.
- By a few clicks, users can integrate the chatbot to their facebook pages, without having to deal with facebook settings.
- Users can set up live chat both for the web and facebook. As soon as a customer asks for a live chat, the user gets a notification in the MyDiningBot mobile app and he can join the chat from there, without having to go to the web or facebook.
- If the customer asks for live chat but no recipient is there to answer, the customer will be asked to leave his name, email and phone number. This information will be emailed to the users so that they can contact the customer.
- Users can set up facebook/google ads campaigns right from the dashboard. Users can also benefit from 20 built-in templates for the campaigns.
- Users can view the information collected from the campaigns.
- Users can get very detailed analytics regarding the platform and a monthly report emailed to their emails.
- Multiple languages are available for the chatbot.
How We built it
We used Dialogflow for NLP which keeps track of the conversation. To deal with the variables, we used a node.js API as a webhook (marked as central node in the diagram). When ever a live chat is detected, it is channeled through the chat node which gives a notification to the chat app (Chat app is an hybrid app that is available on web, android and ios platform). There is a dashboard application (admin node) that allows admins to create and customize chatbot, create ads campaign and get analytics. We used Mongodb as a database and Redis for caching. In this diagram, customer node represents customer from both website and facebook.
Challenges We ran into
This project was full of unknowns and challenges. Here are the top challenges that we faced.
- Integrating live chat,
- Bypassing dialogflow-facebook integration and having our own way to implement dialogflow-mydiningbot-facebook by using facebook-login and
- Bringing the facebook and google ads to the dashboard.
Accomplishments that We are proud of
- Allowed users to add the same bot to both website and facebook page.
- Provided a one-stop solution for live chat for both website and facebook messenger
- Provided a one-stop solution for ads management for google and facebook.
- Provided 20 builtin conversation for ads campaign.
- Provided multiple language support for the chatbot
What We learned
In this project, we learned
- how to make a chatbot using dialogflow
- how to integrate a chatbot to website and facebook page
- how to handover the chat to a real person
- how to use facebook and google ads API
What's next for MyDiningBot
We are willing to take a step forward and let the users integrate the chatbot to Google My Business and also to twilio numbers. This will help us address more people.