zulip/docs/production/video-calls.md

3.8 KiB

Video call providers

Zulip makes it convenient to start a call with the click of a button, using the call provider of your choice. The call providers supported by Zulip are:

By default, Zulip uses the cloud version of Jitsi Meet as its call provider. This page documents the configurations required to support other video call integration options on a self-hosted Zulip server.

:::{note} It is possible to disable the video and voice call buttons for your organization by setting the call provider to "None". :::

Jitsi

You can configure Zulip to use a self-hosted instance of Jitsi Meet by providing the URL of your self-hosted Jitsi Meet server in organization settings. No server configuration changes are required.

Zoom

To use the Zoom integration on a self-hosted installation, you'll need to register a custom Zoom app as follows:

  1. Select Build App at the Zoom Marketplace.

  2. Create an app with the OAuth type.

    • Choose an app name such as "ExampleCorp Zulip".
    • Select User-managed app.
    • Disable the option to publish the app on the Marketplace.
    • Click Create.
  3. Inside the Zoom app management page:

    • On the App Credentials tab, set both the Redirect URL for OAuth and the Whitelist URL to https://zulip.example.com/calls/zoom/complete (replacing zulip.example.com by your main Zulip hostname).
    • On the Scopes tab, add the meeting:write scope.

You can then configure your Zulip server to use that Zoom app as follows:

  1. In /etc/zulip/zulip-secrets.conf, set video_zoom_client_secret to be your app's "Client Secret".

  2. In /etc/zulip/settings.py, set VIDEO_ZOOM_CLIENT_ID to your app's "Client ID".

  3. Restart the Zulip server with /home/zulip/deployments/current/scripts/restart-server.

This enables Zoom support in your Zulip server. Finally, configure Zoom as the video call provider in the Zulip organizations where you want to use it.

BigBlueButton

To use the BigBlueButton video call integration on a self-hosted Zulip installation, you'll need to have a BigBlueButton server and configure it:

  1. Get the Shared Secret using the bbb-conf --secret command on your BigBlueButton Server. See also the BigBlueButton documentation.

  2. Get the URL to your BigBlueButton API. The URL has the form of https://bigbluebutton.example.com/bigbluebutton/ and can also be found using the bbb-conf --secret command.

You can then configure your Zulip server to use that BigBlueButton Server as follows:

  1. In /etc/zulip/zulip-secrets.conf, set big_blue_button_secret to be your BigBlueButton Server's shared secret.

  2. In /etc/zulip/settings.py, set BIG_BLUE_BUTTON_URL to your to be your BigBlueButton Server's API URL.

  3. Restart the Zulip server with /home/zulip/deployments/current/scripts/restart-server.

This enables BigBlueButton support in your Zulip server. Finally, configure BigBlueButton as the video call provider in the Zulip organizations where you want to use it.