mirror of
https://github.com/moparisthebest/xeps
synced 2024-12-21 23:28:51 -05:00
0.0.1
This commit is contained in:
parent
60d795eb02
commit
0c30cc05a7
228
inbox/mucstatus.xml
Normal file
228
inbox/mucstatus.xml
Normal file
@ -0,0 +1,228 @@
|
||||
<?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>Extensible Status Conditions for Multi-User Chat</title>
|
||||
<abstract>This document defines an extensible format for status conditions in Multi-User Chat, similar to the error format used in the core of XMPP.</abstract>
|
||||
&LEGALNOTICE;
|
||||
<number>XXXX</number>
|
||||
<status>ProtoXEP</status>
|
||||
<type>Standards Track</type>
|
||||
<sig>Standards</sig>
|
||||
<dependencies>
|
||||
<spec>RFC 6120</spec>
|
||||
<spec>XEP-0045</spec>
|
||||
</dependencies>
|
||||
<supersedes/>
|
||||
<supersededby/>
|
||||
<shortname>N/A</shortname>
|
||||
&stpeter;
|
||||
<revision>
|
||||
<version>0.0.1</version>
|
||||
<date>2011-08-12</date>
|
||||
<initials>psa</initials>
|
||||
<remark><p>Rough draft.</p></remark>
|
||||
</revision>
|
||||
</header>
|
||||
|
||||
<section1 topic='Introduction' anchor='intro'>
|
||||
<p>Traditionally, &xep0045; has used numerical status codes similar to those used in HTTP and SMTP. Numerical codes were deprecated in the core of XMPP by &rfc3920; and are no longer even defined in the core schemas provided in &rfc6120; (see also &xep0086;). In an effort to modernize the Multi-User Chat (MUC) protocol, this document defines an extensible format for status conditions in MUC.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Format' anchor='format'>
|
||||
<p>XML elements describing status conditions defined by this specification SHALL be qualified by the 'urn:xmpp:muc:conditions:0' namespace.</p>
|
||||
<p>The structure is as follows:</p>
|
||||
<code><![CDATA[
|
||||
<conditions xmlns='urn:xmpp:muc:conditions:0'>
|
||||
<DEFINED-CONDITION>
|
||||
[<text xml:lang='langcode'>OPTIONAL descriptive text</text>]
|
||||
[OPTIONAL application-specific condition element]
|
||||
</DEFINED-CONDITION>
|
||||
[<DEFINED-CONDITION/>]
|
||||
[OPTIONAL application-specific condition element or elements]
|
||||
</conditions>
|
||||
]]></code>
|
||||
<p>That is, the <conditions/> element MAY contain one or more condition elements defined in this document (each of which MAY contain a human-readable <text/> element and MAY contain an application-specific condition element) and MAY contain one or more application-specific condition elements.</p>
|
||||
<p>The <conditions/> element is intended to be a direct child of the &X; element qualified by the 'http://jabber.org/protocol/muc#user' as used for status notifications in multi-user chat.</p>
|
||||
<p>An example follows.</p>
|
||||
<example caption="Service Sends New Occupant's Presence to New Occupant"><![CDATA[
|
||||
<presence
|
||||
from='coven@chat.shakespeare.lit/thirdwitch'
|
||||
id='n13mt3l'
|
||||
to='hag66@shakespeare.lit/pda'>
|
||||
<x xmlns='http://jabber.org/protocol/muc#user'>
|
||||
<item affiliation='member' role='participant'/>
|
||||
<status code='100'/>
|
||||
<status code='110'/>
|
||||
<conditions xmlns='urn:xmpp:muc:conditions:0'>
|
||||
<realjid-public/>
|
||||
<self-presence/>
|
||||
</conditions>
|
||||
</x>
|
||||
</presence>
|
||||
]]></example>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Mapping of Existing Codes' anchor='mapping'>
|
||||
<p>The following table maps the existing numerical status codes (registered with the ®ISTRAR; at &MUCSTATUS;) to XML elements.</p>
|
||||
<table caption='Error Codes for http://jabber.org/protocol/muc#user Namespace'>
|
||||
<tr>
|
||||
<th>Code</th>
|
||||
<th>Element</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>100</td>
|
||||
<td><realjid-public/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>101</td>
|
||||
<td><affiliation-changed/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>102</td>
|
||||
<td><unavailable-shown/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>103</td>
|
||||
<td><unavailable-not-shown/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>104</td>
|
||||
<td><configuration-changed/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>110</td>
|
||||
<td><self-presence/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>170</td>
|
||||
<td><logging-enabled/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>171</td>
|
||||
<td><logging-disabled/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>172</td>
|
||||
<td><non-anonymous/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>173</td>
|
||||
<td><semi-anonymous/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>174</td>
|
||||
<td><fully-anonymous/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>201</td>
|
||||
<td><room-created/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>210</td>
|
||||
<td><nick-assigned/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>301</td>
|
||||
<td><banned/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>303</td>
|
||||
<td><new-nick/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>307</td>
|
||||
<td><kicked/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>321</td>
|
||||
<td><removed-affiliation/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>322</td>
|
||||
<td><removed-membership/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>332</td>
|
||||
<td><removed-shutdown/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Security Considerations' anchor='security'>
|
||||
<p>The security considerations of <cite>XEP-0045</cite> apply.</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 XMPP Registrar is requested to add the foregoing elements to the existing registry for MUC status codes.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='XML Schema' anchor='schema'>
|
||||
<code><![CDATA[
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
|
||||
<xs:schema
|
||||
xmlns:xs='http://www.w3.org/2001/XMLSchema'
|
||||
targetNamespace='urn:xmpp:muc:conditions:0'
|
||||
xmlns='urn:xmpp:muc:conditions:0'
|
||||
elementFormDefault='qualified'>
|
||||
|
||||
<xs:element name='conditions'>
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:choice minOccurs='0' maxOccurs='unbounded'>
|
||||
<xs:element name='affiliation-changed' type='MucStatusType'/>
|
||||
<xs:element name='banned' type='MucStatusType'/>
|
||||
<xs:element name='configuration-changed' type='MucStatusType'/>
|
||||
<xs:element name='fully-anonymous' type='MucStatusType'/>
|
||||
<xs:element name='kicked' type='MucStatusType'/>
|
||||
<xs:element name='logging-disabled' type='MucStatusType'/>
|
||||
<xs:element name='logging-enabled' type='MucStatusType'/>
|
||||
<xs:element name='new-nick' type='MucStatusType'/>
|
||||
<xs:element name='nick-assigned' type='MucStatusType'/>
|
||||
<xs:element name='non-anonymous' type='MucStatusType'/>
|
||||
<xs:element name='realjid-public' type='MucStatusType'/>
|
||||
<xs:element name='removed-affiliation' type='MucStatusType'/>
|
||||
<xs:element name='removed-membership' type='MucStatusType'/>
|
||||
<xs:element name='removed-shutdown' type='MucStatusType'/>
|
||||
<xs:element name='room-created' type='MucStatusType'/>
|
||||
<xs:element name='self-presence' type='MucStatusType'/>
|
||||
<xs:element name='semi-anonymous' type='MucStatusType'/>
|
||||
<xs:element name='unavailable-not-shown' type='MucStatusType'/>
|
||||
<xs:element name='unavailable-shown' type='MucStatusType'/>
|
||||
</xs:choice>
|
||||
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded' processContents='lax'/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:complexType name='MucStatusType'>
|
||||
<xs:sequence>
|
||||
<xs:element ref='text'/>
|
||||
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded' processContents='lax'/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:schema>
|
||||
|
||||
<xs:element name='text'>
|
||||
<xs:complexType>
|
||||
<xs:simpleContent>
|
||||
<xs:extension base='xs:string'>
|
||||
<xs:attribute ref='xml:lang' use='optional'/>
|
||||
</xs:extension>
|
||||
</xs:simpleContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
]]></code>
|
||||
</section1>
|
||||
|
||||
</xep>
|
Loading…
Reference in New Issue
Block a user