1 lxmppd -> core -> stanza_dispatch |
|
2 requires "util.stanza" |
|
3 requires "core.usermanager" |
|
4 |
|
5 function init_stanza_dispatcher(session) |
|
6 Initialises the stanza dispatcher which handles different stanza according |
|
7 to their type and XML namespace, dispatching to required handlers. |
|
8 |
|
9 iq_handlers["jabber:iq:auth"] |
|
10 A list of handlers for "jabber:iq:auth" stanzas -- authentication |
|
11 (request) stanzas. |
|
12 |
|
13 function (stanza) |
|
14 If one of username, password and resource are missing then it ????. |
|
15 If not, then it validates the credentials and replies with the |
|
16 appropriate stanza. |
|
17 |
|
18 iq_handlers["jabber:iq:roster"] |
|
19 A list of handlers for "jabber:iq:roster" stanzas -- roster management |
|
20 |
|
21 function (stanza) |
|
22 Parses the type of stanza for roster management and does what is |
|
23 requested (roster retrieval, etc.) |
|
24 |
|
25 function (stanza) |
|
26 Validates the stanza and calls the required handler |
|
27 |
|