Annotate

spec/scansion/muc_show_offline.scs @ 12748:7b9de8109a90

util.roles: Add a :policies() method to iterate through available policies We don't expose the policies directly, to force people to go through :may(). However, there are times when we really just need to know what policies a role has inside it (e.g. for reporting or debugging purposes).
author Matthew Wild <mwild1@gmail.com>
date Fri, 07 Oct 2022 17:01:35 +0100
parent 12029:631b2afa7bc1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10687
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 # MUC: Room registration and presence broadcast of unavailable members
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 [Client] Romeo
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 jid: user@localhost
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 password: password
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 [Client] Juliet
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 jid: user2@localhost
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9 password: password
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 [Client] Rosaline
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12 jid: user3@localhost
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 password: password
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
14
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15 -----
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
16
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17 Romeo connects
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
20 <presence to="room@conference.localhost/Romeo">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
22 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
23
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
25 <presence from='room@conference.localhost/Romeo'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
26 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
27 <status code='201'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
28 <item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
29 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
30 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
31 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
32
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
33 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
34 <message type='groupchat' from='room@conference.localhost'><subject/></message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
35
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
36 # Submit config form
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
37 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
38 <iq id='config1' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
39 <query xmlns='http://jabber.org/protocol/muc#owner'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
40 <x xmlns='jabber:x:data' type='submit'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
41 <field var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
42 <value>http://jabber.org/protocol/muc#roomconfig</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
43 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
44 <field var='muc#roomconfig_presencebroadcast'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
45 <value>none</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
46 <value>participant</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
47 <value>moderator</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
48 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
49 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
50 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
51 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
52
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
53 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
54 <iq id="config1" from="room@conference.localhost" type="result">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
55 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
56
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
57 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
58 <iq id='member1' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
59 <query xmlns='http://jabber.org/protocol/muc#admin'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
60 <item affiliation='member' jid="${Juliet's JID}" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
61 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
62 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
63
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
64 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
65 <message from='room@conference.localhost'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
66 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
67 <item jid="${Juliet's JID}" affiliation='member' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
68 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
69 </message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
70
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
71 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
72 <iq from='room@conference.localhost' id='member1' type='result'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
73
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
74 # Juliet connects, and joins the room
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
75 Juliet connects
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
76
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
77 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
78 <presence to="room@conference.localhost/Juliet">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
79 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
80 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
81
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
82 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
83 <presence from="room@conference.localhost/Romeo" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
84
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
85 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
86 <presence from="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
87
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
88 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
89 <message type='groupchat' from='room@conference.localhost'><subject/></message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
90
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
91 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
92 <presence from="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
93
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
94 # Juliet retrieves the registration form
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
95
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
96 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
97 <iq id='jw81b36f' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
98 <query xmlns='jabber:iq:register'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
99 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
100
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
101 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
102 <iq type='result' from='room@conference.localhost' id='jw81b36f'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
103 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
104 <x type='form' xmlns='jabber:x:data'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
105 <field type='hidden' var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
106 <value>http://jabber.org/protocol/muc#register</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
107 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
108 <field type='text-single' label='Nickname' var='muc#register_roomnick'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
109 <required/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
110 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
111 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
112 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
113 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
114
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
115 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
116 <iq id='nv71va54' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
117 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
118 <x xmlns='jabber:x:data' type='submit'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
119 <field var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
120 <value>http://jabber.org/protocol/muc#register</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
121 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
122 <field var='muc#register_roomnick'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
123 <value>Juliet</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
124 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
125 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
126 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
127 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
128
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
129 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
130 <presence from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
131 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
132 <item affiliation='member' jid="${Juliet's full JID}" role='participant'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
133 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
134 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
135 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
136
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
137 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
138 <iq type='result' from='room@conference.localhost' id='nv71va54'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
139
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
140 # Juliet discovers her reserved nick
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
141
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
142 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
143 <iq id='getnick1' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
144 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
145 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
146
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
147 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
148 <iq type='result' from='room@conference.localhost' id='getnick1'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
149 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
150 <identity category='conference' name='Juliet' type='text'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
151 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
152 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
153
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
154 # Juliet leaves the room:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
155
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
156 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
157 <presence type="unavailable" to="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
158
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
159 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
160 <presence type='unavailable' from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
161 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
162 <item jid="${Juliet's full JID}" affiliation='member' role='none'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
163 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
164 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
165 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
166
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
167 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
168 <presence from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
169 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
170 <item jid="${Juliet's full JID}" affiliation='member' role='participant'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
171 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
172 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
173
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
174 # Rosaline connect and tries to join the room as Juliet
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
175
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
176 Rosaline connects
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
177
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
178 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
179 <presence to="room@conference.localhost/Juliet">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
180 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
181 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
182
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
183 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
184 <presence type='error' from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
185 <error type='cancel' by='room@conference.localhost'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
186 <conflict xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
187 </error>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
188 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
189
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
190 # In a heated moment, Juliet unregisters from the room
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
191
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
192 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
193 <iq type='set' to='room@conference.localhost' id='unreg1'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
194 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
195 <remove/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
196 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
197 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
198
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
199 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
200 <iq type='result' from='room@conference.localhost' id='unreg1'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
201
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
202 # Romeo is notified of Juliet's sad decision
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
203
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
204 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
205 <message from='room@conference.localhost'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
206 <x xmlns='http://jabber.org/protocol/muc#user' scansion:strict='true'>
10759
817f1d6b499e MUC tests: Add missing 'affiliation' attribute
Matthew Wild <mwild1@gmail.com>
parents: 10687
diff changeset
207 <item jid="${Juliet's JID}" affiliation='none' />
10687
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
208 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
209 </message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
210
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
211 # Rosaline attempts once more to sneak into the room, disguised as Juliet
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
212
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
213 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
214 <presence to="room@conference.localhost/Juliet">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
215 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
216 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
217
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
218 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
219 <presence from='room@conference.localhost/Romeo'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
220 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
221 <item affiliation='owner' role='moderator'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
222 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
223 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
224
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
225 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
226 <presence from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
227 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
228 <item affiliation='none' jid="${Rosaline's full JID}" role='participant'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
229 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
230 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
231 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
232
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
233 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
234 <presence from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
235 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
236 <item affiliation='none' jid="${Rosaline's full JID}" role='participant'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
237 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
238 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
239
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
240 # On discovering the ruse, Romeo restores Juliet's nick and status within the room
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
241
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
242 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
243 <iq id='member1' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
244 <query xmlns='http://jabber.org/protocol/muc#admin'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
245 <item affiliation='member' jid="${Juliet's JID}" nick='Juliet' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
246 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
247 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
248
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
249 # Rosaline is evicted from the room
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
250
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
251 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
252 <presence from='room@conference.localhost/Juliet' type='unavailable'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
253 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
254 <status code='307'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
255 <item affiliation='none' role='none' jid="${Rosaline's full JID}">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
256 <reason>This nickname is reserved</reason>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
257 </item>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
258 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
259 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
260
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
261 # An out-of-room affiliation change is received for Juliet
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
262
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
263 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
264 <message from='room@conference.localhost'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
265 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
266 <item jid="${Juliet's JID}" affiliation='member' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
267 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
268 </message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
269
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
270 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
271 <iq type='result' id='member1' from='room@conference.localhost' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
272
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
273 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
274 <presence type='unavailable' from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
275 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
276 <status code='307'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
277 <item affiliation='none' jid="${Rosaline's full JID}" role='none'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
278 <reason>This nickname is reserved</reason>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
279 </item>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
280 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
281 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
282 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
283
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
284 # Rosaline, frustrated, attempts to get back into the room...
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
285
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
286 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
287 <presence to="room@conference.localhost/Juliet">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
288 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
289 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
290
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
291 # ...but once again, is denied
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
292
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
293 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
294 <presence type='error' from='room@conference.localhost/Juliet'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
295 <error type='cancel' by='room@conference.localhost'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
296 <conflict xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
297 </error>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
298 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
299
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
300 # Juliet, however, quietly joins the room with success
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
301
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
302 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
303 <presence to="room@conference.localhost/Juliet">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
304 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
305 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
306
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
307 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
308 <presence from="room@conference.localhost/Romeo" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
309
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
310 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
311 <presence from="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
312
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
313 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
314 <message type='groupchat' from='room@conference.localhost'><subject/></message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
315
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
316 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
317 <presence from="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
318
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
319 # Romeo checks whether he has reserved his own nick yet
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
320
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
321 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
322 <iq id='getnick1' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
323 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
324 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
325
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
326 # But no nick is returned, as he hasn't registered yet!
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
327
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
328 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
329 <iq type='result' from='room@conference.localhost' id='getnick1'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
330 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item' scansion:strict='true' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
331 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
332
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
333 # Romeo updates his own registration
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
334
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
335 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
336 <iq id='jw81b36f' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
337 <query xmlns='jabber:iq:register'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
338 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
339
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
340 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
341 <iq type='result' from='room@conference.localhost' id='jw81b36f'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
342 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
343 <x type='form' xmlns='jabber:x:data'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
344 <field type='hidden' var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
345 <value>http://jabber.org/protocol/muc#register</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
346 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
347 <field type='text-single' label='Nickname' var='muc#register_roomnick'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
348 <required/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
349 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
350 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
351 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
352 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
353
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
354 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
355 <iq id='nv71va54' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
356 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
357 <x xmlns='jabber:x:data' type='submit'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
358 <field var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
359 <value>http://jabber.org/protocol/muc#register</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
360 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
361 <field var='muc#register_roomnick'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
362 <value>Romeo</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
363 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
364 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
365 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
366 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
367
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
368 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
369 <presence from='room@conference.localhost/Romeo'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
370 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
371 <item affiliation='owner' jid="${Romeo's full JID}" role='moderator'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
372 <status code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
373 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
374 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
375
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
376 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
377 <iq type='result' from='room@conference.localhost' id='nv71va54'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
378
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
379 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
380 <presence from='room@conference.localhost/Romeo'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
381 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
382 <item role='moderator' xmlns='http://jabber.org/protocol/muc#user' affiliation='owner'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
383 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
384 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
385
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
386 # Romeo discovers his reserved nick
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
387
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
388 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
389 <iq id='getnick1' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
390 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
391 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
392
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
393 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
394 <iq type='result' from='room@conference.localhost' id='getnick1'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
395 <query xmlns='http://jabber.org/protocol/disco#info' node='x-roomuser-item'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
396 <identity category='conference' name='Romeo' type='text'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
397 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
398 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
399
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
400 # To check the status of the room is as expected, Romeo requests the member list
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
401
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
402 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
403 <iq id='member3' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
404 <query xmlns='http://jabber.org/protocol/muc#admin'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
405 <item affiliation='member'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
406 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
407 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
408
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
409 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
410 <iq from='room@conference.localhost' type='result' id='member3'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
411 <query xmlns='http://jabber.org/protocol/muc#admin'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
412 <item jid="${Juliet's JID}" affiliation='member' nick='Juliet'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
413 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
414 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
415
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
416 Juliet sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
417 <presence type="unavailable" to="room@conference.localhost/Juliet" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
418
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
419 Juliet receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
420 <presence from='room@conference.localhost/Juliet' type='unavailable' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
421
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
422 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
423 <presence type='unavailable' from='room@conference.localhost/Juliet' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
424
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
425 # Rosaline joins as herself
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
426
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
427 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
428 <presence to="room@conference.localhost/Rosaline">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
429 <x xmlns="http://jabber.org/protocol/muc"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
430 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
431
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
432 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
433 <presence from="room@conference.localhost/Romeo" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
434
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
435 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
436 <presence from='room@conference.localhost/Juliet' type='unavailable'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
437 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
438 <item affiliation='member' role='none' nick='Juliet' xmlns='http://jabber.org/protocol/muc#user'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
439 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
440 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
441
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
442 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
443 <presence from="room@conference.localhost/Rosaline" />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
444
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
445 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
446 <message type='groupchat' from='room@conference.localhost'><subject/></message>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
447
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
448 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
449 <presence from='room@conference.localhost/Rosaline'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
450 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
451 <item jid="${Rosaline's full JID}" affiliation='none' role='participant'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
452 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
453 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
454
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
455 # Rosaline tries to register her own nickname, but unaffiliated
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
456 # registration is disabled by default
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
457
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
458 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
459 <iq id='reg990' to='room@conference.localhost' type='get'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
460 <query xmlns='jabber:iq:register'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
461 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
462
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
463 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
464 <iq type='error' from='room@conference.localhost' id='reg990'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
465 <error type='auth'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
466 <registration-required xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
467 </error>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
468 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
469
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
470 Rosaline sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
471 <iq id='reg991' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
472 <query xmlns='jabber:iq:register'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
473 <x xmlns='jabber:x:data' type='submit'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
474 <field var='FORM_TYPE'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
475 <value>http://jabber.org/protocol/muc#register</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
476 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
477 <field var='muc#register_roomnick'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
478 <value>Romeo</value>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
479 </field>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
480 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
481 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
482 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
483
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
484 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
485 <iq id='reg991' type='error'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
486 <error type='auth'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
487 <registration-required xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
488 </error>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
489 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
490
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
491 # Romeo reserves her nickname for her
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
492
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
493 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
494 <iq id='member2' to='room@conference.localhost' type='set'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
495 <query xmlns='http://jabber.org/protocol/muc#admin'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
496 <item affiliation='member' jid="${Rosaline's JID}" nick='Rosaline' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
497 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
498 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
499
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
500 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
501 <presence from='room@conference.localhost/Rosaline'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
502 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
503 <item affiliation='member' role='participant' jid="${Rosaline's full JID}">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
504 <actor jid="${Romeo's full JID}" nick='Romeo'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
505 </item>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
506 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
507 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
508
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
509 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
510 <iq type='result' id='member2' from='room@conference.localhost' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
511
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
512 Rosaline receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
513 <presence from='room@conference.localhost/Rosaline'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
514 <x xmlns='http://jabber.org/protocol/muc#user'>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
515 <item affiliation='member' role='participant' jid="${Rosaline's full JID}">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
516 <actor nick='Romeo' />
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
517 </item>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
518 <status xmlns='http://jabber.org/protocol/muc#user' code='110'/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
519 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
520 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
521
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
522 # Romeo sets their their own nickname via admin query (see #1273)
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
523 Romeo sends:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
524 <iq to="room@conference.localhost" id="reserve" type="set">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
525 <query xmlns="http://jabber.org/protocol/muc#admin">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
526 <item nick="Romeo" affiliation="owner" jid="${Romeo's JID}"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
527 </query>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
528 </iq>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
529
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
530 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
531 <presence from="room@conference.localhost/Romeo">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
532 <x xmlns="http://jabber.org/protocol/muc#user">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
533 <item xmlns="http://jabber.org/protocol/muc#user" role="moderator" jid="${Romeo's full JID}" affiliation="owner">
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
534 <actor xmlns="http://jabber.org/protocol/muc#user" nick="Romeo"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
535 </item>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
536 <status xmlns="http://jabber.org/protocol/muc#user" code="110"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
537 </x>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
538 </presence>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
539
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
540 Romeo receives:
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
541 <iq from="room@conference.localhost" id="reserve" type="result"/>
8c2c5b4fde32 MUC: Support for broadcasting unavailable presence for affiliated offline users
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
542