Skip to content

This chatbot provides NYC based restaurant recommendations based on cuisine type. It also supports table reservation methodologies.

Notifications You must be signed in to change notification settings

nobeldang/DiningConciergeChatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dining Concierge Chatbot

It is a serverless, microservice-driven web application built using AWS. The Dining Concierge chatbot based web application sends restaurant suggestions given a set of preferences that we provide the chatbot with through conversation.

The restaurants' metadata is taken from YELP api.

Web Application:

Services Used:

  1. AWS S3 - To host web application
  2. API Gateway - To setup api.
  3. Serverless (Lambda):
    -> LF0 - performs the chat operation and interacts with Lex.
    -> LF1 - A code hook for Lex. Also to manipulate and validate the parameters as well as format the bot's responses.
  4. Lex - The AWS Lex chatbot has three intents:
    -> Greeting Intent : Used for greeting user and provides reposne like "Hi there, how can I help?"
    -> Thank You Intent : Thanks the user for using the service.
    -> Dining Suggestion Intent : Collects information slots from user: Location, Cuisine, Dining Time, No. of People, Phone No. and Email.
  5. SQS - To store user's request. It uses polling to fetch requests.
  6. Elastic Search (Open Search) - To store restaurant ID and cuisine.
  7. Dynamo DB - To store restaurants' information like: Business ID, Name, Address, Coordinates, Number of Reviews, Rating & Zip Code
  8. SNS - To send restaurant suggestions to users via SMS and Email.

FLOW:

In summary, based on a conversation with the customer, the LEX chatbot will identify the customer’s preferred ‘cuisine’. We will then search through ElasticSearch to get random suggestions of restaurant IDs with this cuisine. At this point, we would also need to query the DynamoDB table with these restaurant IDs to find more information about the restaurants we want to suggest to your customers like name and address of the restaurant. We are filtering restaurants only using the cuisine.

About

This chatbot provides NYC based restaurant recommendations based on cuisine type. It also supports table reservation methodologies.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published