File

spec/scansion/muc_outcast_reason.scs @ 13549:3b357ab6b6eb

util.pubsub: Add method returning subset of config as metadata Allows granting read only access to other sets of users using a separate access control capability, which makes sense as some properties may be intended to be public but read-only.
author Kim Alvefur <zash@zash.se>
date Fri, 08 Nov 2024 02:11:00 +0100
parent 13415:f34b33cb1383
line wrap: on
line source

# Save ban reason

[Client] Romeo
	password: password
	jid: user@localhost

-----

Romeo connects

Romeo sends:
	<presence to="muc-outcast-reason@conference.localhost/Romeo">
		<x xmlns="http://jabber.org/protocol/muc"/>
	</presence>

Romeo receives:
	<presence from="muc-outcast-reason@conference.localhost/Romeo">
		<x xmlns="http://jabber.org/protocol/muc#user">
			<status code="201"/>
			<item jid="${Romeo's full JID}" role="moderator" affiliation="owner"/>
			<status code="110"/>
		</x>
	</presence>

Romeo receives:
	<message type="groupchat" from="muc-outcast-reason@conference.localhost">
		<subject/>
	</message>

Romeo sends:
	<iq id="lx5" to="muc-outcast-reason@conference.localhost" type="set">
		<query xmlns="http://jabber.org/protocol/muc#admin">
			<item affiliation="outcast" jid="tybalt@localhost">
				<reason>Hey calm down</reason>
			</item>
		</query>
	</iq>

Romeo receives:
	<message from="muc-outcast-reason@conference.localhost">
		<x xmlns="http://jabber.org/protocol/muc#user">
			<status code="301"/>
			<item jid="tybalt@localhost" affiliation="outcast">
				<reason>Hey calm down</reason>
			</item>
		</x>
	</message>

Romeo receives:
	<iq id="lx5" type="result" from="muc-outcast-reason@conference.localhost"/>

Romeo sends:
	<iq id="lx6" to="muc-outcast-reason@conference.localhost" type="get">
		<query xmlns="http://jabber.org/protocol/muc#admin">
			<item affiliation="outcast"/>
		</query>
	</iq>

Romeo receives:
	<iq id="lx6" type="result" from="muc-outcast-reason@conference.localhost">
		<query xmlns="http://jabber.org/protocol/muc#admin">
			<item jid="tybalt@localhost" affiliation="outcast">
				<reason>Hey calm down</reason>
			</item>
		</query>
	</iq>

Romeo disconnects

Romeo sends:
	<presence type='unavailable'/>