* Added mod_reservations prosody plugin
* Removed comments re mutex
* Add support for HTTP retries and expose config to tweak retry behaviour
* Removed TODO comment. Feature implemented
* Added multi-tenant support
* renamed config var and default to always including tenant name in name field
* Simplified handling of multi-tenant
* Fixed bug with DELETE not called on reservation expiry
* fix: Fixes destroying room.
Co-authored-by: damencho <damencho@jitsi.org>
* feat(prosody-modules): Moves a function for getting room to util.
* feat: Audio/Video moderation.
* squash: Fix docs.
* squash: Changes a field name in the message for adding jid to whitelist.
* squash: Moves to boolean from boolean string.
* squash: Only moderators get whitelist on join.
* squash: Check whether in room and moderator.
* squash: Send to participants only message about approval.
Skips sending the whole list.
* feat: Separates enable/disable by media type.
Adds actor to the messages to inform who enabled it.
* squash: Fixes reporting disable of the feature.
* squash: Fixes init of av_moderation_actors.
* squash: Fixes av_moderation_actor jid to be room jid.
* squash: Fixes comments.
* squash: Fixes warning about shadowing definition.
* squash: Updates ljm.
* fix: Fixes auto-granting from jicofo.
* squash: Further simplify...
* feat: Exposes a hook to mod_external_services data.
The hook can be used to get turn servers and credentials from another module.
* feat: JiConOp2 pushes a message with some info to clients.
* feat: JiConOp adds config for shard name feature.
* squash: Changes message type to service-info.
* squash: Drops the event in external_services.
* fix(load-test): Fixes unmuting loadtest client.
Fixes the case where audio track was not added due to jicofo muting clients.
* squash(load-test): Drop noAutoLocalAudio and change add track logic.
Trying to mimic jitsi-meet.
* squash(load-test): Fix adding video.
Fixes this Apple Store Connect warning:
~~~
ITMS-90473: CFBundleShortVersionString Mismatch - The CFBundleShortVersionString
value '1.0' of extension 'jitsi-meet.app/PlugIns/JitsiMeetBroadcast
Extension.appex' does not match the CFBundleShortVersionString value '21.0.0' of
its containing iOS application 'jitsi-meet.app'.
~~~
We will filter the initial presence where participant is announced as `participant` and shortly after that we send a second presence with the new `moderator` role.
* feat(load-test): Senders unmute themselves if muted by policy.
* feat(load-test): Adds option to skip creating local audio track.
We currently create local audio track even when starting audio muted. Adding the option to control that can load test that for clients or signalling.
* fix(load-test): Always create local audio track.
When audio mutes will mute the track. Also fixes previous change where we do not add any of the tracks to the room.
* squash: Fix lint errors.
* feat: Add mod_client_proxy and mod_roster_command.
Taken from prosody-modules 4317:456b9f608fcf with the
mod_roster_command patch applied.
* feat: Use mod_client_proxy to proxy to jicofo.
We sometimes see "error Top-level error, please report:
/usr/lib/prosody/util/serialization.lua:38: Can't serialize table: table has multiple references".
This also slows down restarting prosody.
* feat: Make possible to reload config for filter rayo iq.
* feat: Throttle out call attempts to the max number per minute
* squash: Updates comment about config
When returning the error and showing to user not allowed screen we were not completely halting the prejoin operation when token verification fails on room join and the token is valid in general.
Display name for lobby operations notifications are taken from the list of knocking participants which is available only to moderators. In case of not all moderators the notifications were broken.
* feat: Sends json messages notifying for lobby actions.
* squash: Fixes quotes to be consistent.
* fix: Fixes attempt to call global 'formdecode' (a nil value).
* ref: Rename jitsi_bosh_query_room to jitsi_web_query_room.
This is no longer bosh only and is available for both bosh and websocket sessions.
* feat: Adds feature to disco-info indicating that display name is required.
* feat: Adds option to disable checking whether display name is required.
* ref: Clears auth_token when verification fails.
* squash: Fixing comments.
* squash: Updates to latest lib-jitsi-meet.
* fix: Fixes using token with no user context.
* feat(moderated): Adds option to add moderated rooms and subdomains.
When a user joins such room or subdomain in order to be a moderator needs to provide a valid jwt token for that room.
* squash: Renames function.
* ref: Removes filtering jicofo setting owners.
This will be disabled on jicofo side and will greatly simplify logic.
Also check the checks to avoid jwt for main domain to access subdomains and the other way around.
* fix: Skips allowners logic for admins.
* Adding whitelist and move away from using custom field for password.
We re-use room lock for lobby password.
* Make sure we do not run muc-occupant-pre-join for non members only rooms.
* Destroying lobby room, when main room is destroyed or membersonly is disabled.
* Adds destroy reason.
* Clears lobby room instance on destroy.
Fixes problem with on/off/on of lobby feature.
* Add lobby room jid only when members only is on.
* Sends main room jid on lobby destroy.
We can use that in client loggic to auto-join lobby participants to main room as lobby is disabled while waiting.
* fix: Fixes using is_healthcheck_room.
* squash: Enables lobby rooms feature by default.
* chore(deps): Update lib-jitsi-meet, to enable lobby rooms.