Mercurial > prosody-modules
annotate mod_presence_cache/README.markdown @ 4651:8231774f5bfd
mod_cloud_notify_encrypted: Ensure body substring remains valid UTF-8
The `body:sub()` call risks splitting the string in the middle of a
multi-byte UTF-8 sequence. This should have been caught by util.stanza
validation, but that would have caused some havoc, at the very least causing
the notification to not be sent.
There have been no reports of this happening. Likely because this module
isn't widely deployed among users with languages that use many longer UTF-8
sequences.
The util.encodings.utf8.valid() function is O(n) where only the last
sequence really needs to be checked, but it's in C and expected to be fast.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 22 Aug 2021 13:22:59 +0200 |
parents | ed2bb50d4f91 |
children |
rev | line source |
---|---|
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 --- |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
2 summary: Cache presence from remote users |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 ... |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 Introduction |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 ============ |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
8 This module stores a timestamp of the latest presence received from |
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
9 users contacts so that the client can see who is online faster when they |
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
10 sign in, and won't have to wait for remote servers to reply. |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 Configuration |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 ============= |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 Just enable the module. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 modules_enabled = { |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 -- more modules |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 "presence_cache"; |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 } |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 Advanced configuration |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 ====================== |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
25 The size of the cache is tuneable: |
1959
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
26 |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
27 presence_cache_size = 99 |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
28 |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
29 Compatibility |
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
30 ============= |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
31 |
2147
ed2bb50d4f91
mod_presence_cache: Switch to using util.cache for limiting size of cache
Kim Alvefur <zash@zash.se>
parents:
2146
diff
changeset
|
32 Requires 0.10 or later |