integrations: Add support for BigBlueButton voice only calls.

We now allow users to create voice calls when their call provider is
BigBlueButton. This is done by creating a call where cameras are
disabled for all participants in the call -- a voice call, and making
only the call creator the moderator, so no one else can switch a voice
only call to a video call.

Also, we stop using the deprecated fields "attendeePW" and "moderatorPW"
in the Big Blue Button API, and use "role" instead.

The side effects are that now we only support BigBlueButton 2.4 and
above, and that only the call creator is a moderator and all other
joinees are viewers for all BigBlueButton calls.

Fixes: #26550.

Most of the code for the integration was written by Nehal.
Apoorva made the changes that resolve conflicts which were
introduced because of the `typed_endpoint` decorator.

With some documentation tweaks by tabbott.

Co-authored-by: Apoorva Pendse <apoorvavpendse@gmail.com>
This commit is contained in:
Nehal Sharma
2025-01-02 07:24:26 +05:30
committed by Tim Abbott
parent 696a0ac8ef
commit 04f06a4588
10 changed files with 129 additions and 50 deletions

View File

@@ -20,6 +20,13 @@ format used by the Zulip server that they are interacting with.
## Changes in Zulip 10.0
**Feature level 337**
* `POST /calls/bigbluebutton/create`: Added a `voice_only` parameter
controlling whether the call should be voice-only, in which case we
keep cameras disabled for this call. Now the call creator is a
moderator and all other joinees are viewers.
**Feature level 336**
* [Markdown message formatting](/api/message-formatting#image-previews): Added