Paweł Chmielowski
132ebb8f2d
Fix exception in mucsub {un}subscription events multicast handler
...
While those event are wrapped in mucsub envelope they doesn't
contain regular messages that require updating 'to' attribute,
so don't process in that same way as events with wrapped
message in them.
2021-11-10 17:04:50 +01:00
Badlop
684ef60ec3
Annotate support for XEP-0317: Hats, since commit 5d0e599f1
2021-11-05 15:57:53 +01:00
Alexey Shchepin
5d0e599f17
Support MUC hats (XEP-0317, conversejs/prosody compatible)
2021-10-29 05:35:16 +03:00
Alexey Shchepin
5abc03ff8f
Optimize MucSub processing
2021-09-13 08:20:47 +03:00
Badlop
5beaf50c67
Fix spec: xmpp:set_from_to/3 allows undefined as second argument
2021-07-13 20:43:44 +02:00
Paweł Chmielowski
a07029dcad
Fix previous commit to pass all tests
2021-07-13 17:56:16 +02:00
Paweł Chmielowski
0de6f1c538
Use multicast routing for more packets generated by muc
2021-07-13 16:01:25 +02:00
Holger Weiß
3b5ddf0254
mod_muc_room: Don't leak owner JIDs ( #3615 )
...
Avoid publishing room owner JIDs (via the muc#roominfo form) without
their explicit consent.
Closes #3609 .
2021-05-28 16:43:49 +02:00
Badlop
13e1307ab1
When occupant is banned, remove his subscriptions too ( #2451 )
2021-03-18 16:15:17 +01:00
Paweł Chmielowski
ca5d5f3b4c
Use monitors to track muc rooms
...
This should prevent keeping rooms that were hard killed from in
online table.
2021-03-03 11:32:05 +01:00
Paweł Chmielowski
7da033f733
Fix muc tests
2021-02-17 13:09:29 +01:00
Paweł Chmielowski
14871c54ac
Take in account subscriber's affiliation when checking access to moderated room
...
This should fix issue #3525
2021-02-17 10:45:30 +01:00
Badlop
6e0161470e
Update newest copyright year to 2021 ( #3464 )
2021-01-27 17:02:06 +01:00
Jing Sun
5af7532504
mod_muc/mod_muc_room: add option limits for password and captcha_whitelist ( #2255 )
2021-01-21 16:58:05 +01:00
Badlop
b6d90cc55c
Allow non-occupant non-subscribed service admin send private MUC message ( #3474 )
2021-01-13 16:49:45 +01:00
Paweł Chmielowski
5f9d480f6a
Simplify updating disk room options in set_room_affiliation
2020-12-04 13:06:53 +01:00
Paweł Chmielowski
c2a3f037bb
Update muc_room just_created timestamp when message is received
...
This together with last history message is used by room_unused_* command
to determine for how long room was not used, this change allow us to skip
checking history, and works even when history is disabled.
2020-11-18 17:14:28 +01:00
Paweł Chmielowski
2e8023158d
Allow room_unused_list/destroy work on hibernated rooms
...
This required adding hibernation time to data stored for room to be able
determine how old was a room, rooms that aren't stored with that
information will use node start time as timestamp for that.
2020-11-16 16:05:16 +01:00
Paweł Chmielowski
81e872c110
Don't do double utf-8 conversion on translated strings in str:format
...
This caused garbled text in some places in webadmin when using language
that used characters > 128.
Thanks to chengshq for noticing this and providing preliminary patch.
2020-11-09 12:20:35 +01:00
Stu Tomlinson
bd11a00f8f
Use include_lib() to include headers from dependencies ( #3369 )
2020-09-03 13:45:57 +02:00
Badlop
a3be28b5c4
Provide room disco info identity name only when title was set ( #3370 )
2020-08-28 14:56:25 +02:00
Badlop
743b25448a
New hook to run when a room process is started ( #3353 )
2020-08-28 14:54:06 +02:00
Badlop
66c2f45bff
Show nick also in oneself list of subscriptions ( #3206 )
2020-08-26 19:32:29 +02:00
Badlop
8d969a4a9f
Always show MucSub subscribers nicks ( #3206 )(thanks to Snoopcatt)
2020-08-26 19:32:26 +02:00
Badlop
61926a44be
Subscriber should not send message to moderated room ( #3222 )
2020-06-24 13:17:04 +02:00
Badlop
150b7e7219
Fix unsubscribe command result, handle_sync_event result, and dialyzer
...
How to reproduce the problems fixed by this commit:
Create temporary room, other account subscribes, and owner leaves
Unsubscribe that account with the command: ejabberdctl unsubscribe_room ...
2020-03-24 11:44:22 +01:00
Paweł Chmielowski
97354426cf
Make mod_muc_room:unsubscirbe handle that unsubscribe may stop room
2020-03-23 13:16:48 +01:00
Badlop
2d32c66fd7
Update copyright to 2020 ( #3149 )
2020-01-28 15:49:23 +01:00
Paweł Chmielowski
75094df25e
Do not use ~ts format in string that are put in xmpp payload
...
We are expecting utf8 data here, and using that flag will convert those
to unicode codepoints, which aren't handled properly later.
2020-01-22 12:55:27 +01:00
Evgeny Khramtsov
47d0eed3f1
Advertise muc#roominfo_logs in disco#info of the room
...
The commit adds new `url` option for mod_muc_log.
Fixes #3040
2019-09-26 16:53:36 +03:00
Evgeny Khramtsov
5770946f03
Correctly handle unicode in log messages
2019-09-23 15:17:20 +03:00
Badlop
fd4c5edc23
Apply default role after revoking admin affiliation ( #3023 )
2019-09-17 12:31:14 +02:00
Vyache
c0f8e5d7c0
Custom exit message is not broadcast
2019-08-23 09:32:58 +03:00
Badlop
0bb14bdc0b
Revert "Affiliations other than admin and owner cannot invite to members_only rooms"
...
This reverts commit b010a1a0a0
.
More details in #2987
2019-08-13 14:55:37 +02:00
Evgeny Khramtsov
48bed43902
Don't render CAPTCHA whitelist when CAPTCHA is not configured
...
Fixes #2970
2019-07-31 12:35:06 +03:00
Evgeny Khramtsov
15b4b3fa1b
Fix typos using codespell
2019-07-16 22:07:39 +03:00
Evgeny Khramtsov
76d4c178a7
Use econf:timeout/2
2019-07-16 18:02:32 +03:00
Paweł Chmielowski
6b3d0d154e
Add code for hibernating inactive muc_room processes
2019-07-16 15:09:58 +02:00
Evgeny Khramtsov
104c4093dc
Only respond with occupants list to disco#items with empty node
...
Fixes #2942
2019-07-15 14:10:45 +03:00
Evgeny Khramtsov
4ec78736b9
Improve handling of unexpected iq in mod_muc_room
...
Don't crash on an iq-set/get containing unexpected tag within
expected namespace
This further improves PR #2900
2019-07-15 13:59:41 +03:00
Evgeny Khramtsov
87b8344ede
Attach mod_muc_room processes to a supervisor
2019-07-15 12:43:05 +03:00
Evgeny Khramtsov
b0379db5a1
Fix formatting
2019-07-10 23:46:42 +03:00
Evgeny Khramtsov
d1b5844d64
Merge pull request #2900 from aquarhead/protect-muc-owner
...
Protect against bad muc#owner requests
2019-07-10 23:46:08 +03:00
Evgeny Khramtsov
43da45cf67
Improve type specs of mod_muc_room
2019-07-09 15:21:17 +03:00
Evgeny Khramtsov
9cbc0685db
Don't expose internal FSM API of mod_muc_room
2019-07-09 00:47:54 +03:00
Evgeny Khramtsov
80beb6d6f6
Improve formatting of exceptions
2019-07-07 22:12:14 +03:00
Evgeny Khramtsov
b3caade0a0
Distribute routing of MUC messages accross all CPU cores
...
Also relay as less stanzas as possible through mod_muc workers
2019-07-05 10:35:31 +03:00
Evgeny Khramtsov
a2a061c1c8
Avoid using broad p1_queue:queue() type wherever possible
2019-06-28 22:16:29 +03:00
Evgeny Khramtsov
39cf8d86d6
Avoid using broad map() type wherever possible
2019-06-27 15:22:27 +03:00
Evgeny Khramtsov
b479fe5315
Use correct stacktrace in logging macros
...
By calling erlang:get_stacktrace() inside a lager function
we obtain actually a stacktrace of the lager function, not
the one we got during exception. This is not a problem for
newest Erlang versions though.
2019-06-26 00:05:41 +03:00