mod_csi_battery_saver/README.markdown
author tmolitor <thilo@eightysoft.de>
Fri, 18 Aug 2017 01:49:16 +0200
changeset 2749 b62cec32680e
parent 2745 69248dcd7cff
child 2750 d3a2f4bdaf09
permissions -rw-r--r--
mod_csi_battery_saver: Fix bug when smacks is resumed before hibernating This needs a mod_smacks version at least as new as of commit f70c02c14161 otherwise message reordering could happen

---
description: CSI module to save battery on mobile devices
labels:
- 'Stage-Alpha'
---

Please use this module instead of [mod_csi_pump] if you want timestamping,
properly handled carbon copies, support for handling encrypted messages and
correctly handled smacks events.

If smacks is used on the same server this needs at least version [f70c02c14161]
of the smacks module! There could be message reordering on resume otherwise.

Stanzas are queued in a buffer until either an "important" stanza is
encountered or the buffer becomes full. Then all queued stanzas are sent
at the same time. This way, nothing is lost or reordered while still
allowing for power usage savings by not requiring mobile clients to
bring up their radio for unimportant stanzas.

`IQ` stanzas, and `message` stanzas containing a body or being encypted
and all nonzas are considered important. Groupchat messages must set a
subject or have the user's username or nickname in their messages to count
as "important". `Presence` stanzas are always not "important".

All buffered stanzas that allow timestamping are properly stamped to
reflect their original send time, see [XEP-0203].

Use with other CSI plugins such as [mod_throttle_presence],
[mod_filter_chatstates] or [mod_csi_pump] is *not* supported.

The internal stanza buffer of this module is hardcoded to 100 stanzas.

[f70c02c14161]: //hg.prosody.im/prosody-modules/raw-file/f70c02c14161/mod_smacks/mod_smacks.lua