protocol-support.html 8.1 KB
Newer Older
Matt Tucker's avatar
Matt Tucker committed
1 2 3 4
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
5
    <title>Wildfire Protocol Support</title>
Matt Tucker's avatar
Matt Tucker committed
6
    <link href="style.css" rel="stylesheet" type="text/css">
7 8 9 10 11
    <style type="text/css">
    .supported { background-color:#D0FFCB }
    .partially_supported { background-color:#FEFF94 } 
    .unsupported { background-color:#FFB4B4 }
    </style>
Matt Tucker's avatar
Matt Tucker committed
12 13 14 15
</head>

<body>

16
<h1>Wildfire Protocol Support</h1>
Matt Tucker's avatar
Matt Tucker committed
17 18 19

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

Matt Tucker's avatar
Matt Tucker committed
20
<p>Wildfire provides full support for the 
21
<acronym title="Extensible Messaging and Presence Protocol">XMPP</acronym>
Matt Tucker's avatar
Matt Tucker committed
22
protocol defined by <a href="http://www.xmpp.org/specs/rfc3920.html">RFC 3920</a> and
23
<a href="http://www.xmpp.org/specs/rfc3921.html">RFC 3921</a>. In addition to full
24
XMPP support, Wildfire also provides support for numerous extensions to XMPP
25 26 27
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
28
summary of that protocol support and is updated for every Wildfire
29 30 31 32 33 34 35 36 37
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="#footnotes">Footnotes</a></li>
</ul>
Matt Tucker's avatar
Matt Tucker committed
38

39 40 41 42 43
<br>

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

44 45
<p>The basic suite includes full support of the XMPP RFC's as well as the most common extensions.
The table below details the level of support for the requirements set by
46 47 48 49 50 51
<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>
52
  <th width="35%">Supported</th>
53 54
</tr><tr>
  <td><a href="http://www.xmpp.org/specs/rfc3920.html">RFC 3920</a>: XMPP Core</td>
55
    <td class="supported">Yes</td>
56 57
</tr><tr>
  <td><a href="http://www.xmpp.org/specs/rfc3921.html">RFC 3921</a>: XMPP IM</td>
58
  <td class="supported">Yes</td>
59 60
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0030.html">JEP-0030</a>: Service Discovery</td>
61
  <td class="supported">Yes</td>
62 63
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0077.html">JEP-0077</a>: In-Band Registration</td>
64
  <td class="supported">Yes</td>
65 66
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0078.html">JEP-0078</a>: Non-SASL Authentication</td>
67
  <td class="supported">Yes</td>
68 69
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0086.html">JEP-0086</a>: Error Condition Mappings</td>
70
  <td class="supported">Yes</td>
71 72 73 74 75 76 77
</tr>
</table>
<br>

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

78 79
<p>The intermediate suite includes the full basic suite as well as more advanced features in common use
by XMPP clients. The table below details the level of support for the requirements set by
80
<a href="http://www.jabber.org/jeps/jep-0117.html">JEP-0117: Intermediate IM Protocol
Gaston Dombiak's avatar
Gaston Dombiak committed
81
Suite</a>.</p>
82 83 84 85

<table class="dbtable">
<tr>
  <th>Specification</th>
86
  <th width="35%">Supported</th>
87 88
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0073.html">JEP-0073</a>: Basic IM Protocol Suite</td>
89
  <td class="supported">Yes</td>
90 91
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0004.html">JEP-0004</a>: Data Forms</td>
92
  <td class="supported">Yes</td>
93 94
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0020.html">JEP-0020</a>: Feature Negotiation</td>
95
  <td class="unsupported">No</td>
96 97
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0045.html">JEP-0045</a>: Multi-User Chat</td>
98
  <td class="supported">Yes</td>
99 100
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0047.html">JEP-0047</a>: In-Band Bytestreams</td>
101
  <td class="supported">Yes</td>
102 103
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0065.html">JEP-0065</a>: SOCKS5 Bytestreams</td>
104
  <td class="supported">Yes</td>
105 106
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0071.html">JEP-0071</a>: XHTML-IM</td>
Gaston Dombiak's avatar
Gaston Dombiak committed
107
  <td class="supported">Yes [<a href="#fn1">1</a>]</td>
108 109
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0096.html">JEP-0096</a>: File Transfer</td>
110
  <td class="supported">Yes</td>
111 112
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0115.html">JEP-0115</a>: Entity Capabilities</td>
Gaston Dombiak's avatar
Gaston Dombiak committed
113
  <td class="partially_supported">Yes [<a href="#fn2">2</a>]</td>
114 115 116 117 118 119 120
</tr>
</table>
<br>

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

121
<p>The table below lists all JEPs supported by Wildfire and indicates which JEPs are part of the
122 123
<a href="#basic">Basic</a> or <a href="#intermediate">Intermediate</a> Protocol Suites listed above.
JEPs that only require client-side support are omitted.</p>
124 125 126 127 128 129 130 131

<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>
132 133 134
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0012.html">JEP-0012</a>: Last Activity</td>
  <td>-</td>
Matt Tucker's avatar
Matt Tucker committed
135
 </tr><tr>
136
  <td><a href="http://www.jabber.org/jeps/jep-0013.html">JEP-0013</a>: Flexible Offline Message Retrieval</td>
Matt Tucker's avatar
Matt Tucker committed
137
  <td>-</td>
138 139 140
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0030.html">JEP-0030</a>: Service Discovery</td>
  <td>Basic</td>
141 142 143
</tr><tr>
 <td><a href="http://www.jabber.org/jeps/jep-0033.html">JEP-0033</a>: Extended Stanza Addressing</td>
 <td>-</td>
144 145 146 147 148 149
</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>
Gaston Dombiak's avatar
Gaston Dombiak committed
150 151 152
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0050.html">JEP-0050</a>: Ad-Hoc Commands</td>
  <td>-</td>
153 154 155 156
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0054.html">JEP-0054</a>: vcard-temp</td>
  <td>-</td>
</tr><tr>
Gaston Dombiak's avatar
Gaston Dombiak committed
157
  <td><a href="http://www.jabber.org/jeps/jep-0055.html">JEP-0055</a>: Jabber Search [<a href="#fn3">3</a>]</td>
158
  <td>-</td>
159 160
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0065.html">JEP-0065</a>: SOCKS5 Bytestreams</td>
Matt Tucker's avatar
Matt Tucker committed
161
  <td>Intermediate</td>
162 163 164 165 166 167
</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>
168 169 170
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0082.html">JEP-0082</a>: Jabber Date and Time Profiles</td>
  <td>-</td>
171 172 173 174 175 176 177 178 179 180 181 182
</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>
183 184
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0096.html">JEP-0096</a>: File Transfer</td>
Matt Tucker's avatar
Matt Tucker committed
185
  <td>Intermediate</td>
186 187 188
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0106.html">JEP-0106</a>: JID Escaping</td>
  <td>-</td>
189 190 191
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0114.html">JEP-0114</a>: Jabber Component Protocol</td>
  <td>-</td>
192 193 194
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0128.html">JEP-0128</a>: Service Discovery Extensions</td>
  <td>-</td>
195 196 197
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0138.html">JEP-0138</a>: Stream Compression</td>
  <td>-</td>
198 199 200
</tr><tr>
  <td><a href="http://www.jabber.org/jeps/jep-0175.html">JEP-0175</a>: Best Practices for Use of SASL ANONYMOUS</td>
  <td>-</td>
201 202 203 204 205 206 207
</tr>
</table>
<br>


<a name="footnotes"></a>
<h2>Footnotes</h2>
Matt Tucker's avatar
Matt Tucker committed
208

Matt Tucker's avatar
Matt Tucker committed
209
 [<a name="fn1">1</a>] Some requirements of <u>JEP-0117: Intermediate IM Protocol Suite</u> do not pertain to servers.
210
 <br>
211
 [<a name="fn2">2</a>] The entity capabilities JEP is primarily for clients to implement. However, Wildfire does not support an optional server extensions defined by the JEP.
Gaston Dombiak's avatar
Gaston Dombiak committed
212
 <br>
213
 [<a name="fn3">3</a>] Support for <u>JEP-0055: Jabber Search</u> is provided by the <a href="http://www.jivesoftware.org/wildfire/plugins.jsp">Search plugin</a>.
Matt Tucker's avatar
Matt Tucker committed
214
 <br>
Matt Tucker's avatar
Matt Tucker committed
215 216 217

</body>
</html>