Files
upstream-jitsi-videobridge/doc/muc.md
upstream-mirror e1257b7a05
Some checks failed
Java CI with Maven / Java 17 (push) Failing after 7m2s
Java CI with Maven / Java 21 (push) Failing after 5m0s
snapshot of https://github.com/jitsi/jitsi-videobridge.git @ fcbf741c646bc237d2ed85a1e86910532532b831 (2026-09-15)
2026-09-15 16:12:38 +05:00

2.3 KiB

Intro

When the XMPP API is enabled jitsi-videobridge uses an XMPP client connection and advertises presence in a Multi-User Chat (MUC) room.

With this mode a jitsi-videobridge instance can connect to a set of XMPP servers, and new servers can be added at runtime.

XMPP server configuration

The XMPP server can be provisioned with a single user account to be shared between all jitsi-videobridge instances that connect to it. For prosody this can be done using:

prosodyctl register jvb $DOMAIN $PASSWORD

We recommend using a separate XMPP domain, not accessible by anonymous users. See the jitsi-meet-prosody postinst script for a full example. It is also possible to use a completely separate XMPP server accessible only to jitsi-videobridge and jicofo (not publicly accessible at all).

Jicofo configuration

To make use of the MUC mode in the bridge, jicofo needs to be configured to join the same MUC. To do this set jicofo.bridge.brewery-jid to the MUC address in jicofo.conf.

Videobridge configuration

To enable the MUC mode add the following to the videobridge section of the config file:

stats {
  # Enable broadcasting stats/presence in a MUC
  enabled = true
  transports = [
    { type = "muc" }
  ]
}

apis {
  xmpp-client {
    configs {
      # Connect to the first XMPP server
      xmpp-server-1 {
        hostname="example.net"
        domain = "auth.example.net"
        username = "jvb"
        password = "$PASSWORD"
        muc_jids = "JvbBrewery@internal.auth.example.net"
        # The muc_nickname must be unique across all jitsi-videobridge instances
        muc_nickname = "unique-instance-id"
        # disable_certificate_verification = true
      }
      # Connect to a second XMPP server
      xmpp-server-2 {
        hostname="another.example.net"
        domain = "auth.example.net"
        username = "jvb"
        password = "$PASSWORD"
        muc_jids = "JvbBrewery@internal.auth.example.net"
        # The muc_nickname must be unique across all jitsi-videobridge instances
        muc_nickname = "unique-instance-id2"
        # disable_certificate_verification = true
      }
    }
  }
}