Commit Graph

114 Commits

Author SHA1 Message Date
John Livingston
f0088671ea
New features: announcements WIP (#518):
* prevent annoucement spoofing on backend.
2024-09-12 11:44:35 +02:00
John Livingston
7b3d93b290
Typescript v5 + eslint 8.57 WIP
This commit also improves some type handling in the project.
2024-09-09 15:57:04 +02:00
John Livingston
08017ac2bb
Emoji only mode WIP:
* refactoring + optimization
* migration
2024-09-06 11:01:48 +02:00
John Livingston
1a75b30c50
Emoji only mode WIP 2024-09-05 18:28:54 +02:00
John Livingston
8e99199f29
New option to use and configure Prosody mod_firewall WIP (#97):
* new setting
* new configuration screen for Peertube admins
* include the mod_firewall module
* load mod_firewall if enabled
* sys admin can disable the firewall config editing by creating a
  special file on the disk
* user documentation
2024-08-13 10:35:47 +02:00
John Livingston
a4497739fa
Search user messages WIP (#145) 2024-08-01 16:54:31 +02:00
John Livingston
ebc8fc8797
Option to hide moderator name who made actions WIP (#137). 2024-07-29 15:00:02 +02:00
John Livingston
c6c365abf0
Avatar set for anonymous users: new 'none' choice (that will fallback to Converse new colorized avatars). 2024-07-25 15:34:27 +02:00
John Livingston
e57d39c8ab
Fix #481:
* Moderation bot was not able to connect when remote chat was disabled.
* Some cleaning in code generating Prosody configuration file.
* Bump version 10.3.3
2024-07-25 12:09:55 +02:00
John Livingston
2f98dfa538
Bad english corrections. 2024-07-10 11:55:54 +02:00
John Livingston
f870aa6cfb
Moderation delay WIP (#132):
* mod_muc_moderation_delay, first shot.
2024-07-09 11:40:37 +02:00
John Livingston
14ffa90208
Poll WIP (#231):
* muted participants can't vote
* removed "Choice N" from button labels.
2024-07-05 11:23:30 +02:00
John Livingston
6dda0cc44f
Poll WIP (#231):
* refactoring update messages, for a more efficient and proper way to
  handle it
2024-07-05 11:23:30 +02:00
John Livingston
6f7c5c50f7
Poll WIP (#231):
* frontend message localization
2024-07-05 11:23:29 +02:00
John Livingston
4168b2ce41
Poll WIP (#231):
* various fix and improvements
2024-07-05 11:23:28 +02:00
John Livingston
b792588364
Poll WIP (#231):
* mod_muc_poll
* feature detection and create poll button in Converse
2024-07-05 11:23:21 +02:00
John Livingston
a06ef00e2a
Terms&Conditions (#18) WIP:
* channel terms
2024-06-25 12:21:01 +02:00
John Livingston
b110456029
Terms&Conditions (#18) WIP:
* Converse module to display terms.
* Prosody module to send terms.
2024-06-25 12:21:01 +02:00
John Livingston
5a455fff93
New option to only allow registered users to speak WIP (#233):
* Prosody mod_muc_peertubelivechat_roles module
* Fix ConverseJS to disable the message field when room is unmoderated
  and user is visitor
* Mute/voice anonymous users when changing room configuration.
* Display a specific message to muted anonymous users.
* Default value for mute_anonymous in channel options.
* Feature documentation
2024-06-21 11:37:06 +02:00
Mehdi Benadel
2c81d9a052 lint update 2024-05-28 13:43:07 +02:00
John Livingston
5a14e3f755
New setting to listen C2S connection on non-localhost interfaces (#377). 2024-05-27 16:32:40 +02:00
John Livingston
d5c327565c
Adding SPDX headers (WIP) 2024-05-23 11:42:14 +02:00
John Livingston
5745e8c8a3
Changing defaults MUC affiliation (#385):
* video/channel owner is MUC owner
* the bot is MUC owner
* the bot is admin on the MUC component
* Peertube moderators/admins have no more special access (by default)
* migration script to update all existing rooms
2024-05-17 11:47:37 +02:00
John Livingston
7608f7c14b
Task lists WIP:
* first shot for the pubsub module that will handle tasks.
2024-05-13 10:52:32 +02:00
John Livingston
8a65f447c8
Possibility to configure an OpenID Connect provider on the instance level WIP (#128)
Get avatar from remote service.
2024-04-19 09:58:35 +02:00
John Livingston
3efbfbc12b
Possibility to configure an OpenID Connect provider on the instance
level WIP (#128)

Fix chat federation.
2024-04-19 09:58:35 +02:00
John Livingston
3a5f27e751
Possibility to configure an OpenID Connect provider on the instance level WIP (#128). 2024-04-19 09:58:33 +02:00
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
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
afbc78d0e6
Slow Mode WIP (#192): option position 2024-02-16 17:35:54 +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
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
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
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
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
d0ba7d017d
External Components interface configuration:
You can now configure on which network interfaces Prosody will listen for external components.
2023-09-22 16:45:02 +02:00
John Livingston
9f8a9ae5ae
Fix typo. 2023-08-07 10:19:42 +02:00
John Livingston
8f66ea4032
Fix #180: Letsencrypt import not working
Letsencrypt certificate import procedure was not working on server that had never installed Prosody.
Adding `prosody_user` in the Prosody configuration file to fix this.
Updating the procedure: the `chown` is no more needed in `/etc/letsencrypt/renewal-hooks/deploy/prosody.sh`.
2023-06-08 10:22:43 +02:00
John Livingston
472caf9f5b
Fix: direct s2s connection not always possible
Trying to connect to a remote instance using direct s2s won't work if local instance has not the feature enabled, and if the remote instance does not know the local one.
So using Websocket S2S in such case (that embed a discovery mecanism).
2023-06-01 13:06:59 +02:00
John Livingston
2de38661d6
Websocket S2S: ping every 55s to keep alive. 2023-05-31 16:52:52 +02:00
John Livingston
92d92e3350
Fix: i misunderstood the parameter s2s_close_timeout. And removing a duplicate hook. 2023-05-31 16:52:52 +02:00
John Livingston
b525c203da
Chat Federation: first working PoC! 2023-05-31 16:52:49 +02:00
John Livingston
5a945a0cb7
Chat Federation WIP:
Found that net.websocket is not appropriate.
This commit is a proof of concept. It has to be cleaned.
Still not working, but close!
2023-05-31 16:52:48 +02:00