Mercurial > prosody-modules
comparison mod_delay/mod_delay.lua @ 3054:5e94061c1aa7
mod_delay: Don't break on smacks resume
| author | tmolitor <thilo@eightysoft.de> |
|---|---|
| date | Mon, 28 May 2018 05:27:03 +0200 |
| parents | 05248d5a7166 |
| children |
comparison
equal
deleted
inserted
replaced
| 3052:e4a986d55bb2 | 3054:5e94061c1aa7 |
|---|---|
| 1 -- Copyright (C) 2016-2017 Thilo Molitor | |
| 2 -- | |
| 3 -- This project is MIT/X11 licensed. Please see the | |
| 4 -- COPYING file in the source package for more information. | |
| 5 -- | |
| 6 | |
| 1 local add_filter = require "util.filters".add_filter; | 7 local add_filter = require "util.filters".add_filter; |
| 2 local remove_filter = require "util.filters".remove_filter; | 8 local remove_filter = require "util.filters".remove_filter; |
| 3 local datetime = require "util.datetime"; | 9 local datetime = require "util.datetime"; |
| 4 | 10 |
| 5 local xmlns_delay = "urn:xmpp:delay"; | 11 local xmlns_delay = "urn:xmpp:delay"; |
| 21 end | 27 end |
| 22 | 28 |
| 23 module:hook("resource-bind", function(event) | 29 module:hook("resource-bind", function(event) |
| 24 add_filter(event.session, "stanzas/in", add_delay, 1); | 30 add_filter(event.session, "stanzas/in", add_delay, 1); |
| 25 end); | 31 end); |
| 26 | 32 module:hook("smacks-hibernation-end", function(event) |
| 33 -- older smacks module versions send only the "intermediate" session in event.session and no session.resumed one | |
| 34 if event.resumed then | |
| 35 add_filter(event.resumed, "stanzas/in", add_delay, 1); | |
| 36 end | |
| 37 end); | |
| 27 module:hook("pre-resource-unbind", function (event) | 38 module:hook("pre-resource-unbind", function (event) |
| 28 remove_filter(event.session, "stanzas/in", add_delay); | 39 remove_filter(event.session, "stanzas/in", add_delay); |
| 29 end); | 40 end); |
