The jabber user is preparing to enter a room (multi-user chat)
User creates a room
The invitee accepts the invitation, joins the room, and receives attendance information and history.
The jabber user creates a room and declares support for multi-user chat
Join action: Result Section
Invite action: Result section (s)
Send:
<Presence to = "blued@conference.10-6-2-142/wanzi001">
<X
Xmlns = "http://jabber.org/protocol/muc"/>
</Presence>
The Service sends attendance information from existing tenants to new tenants.
The service notifies all users that they have the permission of the owner.
The Service sends ownership notifications to all tenants.
Recv:
<Presence
Xmlns = "jabber: client" to = "blued559897 @ 10-6-2-142/XMPP" from = "blued@conference.10-6-2-142/wanzi001">
<X
Xmlns = "http://jabber.org/protocol/muc#user">
<Item jid = "blued559897 @ 10-6-2-142/XMPP" affiliation = "owner" role = "moderator"/>
</X>
</Presence>
Service warning new tenant (in this room) not anonymous
Recv:
<Message
Xmlns = "jabber: client" type = "groupchat" from = "blued@conference.10-6-2-142" to = "blued559897 @ 10-6-2-142/XMPP">
<Body> the room is not anonymous. </Body>
<X
Xmlns = "http://jabber.org/protocol/muc#user">
<Status code = "100" type = "parmname" text = "parmname"/>
</X>
</Message>
Owner request configuration form
Send:
<IQ type = "get" to = "blued@conference.10-6-2-142" id = "729a1280-bdf8-4dd6-a031-7c4a44d555a8">
<Query
Xmlns = "http://jabber.org/protocol/muc#owner"/>
</IQ>
Service sending configuration form
The Service sends the configuration form to the owner.
Recv:
<IQ
Xmlns = "jabber: client "type =" result "id =" 729a1280-bdf8-4dd6-a031-7c4a44d555a8 "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP ">
<Query
Xmlns = "http://jabber.org/protocol/muc#owner">
<X
Xmlns = "jabber: X: Data" type = "form">
<Title> room configuration </title>
<Instructions> the room "blued" has been created ". To accept the default configuration, click OK. Or enter the following form to complete the settings: </Instructions>
<Field Var = "form_type" type = "hidden">
<Value> http://jabber.org/protocol/muc#roomconfig </value>
</Field>
<Field Var = "MUC # roomconfig_roomname" type = "text-single" label = "& # x623f; & # x95f4; & # x540d; & # x79f0;">
<Value> blued </value>
</Field>
<Field Var = "MUC # roomconfig_roomdesc" type = "text-single" label = "& # x63cf; & # x8ff0;">
<Value> blued </value>
</Field>
<Field Var = "MUC # roomconfig_changesubject" type = "Boolean" label = "& # x5141; & # x8bb8; & # x5360; & # x6709; & # x8005; & # x66f4; & # x6539; & # x4e3b; & # x9898; ">
<Value> 0 </value>
</Field>
<Field Var = "MUC # roomconfig_maxusers" type = "list-single" label = "& # x6700; & # x5927; & # x623f; & # x95f4; & # x5360; & # x6709; & # x8005; & # x4eba; & # x6570; ">
<Option label = "10">
<Value> 10 </value>
</Option>
<Option label = "20">
<Value> 20 </value>
</Option>
<Option label = "30">
<Value> 30 </value>
</Option>
<Option label = "40">
<Value> 40 </value>
</Option>
<Option label = "50">
<Value> 50 </value>
</Option>
<Option label = "& # x65e0;">
<Value> 0 </value>
</Option>
<Value> 50 </value>
</Field>
<Field Var = "MUC # roomconfig_presencebroadcast" type = "list-Multi" label = "& # x5176; Presence & # x662f; Broadcast & # x7684; & # x89d2; & # x8272; ">
<Option label = "& # x4e3b; & # x6301; & # x8005;">
<Value> moderator </value>
</Option>
<Option label = "& # x53c2; & # x4e0e; & # x8005;">
<Value> Participant </value>
</Option>
<Option label = "& # x8bbf; & # x5ba2;">
<Value> visitor </value>
</Option>
<Value> moderator </value>
<Value> Participant </value>
<Value> visitor </value>
</Field>
<Field Var = "MUC # roomconfig_publicroom" type = "Boolean" label = "& # x5217; & # x51fa; & # x76ee; & # x5f55; & # x4e2d; & # x7684; & # x623f; & # x95f4; ">
<Value> 1 </value>
</Field>
<Field Var = "MUC # roomconfig_persistentroom" type = "Boolean" label = "& # x623f; & # x95f4; & # x662f; & # x6301; & # x4e45; & # x7684; ">
<Value> 1 </value>
</Field>
<Field Var = "MUC # roomconfig_moderatedroom" type = "Boolean" label = "& # x623f; & # x95f4; & # x662f; & # x9002; & # x5ea6; & # x7684; ">
<Value> 1 </value>
</Field>
<Field Var = "MUC # roomconfig_membersonly" type = "Boolean" label = "& # x623f; & # x95f4; & # x4ec5; & # x5bf9; & # x6210; & # x5458; & # x5f00; & # x653e; ">
<Value> 0 </value>
</Field>
<Field type = "fixed">
<Value> Note: by default, only the administrator can send an invitation in the room only for invitation. </Value>
</Field>
<Field Var = "MUC # roomconfig_allowinvites" type = "Boolean" label = "& # x5141; & # x8bb8; & # x5360; & # x6709; & # x8005; & # x9080; & # x8bf7; & # x5176; & # x4ed6; & # x4eba; ">
<Value> 0 </value>
</Field>
<Field Var = "MUC # roomconfig_passwordprotectedroom" type = "Boolean" label = "& # x9700; & # x8981; & # x5bc6; & # x7801; & # x624d; & # x80fd; & # x8fdb; & # x5165; & # x623f; & # x95f4; ">
<Value> 0 </value>
</Field>
<Field type = "fixed">
<Value> if you need a password to enter the room, you must specify the password below. </Value>
</Field>
<Field Var = "MUC # roomconfig_roomsecret" type = "text-private" label = "& # x5bc6; & # x7801;"/>
<Field Var = "MUC # roomconfig_whois" type = "list-single" label = "& # x80fd; & # x591f; & # x53d1; & # x73b0; & # x5360; & # x6709; & # x8005; & # x771f; & # x5b9e; jid & # x7684; & # x89d2; & # x8272; ">
<Option label = "& # x4e3b; & # x6301; & # x8005;">
<Value> moderators </value>
</Option>
<Option label = "& # x4efb; & # x4f55; & # x4eba;">
<Value> anyone </value>
</Option>
<Value> anyone </value>
</Field>
<Field Var = "MUC # roomconfig_enablelogging" type = "Boolean" label = "& # x767b; & # x5f55; & # x623f; & # x95f4; & # x5bf9; & # x8bdd; ">
<Value> 1 </value>
</Field>
<Field Var = "X-muc # roomconfig_reservednick" type = "Boolean" label = "& # x4ec5; & # x5141; & # x8bb8; & # x6ce8; & # x518c; & # x7684; & # x6635; & # x79f0; & # x767b; & # x5f55; ">
<Value> 1 </value>
</Field>
<Field Var = "X-muc # roomconfig_canchangenick" type = "Boolean" label = "& # x5141; & # x8bb8; & # x4f7f; & # x7528; & # x8005; & # x4fee; & # x6539; & # x6635; & # x79f0; ">
<Value> 1 </value>
</Field>
<Field type = "fixed">
<Value> allow users to register a room </value>
</Field>
<Field Var = "X-muc # roomconfig_registration" type = "Boolean" label = "& # x5141; & # x8bb8; & # x7528; & # x6237; & # x6ce8; & # x518c; & # x623f; & # x95f4; ">
<Value> 1 </value>
</Field>
<Field type = "fixed">
<Value> You can specify the administrator of the room. Provide a jid in each line. </Value>
</Field>
<Field Var = "MUC # roomconfig_roomadmins" type = "jid-Multi" label = "& # x623f; & # x95f4; & # x7ba1; & # x7406; & # x5458; "/>
<Field type = "fixed">
<Value> You can specify another owner of the room. Provide a jid in each line. </Value>
</Field>
<Field Var = "MUC # roomconfig_roomowners" type = "jid-Multi" label = "& # x623f; & # x95f4; & # x62e5; & # x6709; & # x8005; ">
<Value> blued559897 @ 10-6-2-142 </value>
</Field>
</X>
</Query>
</IQ>
Administrator request blacklist
Send:
<IQ type = "get" to = "blued@conference.10-6-2-142" id = "2b498d88-1b1d-46aa-8513-dfb049839916">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin">
<Item affiliation = "outcast"/>
</Query>
</IQ>
List of members requested by the Administrator
Send:
<IQ type = "get" to = "blued@conference.10-6-2-142" id = "25c70c79-a20c-4d51-9312-0238706af4f1">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin">
<Item affiliation = "member"/>
</Query>
</IQ>
The Administrator requests the host list.
Send:
<IQ type = "get" to = "blued@conference.10-6-2-142" id = "D1294CFB-FA27-4682-9492-C7052CC62B4F">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin">
<Item role = "moderator"/>
</Query>
</IQ>
Request real-time room by owner
Configuration form submitted by owner
The owner cancels the initial configuration.
The owner cancels subsequent Configuration
Send:
<IQ type = "set" to = "blued@conference.10-6-2-142" id = "4a7ed459-a3f9-43a6-a5d8-d9d3762e6680">
<Query
Xmlns = "http://jabber.org/protocol/muc#owner">
<X
Xmlns = "jabber: X: Data" type = "Submit"/>
</Query>
</IQ>
The Service sends a list of members to the Administrator.
Recv:
<IQ
Xmlns = "jabber: client "type =" result "id =" 2b498d88-1b1d-46aa-8513-dfb049839916 "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP ">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin"/>
</IQ>
The Service sends the host list to the Administrator Recv:
<IQ
Xmlns = "jabber: client "type =" result "id =" 25c70c79-a20c-4d51-9312-0238706af4f1 "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP ">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin"/>
</IQ>
The Service sends a voice list to the host.
The Service sends a blacklist to the Administrator.
The Service sends the owner list to the owner.
The Service sends an administrator list to the owner.
Recv:
<IQ
Xmlns = "jabber: client "type =" result "id =" 4a7ed459-a3f9-43a6-a5d8-d9d3762e6680 "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP "/>
21: 37: 56: 601 blued_v2 [6457: 6ab] mucviewcontroller: xmpproom: didconfigure:
21:37:56. 601 blued_v2 [6457: 7717]
<IQ
Xmlns = "jabber: client "type =" result "id =" D1294CFB-FA27-4682-9492-C7052CC62B4F "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP ">
<Query
Xmlns = "http://jabber.org/protocol/muc#admin">
<Item role = "moderator" jid = "blued559897 @ 10-6-2-142/XMPP" Nick = "wanzi001" affiliation = "owner"/>
</Query>
</IQ>
<IQ
Xmlns = "jabber: client "type =" result "id =" 4a7ed459-a3f9-43a6-a5d8-d9d3762e6680 "from =" blued@conference.10-6-2-142 "to =" blued559897 @ 10-6-2-142/XMPP "/>