Skip to content

Project for AWS Chatbot challenge, built with lex, lambda, dynamodb and APIgateway

Notifications You must be signed in to change notification settings

rahinj/dwightassistant

 
 

Repository files navigation

Dwight Schrute

DwightAssistant

Project I built for AWS Chatbot challenge

Here is full demo playlist

Spotify

Spotify

Gmail

Gmail

Uber

Uber

What it does

Dwight is a chatbot assistant that helps you connect to multiple services by adding them via OAuth. The services that I have added for now are:

Gmail : Access your mailbox through commands like "Show my unread emails", "Whats last starred mail", "Show mails after 17 july", "Show all emails sent by projjol", Send, forward, reply and other actions on mail

Spotify : Developing this skill was really fun and now I can control my music on Spotify via this new skill. I can search for new music. I can also play specific songs and artists using this skill

Uber: Travelling takes an important part of our day and organising this is efficiently is a major concern for me. Using this skill I can now book an Uber and constantly view the current prices.

Key Features

  1. One command and deploy whole stack to AWS. It leverages boto3 client to create/edit/update/delete resources in AWS
  2. Highly extendable architecture. Its extremely easy to add new services which uses Oauth to give access to user data
  3. Search mails by keywords, time, name of user who sent it, unread, starred etc
  4. Play music by artist name, track name and album. All player actions like play, pause etc
  5. Keep context between channels. Support you are chatting with Dwight on Facebook and you switch to Dwight slack, It will remember your last conversation and continue it

Self-Hosting

Note

  • If you want to start using quickly with out creating any service apps, ping me at mohmun16@gmail.com, I will share client_id and client_secret with you. Remember access_token will still be on your server so I wont have any acess to it so you own your data
  • There are lots of bugs (built within three day).also I'm new to aws so to get job done quickly, permissions setup are not proper in main.py

TODO

  • Uber schedule
  • Trigger messages from Lambda
  • Integrate Google drive, Youtube, Reddit, Facebook, Twitter, Google Maps etc.
  • For Gmail integration, push notification for incoming mails
  • Developer mode - Train lex through boto3 client.

About

Project for AWS Chatbot challenge, built with lex, lambda, dynamodb and APIgateway

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.6%
  • JavaScript 0.4%