File

spec/scansion/muc_outcast_reason.scs @ 13665:30a91d819913 13.0

mod_account_activity: Record an account's last activity timestamp This is similar to mod_lastlog/mod_lastlog2. Some functionality was dropped, compared to mod_lastlog2. These features (recording the IP address, or tracking the timestamp of multiple events) are handled better by the mod_audit family of modules. For example, those correctly handle multiple logins, IP address truncation, and data retention policies. The "registered" timestamp from mod_lastlog2 was also dropped, as this has been stored in account_details by Prosody itself since at least 0.12 already.
author Matthew Wild <mwild1@gmail.com>
date Wed, 12 Feb 2025 12:33:45 +0000
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'/>