This project provides a Slack integration to enable starting video conferences from Slack and easily inviting Slack members to conferences.
Enables starting and joining Jitsi Meet meetings from within Slack
These instructions will get you started with the ability to run the project on your local machine for development purposes.
A working setup for the Go Programming Language is needed. Here is a getting started guide. The project is currently using go version 1.11 along with module support.
A slack account needs to be created as well as an app. The app created is intended for development
purposes. The following functionality must be enabled in the Add features and functionality
section of the slack app configuration:
- Slash Commands
- Bots
The slash command setup is /jitsi
and the bot mention name is @jitsi_meet
.
SLACK_SIGNING_SECRET=<signing secret of slack app>
SLACK_CLIENT_ID=<client id of slack app>
SLACK_CLIENT_SECRET=<client secret of slack app>
SLACK_APP_ID=<slack app id>
SLACK_APP_SHARABLE_URL=<slack app url for sharing install>
DYNAMO_TABLE=<dynamodb table name for storing oauth tokens>
DYNAMO_REGION=<dynamodb region used>
JITSI_TOKEN_SIGNING_KEY=<key used to sign conference asap jwts>
JITSI_TOKEN_KID=<key identifier for conference asap jwts>
JITSI_TOKEN_ISS=<issuer for conference asap jwts>
JITSI_TOKEN_AUD=<audience for conference asap jwts>
JITSI_CONFERENCE_HOST=<conference hosting service i.e. https://meet.jit.si>
Features are being worked on that assist with local development that remove the need for dynamodb and support a developer's Slack workspace.
Clone this project and build with go build cmd/api/main.go
or build and run with go run cmd/api/main.go
Dependency management for this project uses go module as of go version 1.11. More information can be found at go command documetation.
This project uses Semantic Versioning for the code and associated docker containers. Versions are tracked as tags on this repository.
This project is licensed under the Apache 2.0 License LICENSE