mirror of
https://github.com/moparisthebest/xeps
synced 2024-11-21 16:55:07 -05:00
Merge change for XEP-0423
This commit is contained in:
commit
708d43b2fb
322
xep-0423.xml
322
xep-0423.xml
@ -8,13 +8,17 @@
|
||||
<!ENTITY nocli "<note>Not required for command line or terminal based interfaces.</note>">
|
||||
<!ENTITY avatar "<note>While 'User Avatars' is more modern, 'vCard-Based Avatars' is more widely deployed. Although it is suggested that to maximise interoperability with existing software a client fully supports both it is sufficient to claim compliance with this suite if the support for 'vCard-Based Avatars' is read-only.</note>">
|
||||
<!ENTITY pubsubjid "<note>While 'Personal Eventing Protocol' does not require all the features of 'Publish-Subscribe' to be available on the users' JIDs, and nor does this suite, it is desirable for this to be the case and it is expected that this will a requirement of future Compliance Suites.</note>">
|
||||
<!ENTITY yes "✓">
|
||||
<!ENTITY no "✕">
|
||||
]>
|
||||
<?xml-stylesheet type='text/xsl' href='xep.xsl'?>
|
||||
<xep>
|
||||
<header>
|
||||
<title>XMPP Compliance Suites 2020</title>
|
||||
<abstract>
|
||||
This document defines XMPP protocol compliance levels.
|
||||
This document defines XMPP application categories for different use cases
|
||||
(Core, Web, IM, and Mobile), and specifies the required XEPs that client and
|
||||
server software needs to implement for compliance with the use cases.
|
||||
</abstract>
|
||||
&LEGALNOTICE;
|
||||
<number>0423</number>
|
||||
@ -78,16 +82,31 @@
|
||||
</header>
|
||||
<section1 topic='Introduction' anchor='intro'>
|
||||
<p>
|
||||
The &XSF; defines protocol suites for the purpose of compliance testing
|
||||
and software certification.
|
||||
This document specifies compliance levels for XMPP clients and servers; it
|
||||
is hoped that this document will advance the state of the art, and provide
|
||||
guidance and eventual certification to XMPP client and server authors.
|
||||
There is a growing number of XMPP Extension Protocols (XEPs) that provide
|
||||
different building blocks for XMPP-based applications. XMPP software
|
||||
developers are confronted with the challenge of finding the right
|
||||
combination of XEPs for a given application profile. Users need a way to
|
||||
compare applications without resorting to comparing for individual XEP
|
||||
numbers.
|
||||
</p>
|
||||
<p>
|
||||
This document defines <strong>Categories</strong> based on
|
||||
This document defines XMPP application <strong>Categories</strong> based on
|
||||
typical use cases (Core, Web, IM, Mobile) and <strong>Levels</strong>
|
||||
(Core, Advanced) based on functionality in the respective category.
|
||||
(Core, Advanced) based on functionality in the respective category. For
|
||||
each combination of those, the required XEPs are referenced. As the
|
||||
protocol landscape changes over time, this document is updated roughly
|
||||
once a year.
|
||||
</p>
|
||||
<p>
|
||||
For developers, this document provides guidance on which specifications
|
||||
they need to consider when implementing an application of a certain kind.
|
||||
By completing a compliance test or performing a self-assessment, they can
|
||||
advertise their implementation as compliant with a given Category and
|
||||
Level.
|
||||
</p>
|
||||
<p>
|
||||
For users, this provides an easy way to compare implementations based on
|
||||
their respective advertised compliance levels and year.
|
||||
</p>
|
||||
<p>
|
||||
Unless explicitly noted, support for the listed specifications is REQUIRED
|
||||
@ -95,6 +114,24 @@
|
||||
A feature is considered supported if all comma separated feature providers
|
||||
listed in the "Providers" column are implemented (unless otherwise noted).
|
||||
</p>
|
||||
<section2 topic='Changes since 2019' anchor='changes'>
|
||||
<p>The following changes were made to the Compliance Suites since &xep0412;:</p>
|
||||
<ul>
|
||||
<li>IM Category:
|
||||
<ul>
|
||||
<li>Core Client: added &xep0245;; File Upload: &xep0066; and optionally &xep0385;</li>
|
||||
<li>Core Client and Server: added &xep0363;</li>
|
||||
<li>Advanced Client: added &xep0234;, &xep0261;, &xep0392;</li>
|
||||
<li>Advanced Client and Server: added &xep0411;</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Mobile Category:
|
||||
<ul>
|
||||
<li>Core Mobile: added &xep0286;</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section2>
|
||||
</section1>
|
||||
<section1 topic='Compliance Categories' anchor='categories'>
|
||||
<section2 topic='Core Compliance Suite' anchor='core'>
|
||||
@ -109,58 +146,58 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Core features</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&rfc6120; <note>&rfc7622; is not listed due to the unclear interoperability impact of using PRECIS and Stringprep in the same ecosystem.</note></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>TLS</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&rfc7590;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Direct TLS</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓<note>Server support of XEP-0368 means having the ability to accept direct TLS connections.</note></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;<note>Server support of XEP-0368 means having the ability to accept direct TLS connections.</note></td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0368;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Feature discovery</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0030;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Feature broadcasts</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0115;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Server Extensibility</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td>&xep0114;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Event publishing</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓&pubsubjid;</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;&pubsubjid;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0163;</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -181,10 +218,10 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Web Connection Mechanisms</strong></td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓&onlyone;</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓&onlyone;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;&onlyone;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;&onlyone;</td>
|
||||
<td>&rfc7395;, &xep0206; (See also: &xep0124;)</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -205,132 +242,157 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Core features</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&rfc6121;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>The /me Command</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0245;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>User Name Coloring</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0392;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>User Avatars</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✓&nocli;</td>
|
||||
<td align='center'>&yes;&nocli;</td>
|
||||
<td>&xep0084;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>User Avatar Compatibility</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓&nocli;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;&nocli;</td>
|
||||
<td>&xep0398;, &xep0153;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>vcard-temp</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0054;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Outbound Message Synchronization</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0280;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>User Blocking</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0191;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Group Chat</strong></td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓&usecases;</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓&usecases;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;&usecases;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;&usecases;</td>
|
||||
<td>&xep0045;<note>Implementations should take note that future versions of these compliance suites may rely on &xep0369; instead.</note>, &xep0249;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Advanced Group Chat</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓</td>
|
||||
<td>&xep0048;, &xep0313;<note>Support for requesting history from a MUC archive as opposed to from the user's account.</note>, &xep0410;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0048;, &xep0313;<note>Support for requesting history from a MUC archive as opposed to from the user's account.</note>, &xep0410;, &xep0411;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Persistent Storage of Private Data via PubSub</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0223;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Private XML Storage</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓</td>
|
||||
<td>&xep0049;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0049; (only recommended for legacy bookmarks support)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Session Resumption</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td>&xep0198;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Stanza Acknowledgements</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td><strong>Stream Management</strong></td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0198;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Message Acknowledgements</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0184;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>History Storage / Retrieval</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0313;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Chat States</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0085;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Message Correction</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0308;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>File Upload</strong></td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0363;, indicated using &xep0066;, optionally also indicated
|
||||
using &xep0385;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Direct File Transfer</strong></td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>N/A</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0234;, &xep0261;</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section2>
|
||||
<section2 topic='Mobile Compliance Suite' anchor='mobile'>
|
||||
@ -348,35 +410,35 @@
|
||||
<th>Providers</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Session Resumption</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td>&xep0198;</td>
|
||||
<td><strong>Mobile Considerations</strong></td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0286;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Stanza Acknowledgements</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td><strong>Stream Management</strong></td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0198;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Client State Indication</strong></td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0352;</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Third Party Push Notifications</strong></td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✕</td>
|
||||
<td align='center'>✓&component;</td>
|
||||
<td align='center'>✓</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&no;</td>
|
||||
<td align='center'>&yes;&component;</td>
|
||||
<td align='center'>&yes;</td>
|
||||
<td>&xep0357;</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -384,12 +446,22 @@
|
||||
</section1>
|
||||
<section1 topic='Future Development' anchor='future'>
|
||||
<p>This section outlines the protocol specifications that will become
|
||||
relevant fot developers in the future, but are not ready for production
|
||||
yet. THIS IS A VERY ROUGH TEMPORARY LIST MEANT FOR DISCUSSION!</p>
|
||||
relevant for developers in the future, but are not ready for production
|
||||
yet. Developers are encouraged to implement those and to share
|
||||
their experience and feedback.</p>
|
||||
<ul>
|
||||
<li>&xep0369; and related specifications</li>
|
||||
<li>&xep0386; and &xep0409;</li>
|
||||
<li>&xep0384; and &xep0380;</li>
|
||||
<li>Client connection optimizations: &xep0386; and &xep0409;, maybe also &xep0397;</li>
|
||||
<li>&xep0369;</li>
|
||||
<li>End-to-End Encryption (E2EE): &xep0380; for tagging encrypted messages, and also one or multiple of the following for actual encryption:
|
||||
<ul>
|
||||
<li>&xep0384; and &xep0396;</li>
|
||||
<li>&xep0374;</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>&xep0385;</li>
|
||||
<li>&xep0402; to phase out &xep0048;, &xep0049;, and &xep0411;</li>
|
||||
<li>&xep0225; to phase out &xep0114;</li>
|
||||
<li>&xep0390; to phase out &xep0115;</li>
|
||||
</ul>
|
||||
</section1>
|
||||
<section1 topic='Implementation Notes' anchor='impl'>
|
||||
|
2
xep.ent
2
xep.ent
@ -1417,7 +1417,7 @@ IANA Service Location Protocol, Version 2 (SLPv2) Templates</link></span> <note>
|
||||
<!ENTITY xep0283 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0283.html'>Moved (XEP-0283)</link></span> <note>XEP-0283: Moved <<link url='https://xmpp.org/extensions/xep-0283.html'>https://xmpp.org/extensions/xep-0283.html</link>>.</note>" >
|
||||
<!ENTITY xep0284 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0284.html'>Shared XML Editing (XEP-0284)</link></span> <note>XEP-0284: Shared XML Editing <<link url='https://xmpp.org/extensions/xep-0284.html'>https://xmpp.org/extensions/xep-0284.html</link>>.</note>" >
|
||||
<!ENTITY xep0285 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0285.html'>Encapsulating Digital Signatures in XMPP (XEP-0285)</link></span> <note>XEP-0285: Encapsulating Digital Signatures in XMPP <<link url='https://xmpp.org/extensions/xep-0285.html'>https://xmpp.org/extensions/xep-0285.html</link>>.</note>" >
|
||||
<!ENTITY xep0286 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0286.html'>XMPP on Mobile Devices (XEP-0286)</link></span> <note>XEP-0286: XMPP on Mobile Devices <<link url='https://xmpp.org/extensions/xep-0286.html'>https://xmpp.org/extensions/xep-0286.html</link>>.</note>" >
|
||||
<!ENTITY xep0286 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0286.html'>Mobile Considerations on LTE Networks (XEP-0286)</link></span> <note>XEP-0286: Mobile Considerations on LTE Networks <<link url='https://xmpp.org/extensions/xep-0286.html'>https://xmpp.org/extensions/xep-0286.html</link>>.</note>" >
|
||||
<!ENTITY xep0287 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0287.html'>Spim Markers and Reports (XEP-0287)</link></span> <note>XEP-0287: Spim Markers and Reports <<link url='https://xmpp.org/extensions/xep-0287.html'>https://xmpp.org/extensions/xep-0287.html</link>>.</note>" >
|
||||
<!ENTITY xep0288 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0288.html'>Bidirectional Server-to-Server Connections (XEP-0288)</link></span> <note>XEP-0288: Bidirectional Server-to-Server Connections <<link url='https://xmpp.org/extensions/xep-0288.html'>https://xmpp.org/extensions/xep-0288.html</link>>.</note>" >
|
||||
<!ENTITY xep0289 "<span class='ref'><link url='https://xmpp.org/extensions/xep-0289.html'>Federated MUC for Constrained Environments (XEP-0289)</link></span> <note>XEP-0289: Federated MUC for Constrained Environments <<link url='https://xmpp.org/extensions/xep-0289.html'>https://xmpp.org/extensions/xep-0289.html</link>>.</note>" >
|
||||
|
Loading…
Reference in New Issue
Block a user