Meeting Rooms Configuration
Meeting Rooms configuration
Create default env file
Launch the following commands that will generate the
.envfile:Warning
Please Copy the whole code block below and Paste it in a terminal. It will (re)generate the
.envfile. Do not copy-paste only the.envcontent because it contains specific here-document syntax.function generatePassword() { openssl rand -hex 16 } function generateEnvFile() { cat > /etc/docker/meetingrooms/.env << EOF # XiVO vars XIVOCC_TAG=2026.05 XIVOCC_DIST=latest XUC_HOST=${XUC_HOST} MEETING_ROOMS_HOST_IP=${MEETING_ROOMS_HOST_IP} XIVO_HOST=${XIVO_HOST} # # XiVO Edge vars # TURN_CREDENTIALS=${TURN_CREDENTIALS} TURN_HOST=${TURN_HOST} TURN_PORT=3478 TURNS_HOST=\${TURN_HOST} TURNS_PORT=${TURNS_PORT} # # JWT Configuration ENABLE_AUTH=1 ENABLE_GUESTS=0 AUTH_TYPE=jwt JWT_APP_ID=xivo JWT_APP_SECRET=${JWT_APP_SECRET} # # Security # JICOFO_AUTH_PASSWORD=${JICOFO_AUTH_PASSWORD} JVB_AUTH_PASSWORD=${JVB_AUTH_PASSWORD} JIGASI_XMPP_PASSWORD=${JIGASI_XMPP_PASSWORD} # # Basic config # CONFIG=/etc/docker/meetingrooms/jitsi/ JVB_ADVERTISE_IPS=\${MEETING_ROOMS_HOST_IP} HTTP_PORT=80 HTTPS_PORT=443 TZ=Europe/Paris PUBLIC_URL=https://\${XUC_HOST}/video XMPP_MODULES=muc_size XMPP_MUC_MODULES=token_verification,token_affiliation ENABLE_CLOSE_PAGE=true ENABLE_END_CONFERENCE=false # # Basic Jigasi configuration options # JIGASI_SIP_URI=xivo-jitsi@\${XIVO_HOST} JIGASI_SIP_PASSWORD=${JIGASI_SIP_PASSWORD} JIGASI_SIP_SERVER=\${XIVO_HOST} JIGASI_SIP_PORT=5060 JIGASI_SIP_TRANSPORT=UDP # # Advanced configuration options (you generally don't need to change these) # ENABLE_P2P=false EOF } ENV_FILE="/etc/docker/meetingrooms/.env" if [ -f "$ENV_FILE" ]; then source "$ENV_FILE" else JICOFO_AUTH_PASSWORD=$(generatePassword) JVB_AUTH_PASSWORD=$(generatePassword) JIGASI_XMPP_PASSWORD=$(generatePassword) JIGASI_SIP_PASSWORD=$(generatePassword) XIVO_HOST="<FILL IN>" XUC_HOST="<FILL IN>" MEETING_ROOMS_HOST_IP="<FILL IN>" TURN_HOST="<FILL IN>" TURNS_PORT=3478 TURN_CREDENTIALS="<FILL IN>" JWT_APP_SECRET="<FILL IN>" fi generateEnvFile
Then open the
/etc/docker/meetingrooms/.envand fill in:
XUC_HOSTvar with the same content as the XUC_HOST var in your XiVO CC configuration
MEETING_ROOMS_HOST_IPvar with the meeting rooms server IP address. It must be the meeting rooms server IP address accessible for your LAN client. It must be set otherwise nothing will work correctly.
XIVO_HOSTwith the VoIP IP of the XiVO PBX It will be the IP towards which the Jitsi SIP gateway will register its SIP peer.
JWT_APP_SECRETwith the same content as the CONFIGMGT_AUTH_SECRET var defined in your XiVO’s /etc/docker/xivo/custom.env fileFill in also parameters linked to XiVO Edge (which is a prerequisite to use Meeting Room Server - see Requirements):
TURN_HOSTvar with the Edge STUN/TURN server FQDN (i.e. which must be a FQDN corresponding to the certificate configured on the Edge STUN/TURN server).
TURN_CREDENTIALSvar with the value of theTURN_SECRETconfigure in the Edge TURN Server (the secret generated during TURN Server Secret).
Start the services
Start the services:
docker login -u xivoxc
(use the token provided by the XiVO team)
meetingrooms-dcomp pull && docker logout
meetingrooms-dcomp up -d
Edge Configuration
Note
These steps are to be done on the XiVO CC.
On the Edge server you must add the Meetingroom server IP address in the TURN_ALLOWED_PEERS.
Please refer to TURN Server Relay Authorization section.
XIVO CC Configuration
Note
These steps are to be done on the XiVO CC.
If you are using the XiVO UC Embedded mode you must follow the sub-section below: XiVO UC Embedded Configuration
On XiVO CC, to be able to use the video service you must configure the
NGINX_JITSI_HOST variable.
Add the
NGINX_JITSI_HOSTvalue in the/etc/docker/compose/custom.envfile:NGINX_JITSI_HOST=<IP Address of the Meeting Rooms server>
Relaunch the services
xivocc-dcomp up -d
XiVO UC Embedded Configuration
Important
This section applies only if you are in the XiVO UC Embedded mode.
With XiVO UC applications, to be able to use the video service you must configure the
NGINX_JITSI_HOST variable.
Add the
NGINX_JITSI_HOSTvalue in the/etc/docker/xivo/custom.envfile:NGINX_JITSI_HOST=<IP Address of the Meeting Rooms server>
Relaunch the services
xivo-dcomp up -d
XiVO Configuration
Note
These steps are to be done on the XiVO
If you are using the XiVO UC Embedded mode you must also follow the section XiVO UC Embedded Configuration
Configure Jitsi properties in your custom env
Edit
/etc/docker/xivo/custom.envfile :MEETINGROOM_AUTH_DOMAIN=<The domain serving the service, i.e. "meet.jitsi" by default, can be also set to "*"> MEETINGROOM_AUTH_APP_ID=<Value of the JWT_APP_ID defined in your jitsi .env file>
Configure the Trunk to Jitsi
On XiVO, go on page , and create a SIP trunk with:
Tab General:
Name: xivo-jitsi
Username: xivo-jitsi
Password: put the value of the
JIGASI_SIP_PASSWORDvariable in the/etc/docker/meetingrooms/.envConnection type: Peer
IP addressing type: Dynamic
Context: default
Media server: MDS Main
NAT: Yes (force rport + comedia)
Tab Advanced:
Redirect media streams: No
Then restart the jigasi docker on Meeting Room server:
meetingrooms-dcomp restart jigasi
Customize proxy settings on XiVO
Important
You need to do this only if XIVO is behind a proxy.
If XiVO PBX is behind a proxy (and you followed the Proxy Configuration guide) then you must tweak the proxy setting for agid container to add the Meetingroom server IP address in the NO_PROXY list.