inspect_jitsi.xmpp.participant module#
A single occupant of a Jitsi Meet room's MUC.
- class inspect_jitsi.xmpp.participant.Participant(jid, nick, name=None, role=None, affiliation=None, real_jid=None, occupant_id=None)[source]#
Bases:
objectOne occupant of a room, parsed from their MUC presence stanza.
- __annotations__ = {'affiliation': 'str | None', 'jid': 'str', 'name': 'str | None', 'nick': 'str', 'occupant_id': 'str | None', 'real_jid': 'str | None', 'role': 'str | None'}#
- __dataclass_fields__ = {'affiliation': Field(name='affiliation',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'jid': Field(name='jid',type='str',default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'name': Field(name='name',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'nick': Field(name='nick',type='str',default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'occupant_id': Field(name='occupant_id',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'real_jid': Field(name='real_jid',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'role': Field(name='role',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}#
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=True,match_args=True,kw_only=False,slots=False,weakref_slot=False)#
- __delattr__(name)#
Implement delattr(self, name).
- __dict__ = mappingproxy({'__module__': 'inspect_jitsi.xmpp.participant', '__firstlineno__': 31, '__annotations__': {'jid': 'str', 'nick': 'str', 'name': 'str | None', 'role': 'str | None', 'affiliation': 'str | None', 'real_jid': 'str | None', 'occupant_id': 'str | None'}, '__doc__': 'One occupant of a room, parsed from their MUC presence stanza.', 'name': None, 'role': None, 'affiliation': None, 'real_jid': None, 'occupant_id': None, 'from_presence': <classmethod(<function Participant.from_presence>)>, 'to_dict': <function Participant.to_dict>, 'to_json': <function Participant.to_json>, '__static_attributes__': (), '__dict__': <attribute '__dict__' of 'Participant' objects>, '__weakref__': <attribute '__weakref__' of 'Participant' objects>, '__dataclass_params__': _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=True,match_args=True,kw_only=False,slots=False,weakref_slot=False), '__dataclass_fields__': {'jid': Field(name='jid',type='str',default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'nick': Field(name='nick',type='str',default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'name': Field(name='name',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'role': Field(name='role',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'affiliation': Field(name='affiliation',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'real_jid': Field(name='real_jid',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'occupant_id': Field(name='occupant_id',type='str | None',default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}, '__replace__': <function _replace>, '__hash__': <function Participant.__hash__>, '__init__': <function Participant.__init__>, '__repr__': <function Participant.__repr__>, '__eq__': <function Participant.__eq__>, '__setattr__': <function Participant.__setattr__>, '__delattr__': <function Participant.__delattr__>, '__match_args__': ('jid', 'nick', 'name', 'role', 'affiliation', 'real_jid', 'occupant_id')})#
- __eq__(other)#
Return self==value.
- __firstlineno__ = 31#
- __hash__()#
Return hash(self).
- __init__(jid, nick, name=None, role=None, affiliation=None, real_jid=None, occupant_id=None)#
- __match_args__ = ('jid', 'nick', 'name', 'role', 'affiliation', 'real_jid', 'occupant_id')#
- __module__ = 'inspect_jitsi.xmpp.participant'#
- __replace__(**changes)#
- __repr__()#
Return repr(self).
- __setattr__(name, value)#
Implement setattr(self, name, value).
- __static_attributes__ = ()#
- __weakref__#
list of weak references to the object
- classmethod from_presence(presence)[source]#
Build a Participant from a MUC <presence/> stanza.
- Return type:
- jid: str#
The MUC occupant JID, e.g. "room@muc.example.com/<nick-resource>".
- occupant_id: str | None = None#
Stable per-session anonymous id (XEP occupant-id), if disclosed.
Unlike jid/nick, this stays the same for one occupant across the conference even where the MUC nick is a random per-join identifier - useful for telling "still the same person" from "someone new".