File

spec/scansion/lastactivity.scs @ 11694:d6be4dda1f60

net.server_epoll: Set minimum wait time to 1ms, matching epoll A timeout value less than 0.001 gets turned into zero on the C side, so epoll_wait() returns instantly and essentially busy-loops up to 1ms, e.g. when a timer event ends up scheduled (0, 0.001)ms into the future. Unsure if this has much effect in practice, but it may waste a small amount of CPU time. How much would depend on how often this ends up happening and how fast the CPU gets trough main loop iterations.
author Kim Alvefur <zash@zash.se>
date Thu, 15 Jul 2021 01:38:44 +0200
parent 10732:f5d88ad24b30
line wrap: on
line source

# XEP-0012: Last Activity / mod_lastactivity

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

-----

Romeo connects

Romeo sends:
	<presence>
		<status>Hello</status>
	</presence>

Romeo receives:
	<presence from="${Romeo's full JID}">
		<status>Hello</status>
	</presence>

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

Romeo receives:
	<presence from="${Romeo's full JID}" type="unavailable">
		<status>Goodbye</status>
	</presence>

# mod_lastlog saves time + status message from the last unavailable presence

Romeo sends:
	<iq id='a' type='get'>
		<query xmlns='jabber:iq:last'/>
	</iq>

Romeo receives:
	<iq type='result' id='a'>
		<query xmlns='jabber:iq:last' seconds='0'>Goodbye</query>
	</iq>

Romeo disconnects

# recording ended on 2020-04-20T14:39:47Z