protocol-support.html 7.64 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Jive Messenger Protocol Support</title>
    <link href="style.css" rel="stylesheet" type="text/css">
</head>

<body>

<h1>Jive Messenger Protocol Support</h1>

<a name="top"></a>

<p>A major goal of the Jive Messenger project is to provide full support for the
<acronym title="Extensible Messaging and Presence Protocol">XMPP</acronym>
specifications defined by <a href="http://www.xmpp.org/specs/rfc3920.html">RFC 3920</a> and
<a href="http://www.xmpp.org/specs/rfc3921.html">RFC 3921</a>. In addition to full
XMPP support, we are also working to provide support for numerous extensions to XMPP
that are defined through the
<acronym title="Jabber Enhancement Proposals">JEP</acronym> process at
<a href="http://www.jabber.org">Jabber.org</a>.  This document provides a
summary of that protocol support and is updated for every Jive Messenger
release.</p>

<p>This document is broken down into the following sections:</p>
<ul>
  <li><a href="#basic">Basic IM Protocol Suite Support</a></li>
  <li><a href="#intermediate">Intermediate IM Protocol Suite Support</a></li>
  <li><a href="#jeps">List of JEPs Supported</a></li>
  <li><a href="#rfc3920">Notes on RFC 3920: XMPP Core</a></li>
  <li><a href="#rfc3921">Notes on RFC 3921: XMPP IM</a></li>
  <li><a href="#footnotes">Footnotes</a></li>
</ul>

<br>

<a name="basic"></a>
<h2>Basic IM Protocol Suite Support</h2>

<p>The table below details the level of support for the requirements set by
<a href="http://www.jabber.org/jeps/jep-0073.html">JEP-0073: Basic IM Protocol
Suite</a>.</p>

<table class="dbtable">
<tr>
  <th>Specification</th>
  <th>Supported</th>
</tr><tr>
  <td><a href="http://www.xmpp.org/specs/rfc3920.html">RFC 3920</a>: XMPP Core</td>
  <td>Yes/No (<a href="#rfc3920">see below</a>)</td>
</tr><tr>
  <td><a href="http://www.xmpp.org/specs/rfc3921.html">RFC 3921</a>: XMPP IM</td>
  <td>Yes/No (<a href="#rfc3921">see below</a>)</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0030.html">JEP-0030</a>: Service Discovery</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0077.html">JEP-0077</a>: In-Band Registration</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0078.html">JEP-0078</a>: Non-SASL Authentication</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0086.html">JEP-0086</a>: Error Condition Mappings</td>
  <td>Yes</td>
</tr>
</table>
<br>

<a name="intermediate"></a>
<h2>Intermediate IM Protocol Suite Support</h2>

<p>The table below details the level of support for the requirements set by
<a href="http://www.jabber.org/jeps/jep-0117.html">JEP-0117: Intermediate IM Protocol
Suite</a> [<a href="fn1">1</a>].</p>

<table class="dbtable">
<tr>
  <th>Specification</th>
  <th>Supported</th>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0073.html">JEP-0073</a>: Basic IM Protocol Suite</td>
  <td>No</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0004.html">JEP-0004</a>: Data Forms</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0020.html">JEP-0020</a>: Feature Negotiation</td>
  <td>No</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0045.html">JEP-0045</a>: Multi-User Chat</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0047.html">JEP-0047</a>: In-Band Bytestreams</td>
  <td>Yes</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0065.html">JEP-0065</a>: SOCKS5 Bytestreams</td>
  <td>No</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0071.html">JEP-0071</a>: XHTML-IM</td>
  <td>Yes [<a href="#fn3">3</a>]</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0096.html">JEP-0096</a>: File Transfer</td>
  <td>No</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0115.html">JEP-0115</a>: Entity Capabilities</td>
  <td>No</td>
</tr>
</table>
<br>

<a name="jeps"></a>
<h2>List of JEPs Supported</h2>

<p>The table below lists all JEPs supported by Jive Messenger and indicates which JEPs are part of the
<a href="#basic">Basic</a> or <a href="#intermediate">Intermediate</a> Protocol Suites listed above.</p>

<table class="dbtable">
<tr>
  <th>Specification</th>
  <th>Suite</th>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0004.html">JEP-0004</a>: Data Forms</td>
  <td>Intermediate</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0030.html">JEP-0030</a>: Service Discovery</td>
  <td>Basic</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0045.html">JEP-0045</a>: Multi-User Chat</td>
  <td>Intermediate</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0049.html">JEP-0049</a>: Private XML Storage</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0054.html">JEP-0054</a>: vcard-temp</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0055.html">JEP-0055</a>: Jabber Search [<a href="#fn2">2</a>]</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0077.html">JEP-0077</a>: In-Band Registration</td>
  <td>Basic</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0078.html">JEP-0078</a>: Non-SASL Authentication</td>
  <td>Basic</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0086.html">JEP-0086</a>: Error Condition Mappings</td>
  <td>Basic</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0090.html">JEP-0090</a>: Entity Time</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0091.html">JEP-0091</a>: Delayed Delivery</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0092.html">JEP-0092</a>: Software Version</td>
  <td>-</td>
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0128.html">JEP-0128</a>: Service Discovery Extensions</td>
  <td>-</td>
</tr>
</table>
<br>


<a name="rfc3920"></a>
<h2>Notes on RFC 3920: XMPP Core</h2>

<p>Jive Messenger has full support for the XMPP Core specification (RFC 3920), <b>except</b> for the items listed below:

<ul>
    <li><b>TLS</b> (<a href="http://www.xmpp.org/specs/rfc3920.html#tls">RFC3920.5</a>)  -- Jive
    Messenger provides support for a dedicated TLS/SSL port (5223) as used by the older "Jabber"
    protocol but does not currently support TLS stream-negotiation as described in XMPP.</li>
    
    <li><b>Resource Binding</b> (<a href="http://www.xmpp.org/specs/rfc3920.html#bind">RFC3920.7</a>) </li>

    <li><b>SASL</b> (<a href="http://www.xmpp.org/specs/rfc3920.html#sasl">RFC33920.6</a>)  --
    Jive Messenger currently relies on non-SASL authentication (JEP-0078) for authentication.</li>

    <li><b>S2S</b> (<a href="http://www.xmpp.org/specs/rfc3920.html#rules">RFC3920.10.2</a>,
    <a href="http://www.xmpp.org/specs/rfc3920.html#dialback">RFC3920.8</a>)  --
    Server-to-Server (S2S) communication is not currently supported.</a></li>
</ul>
<br>

<a name="rfc3921"></a>
<h2>Notes on RFC 3921: XMPP IM</h2>

<p>Jive Messenger has full support for the XMPP IM specification (RFC 3921), <b>except</b> for the item listed below:

<ul>
    <li><b>Privacy Lists</b> (<a href="http://www.xmpp.org/specs/rfc3921.html#privacy">RFC3921.10</a>) </li>
</ul>
<br>

<a name="footnotes"></a>
<h2>Footnotes</h2>

<dl>
  <dt><a name="fn1">1</a></dt><dd><u>JEP-0117: Intermediate IM Protocol Suite</u> is currently an experimental proposal, but it provides a good roadmap for future development.</dd>
  <dt><a name="fn2">2</a></dt><dd>Support for <u>JEP-0055: Jabber Search</u> is provided by the <a href="http://www.jivesoftware.org/messenger/plugins.jsp">Search plugin</a>.</dd>
  <dt><a name="fn3">3</a></dt><dd>Some requirements of <u>JEP-0117: Intermediate IM Protocol Suite</u> do not pertain to servers.</dd>
</dl>

</body>
</html>