Commit Graph

325 Commits

Author SHA1 Message Date
John Livingston 4dd4f18965
Fix #87: updating chat room title when video/channel title is changed:
* renaming module list_rooms to manage_rooms
* added some API to update room info
* when a video or a channel is updated, sending an API call to update
  the room
2024-03-07 16:22:14 +01:00
John Livingston 2115b352a4
Updating xmppjs-chat-box version. 2024-03-07 10:14:36 +01:00
John Livingston f5b9ffe616
Temporary security fix for #332: rollback of v8.3.1:
* Setting video owner as room owner as side effects. Like leaking the instance moderator/admin list. And maybe others.
  * So we rollback this feature, waiting for a better way to allow room admins/moderators to change room settings.
  * As a consequence, users that are not Peertube moderator/administrator can't change the slow mode configuration without deleting/recreating the room. This will be fixed in a later plugin version.
2024-03-01 15:25:29 +01:00
John Livingston 97b85be4ad
Fix #322: "Sepia is no longer an owner of this groupchat" message when joining the chat.
* This was related to the fact that the bot was owner because of the "admins" Prosody config key, and not registered in the room.
* To fix it, i added the bot as owner when creating rooms.
* This means that the fix only work for newly created rooms.
* There might still be an issue in ConverseJS or Prosody, don't know exactly where.
2024-03-01 12:20:32 +01:00
John Livingston 9ec7167da1
Debug Mode: new option to promote some JIDs as admins on the MUC component. 2024-02-29 15:58:41 +01:00
John Livingston 3ec09ce267
Fix: video owner must be room owner, not only admin. Otherwise they can't edit room parameters (including slow mode settings). 2024-02-22 18:08:06 +01:00
John Livingston 3d9237624d
Naming:
* changing delay by duration for slow mode options
* better labels
2024-02-16 17:35:55 +01:00
John Livingston cd97d91f79
Replaced a sync file operation by an async one, to avoid blocking the server. 2024-02-16 17:35:54 +01:00
John Livingston afbc78d0e6
Slow Mode WIP (#192): option position 2024-02-16 17:35:54 +01:00
John Livingston cf179d7f72
Slow mode WIP (#192):
* default delay is configurable in channel's chat rooms options.
2024-02-16 17:35:53 +01:00
John Livingston ee71d3f729
Slow mode WIP (#192):
* new option in room configuration to set the slow mode delay (new prosody module mod_muc_slow_mode).
2024-02-16 17:35:48 +01:00
John Livingston 8a400d2d9f
New abstract avatars 2024-02-12 16:50:08 +01:00
John Livingston 91ef261c16
Fenec avatars. 2024-02-09 15:35:40 +01:00
John Livingston fbeffef34b
Bird avatars. 2024-02-09 15:12:48 +01:00
John Livingston 9561f36b93
Cats avatars. 2024-02-09 13:17:12 +01:00
John Livingston 70563200fe
New avatars:
* new settings to change the avatar set
* user documentation
2024-02-09 12:41:05 +01:00
John Livingston 19fca3891a
New avatars:
* moving files in better directory structure
* new bot avatar
2024-02-09 11:16:29 +01:00
John Livingston b9b0eb41d9
New avatars set WIP:
* adding new avatars by David Revoy
* replacing old avatars to test

TODO: add a settings to choose between legacy and new avatars.
TODO: generate a bot avatar.
2024-02-08 18:49:49 +01:00
John Livingston c008e84da7
Fix #295: Prosody: disabling message carbons for anonymous users.
Anonymous users can't use carbons, as they cannot connect with multiple
tabs on the same anonymous account.
So we disable carbons on the anonymous virtualhost, to improve
performances.

See here for some performances tests: https://github.com/JohnXLivingston/livechat-perf-test/tree/main/tests/50-anonymous-carbons
2024-02-01 15:20:52 +01:00
John Livingston 5d4bfceb73
Hidden force_default_hide_muc_participants query parameter, for testing
purpose.
2024-01-31 18:12:53 +01:00
John Livingston 5614987901
Fix self-signed certificates on ubuntu + v8.0.2:
* On some Ubuntu server, the self-signed certificates generation fails:
  * See [issue #268](https://github.com/JohnXLivingston/peertube-plugin-livechat/issues/268)
  * This prevents the bot to connect to the server
  * As a fallback, we directly call openssl to generate the certificates
2023-09-27 14:29:17 +02:00
John Livingston 353f2d03f3
Fix disabling bot 2023-09-26 14:37:56 +02:00
John Livingston 6705cd9e3d
Fix multiline. 2023-09-25 15:37:58 +02:00
John Livingston b8aef07182
Forbidden words comment field. 2023-09-25 13:16:15 +02:00
John Livingston 06b9417650
Channel configuration UI: form validation. 2023-09-25 12:51:15 +02:00
John Livingston e2c85af001
Bot avatar:
* For now, only one avatar possible,
* uses mod_random_vcard_peertubelivechat,
* mod_random_vcard_peertubelivechat has a new option with the avatar
  list (instead of a hardcoded avatar number)
* Peertube lists available avatars files, and pass it to mod_random_vcard_peertubelivechat
2023-09-25 11:20:46 +02:00
John Livingston d80cedfee5
Auto ban anonymous IP:
* New settings: "Ban anonymous user's IP when user is banned from a chatroom":
  * if enabled, every time a streamer bans an anonymous user, it will ban its IP on the chat server,
  * banned IPs are logged on disk, so server's admin can use them to feed fail2ban (for example),
  * option disabled by default, because could be used to create trapped-rooms on public servers
2023-09-22 18:17:54 +02:00
John Livingston 562073fc09
Channel conf UI WIP 2023-09-22 16:45:09 +02:00
John Livingston aa71a302f6
Channel Configuration UI WIP 2023-09-22 16:45:08 +02:00
John Livingston cc673bd3cb
Refactoring. 2023-09-22 16:45:08 +02:00
John Livingston eed88e9339
UI WIP. 2023-09-22 16:45:08 +02:00
John Livingston f00bac5eb1
Channel configuration UI + disabling bannedJIDs (for now) 2023-09-22 16:45:07 +02:00
John Livingston 6c966f608b
Stronger password. 2023-09-22 16:45:07 +02:00
John Livingston 852221d232
Moderation. 2023-09-22 16:45:07 +02:00
John Livingston 4fe972dc10
Configure bot name + refactoring. 2023-09-22 16:45:07 +02:00
John Livingston 9e7d9c6069
Bot must be admin on the MUC component. 2023-09-22 16:45:07 +02:00
John Livingston e0c31f09aa
Fix bot authentication. 2023-09-22 16:45:06 +02:00
John Livingston de9de8e358
wip 2023-09-22 16:45:06 +02:00
John Livingston 8b9da417b3
Fix bot spawning, avoiding extra npm process. 2023-09-22 16:45:06 +02:00
John Livingston 437fa4c17b
log level. 2023-09-22 16:45:06 +02:00
John Livingston 2289d79c28
Various fix and wip 2023-09-22 16:45:06 +02:00
John Livingston f97e54d499
Moderation Bot integration WIP:
* Start and stop the bot WIP
* Prosody: removing the BOSH module from the global scope (must only be present on relevant virtualhosts)
* Some refactoring
2023-09-22 16:45:06 +02:00
John Livingston 65fd49a81c
Fix rebuild 2023-09-22 16:45:05 +02:00
John Livingston 55fa6c0623
Fix rebuild 2023-09-22 16:45:05 +02:00
John Livingston 59c0c0c89b
removing unecessary await 2023-09-22 16:45:05 +02:00
John Livingston 260a25f411
Updating room-channel when prosody-room-type is changed 2023-09-22 16:45:05 +02:00
John Livingston 0e201d4e43
Fix muc domain 2023-09-22 16:45:05 +02:00
John Livingston de243bdc01
Fix. 2023-09-22 16:45:05 +02:00
John Livingston 065b6f0ed3
Fix 2023-09-22 16:45:05 +02:00
John Livingston a8c71fbadf
Store Bot configuration 2023-09-22 16:45:04 +02:00