* 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
* 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
* optimizing and fixing the loss of affiliation
* fix: unsubscribing based on bare_sessions does not work with remote
servers. So we use the muc-occupant-left hook instead.
* 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
Peertube users avatars optimization (Fix#303):
* avoid multiple parallel request to load same avatar from Peertube
* send "item-not-found" stanza when no avatar, instead of a vCard without 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
* 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
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).