root/branches/jabberd-2.1/README.protocol

Revision 503, 6.1 KB (checked in by smoku, 12 months ago)

Updated supported protocol listing

Line 
1Protocol support
2----------------
3
4jabberd 2.x is a server implementation of the eXtensible Messaging and
5Presence Protocol (XMPP), as published by the IETF. It also implements
6several XMPP extensions documented by the XMPP Software Foundation (XSF),
7and some legacy extensions that were implemented by its predecessor,
8jabberd 1.4.
9
10This document lists the protocols supported by the server, and any notes
11relating to the implementation.
12
13This is current as of 2008-01-24 (jabberd 2.1.22).
14
15
16RFC 3920        XMPP Core                               supported
17RFC 3921        XMPP IM                                 supported
18RFC 3920bis     XMPP Core                               supported
19RFC 3921bis     XMPP IM                                 supported
20
21XEP-0004        Data Forms                              -
22XEP-0011        Jabber Browsing                         supported
23XEP-0012        Last Activity                           supported
24XEP-0013        Flexible Offline Message Retrieval      -
25XEP-0016        Privacy Lists                           supported
26XEP-0018        Invisible Presence                      removed
27XEP-0022        Message Events                          supported
28XEP-0023        Message Expiration                      supported
29XEP-0030        Service Discovery                       supported
30XEP-0033        Extended Stanza Addressing              -
31XEP-0045        Multi-User Chat                         (by add-on)
32XEP-0048        Bookmark Storage                        supported
33XEP-0049        Private XML Storage                     supported
34XEP-0050        Ad-Hoc Commands                         -
35XEP-0054        vcard-temp                              supported
36XEP-0055        Jabber Search                           (by add-on)
37XEP-0059        Result Set Management                   -
38XEP-0060        Publish-Subscribe                       (by add-on)
39XEP-0065        SOCKS5 Bytestreams                      (by add-on)
40XEP-0073        Basic IM Protocol Suite                 supported
41XEP-0077        In-Band Registration                    supported
42XEP-0078        Non-SASL Authentication                 supported
43XEP-0079        Advanced Message Processing             partial
44XEP-0083        Nested Roster Groups                    supported
45XEP-0086        Error Condition Mappings                supported
46XEP-0090        Entity Time                             supported
47XEP-0091        Delayed Delivery                        supported
48XEP-0092        Software Version                        supported
49XEP-0093        Agent Information                       supported
50XEP-0114        Jabber Component Protocol               supported
51XEP-0117        Intermediate IM Protocol Suite          (by add-on)
52XEP-0124        HTTP Binding                            (by add-on)
53XEP-0128        Service Discovery Extensions            supported
54XEP-0133        Service Administration                  -
55XEP-0136        Message Archiving                       -
56XEP-0138        Stream Compression                      supported
57XEP-0142        Workgroups                              -
58XEP-0145        Annotations                             supported
59XEP-0150        Use of Entity Tags in XMPP Extensions   -
60XEP-0153        vCard-Based Avatars                     supported
61XEP-0154        User Profile                            -
62XEP-0157        Contact Addresses for XMPP Services     supported
63XEP-0159        SPIM-Blocking Control                   -
64XEP-0160        Best Practices for Handling Offline
65                Messages                                supported
66XEP-0163        Personal Eventing via Pubsub            -
67XEP-0168        Resource Application Priority           -
68XEP-0170        Recommended Order of Stream Feature
69                Negotiation                             supported
70XEP-0172        User Nickname
71XEP-0175        Best Practices of Use of SASL ANONYMOUS supported
72XEP-0178        Best Practices of Use of SASL EXTERNAL  partial
73XEP-0185        Dialback Key Generation and Validation  supported
74XEP-0186        Invisible Command                       -
75XEP-0190        Best Practice for Closing Idle Streams  supported
76XEP-0191        Simple Communications Blocking          supported
77XEP-0192        Proposed Stream Feature Improvements    supported
78XEP-0193        Proposed Resource Binding Improvements  supported
79XEP-0198        Stanza Acknowledgements                 supported
80XEP-0199        XMPP Ping                               supported
81XEP-0202        Entity Time                             supported
82XEP-0203        Delayed Delivery                        supported
83XEP-0205        Best Practices to Discourage
84                Denial of Service Attacks               partial
85XEP-0206        XMPP Over BOSH                          (by add-on)
86XEP-0209        Metacontacts                            supported
87XEP-0212        XMPP Basic Server 2008                  supported
88XEP-0215        External Service Discovery              -
89XEP-0216        XMPP Intermediate IM Server 2008        partial
90XEP-0219        Hop Check                               -
91XEP-0220        Server Dialback                         supported
92XEP-0225        Component Connections                   supported
93
94
95Additional features supported by jabberd 2.1.22 (without plugins):
96
97- Server admin address
98- Echo address
99- Server MOTD
100- Offline message storage
101- Message archiving
102- Authorization with: BerkeleyDB, LDAP, MySQL, NTLogon, Oracle, PAM, PostgreSQL, Pipe, SQLite, SSPI
103- Storage in: BerkeleyDB, files, LDAP(vCard), MySQL, Oracle, PostreSQL, SQLite
104- jabberd2 Component Protocol
105
106
107
108Implementation Notes
109--------------------
110
111
112XMPP RFCs
113---------
114
115XMPP Core (RFC 3920 and RFC 3920bis)
116
117 Implemented, except for:
118  - SASL (External) for s2s streams
119  - Language support via xml:lang
120
121XMPP IM (RFC 3921 and RFC 3921bis)
122
123 Implemented.
124
125
126XMPP Extension Protocols
127------------------------
128
129Jabber Browsing (XEP-0011)
130
131 Implemented by the session manager (mod_disco) as a wrapper around the
132 service list used for Service Discovery. The configuration required to
133 enable browsing is undocumented as browse is considered to be
134 deprecated.
135
136Last Activity (XEP-0012)
137
138 Implemented by the session manager (mod_iq_last).
139
140Message Events (XEP-0022)
141
142 Offline event implemented by the session manager (mod_offline).
143
144Message Expiration (XEP-0023)
145
146 Implemented by the session manager (mod_offline).
147
148Service Discovery (XEP-0030)
149
150 Implemented by the session manager (mod_disco). Administrative users
151 will see extra nodes when doing a #items query - these nodes provide
152 information about active users and sessions. New components becoming
153 available are probed automatically, and if they are disco-aware, their
154 information is added to the service list. Sub-entity item publishing is
155 implemented seperately by mod_disco_publish.
156
157Private XML Storage (XEP-0049)
158
159 Implemented by the session manager (mod_iq_private).
160
161vcard-temp (XEP-0054)
162
163 Implemented by the session manager (mod_iq_vcard).
164
165In-band Registration (XEP-0077)
166
167 Implemented by c2s.
168
169Non-SASL Authentication (XEP-0078)
170
171 Implemented by c2s.
172
173Entity Time (XEP-0090)
174
175 Implemented by the session manager (mod_iq_time).
176
177Delayed Delivery (XEP-0091)
178
179 Implemented by the session manager.
180
181Software Version (XEP-0092)
182
183 Implemented by the session manager (mod_iq_version).
184
185Agent Information (XEP-0094)
186
187 Implemented by the session manager (mod_disco) as a wrapper around the
188 service list used for Service Discovery.
189
190External Component Protocol (XEP-0114)
191
192 Implemented by the router as a wrapper around the more featureful
193 jabberd 2.x component protocol.
194
195
196Legacy extensions (jabberd 1.4)
197-------------------------------
198
199Invisible presence (XEP-0018)
200
201 This extension was implemented by the session manager.
202 It was intentionally removed. This is very legacy, causes problems, we
203 have better ways of doing so called invisibility, etc.
204
Note: See TracBrowser for help on using the browser.