Annotate

mod_offline_hints/mod_offline_hints.lua @ 4421:94805a7e7b30

mod_invites: rework CLI parsing to support groups To make this sensible, the code had to move from rather simple parsing to something which looks more like getopt or your typical shell script.
author Jonas Schäfer <jonas@wielicki.name>
date Sun, 31 Jan 2021 19:16:36 +0100
parent 3500:e86315c9b5c4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3500
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
1 -- mod_offline_hints
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
2 --
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
3 -- Copyright (C) 2019 Marcos de Vera Piquero <marcos.devera@quobis.com>
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
4 --
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
5 -- This file is MIT/X11 licensed.
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
6 --
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
7 -- A module to discard hinted messages with no-store at mod_offline
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
8 --
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
9
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
10 module:depends"offline";
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
11
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
12 local function handle_offline (event)
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
13 local stanza = event.stanza;
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
14 if (stanza:get_child("no-store", "urn:xmpp:hints") or
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
15 stanza:get_child("no-permanent-store", "urn:xmpp:hints")) then
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
16 module:log("debug", "Not storing offline stanza: %s (urn:xmpp:hints)", stanza);
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
17 return false;
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
18 end
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
19 return nil;
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
20 end
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
21
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
22 module:hook("message/offline/handle", handle_offline);
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
23
e86315c9b5c4 offline_hints: discard no-store hinted messages at mod_offline
marc0s <marcos.devera@quobis.com>
parents:
diff changeset
24 module:log("debug", "Module loaded");