Generate Google Meet links from Slack !
Explore the docs »
Report Bug
·
Request Feature
This project uses your google account to create event in your calendar in order to get a meet link.
It's a bit hacky because there isn't Google Meet API, but it's been used in my company for more than 1 year at the time of writing this line !
yarn install # Install dev dependencies
cp .env.example .env # Duplicate the env file and rename it to .env
You can already fill the CALENDAR_EMAIL
with your google email account.
- Follow the step 1 here: https://developers.google.com/calendar/quickstart/nodejs. Make sure that you are logged with the google account you used to fill the
CALENDAR_EMAIL
env in the .env file. - When asked to "Configure your OAuth client", select "Web Server". Fill the callback url with
http://localhost
- Copy / paste the Client ID and Client Secret in the .env file
- Run
yarn setup:credentials
. When asked for a google account, select the one used in the steps above. - You will probably have a screen with a warning about an app not approved; you can continue with that (because it's your app, I will not steel any data :p )
- Accept all permissions
- Paste the credentials json inside the CREDENTIAL key in the .env file
- Now your server should be able to contact your calendar and create event !
- Go to https://api.slack.com/apps, and click "Create New App"
- Fill the name with what you want, and select the workspace in which you want to add the Meet Generator.
- On the new page, in the "Add features and functionality" section, click on the "Slash Command" card
- Click on "Create New Command"
- Fill the informations with what you want, and make sure that the "Request URL" is the url of the server on which you have this project running, or at least an ngrok if you want to test it locally; append
/api/slack-handler
to this endpoint. - Check "Escape channels, users, etc...", and click "Save"
- Go back to "Basic Information", and open the "Install your app" section.
- Click on the "Install to Workspace" button to install it
- Now you should be able to type
/meet
on every channel of your workspace !
# development
yarn start:dev
# Prod
yarn build
yarn start:prod