33 -- IQ to bare JID recieved |
33 -- IQ to bare JID recieved |
34 local origin, stanza = data.origin, data.stanza; |
34 local origin, stanza = data.origin, data.stanza; |
35 |
35 |
36 -- TODO fire post processing events |
36 -- TODO fire post processing events |
37 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
37 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
38 return module:fire_event("iq/bare/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
38 local ret = module:fire_event("iq/bare/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
|
39 if ret ~= nil then return ret; end |
|
40 return module:fire_event("iq-"..stanza.attr.type.."/bare/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
39 else |
41 else |
40 module:fire_event("iq-"..stanza.attr.type.."/bare/"..stanza.attr.id, data); |
42 module:fire_event("iq-"..stanza.attr.type.."/bare/"..stanza.attr.id, data); |
41 return true; |
43 return true; |
42 end |
44 end |
43 end); |
45 end); |
44 |
46 |
45 module:hook("iq/self", function(data) |
47 module:hook("iq/self", function(data) |
46 -- IQ to bare JID recieved |
48 -- IQ to self JID recieved |
47 local origin, stanza = data.origin, data.stanza; |
49 local origin, stanza = data.origin, data.stanza; |
48 |
50 |
49 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
51 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
50 return module:fire_event("iq/self/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
52 local ret = module:fire_event("iq/self/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
|
53 if ret ~= nil then return ret; end |
|
54 return module:fire_event("iq-"..stanza.attr.type.."/self/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
51 else |
55 else |
52 module:fire_event("iq-"..stanza.attr.type.."/self/"..stanza.attr.id, data); |
56 module:fire_event("iq-"..stanza.attr.type.."/self/"..stanza.attr.id, data); |
53 return true; |
57 return true; |
54 end |
58 end |
55 end); |
59 end); |
57 module:hook("iq/host", function(data) |
61 module:hook("iq/host", function(data) |
58 -- IQ to a local host recieved |
62 -- IQ to a local host recieved |
59 local origin, stanza = data.origin, data.stanza; |
63 local origin, stanza = data.origin, data.stanza; |
60 |
64 |
61 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
65 if stanza.attr.type == "get" or stanza.attr.type == "set" then |
62 return module:fire_event("iq/host/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
66 local ret = module:fire_event("iq/host/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
|
67 if ret ~= nil then return ret; end |
|
68 return module:fire_event("iq-"..stanza.attr.type.."/host/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data); |
63 else |
69 else |
64 module:fire_event("iq-"..stanza.attr.type.."/host/"..stanza.attr.id, data); |
70 module:fire_event("iq-"..stanza.attr.type.."/host/"..stanza.attr.id, data); |
65 return true; |
71 return true; |
66 end |
72 end |
67 end); |
73 end); |