Skip to content

An AI on Slack to automate the process of inviting many people to an event on Google Calendar

Notifications You must be signed in to change notification settings

bnguyen212/Slack-Scheduler-Bot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Slack-Scheduler-Bot

A Slackbot to help you set up reminders and schedule Google Calendar events with other team members.

Objectives

  1. Set reminders
  2. Schedule meetings

Data Flow

  1. User sends a direct message to SchedulerBot:
    • Samples: Schedule a meeting with @Franky at 2pm next Tuesday, Remind me to buy grocery tomorrow
    • For first-time users:
      • SchedulerBot provides a URL for user to authorize access to user's Google Calendar
  2. SchedulerBot sends user's message to Dialogflow via an express server hosted on Heroku
  3. Dialogflow analyzes the message and returns a JSON object of parsed information
{
...
"result": {
  ...
  "action": "set_meeting",
  "actionIncomplete": false,
  "parameters": {
    "start_time": "14:00:00",
    "invitees": [ "Brian", "Franky" ],
    "date": "2018-04-03",
    "subject": "Weekly Seminar",
    ...
    }
...
}
  1. Express server tells SchedulerBot to prompt user for confirmation of the new meeting/reminder based on returned intent & parameters
  2. User can either confirm or cancel
  3. (If user confirms) SchedulerBot signals the express server to go ahead with the request
  4. Express server uses Calendar API to create new reminder/meeting on user's Google Calendar
  5. SchedulerBot sends user a message when the new reminder/meeting is successfully created.

Dataflow

API References

About

An AI on Slack to automate the process of inviting many people to an event on Google Calendar

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%