Software /
code /
prosody
File
spec/scansion/pubsub_resend_on_sub.scs @ 11856:14a679588b7b
mod_pubsub,mod_pep: Advertise maximum number of items via XEP-0122
Clients would generally be using the "max" symbol instead of discovering
this, but this also gets us validation and earlier rejection of out of
bounds values.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 20 Oct 2021 17:32:34 +0200 |
parent | 11854:b605cbd5f13b |
line wrap: on
line source
# Pubsub: Send last item on subscribe #1436 [Client] Romeo jid: admin@localhost password: password // admin@localhost is assumed to have node creation privileges [Client] Juliet jid: juliet@localhost password: password --------- Romeo connects Romeo sends: <iq type="set" to="pubsub.localhost" id='create1'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <create node="princely_musings"/> </pubsub> </iq> Romeo receives: <iq type="result" id='create1'/> Romeo sends: <iq to="pubsub.localhost" id="config-never" type="set"> <pubsub xmlns="http://jabber.org/protocol/pubsub#owner"> <configure node="princely_musings"> <x xmlns="jabber:x:data" type="submit"> <field var="FORM_TYPE" type="hidden"> <value>http://jabber.org/protocol/pubsub#node_config</value> </field> <field type='list-single' var='pubsub#send_last_published_item'> <value>never</value> </field> </x> </configure> </pubsub> </iq> Romeo receives: <iq from="pubsub.localhost" id="config-never" type="result"/> Romeo sends: <iq type="set" to="pubsub.localhost" id='pub1'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <publish node="princely_musings"> <item id="current"> <entry xmlns="http://www.w3.org/2005/Atom"> <title>Soliloquy</title> <summary>Lorem ipsum dolor sit amet</summary> </entry> </item> </publish> </pubsub> </iq> Romeo receives: <iq type="result" id='pub1'/> Juliet connects Juliet sends: <iq type="set" to="pubsub.localhost" id='sub1'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <subscribe node="princely_musings" jid="${Juliet's full JID}"/> </pubsub> </iq> Juliet receives: <iq type="result" id='sub1'/> Juliet sends: <iq type="set" to="pubsub.localhost" id='unsub1'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <unsubscribe node="princely_musings" jid="${Juliet's full JID}"/> </pubsub> </iq> Juliet receives: <iq type="result" id='unsub1'/> Romeo sends: <iq to="pubsub.localhost" id="config-on_sub" type="set"> <pubsub xmlns="http://jabber.org/protocol/pubsub#owner"> <configure node="princely_musings"> <x xmlns="jabber:x:data" type="submit"> <field var="FORM_TYPE" type="hidden"> <value>http://jabber.org/protocol/pubsub#node_config</value> </field> <field type='list-single' var='pubsub#send_last_published_item'> <value>on_sub</value> </field> </x> </configure> </pubsub> </iq> Romeo receives: <iq from="pubsub.localhost" id="config-on_sub" type="result"/> Juliet sends: <iq type="set" to="pubsub.localhost" id='sub2'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <subscribe node="princely_musings" jid="${Juliet's full JID}"/> </pubsub> </iq> Juliet receives: <iq type="result" id='sub2'/> Juliet receives: <message type="headline" from="pubsub.localhost"> <event xmlns="http://jabber.org/protocol/pubsub#event"> <items node="princely_musings"> <item id="current" publisher="${Romeo's JID}"> <entry xmlns="http://www.w3.org/2005/Atom"> <title>Soliloquy</title> <summary>Lorem ipsum dolor sit amet</summary> </entry> </item> </items> </event> </message> Juliet sends: <iq type="set" to="pubsub.localhost" id='unsub2'> <pubsub xmlns="http://jabber.org/protocol/pubsub"> <unsubscribe node="princely_musings" jid="${Juliet's full JID}"/> </pubsub> </iq> Juliet receives: <iq type="result" id='unsub2'/> Juliet disconnects Romeo sends: <iq type="set" to="pubsub.localhost" id='del1'> <pubsub xmlns="http://jabber.org/protocol/pubsub#owner"> <delete node="princely_musings"/> </pubsub> </iq> Romeo receives: <iq type="result" id='del1'/> Romeo disconnects // vim: syntax=xml: