File

spec/scansion/pep_nickname.scs @ 12686:5f182bccf33f

mod_component: Require 'from' attribute on stanzas by default The old behaviour of falling back to the component domain when it is missing has been merged into the logic for the existing "validate_from_addresses" option (which is strict by default). ejabberd already rejects component stanzas with no 'from' (as the XEP requires), and this has led to compatibility issues for components that were seemingly working fine with Prosody.
author Matthew Wild <mwild1@gmail.com>
date Sun, 28 Aug 2022 07:51:50 +0100
parent 11714:d783716103c1
child 12965:edde56b60fd7
line wrap: on
line source

# Publishing a nickname in PEP and receiving a notification

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

-----

Romeo connects

Romeo sends:
	<iq id="4" type="set">
	  <pubsub xmlns="http://jabber.org/protocol/pubsub">
	    <publish node="http://jabber.org/protocol/nick">
	      <item id="current">
	        <nickname xmlns="http://jabber.org/protocol/nick"/>
	      </item>
	    </publish>
	  </pubsub>
	</iq>

Romeo receives:
	<iq id="4" type="result">
	  <pubsub xmlns="http://jabber.org/protocol/pubsub">
	    <publish node="http://jabber.org/protocol/nick">
	      <item id="current"/>
	    </publish>
	  </pubsub>
	</iq>

Romeo sends:
	<presence>
	  <c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://code.matthewwild.co.uk/clix/" ver="jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/>
	</presence>

Romeo receives:
	<iq id="disco" from="romeo@localhost" type="get">
	  <query xmlns="http://jabber.org/protocol/disco#info" node="http://code.matthewwild.co.uk/clix/#jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/>
	</iq>

Romeo receives:
	<presence>
	  <c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://code.matthewwild.co.uk/clix/" ver="jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/>
	</presence>

Romeo sends:
	<iq id="disco" type="result" to="romeo@localhost">
	  <query xmlns="http://jabber.org/protocol/disco#info" node="http://code.matthewwild.co.uk/clix/#jC32N+FhQoLrZ7nNQtZK3aqR0Fk=">
	    <identity type="console" name="clix" category="client"/>
	    <feature var="http://jabber.org/protocol/disco#items"/>
	    <feature var="http://jabber.org/protocol/disco#info"/>
	    <feature var="http://jabber.org/protocol/caps"/>
	    <feature var="http://jabber.org/protocol/nick+notify"/>
	  </query>
	</iq>

Romeo receives:
	<message type="headline" from="romeo@localhost">
	  <event xmlns="http://jabber.org/protocol/pubsub#event">
	    <items node="http://jabber.org/protocol/nick">
	      <item id="current" publisher="${Romeo's JID}">
	        <nickname xmlns="http://jabber.org/protocol/nick"/>
	      </item>
	    </items>
	  </event>
	</message>

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

Romeo disconnects