spec/scansion/muc_show_offline.scs
author Kim Alvefur <zash@zash.se>
Wed, 27 Mar 2024 19:33:11 +0100
changeset 13471 c2a476f4712a
parent 12033 631b2afa7bc1
permissions -rw-r--r--
util.startup: Fix exiting on pidfile trouble prosody.shutdown() relies on prosody.main_thread, which has not been set yet at this point. Doing a clean shutdown might actually be harmful in case it tears down things set up by the conflicting Prosody, such as the very pidfile we were looking at. Thanks again SigmaTel71 for noticing
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10691
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'>
10763
817f1d6b499e MUC tests: Add missing 'affiliation' attribute
Matthew Wild <mwild1@gmail.com>
parents: 10691
diff changeset
   207
			<item jid="${Juliet's JID}" affiliation='none' />
10691
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