Add discovering MIX services

Selection between MIX serices
This commit is contained in:
Steve Kille 2016-11-02 10:01:13 +00:00 committed by Sam Whited
parent 4cf4d0b8e0
commit a3759489d5
1 changed files with 41 additions and 3 deletions

View File

@ -569,7 +569,34 @@
<section1 topic='Discovery' anchor='discovery'>
<section2 topic='Discovering a MIX service' anchor='disco-service'>
<p>To determine if a domain hosts a MIX service, a &xep0030; info query should be sent in the usual manner</p>
<p>
An entity may discover a MIX service or MIX services by sending a Service Discovery items ("disco#items") request to its own server.
</p>
<example caption="Entity queries Server for associated servvices" ><![CDATA[
<iq from='hag66@shakespeare.example/intibo24'
id='lx09df27'
to='shakespeare.example'
type='get'>
<query xmlns='http://jabber.org/protocol/disco#items'/>
</iq>
<iq from='shakespeare.example'
id='lx09df27'
to='hag66@shakespeare.example/intibo24'
type='result'>
<query xmlns='http://jabber.org/protocol/disco#items'>
<item jid='mix.shakespeare.example'
name='Shakespearean Chat Service'/>
<item jid='mix2.shakespeare.example'
name='Another Shakespearean Chat Service'/>
</query>
</iq>
]]></example>
<p>To determine if a domain hosts a MIX service, a &xep0030; info query should be sent in the usual manner to determine capabilities.</p>
<example caption="Entity queries a service" ><![CDATA[
<iq from='hag66@shakespeare.example/intibo24'
id='lx09df27'
@ -591,11 +618,22 @@
name='Shakespearean Chat Service'
type='text'/>
<feature var='urn:xmpp:mix:0'/>
<feature var='searchable' xmlns='urn:xmpp:mix:0'>
</query>
</iq>
]]></example>
<p>The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'.
<p>
A MIX service may return the following features:
</p>
<ul>
<li>'urn:xmpp:mix:0': This indicates support of MIX, and is returned by all MIX services.</li>
<li>'searchable': This is shown in the above example and indicates that a the MIX Service may be searched for channels. This presence of this feature can be used by a client to guide the user to search for channels in a MIX service.</li>
<li>'create-channel': This is described in <link url='#usecase-admin-check-create'> Checking for Permission to Create a Channel</link> in support of channel administration. An end user client may need to create channels, perhaps for short term usage. This feature helps the client to identify an MIX channel to use. It enables a configuration where permanent (searchable) channels are placed in one MIX service and clients will be able to create channels in another MIX service which is not searchable.</li>
</ul>
<p>A MIX service MUST NOT advertise support for &xep0313;, as MAM is supported by the channels and not by the service. A MIX service MUST NOT advertise support for generic &xep0060;, as although MIX makes use of PubSub it is not a generic PubSub service.</p>
</section2>
@ -884,7 +922,7 @@ the participant is not be subscribed to all nodes associated with the channel (i
</p>
<p>
A channel MAY publish an Avatar following &xep00084;. A client MAY make use of this information to associate an Avatar with the roster entry for a channel.
A channel MAY publish an Avatar following &xep0084;. A client MAY make use of this information to associate an Avatar with the roster entry for a channel.
</p>
</section3>