Update to 2021-05-03 21:00

master
Daniel Berteaud 4 years ago
parent 20ea19d019
commit cae882b006
  1. 63
      roles/jitsi/defaults/main.yml
  2. 2
      roles/jitsi/handlers/main.yml
  3. 10
      roles/jitsi/tasks/install.yml
  4. 14
      roles/jitsi/templates/mod_jibri_bypass_pwd.lua.j2
  5. 5
      roles/jitsi/templates/prosody.cfg.lua.j2
  6. 1
      roles/jitsi_jibri/tasks/install.yml
  7. 53
      roles/prosody/files/mod_participant_metadata.lua
  8. 2
      roles/repo_google_chrome/tasks/main.yml

@ -76,6 +76,8 @@ jitsi_meet_conf_base:
p2pTestMode: False p2pTestMode: False
enableNoAudioDetection: True enableNoAudioDetection: True
enableNoisyMicDetection: False enableNoisyMicDetection: False
startAudioMuted: 10
maxFullResolutionParticipants: 4
desktopSharingChromeExtId: null desktopSharingChromeExtId: null
desktopSharingChromeSources: desktopSharingChromeSources:
- screen - screen
@ -84,9 +86,8 @@ jitsi_meet_conf_base:
desktopSharingChromeMinExtVersion: 0.1 desktopSharingChromeMinExtVersion: 0.1
channelLastN: -1 channelLastN: -1
requireDisplayName: False requireDisplayName: False
resolution: 480
enableLayerSuspension: True enableLayerSuspension: True
enableCalendarIntegration: False prejoinPageEnabled: True
disableThirdPartyRequests: True disableThirdPartyRequests: True
enableWelcomePage: True enableWelcomePage: True
useStunTurn: True useStunTurn: True
@ -131,35 +132,35 @@ jitsi_meet_interface_conf_base:
INVITATION_POWERED_BY: True INVITATION_POWERED_BY: True
LANG_DETECTION: True LANG_DETECTION: True
AUTHENTICATION_ENABLE: True AUTHENTICATION_ENABLE: True
TOOLBAR_BUTTONS: # TOOLBAR_BUTTONS:
- microphone # - microphone
- camera # - camera
- closedcaptions # - closedcaptions
- desktop # - desktop
- embedmeeting # - embedmeeting
- fullscreen # - fullscreen
- fodeviceselection # - fodeviceselection
- hangup # - hangup
- profile # - profile
- chat # - chat
- recording # - recording
#- livestreaming # #- livestreaming
- etherpad # - etherpad
- sharedvideo # - sharedvideo
- settings # - settings
- raisehand # - raisehand
- videoquality # - videoquality
- filmstrip # - filmstrip
- invite # - invite
- feedback # - feedback
- stats # - stats
- shortcuts # - shortcuts
- tileview # - tileview
- videobackgroundblur # - videobackgroundblur
- download # - download
- help # - help
- mute-everyone # - mute-everyone
- security # - security
SETTINGS_SECTIONS: SETTINGS_SECTIONS:
- devices - devices
- language - language

@ -1,5 +1,7 @@
--- ---
- include: ../prosody/handlers/main.yml
- name: restart jitsi-videobridge - name: restart jitsi-videobridge
service: name=jitsi-videobridge state=restarted service: name=jitsi-videobridge state=restarted

@ -170,3 +170,13 @@
mode: 0755 mode: 0755
notify: restart jitsi-confmapper notify: restart jitsi-confmapper
tags: jitsi tags: jitsi
- name: Ensure prosody module dir exists
file: path=/opt/prosody/modules/ state=directory
tags: jitsi
- name: Install byass_pwd module for prosody
template: src=mod_jibri_bypass_pwd.lua.j2 dest=/opt/prosody/modules/mod_jibri_bypass_pwd.lua
notify: reload prosody
tags: jitsi

@ -0,0 +1,14 @@
local MUC_NS = "http://jabber.org/protocol/muc";
local jid = require "util.jid";
module:hook("muc-occupant-pre-join", function (event)
local room, stanza = event.room, event.stanza;
local user, domain, res = jid.split(event.stanza.attr.from);
log("info", "--------------> user %s domain %s res %s pass %s", tostring(user),tostring(domain),tostring(res),tostring(room:get_password()));
if ( user == '{{ jitsi_jibri_recorder_xmpp_user }}' and domain == '{{ jitsi_jibri_xmpp_domain }}' ) then
local join = stanza:get_child("x", MUC_NS);
join:tag("password", { xmlns = MUC_NS }):text(room:get_password());
end;
end);

@ -90,7 +90,10 @@ VirtualHost "recorder.{{ jitsi_domain }}"
Component "conference.{{ jitsi_domain }}" "muc" Component "conference.{{ jitsi_domain }}" "muc"
storage = "memory" storage = "memory"
modules_enabled = { "ping"; } modules_enabled = {
"ping";
"jibri_bypass_pwd";
}
muc_room_locking = false muc_room_locking = false
muc_room_default_public_jids = true muc_room_default_public_jids = true

@ -91,3 +91,4 @@
- name: Install record cleaning script - name: Install record cleaning script
template: src=clean_records.sh.j2 dest={{ jitsi_root_dir }}/jibri/clean_records.sh mode=755 template: src=clean_records.sh.j2 dest={{ jitsi_root_dir }}/jibri/clean_records.sh mode=755
tags: jitsi tags: jitsi

@ -0,0 +1,53 @@
local _jid = require "util.jid";
log('info', 'Loaded Custom Presence identity');
module:hook("pre-presence/full", function (event)
local function get_room_from_jid(jid)
local node, host = _jid.split(jid);
local component = hosts[host];
if component then
local muc = component.modules.muc
if muc and rawget(muc,"rooms") then
-- We're running 0.9.x or 0.10 (old MUC API)
return muc.rooms[jid];
elseif muc and rawget(muc,"get_room_from_jid") then
-- We're running >0.10 (new MUC API)
return muc.get_room_from_jid(jid);
else
return
end
end
end
local origin, stanza = event.origin, event.stanza;
local to = _jid.bare(stanza.attr.to);
if get_room_from_jid(to) then
local room = get_room_from_jid(to);
local occupant = room._occupants[tostring(stanza.attr.to)];
if occupant then
local email = stanza:get_child_text("email") or "";
local role = tostring(occupant.role);
if email ~= "" and role == "moderator" then
stanza:maptags(
function(tag)
for k, v in pairs(tag) do
if k == "name" and v == "identity" then
return nil
end
end
return tag
end)
stanza:tag("identity"):tag("user");
stanza:tag("id"):text(email):up();
stanza:up();
end
end
end
end);

@ -5,5 +5,7 @@
name: google-chrome name: google-chrome
description: "Google Chrome Stable" description: "Google Chrome Stable"
baseurl: http://dl.google.com/linux/chrome/rpm/stable/x86_64 baseurl: http://dl.google.com/linux/chrome/rpm/stable/x86_64
gpgkey: https://dl.google.com/linux/linux_signing_key.pub
gpgcheck: True gpgcheck: True
tags: repo

Loading…
Cancel
Save