File

spec/scansion/pep_pubsub_max.scs @ 11741:dcf38ac6a38c

net.server: Add a predrain callaback just before writes Allows sneaking in things in the write buffer just before it's sent to the network stack. For example ack requests, compression flushes or other things that make sense to send after stanzas or other things. This ensures any additional trailing data sent is included in the same write, and possibly the same TCP packet. Other methods used such as timers or nextTick might not have the same effect as it depends on scheduling.
author Kim Alvefur <zash@zash.se>
date Mon, 16 Aug 2021 12:34:52 +0200
parent 11631:6641ca266d94
line wrap: on
line source

# PEP max_items=max

[Client] Romeo
	jid: pep-test-maxitems@localhost
	password: password

-----

Romeo connects

Romeo sends:
	<iq type="set" id="pub">
		<pubsub xmlns="http://jabber.org/protocol/pubsub">
			<publish node="urn:xmpp:microblog:0">
				<item>
					<entry xmlns='http://www.w3.org/2005/Atom'>
						<title>Hello</title>
					</entry>
				</item>
			</publish>
			<publish-options>
				<x xmlns="jabber:x:data" type="submit">
					<field type="hidden" var="FORM_TYPE">
						<value>http://jabber.org/protocol/pubsub#publish-options</value>
					</field>
					<field var="pubsub#persist_items">
						<value>true</value>
					</field>
					<field var="pubsub#access_model">
						<value>open</value>
					</field>
					<field var="pubsub#max_items">
						<value>max</value>
					</field>
				</x>
			</publish-options>
		</pubsub>
	</iq>

Romeo receives:
	<iq type="result" id="pub">
		<pubsub xmlns="http://jabber.org/protocol/pubsub">
			<publish node="urn:xmpp:microblog:0">
				<item id="{scansion:any}"/>
			</publish>
		</pubsub>
	</iq>