aboutsummaryrefslogtreecommitdiffstats
path: root/doc/lxmppd_core_stanz_dispatch.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/lxmppd_core_stanz_dispatch.txt')
-rw-r--r--doc/lxmppd_core_stanz_dispatch.txt26
1 files changed, 26 insertions, 0 deletions
diff --git a/doc/lxmppd_core_stanz_dispatch.txt b/doc/lxmppd_core_stanz_dispatch.txt
new file mode 100644
index 00000000..c76844e9
--- /dev/null
+++ b/doc/lxmppd_core_stanz_dispatch.txt
@@ -0,0 +1,26 @@
+lxmppd -> core -> stanza_dispatch
+ requires "util.stanza"
+ requires "core.usermanager"
+
+function init_stanza_dispatcher(session)
+ Initialises the stanza dispatcher which handles different stanza according
+ to their type and XML namespace, dispatching to required handlers.
+
+ iq_handlers["jabber:iq:auth"]
+ A list of handlers for "jabber:iq:auth" stanzas -- authentication
+ (request) stanzas.
+
+ function (stanza)
+ If one of username, password and resource are missing then it ????.
+ If not, then it validates the credentials and replies with the
+ appropriate stanza.
+
+ iq_handlers["jabber:iq:roster"]
+ A list of handlers for "jabber:iq:roster" stanzas -- roster management
+
+ function (stanza)
+ Parses the type of stanza for roster management and does what is
+ requested (roster retrieval, etc.)
+
+ function (stanza)
+ Validates the stanza and calls the required handler