--- jitsi_root_dir: /opt/jitsi jitsi_user: jitsi jitsi_videobridge_version: 1132 jitsi_videobridge_archive_url: https://download.jitsi.org/jitsi-videobridge/linux/jitsi-videobridge-linux-x64-{{ jitsi_videobridge_version }}.zip jitsi_videobridge_archive_sha1: 2e749f4667bc5650c0af59c23241ad094a24e1f2 jitsi_videobridge_harvester_port: 4443 # This one cannot be changed jitsi_videobridge_rtp_port: 10000 jitsi_videobridge_src_ip: - 0.0.0.0/0 jitsi_videobridge_git_url: https://github.com/jitsi/jitsi-videobridge.git jitsi_jicofo_git_url: https://github.com/jitsi/jicofo.git jitsi_jigasi_git_url: https://github.com/jitsi/jigasi.git jitsi_meet_git_url: https://github.com/jitsi/jitsi-meet.git # XMPP server. Set to localhost would mean no certificate validation jitsi_xmpp_server: "{{ inventory_hostname }}" # Port on which to connect to the XMPP server to register as a component jitsi_xmpp_component_port: 5347 jitsi_stun_servers: [] # jitsi_stun_servers: # - stun:meet-jit-si-turnrelay.jitsi.net:443 jitsi_turn_secret: "{{ turnserver_auth_secret | default('p@ssw0rd') }}" # Authentication. Can be set to # * False : no authentication at all (can also be None) # * sso : In this case, you have to protect /login with your SSO system (through a reverse proxy) # And once authenticated, send the HTTP headers mail and displayName with the appropriate values # Note that jitsi Android client does not support sso authentication, so mobile users will be able # to join an existing conf, but not create one easily # * ldap : Will use an LDAP server for authentication. Works on mobile, but is a bit less convinient # than sso for desktop users. See all the jitsi_ldap_xxxx settings jitsi_auth: False # Secret to register on the XMPP server. A random one will be generated if not defined # jitsi_videobridge_xmpp_secret: S3cr3t. # jitsi_jicofo_xmpp_secret: p@ssw0rd # Password for the focus user on the auth domain # jitsi_jicofo_xmpp_pass: p@ssw0rd jitsi_domain: "{{ inventory_hostname }}" jitsi_auth_domain: auth.{{ jitsi_domain }} # Can be either true, in which case a cert will be automatically obtained using letsencrypt # or can be a name, in which case you have to configure letsencrypt to obtain the cert yourself # jitsi_letsencrypt_cert: True # or # jitsi_letsencrypt_cert: jitsi.example.com # # or, you can also set custom cert path # # jitsi_cert_path: /etc/jitsi/ssl/cert.pem # jitsi_key_path: /etc/jitsi/ssl/key.pem # Meet configuration. Will be converted to JSON # See https://github.com/jitsi/jitsi-meet/blob/master/config.js for available settings and their meaning jitsi_meet_conf_base: hosts: domain: "{{ jitsi_domain }}" muc: conference.{{ jitsi_domain }} bosh: '//{{ jitsi_domain }}/http-bind' websocket: 'wss://{{ jitsi_domain }}/xmpp-websocket' clientNode: http://jitsi.org/jitsimeet disableAudioLevels: True testing: enableFirefoxSimulcast: False p2pTestMode: False enableNoAudioDetection: True enableNoisyMicDetection: True desktopSharingChromeExtId: null desktopSharingChromeSources: - screen - window - tab desktopSharingChromeMinExtVersion: 0.1 channelLastN: -1 requireDisplayName: False enableCalendarIntegration: False disableThirdPartyRequests: True enableWelcomePage: True p2p: enabled: True useStunTurn: True stunServers: "{{ jitsi_stun_servers }}" preferH264: True jitsi_meet_conf_extra: {} jitsi_meet_conf: "{{ jitsi_meet_conf_base | combine(jitsi_meet_conf_extra, recursive=True) }}" # Meet interface configuration. Will be converted to JSON # See https://github.com/jitsi/jitsi-meet/blob/master/interface_config.js for available settings and their meaning jitsi_meet_interface_conf_base: DEFAULT_BACKGROUND: '#474747' DISABLE_VIDEO_BACKGROUND: False INITIAL_TOOLBAR_TIMEOUT: 20000 TOOLBAR_TIMEOUT: 4000 TOOLBAR_ALWAYS_VISIBLE: False DEFAULT_REMOTE_DISPLAY_NAME: Happy User DEFAULT_LOCAL_DISPLAY_NAME: Me SHOW_JITSI_WATERMARK: False JITSI_WATERMARK_LINK: 'https://jitsi.org' SHOW_WATERMARK_FOR_GUESTS: False SHOW_BRAND_WATERMARK: False BRAND_WATERMARK_LINK: 'https://www.firewall-services.com' PROVIDER_NAME: 'Firewall Services' SHOW_POWERED_BY: False SHOW_DEEP_LINKING_IMAGE: False DISPLAY_WELCOME_PAGE_CONTENT: True DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: False GENERATE_ROOMNAMES_ON_WELCOME_PAGE: True APP_NAME: Jitsi Meet NATIVE_APP_NAME: Jitsi Meet INVITATION_POWERED_BY: True LANG_DETECTION: True AUTHENTICATION_ENABLE: True TOOLBAR_BUTTONS: - microphone - camera - closedcaptions - desktop - fullscreen - fodeviceselection - hangup - profile - info - chat - recording - livestreaming - etherpad - sharedvideo - settings - raisehand - videoquality - filmstrip - invite - feedback - stats - shortcuts - tileview #- videobackgroundblur - download - help - mute-everyone SETTINGS_SECTIONS: - devices - language - moderator - profile - calendar VIDEO_LAYOUT_FIT: both VERTICAL_FILMSTRIP: True filmStripOnly: False CLOSE_PAGE_GUEST_HINT: False SHOW_PROMOTIONAL_CLOSE_PAGE: False RANDOM_AVATAR_URL_PREFIX: False RANDOM_AVATAR_URL_SUFFIX: False FILM_STRIP_MAX_HEIGHT: 120 ENABLE_FEEDBACK_ANIMATION: False DISABLE_FOCUS_INDICATOR: False DISABLE_DOMINANT_SPEAKER_INDICATOR: False DISABLE_TRANSCRIPTION_SUBTITLES: True DISABLE_RINGING: False AUDIO_LEVEL_PRIMARY_COLOR: 'rgba(255,255,255,0.4)' AUDIO_LEVEL_SECONDARY_COLOR: 'rgba(255,255,255,0.2)' POLICY_LOGO: Null LOCAL_THUMBNAIL_RATIO: '16 / 9' # 16:9 REMOTE_THUMBNAIL_RATIO: 1 # 1:1 LIVE_STREAMING_HELP_LINK: 'https://jitsi.org/live' MOBILE_APP_PROMO: True MAXIMUM_ZOOMING_COEFFICIENT: 1.3 SUPPORT_URL: https://community.jitsi.org/ CONNECTION_INDICATOR_AUTO_HIDE_ENABLED: True CONNECTION_INDICATOR_AUTO_HIDE_TIMEOUT: 5000 CONNECTION_INDICATOR_DISABLED: False VIDEO_QUALITY_LABEL_DISABLED: False RECENT_LIST_ENABLED: True OPTIMAL_BROWSERS: - chrome - chromium - firefox - nwjs - electron UNSUPPORTED_BROWSERS: [] AUTO_PIN_LATEST_SCREEN_SHARE: remote-only DISABLE_PRESENCE_STATUS: False DISABLE_JOIN_LEAVE_NOTIFICATIONS: False SHOW_CHROME_EXTENSION_BANNER: False jitsi_meet_interface_conf_extra: {} jitsi_meet_interface_conf: "{{ jitsi_meet_interface_conf_base | combine(jitsi_meet_interface_conf_extra, recursive=True) }}" # If jitsi_auth is ldap # We inherit values from prosody if available, or we try to get values from ad_auth or ldap_auth jitsi_ldap_base: "{{ prosody_ldap_base | default(ad_auth | default(False) | ternary((ad_ldap_user_search_base is defined) | ternary(ad_ldap_user_search_base,'DC=' + ad_realm | default(samba_realm) | default(ansible_domain) | regex_replace('\\.',',DC=')), ldap_user_base + ',' + ldap_base)) }}" jitsi_ldap_servers: "{{ prosody_ldap_server | default(ad_ldap_servers | default([ad_auth | default(False) | ternary(ad_realm | default(samba_realm) | default(ansible_domain) | lower, ldap_uri | default('ldap://' + ansible_domain) | urlsplit('hostname'))]))}}" jitsi_ldap_bind_dn: "{{ prosody_ldap_bind_dn | default(None) }}" jitsi_ldap_bind_pass: "{{ prosody_ldap_bind_pass | default(None) }}" jitsi_ldap_filter: "{{ prosody_ldap_filter | default(ad_auth | default(False) | ternary('(&(objectClass=user)(sAMAccountName=%s))','(&(objectClass=inetOrgPerson)(uid=%s))')) }}" jitsi_ldap_starttls: "{{ prosody_ldap_starttls | default(True) }}" # Jigasi settings # Default room on which to connect inbound SIP calls # if no Jitsi-Conference-Room SIP header is found jitsi_jigasi_default_room: sip # SIP settings #jitsi_jigasi_sip_user: #jitsi_jigasi_sip_secret: #jitsi_jigasi_sip_server: # Password to auth as an XMPP user. A random one will be created if missing #jitsi_jigasi_xmpp_pass: