annotate mod_muc_lang/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 4e8b5ea7f4c2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3075
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 # Introduction
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 This module adds support for advertising the language used in a room.
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 # Configuring
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 ``` {.lua}
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 Component "rooms.example.net" "muc"
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 modules_enabled = {
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 "muc_lang";
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 }
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 ```
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 The room language is specified in a new field in the room configuration
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 dialog, accessible through compatible clients.
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 Use [language codes](https://en.wikipedia.org/wiki/ISO_639) like `en`,
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 `fr`, `de` etc.
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 # Compatibility
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 Meant for use with Prosody 0.10.x
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 Native support was [added in Prosody
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 trunk/0.11](https://hg.prosody.im/trunk/rev/9c90cd2fc4c3), so there is
4e8b5ea7f4c2 mod_muc_lang: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26 no need for this module.