MUC Extensions

This page gathers the different ways the MUC (XEP-0045) has been extended over the years, in the MUC document itself but not exactly defined or by additional documents. Some of this page may overlap with XEP-Remarks/XEP-0045:_Multi-User_Chat.

Multi-Session Nick
XEP-0045 If allowed by the service, a user can associate more than one full JID with the same occupant JID (e.g., the user juliet@capulet.lit is allowed to log in simultaneously as the nick "JuliC" in the characters@chat.shakespeare.lit chatroom from both juliet@capulet.lit/balcony and juliet@capulet.lit/chamber). Multi-session nicks are not currently defined in this document.

Multi-Session_Nicks

Identification
XEP-0421 Anonymous unique occupant identifiers for MUCs Allows for actions to be associated to a unique identifier when the JID isn't visible.

Moderation
XEP-0425 Message Moderation Allows a moderator to retract messages from other participants.

Invitations
XEP-0249: Direct MUC Invitations Defines a method for inviting a contact to a multi-user chat room directly, instead of sending the invitation through the chat room (mediated invites).

This may be useful if a user blocks messages from unknown JIDs.

Bookmarks
𐄂 XEP-0048: Bookmarks Using PEP as a storage method Defines an XML data format for use by XMPP clients in storing bookmarks to mult-user chatrooms and web pages. The chatroom bookmarking function includes the ability to auto-join rooms on login.

𐄂 XEP-0048: Bookmark Storage Using Private Storage as a storage method Defines an XML data format for use by XMPP clients in storing bookmarks to mult-user chatrooms and web pages. The chatroom bookmarking function includes the ability to auto-join rooms on login.

XEP-0402: PEP Native Bookmarks Defines a syntax and storage profile for keeping a list of chatroom bookmarks on the server

𐄂 XEP-0411: Bookmarks Conversion Describes a method to migrate to PEP based bookmarks without losing compatibility with client that still use Private XML.

XEP-0469: Bookmark Pinning Defines an XMPP protocol extension to allow users to pin PEP Native Bookmarks.

Federation / Decentralization
XEP-0281: DMUC1: Distributed Multi-User Chat Defines methods for distributing Multi-User Chat (MUC) rooms across multiple chat services.

XEP-0282: DMUC2: Distributed MUC Multi-User Chats, distributed over several nodes in the XMPP network, using a primary/replica architecture

XEP-0289: Federated MUC for Constrained Environments Provides a protocol for federating MUC rooms together in order to reduce the effects of constrained network (e.g. unreliability, severely limited bandwidth) on the room occupants.

Notifications
XEP-0437: Room Activity Indicators Provides a mechanism for activity notifications in MUC

XEP-0452: MUC Mention Notifications Documents how a user may be informed when they're mentioned in a MUC which they're not currently joined to

PubSub
XEP-0316: MUC Eventing Protocol Defines semantics for using the XMPP publish-subscribe protocol to broadcast state change events associated with a Multi-User Chat (MUC) room. This profile of pubsub therefore enables a chatroom to function as a virtual pubsub service, easing the discovery of syndicated data and event notifications associated with such a room.

Optimisations
XEP-0410: MUC Self-Ping (Schrödinger's Chat) Allows clients to check whether they are still joined to a chatroom.

XEP-0311: MUC Fast Reconnect Provides a protocol that can be used for limiting the amount of presence history needed when rejoining a MUC room.

XEP-0436: MUC presence versioning Reduces the amount of presence trafic

XEP-0463: MUC Affiliations Versioning Reduces the amount of queries necessary to stay up-to-date with affiliations in a MUC room, while getting rid of races.