Annotate

spec/scansion/muc_presence_probe.scs @ 12468:353836684009

net.connect: Fix accumulation of connection attempt references Connection attempts that failed the Happy Eyeballs race were not unreferenced and would accumulate. Tested by inspecting the 'pending_connections_map' after establishing s2s with a s2s target where the IPv6 port has a -j DROP rule causing it to time out and the IPv4 attempt wins the race. Expected is that the losing connection stays around until net.server timeouts kick in where it should be removed. The map table should tend towards being empty during idle times.
author Kim Alvefur <zash@zash.se>
date Wed, 20 Apr 2022 22:41:54 +0200
parent 11246:ab189e707705
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11245
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
1 # #1535 Let MUCs respond to presence probes
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
2
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
3 [Client] Romeo
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
4 jid: user@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
5 password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
6
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
7 [Client] Juliet
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
8 jid: user2@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
9 password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
10
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
11 [Client] Mercutio
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
12 jid: user3@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
13 password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
14
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
15 -----
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
16
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
17 Romeo connects
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
18
11246
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
19 # Romeo joins the MUC
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
20
11245
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
21 Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
22 <presence to="room@conference.localhost/Romeo">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
23 <x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
24 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
25
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
26 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
27 <presence from='room@conference.localhost/Romeo'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
28 <x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
29 <status code='201'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
30 <item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
31 <status code='110'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
32 </x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
33 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
34
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
35 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
36 <message type='groupchat' from='room@conference.localhost'><subject/></message>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
37
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
38 # Disable presences for non-mods
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
39 Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
40 <iq id='config1' to='room@conference.localhost' type='set'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
41 <query xmlns='http://jabber.org/protocol/muc#owner'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
42 <x xmlns='jabber:x:data' type='submit'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
43 <field var='FORM_TYPE'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
44 <value>http://jabber.org/protocol/muc#roomconfig</value>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
45 </field>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
46 <field var='muc#roomconfig_presencebroadcast'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
47 <value>moderator</value>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
48 </field>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
49 </x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
50 </query>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
51 </iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
52
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
53 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
54 <iq id="config1" from="room@conference.localhost" type="result">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
55 </iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
56
11246
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
57 # Romeo probes himself
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
58
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
59 Romeo sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
60 <presence to="room@conference.localhost/Romeo" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
61 <x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
62 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
63
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
64 Romeo receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
65 <presence from='room@conference.localhost/Romeo'>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
66 <x xmlns='http://jabber.org/protocol/muc#user'>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
67 <item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
68 </x>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
69 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
70
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
71 # Juliet tries to probe Romeo before joining the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
72
11245
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
73 Juliet connects
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
74
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
75 Juliet sends:
11246
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
76 <presence to="room@conference.localhost/Romeo" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
77 <x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
78 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
79
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
80 Juliet receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
81 <presence from="room@conference.localhost/Romeo" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
82 <error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
83 <not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
84 </error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
85 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
86
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
87 # Juliet tries to probe Mercutio (who's not in the MUC) before joining the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
88
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
89 Juliet sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
90 <presence to="room@conference.localhost/Mercutio" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
91 <x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
92 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
93
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
94 Juliet receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
95 <presence from="room@conference.localhost/Mercutio" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
96 <error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
97 <not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
98 </error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
99 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
100
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
101 # Juliet joins the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
102
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
103 Juliet sends:
11245
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
104 <presence to="room@conference.localhost/Juliet">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
105 <x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
106 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
107
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
108 Juliet receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
109 <presence from="room@conference.localhost/Romeo" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
110
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
111 Juliet receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
112 <presence from="room@conference.localhost/Juliet" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
113
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
114 # Romeo probes Juliet
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
115
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
116 Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
117 <presence to="room@conference.localhost/Juliet" type="probe">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
118 <x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
119 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
120
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
121 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
122 <presence from='room@conference.localhost/Juliet'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
123 <x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
124 <item jid="${Juliet's full JID}" affiliation='none' role='participant'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
125 </x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
126 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
127
11246
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
128
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
129 # Mercutio tries to probe himself in a MUC before joining
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
130
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
131 Mercutio connects
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
132
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
133 Mercutio sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
134 <presence to="room@conference.localhost/Mercutio" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
135 <x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
136 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
137
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
138 Mercutio receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
139 <presence from="room@conference.localhost/Mercutio" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
140 <error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
141 <not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
142 </error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
143 </presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
144
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11245
diff changeset
145
11245
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
146 # Romeo makes Mercutio a member and registers his nickname
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
147
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
148 Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
149 <iq id='member1' to='room@conference.localhost' type='set'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
150 <query xmlns='http://jabber.org/protocol/muc#admin'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
151 <item affiliation='member' jid="${Mercutio's JID}" nick="Mercutio"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
152 </query>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
153 </iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
154
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
155 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
156 <message from='room@conference.localhost'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
157 <x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
158 <item jid="${Mercutio's JID}" affiliation='member' />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
159 </x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
160 </message>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
161
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
162 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
163 <iq from='room@conference.localhost' id='member1' type='result'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
164
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
165
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
166 # Romeo probes Mercutio, even though he's unavailable
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
167
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
168 Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
169 <presence to="room@conference.localhost/Mercutio" type="probe">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
170 <x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
171 </presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
172
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
173 Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
174 <presence from='room@conference.localhost/Mercutio' type="unavailable">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
175 <x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
176 <item nick="Mercutio" affiliation='member' role='none' jid="${Mercutio's JID}" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
177 </x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
178 </presence>