mirror of
https://github.com/moparisthebest/xeps
synced 2024-12-22 07:38:52 -05:00
c6dbbb8289
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@1780 4b5297f7-1745-476d-ba37-a9c6900126ab
205 lines
8.2 KiB
XML
205 lines
8.2 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<!DOCTYPE xep SYSTEM 'xep.dtd' [
|
|
<!ENTITY % ents SYSTEM 'xep.ent'>
|
|
%ents;
|
|
]>
|
|
<?xml-stylesheet type='text/xsl' href='xep.xsl'?>
|
|
<xep>
|
|
<header>
|
|
<title>Software Information</title>
|
|
<abstract>This document specifies an extended data format whereby XMPP service discovery responses can include detailed information about the software application that powers a given XMPP entity for including detailed data about the in service discovery responses.</abstract>
|
|
&LEGALNOTICE;
|
|
<number>0232</number>
|
|
<status>Experimental</status>
|
|
<type>Standards Track</type>
|
|
<sig>Standards</sig>
|
|
<approver>Council</approver>
|
|
<dependencies>
|
|
<spec>XMPP Core</spec>
|
|
<spec>XEP-0030</spec>
|
|
</dependencies>
|
|
<supersedes/>
|
|
<supersededby/>
|
|
<shortname>NOT YET ASSIGNED</shortname>
|
|
&stpeter;
|
|
<revision>
|
|
<version>0.2</version>
|
|
<date>2008-03-14</date>
|
|
<initials>psa</initials>
|
|
<remark><p>Added icon fields.</p></remark>
|
|
</revision>
|
|
<revision>
|
|
<version>0.1</version>
|
|
<date>2008-01-30</date>
|
|
<initials>psa</initials>
|
|
<remark><p>Initial published version.</p></remark>
|
|
</revision>
|
|
<revision>
|
|
<version>0.0.3</version>
|
|
<date>2008-01-23</date>
|
|
<initials>psa</initials>
|
|
<remark><p>Added software field; generalized to be software information, not client information.</p></remark>
|
|
</revision>
|
|
<revision>
|
|
<version>0.0.2</version>
|
|
<date>2008-01-22</date>
|
|
<initials>psa</initials>
|
|
<remark><p>Clarified relationship to Software Version (XEP-0092).</p></remark>
|
|
</revision>
|
|
<revision>
|
|
<version>0.0.1</version>
|
|
<date>2008-01-21</date>
|
|
<initials>psa</initials>
|
|
<remark><p>First draft.</p></remark>
|
|
</revision>
|
|
</header>
|
|
|
|
<section1 topic='Introduction' anchor='intro'>
|
|
<p>&xep0128; defines a way for an XMPP entity to include extended information in its responses to &xep0030; information requests. This document specifies a usage of <cite>XEP-0128</cite> whereby an XMPP entity can provide detailed data about itself in such responses. This protocol is intended to replace &xep0092; for software information discovery (thus reducing or eliminating the need for distinct software version requests) and also provides a format that can be encapsulated into &xep0115; notifications.</p>
|
|
</section1>
|
|
|
|
<section1 topic='Use Case' anchor='usecase'>
|
|
<p>To illustrate this usage, consider the following example of a disco#info request-response interaction that includes detailed client information:</p>
|
|
<example caption='Entity queries client for information'><![CDATA[
|
|
<iq from='romeo@montaguue.lit/orchard'
|
|
to='juliet@capulet.lit/chamber'
|
|
id='disco1'
|
|
type='get'>
|
|
<query xmlns='http://jabber.org/protocol/disco#info'/>
|
|
</iq>
|
|
]]></example>
|
|
<example caption='Client communicates information'><![CDATA[
|
|
<iq from='juliet@capulet.lit/chamber'
|
|
to='romeo@montague.lit/orchard'
|
|
id='disco1'
|
|
type='result'>
|
|
<query xmlns='http://jabber.org/protocol/disco#info'>
|
|
<identity category='client' name='Exodus' type='pc'/>
|
|
<feature var='http://jabber.org/protocol/disco'/>
|
|
<x xmlns='jabber:x:data' type='result'>
|
|
<field var='FORM_TYPE' type='hidden'>
|
|
<value>urn:xmpp:dataforms:softwareinfo</value>
|
|
</field>
|
|
<field var='icon'>
|
|
<value>http://code.google.com/p/exodus/exodus.png</value>
|
|
</field>
|
|
<field var='icon_available'>
|
|
<value>http://code.google.com/p/exodus/available.png</value>
|
|
</field>
|
|
<field var='icon_away'>
|
|
<value>http://code.google.com/p/exodus/away.png</value>
|
|
</field>
|
|
<field var='icon_dnd'>
|
|
<value>http://code.google.com/p/exodus/dnd.png</value>
|
|
</field>
|
|
<field var='icon_xa'>
|
|
<value>http://code.google.com/p/exodus/xa.png</value>
|
|
</field>
|
|
<field var='os'>
|
|
<value>Windows</value>
|
|
</field>
|
|
<field var='os_version'>
|
|
<value>XP</value>
|
|
</field>
|
|
<field var='software'>
|
|
<value>Exodus</value>
|
|
</field>
|
|
<field var='software_version'>
|
|
<value>0.9.1</value>
|
|
</field>
|
|
</x>
|
|
</query>
|
|
</iq>
|
|
]]></example>
|
|
<p>The fields have the following meaning:</p>
|
|
<ul>
|
|
<li>icon -- A default icon to show for a device running the software</li>
|
|
<li>icon_available -- An icon to show if a device running the software is online and available</li>
|
|
<li>icon_away -- An icon to show if a device running the software has a presence status of "away"</li>
|
|
<li>icon_chat -- An icon to show if a device running the software has a presence status of "chat"</li>
|
|
<li>icon_dnd -- An icon to show if a device running the software has a presence status of "dnd"</li>
|
|
<li>icon_xa -- An icon to show if a device running the software has a presence status of "xa"</li>
|
|
<li>os -- The operating system on which the XMPP software is running</li>
|
|
<li>os_version -- The operating system version</li>
|
|
<li>software -- The XMPP software running at the entity (if this field is provided, its value SHOULD override any software name provided as the value of the 'name' attribute in the service discovery <identity/> element)</li>
|
|
<li>software_version -- The XMPP software version</li>
|
|
</ul>
|
|
</section1>
|
|
|
|
<section1 topic='Security Considerations' anchor='security'>
|
|
<p>Service discovery information is typically world-readable. Therefore, care should be taken in exposing information that may make it easier for a potential attacker to target the publishing entity's system (e.g., the operating system on which the software is running).</p>
|
|
</section1>
|
|
|
|
<section1 topic='IANA Considerations' anchor='iana'>
|
|
<p>This document requires no interaction with &IANA;.</p>
|
|
</section1>
|
|
|
|
<section1 topic='XMPP Registrar Considerations' anchor='registrar'>
|
|
<p>The ®ISTRAR; shall include the following information in its registries.</p>
|
|
<section2 topic='Field Standardization' anchor='registrar-formtype'>
|
|
<p>&xep0068; defines a process for standardizing the fields used within Data Forms qualified by a particular namespace, and <cite>XEP-0128</cite> describes how to use field standardization in the context of service discovery. This section registers fields for software information scoped by the "urn:xmpp:dataforms:softwareinfo" FORM_TYPE.</p>
|
|
<code caption='Registry Submission'><![CDATA[
|
|
<form_type>
|
|
<name>urn:xmpp:dataforms:softwareinfo</name>
|
|
<doc>XEP-0232</doc>
|
|
<desc>
|
|
Forms enabling the communication of detailed information
|
|
about an XMPP client.
|
|
</desc>
|
|
<field
|
|
var='icon'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, no matter the
|
|
presence or availability status of the XMPP entity'/>
|
|
<field
|
|
var='icon_available'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, to be shown when
|
|
an XMPP entity using the software is online and available'/>
|
|
<field
|
|
var='icon_away'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, to be shown when
|
|
an XMPP entity using the software has a presence status of away'/>
|
|
<field
|
|
var='icon_chat'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, to be shown when
|
|
an XMPP entity using the software has a presence status of chat'/>
|
|
<field
|
|
var='icon_dnd'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, to be shown when
|
|
an XMPP entity using the software has a presence status of dnd'/>
|
|
<field
|
|
var='icon_xa'
|
|
type='text-single'
|
|
label='A URL for an icon representing the software, to be shown when
|
|
an XMPP entity using the software has a presence status of xa'/>
|
|
<field
|
|
var='os'
|
|
type='text-single'
|
|
label='The operating system on which the XMPP software is running'/>
|
|
<field
|
|
var='os_version'
|
|
type='text-single'
|
|
label='The operating system version'/>
|
|
<field
|
|
var='software'
|
|
type='text-single'
|
|
label='The XMPP software running at the entity'/>
|
|
<field
|
|
var='software_version'
|
|
type='text-single'
|
|
label='The XMPP software version'/>
|
|
</form_type>
|
|
]]></code>
|
|
</section2>
|
|
</section1>
|
|
|
|
<section1 topic='Acknowledgements' anchor='ack'>
|
|
<p>Thanks to Joe Hildebrand for his comments.</p>
|
|
</section1>
|
|
|
|
</xep>
|