XEP 0421

1.6 Documentation

«  XEP 0405   ::   Contents   ::   XEP 0422  »

XEP 0421

class slixmpp.plugins.xep_0421.XEP_0421(xmpp, config=None)[source]

XEP-0421: Anonymous unique occupant identifiers for MUCs

stanza = <module 'slixmpp.plugins.xep_0421.stanza' from '/home/docs/checkouts/readthedocs.org/user_builds/slixmpp/checkouts/slix-1.6.0/slixmpp/plugins/xep_0421/stanza.py'>

Stanza elements

Slixmpp: The Slick XMPP Library Copyright (C) 2020 “Maxime “pep” Buquet <pep@bouah.net>” This file is part of Slixmpp.

See the file LICENSE for copying permission.

class slixmpp.plugins.xep_0421.stanza.OccupantId(xml=None, parent=None)[source]

An Occupant-id tag.

An <occupant-id/> tag is set by the MUC.

This is useful in semi-anon MUCs (and MUC-PMs) as a stable identifier to prevent the usual races with nicknames.

Without occupant-id, getting the following messages from MUC history would prevent a client from asserting senders are the same entity:

<message type='groupchat' from='foo@muc/nick1' id='message1'>
    <body>Some message</body>
    <occupant-id xmlns='urn:xmpp:occupant-id:0' id='unique-opaque-id1'/>
</message>
<message type='groupchat' from='foo@muc/nick2' id='message2'>
    <body>Some correction</body>
    <occupant-id xmlns='urn:xmpp:occupant-id:0' id='unique-opaque-id1'/>
    <replace xmlns='urn:xmpp:message-correct:0' id='message1'/>
</message>
interface = {'id'}
name = 'occupant-id'
namespace = 'urn:xmpp:occupant-id:0'
plugin_attrib = 'occupant-id'

«  XEP 0405   ::   Contents   ::   XEP 0422  »