Commit Graph

254 Commits

Author SHA1 Message Date
damencho fb81619fc5 fix: Fixes muc rate limit to fire occupant-pre-join.
If any handler returns a value (that isn't nil) then processing will halt and that value will be returned.
2023-03-07 18:54:06 -06:00
Дамян Минков 0a464a5223
feat: Avoids joining participants before jicofo is in the room. (#12923)
* feat: Avoids joining participants before jicofo is in the room.

* squash: Move away from global hook to be able to use it per muc component.
2023-02-16 18:16:43 -06:00
emrah 46f1cb7b4b
feat(ci) add luacheck 2023-01-24 14:58:43 +01:00
damencho 265d8c4b29 fix: Fixes using s2s for visitors. 2023-01-10 21:50:23 +01:00
Дамян Минков 9fbbe05d6c
feat: Adds docs, config and scripts around the visitor mode. (#12658)
* feat: Moves handle of vnode from conferenceIQ stanza error to result.

* feat: Handles redirected to visitor node event.

* feat: Adds README and configurations.

* squash: Drop comment.

* copy edits

* image fix

* fix background for dark mode

* fix the background

* feat: Update s2soutinjection.

* Update README commands formatting.

* Update doc/extra-large-conference/README.md

Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>

* squash: Creates a generateVisitorConfig helper.

* squash: Moves the folder from doc.

* squash: Update example.

* squash: Drop config.

* squash: Rename var to look like template.

* squash: Fix plugins path.

* squash: Fix sort order of import.

* squash: Fix lint errors.

Co-authored-by: scott boone <scott.e.boone@gmail.com>
Co-authored-by: Scott Boone <scott.boone@8x8.com>
Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>
2022-12-13 08:26:22 -06:00
Дамян Минков 744960bb1a
feat: Several module optimizations to avoid constant parsing of jids. (#12594)
* feat: Several module optimizations to avoid constant parsing of jids.

Caches the parsed values in a rotating table with limited size.
Skips constant creating of a stanza with never changing values - create it once and then just clone it.

* squash: Fixes extract_subdomain multiple values.

* squash: Fix table values when there is a nil element.

* squash: Fix skipping the roomless IQs.

* squash: Fix comments.
2022-11-28 14:18:59 -06:00
Дамян Минков 76471a0ea9
feat: Modules for implementing visitor nodes. (#12593)
* feat: Modules for implementing visitor nodes.

Still WIP, uses visitor nodes prosodies where we create the main participants and forward the visitors to watch. Used for huge conferences.

* squash: Fix comments.
2022-11-28 14:18:33 -06:00
Gabriel Borlea 4b969cf4ab
feat(face-landmarks): add face landmarks timeline (#12561)
* feat(face-landmarks): add face landmarks timeline

fixes after rebase

* fixes after rebase compiling and linting

* fix: change keyboard shorcut for participants stats

* fix: label for emotions switch

* fix: linting issues

* code review changes

* fix linting issues

* code review changes 2

* fix typo
2022-11-22 15:56:37 +02:00
Shawn e57c7f92a8 refactor(end-conference): distinguish between component vs host module logic 2022-11-15 10:34:40 -06:00
Shawn 7249406960 fix(persistent_lobby): properly destroy main room when empty 2022-10-20 12:15:56 -05:00
Дамян Минков 40e1f28fc2
fix: Fix log messages in end_conference module. (#12369)
* fix: Fix log message.

From `general error No muc_component specified` to `endconference.meet.damencho.net:end_conference error No muc_component specified`

* squash: more.
2022-10-12 13:31:06 -05:00
Shawn 2029db5a59 fix(reservations): skip reservations check for breakout rooms 2022-10-07 17:07:28 -05:00
abora8x8 a4e35f81cf
fix(polls) refactor message handling 2022-09-29 19:28:24 +02:00
Shawn Chin 2e6f14f872
feat(reservations) start lobby and set password from reservation (#12215)
* feat(reservations) support enabling lobby and password based on reservations data

* Add warning about unhandled use case

* feat(lobby) Support automated activation of lobby
2022-09-27 14:59:30 -05:00
Saúl Ibarra Corretgé 11f138d28f feat(room-metadata) add module for generic room metadata storage 2022-09-27 20:50:41 +02:00
Hristo Terezov f0a45a9976 feat: Handle dominant speaker silence 2022-09-14 12:13:41 -05:00
Дамян Минков 079a2a505d
feat: Adds LE choice when installing debian package. (#12154)
* feat: Adds LE choice when installing debian package.

* Update debian/jitsi-meet-web-config.templates

Co-authored-by: raluca8x8 <raluca.tocmag@8x8.com>

* squash: Print in the console the JaaS link everytime.

* squash: Note that JaaS does not support self-signed certs.

* squash: Fix message.

* squash: Moves acme.sh stuff into a script, so it is easy to re-run.

Co-authored-by: raluca8x8 <raluca.tocmag@8x8.com>
2022-09-13 07:55:00 -05:00
Saúl Ibarra Corretgé cfb1fef162 fix(breakout-rooms) fix broadcast timer 2022-09-01 18:19:29 +02:00
damencho 6fe353cfa4 fix: Fixes lua log lines.
When using directly log( the log lines come from `general` not from the module itself.
`Aug 29 19:38:08 general	info	Starting speakerstats for conference...`
2022-08-30 11:24:28 -05:00
Stefan Weil 882d343e8b
chore(typos) fix some typos 2022-08-30 16:21:58 +02:00
wfleischer 09efaecc41
feat(conference) add end conference
Add the ability (for moderators) to end the meeting for everyone.
2022-08-26 20:25:04 +02:00
luzpaz c7f96de787
fix(misc) fix typos
Found via `codespell -q 3 -S ./lang -L miliseconds`
2022-07-14 09:10:08 +02:00
Дамян Минков d981acb94a
fix(breakout-rooms): Stop previous leave timers if any. (#11842)
* fix(breakout-rooms): Stop previous leave timers if any.

* squash: Rename field.
2022-07-12 16:31:43 +03:00
Дамян Минков 4d51aedde0
feat: Adds room info http endpoint jwt protected. (#11738)
* feat: Adds room info http endpoint jwt protected.

Used from dialplan from jigasi for handling passwords in IVR.

* squash: Fixes comments.

* squash: nginx api/rom-info

* fix: Skips tenant checks when enableDomainVerification is false.

* squash: Drops duplicate code and supports multi-shards.

By adding room= parameter in query and tenant prefix for the api we add support for multi-shards setup.

* feat: Enable domain verification by default.

This is used when verifying room access with token_verification module.

* squash: Update docs.
2022-07-12 09:51:13 +03:00
Дамян Минков 6b5a821696 feat: Moves to use jitsi-anonymous by default.
jitsi-anonymous adds by default handling of previd url param, which allows websocket resumption.
2022-07-11 16:17:12 +03:00
abora8x8 15d453de1d
Fix: Speaker stats are not delivered for the breakout rooms (#11644)
* Send speaker stats for brk room

* Fix comments component loaded
2022-06-09 13:15:04 -05:00
Дамян Минков 35572700bf
Enables sending release number from backend. (#11552)
* chore(deps) lib-jitsi-meet@latest

https://github.com/jitsi/lib-jitsi-meet/compare/v1436.0.0+d5c46952...v1437.0.0+966fcd93

* squash: Enables sending release number from backend.
2022-05-18 13:04:49 -05:00
Дамян Минков 1400b6ff0a
feat: Moves luajwtjitsi in jitsi-meet. (#11501)
* feat: Moves luajwtjitsi in jitsi-meet.

* squash: Fix luajwtjitsi name to include lib.
2022-05-09 09:15:12 -05:00
philip-cc 46dd88c91b
feat(jwt) refactor token authentication plugin to use new luajwtjitsi version 2022-04-19 13:06:20 +02:00
Avram Tudor 42703fed47
ref(face-landmarks) refactor namings (#11307)
* ref(face-landmarks) refactor namings

* code review
2022-04-06 12:10:31 +03:00
Дамян Минков be1828d9e9 feat: Updates external-services.lua to latest.
changeset ede9682c2022
https://hg.prosody.im/prosody-modules/file/ede9682c2022/mod_external_services/mod_external_services.lua
2022-03-29 12:29:48 -05:00
Shawn f8628dfeef feat(reservations) add integration with mod_muc_max_occupants 2022-03-24 08:38:34 -05:00
Aaron van Meerten be454137f9
task: mod_muc_password_whitelist prosody module (#11184) 2022-03-21 11:38:21 -05:00
Aaron van Meerten fbe15aaa47
feature: patch for muc_owner_allow_kick in prosody 0.12 (#11142) 2022-03-15 21:15:14 -05:00
Дамян Минков 14cad060cb
fix: Updates token verification hooks priority. (#11105)
* fix: Updates token verification hooks priority.

Set it as the highest priorities, if denying access, better do it earlier.

* squash: Updates values.
2022-03-10 14:28:58 -06:00
Doganbros 7522de033a
feat: Lobby chat (#10847)
* feat(lobby): lobby chat

lobby chat support
knocking participants list updates
knocking participants conditonal checks to show message button
handle lobby chat message events
lobby messages from or to moderators only

Co-authored-by: Fecri Kaan Ulubey <f.kaan93@gmail.com>

* squash: Drop typos.

Co-authored-by: Kusi Musah Hussein <kusimusah@gmail.com>
Co-authored-by: Fecri Kaan Ulubey <f.kaan93@gmail.com>
Co-authored-by: Дамян Минков <damencho@jitsi.org>
2022-03-03 11:29:38 -06:00
nosmicek 40353cf762
fix: Fixes nil error while processing wrong jwt value. Fixes #10970
Co-authored-by: David Mišurec <david.misurec@icewarp.com>
2022-02-17 12:05:39 -06:00
Дамян Минков 04f9ad32e1 fix(breakout-rooms): Adds few nil checks in lua code. 2021-12-23 14:40:39 -06:00
Дамян Минков b084aae212
fix: Generates correct join error for lobby. (#10673)
* fix: Drops wrong x tag.

* fix: Generates correct join error for lobby.

We were adding lobbyroom element in a location that violates the rfc and xmpp errors.
We add now and the correct one and will drop the wrong node when all clients are updated.
https://datatracker.ietf.org/doc/html/draft-ietf-xmpp-3920bis#section-8.3.2

* squash: Add todo comment.

* squash: Updates namespace.
2021-12-22 14:40:20 -06:00
Дамян Минков 09613167a6 fix(breakout-rooms): Adds a check for missing room. 2021-12-16 12:04:53 -06:00
Дамян Минков c8b5043d6b fix: Fixes destroying main room when breakout rooms are enabled.
By the time the timer is fired the room maybe recreated (destroyed and created again) and we do not want to destroy it again. The timer was keeping a reference to the old room and is destroying it without notifying the future occupants(jicofo).
Drop save, as we do not need it before destroying, check lobby.
2021-12-15 21:59:23 -06:00
Christoph Settgast 65589937ea fix(breakout,av-moderation): support non-ascii tenant names
Same applies to tenant names as it applies to room names, as the
tenants/subdomains are prefixed to the room names in prosody.

Signed-off-by: Christoph Settgast <csett86@web.de>
2021-12-07 18:31:36 +01:00
Christoph Settgast a6bc51cff1 fix(breakout,av-moderation): support non-ascii room names
rooms are created in prosody in their urlencoded form, eg täst
becomes t%c3%a4st@conference.jitsi.example.org

As local params = formdecode(query) contains an urldecode, we
need to reencode the room name so that the room can be found in
prosody.

Closes: #10525
Signed-off-by: Christoph Settgast <csett86@web.de>
2021-12-07 18:31:36 +01:00
Saúl Ibarra Corretgé 0be0d6a76e fix(breakout-rooms) fix when using tenants 2021-12-01 13:50:36 +01:00
Saúl Ibarra Corretgé 00a74ca47a fix(breakout-rooms) fix checking if a user is in a room
Breakout rooms are just reserved UUIDs, they need not exist as actual MUCs,
until a participant joins. Thus, take this into account when checking if a
participant is in a room.
2021-11-26 16:18:54 +01:00
Saúl Ibarra Corretgé dd20e8626e fix(breakout-rooms) fix operations when inside a breakout room
Fix not being able to create / remove breakout rooms when the moderator is
inside a breakout room.
2021-11-26 12:51:11 +01:00
Saúl Ibarra Corretgé 4a5982da1f fix(breakout-rooms) make sure the default name is monotonically increasing 2021-11-25 16:50:33 +01:00
Saúl Ibarra Corretgé 1a93da8c35 fix(breakout-rooms) cleanup code 2021-11-24 16:27:05 +01:00
Saúl Ibarra Corretgé 73e8f5703c fix(breakout-rooms) avoid accessing invalid room objects 2021-11-24 16:27:05 +01:00
Saúl Ibarra Corretgé a203a92060 fix(breakout-rooms) simplify code 2021-11-24 16:27:05 +01:00