# README
Google Calendar Bot
I can connect to your Google calendar and notify you of invites, upcoming events and more! 📅
Running
In order to run the Google Calendar bot, there needs to be a running MySQL database in order to store account and webhook data.
- On that SQL instance, create a database for the bot, and run
db.sql
to set up the tables. - Build the bot using Go 1.13+, like such (in this directory):
go install .
- Create an OAuth Client ID for a 'Web Application' via the Google API
Console. Download
the credentials locally as
credentials.json
. - In order for users to login using a web browser, the bot needs a server side secret. You must pass this in with
--login-secret
. - The bot sets itself up to serve HTTP requests on
/gcalbot
. The HTTP server runs on port 8080. You can configure nginx or any other reverse proxy software to route to this port and path. - To start the Google Calendar bot, run a command like this:
# NOTE --kbfs-root specifies the path to the crendentials.json file. # NOTE --http-prefix needs to be https for the Google API webhooks to function $GOPATH/bin/gcalbot --dsn 'root@/gcalbot' --kbfs-root ~/Downloads --http-prefix https://mydomain.com --login-secret 'moony wormtail padfoot prongs'
- Run
gcalbot --help
for more options.
Helpful Tips
- If you accidentally run the bot under your own username and wish to clear the
!
commands, run the following:keybase chat api -m '{"method": "clearcommands"}'
- The following links are helpful for using the Google Calendar API:
Docker
There are a few complications running a Keybase chat bot, and it is likely easiest to deploy using Docker. See https://hub.docker.com/r/keybaseio/client for our preferred client image to get started.
# Packages
No description provided by the author