spec/scansion/muc_presence_probe.scs
author Kim Alvefur <zash@zash.se>
Wed, 27 Mar 2024 19:33:11 +0100
changeset 13471 c2a476f4712a
parent 11250 ab189e707705
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:
11249
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     1
# #1535 Let MUCs respond to presence probes
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     2
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     3
[Client] Romeo
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     4
	jid: user@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     5
	password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     6
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     7
[Client] Juliet
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     8
	jid: user2@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
     9
	password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    10
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    11
[Client] Mercutio
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    12
	jid: user3@localhost
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    13
	password: password
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    14
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    15
-----
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    16
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    17
Romeo connects
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    18
11250
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    19
# Romeo joins the MUC
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    20
11249
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    21
Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    22
	<presence to="room@conference.localhost/Romeo">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    23
		<x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    24
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    25
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    26
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    27
	<presence from='room@conference.localhost/Romeo'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    28
		<x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    29
			<status code='201'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    30
			<item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    31
			<status code='110'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    32
		</x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    33
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    34
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    35
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    36
	<message type='groupchat' from='room@conference.localhost'><subject/></message>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    37
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    38
# Disable presences for non-mods
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    39
Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    40
	<iq id='config1' to='room@conference.localhost' type='set'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    41
		<query xmlns='http://jabber.org/protocol/muc#owner'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    42
			<x xmlns='jabber:x:data' type='submit'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    43
				<field var='FORM_TYPE'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    44
					<value>http://jabber.org/protocol/muc#roomconfig</value>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    45
				</field>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    46
				<field var='muc#roomconfig_presencebroadcast'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    47
					<value>moderator</value>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    48
				</field>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    49
			</x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    50
		</query>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    51
	</iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    52
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    53
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    54
	<iq id="config1" from="room@conference.localhost" type="result">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    55
	</iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    56
11250
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    57
# Romeo probes himself
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    58
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    59
Romeo sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    60
	<presence to="room@conference.localhost/Romeo" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    61
		<x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    62
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    63
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    64
Romeo receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    65
	<presence from='room@conference.localhost/Romeo'>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    66
		<x xmlns='http://jabber.org/protocol/muc#user'>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    67
			<item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    68
		</x>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    69
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    70
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    71
# Juliet tries to probe Romeo before joining the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    72
11249
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    73
Juliet connects
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    74
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
    75
Juliet sends:
11250
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    76
	<presence to="room@conference.localhost/Romeo" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    77
		<x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    78
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    79
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    80
Juliet receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    81
	<presence from="room@conference.localhost/Romeo" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    82
		<error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    83
			<not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    84
		</error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    85
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    86
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    87
# Juliet tries to probe Mercutio (who's not in the MUC) before joining the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    88
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    89
Juliet sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    90
	<presence to="room@conference.localhost/Mercutio" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    91
		<x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    92
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    93
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    94
Juliet receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    95
	<presence from="room@conference.localhost/Mercutio" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    96
		<error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    97
			<not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    98
		</error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
    99
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   100
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   101
# Juliet joins the room
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   102
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   103
Juliet sends:
11249
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   104
	<presence to="room@conference.localhost/Juliet">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   105
		<x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   106
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   107
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   108
Juliet receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   109
	<presence from="room@conference.localhost/Romeo" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   110
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   111
Juliet receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   112
	<presence from="room@conference.localhost/Juliet" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   113
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   114
# Romeo probes Juliet
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   115
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   116
Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   117
	<presence to="room@conference.localhost/Juliet" type="probe">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   118
		<x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   119
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   120
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   121
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   122
	<presence from='room@conference.localhost/Juliet'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   123
		<x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   124
			<item jid="${Juliet's full JID}" affiliation='none' role='participant'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   125
		</x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   126
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   127
11250
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   128
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   129
# Mercutio tries to probe himself in a MUC before joining
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   130
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   131
Mercutio connects
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   132
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   133
Mercutio sends:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   134
	<presence to="room@conference.localhost/Mercutio" type="probe">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   135
		<x xmlns="http://jabber.org/protocol/muc"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   136
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   137
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   138
Mercutio receives:
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   139
	<presence from="room@conference.localhost/Mercutio" type="error">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   140
		<error type="cancel">
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   141
			<not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   142
		</error>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   143
	</presence>
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   144
ab189e707705 MUC: Reject probes from non-occupants
JC Brand <jc@opkode.com>
parents: 11249
diff changeset
   145
11249
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   146
# Romeo makes Mercutio a member and registers his nickname
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   147
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   148
Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   149
	<iq id='member1' to='room@conference.localhost' type='set'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   150
		<query xmlns='http://jabber.org/protocol/muc#admin'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   151
			<item affiliation='member' jid="${Mercutio's JID}" nick="Mercutio"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   152
		</query>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   153
	</iq>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   154
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   155
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   156
	<message from='room@conference.localhost'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   157
		<x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   158
			<item jid="${Mercutio's JID}" affiliation='member' />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   159
		</x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   160
	</message>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   161
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   162
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   163
	<iq from='room@conference.localhost' id='member1' type='result'/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   164
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   165
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   166
# Romeo probes Mercutio, even though he's unavailable
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   167
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   168
Romeo sends:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   169
	<presence to="room@conference.localhost/Mercutio" type="probe">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   170
		<x xmlns="http://jabber.org/protocol/muc"/>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   171
	</presence>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   172
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   173
Romeo receives:
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   174
	<presence from='room@conference.localhost/Mercutio' type="unavailable">
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   175
		<x xmlns='http://jabber.org/protocol/muc#user'>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   176
			<item nick="Mercutio" affiliation='member' role='none' jid="${Mercutio's JID}" />
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   177
		</x>
43b43e7156b8 MUC: Add support for presence probes (fixes #1535)
JC Brand <jc@opkode.com>
parents:
diff changeset
   178
	</presence>