Cloud Manthan receives number of queries for training via email and/or phone calls. Depending upon the availability of the concerned person the responses are either given immediately or later. If the concerned person is not available then it results in delay in providing responses.
Training vendors who contact Cloud Manthan generally have deadline within which they need to go back to end customer. The timely response is crucial most of the times to strike the deal. Any delays in response results in loss of business.
We also receive requests from individuals who would like to attend the training/workshop provided by us and if we are not available to respond to these requests we lose opportunity to serve our customers.
What can we do to solve this problem ? How can we quickly respond to our customer needs ?
We thought of addressing this problem by implementing Chatbot which is available 24x7.
What it does
Chats with user in Natural Language in English so as to understand the training requirement Chatbot enables the conversation by providing appropriate information and seeking responses to questions such as
“We provide training on following topics 1.Amazon Web Services (AWS) 2.Microsoft Azure
- Docker 4.Microservices
On which topics would you like to have training ? Please select the appropriate number or topic.”
Based on the response such as ‘AWS’ it asks further questions around specific courses offered under each topic As part of fulfillment it send the chat responses back to user’s phone number and also sends an email to Cloud Manthan’s training representatives
How we built it
Using Amazon Lex , AWS Lambda, SNS , SES and DynamoDB services from AWS.
- Lex is used as NLP based workflow.
- DynamoDB stores the topics, courses under each topic , availability , duration and commercials information . It also captures information of user if provided - such as name,phone number, email and so on.
- Lambda - is used as an input validation and fulfillment function
- SES is used for email notification This is integrated with Slack and we intend to make it publicly available on Slack
Challenges we ran into
- It is not clear how to capture ‘email’ and that is something is still not solved for us
- Numbers in utterances - Our team was trying to build the chatbot which works on the Course name or course number but ChatBot does not accept the number in utterances. This is still not solved for us
Accomplishments that we're proud of
None of our team members are/were familiar with AI and Machine learning and we were not sure about if we would be able to build something like Chatbot. However AWS has simplified the whole process and we are very much excited to learn and explore it further beyond the competition.
What we learned
Everyone on the project learned about Lex, Slack and various integration options pretty quickly
What's next for GurukulChatBot
As a next step we want to improve this chabot
- With more dynamic data population and cover all the flows
- Would like to send chat transcript to the user’s email, mobile phone
- Would like to store chat transcript in DyanmoDB to use it for auditing purpose
- Integrate with QuickSight to view the analysis of the requests
- Integrate with Facebook Messenger
- Use response cards to have better user experience