doc/lxmppd_core_stanz_dispatch.txt

changeset 23
236375777f8c
child 75
338e75cba18d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/lxmppd_core_stanz_dispatch.txt	Wed Sep 17 22:20:08 2008 +0300
@@ -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

mercurial