Mercurial > prosody-modules
annotate mod_ping_muc/README.md @ 5930:acd39d33170e
mod_cloud_notify_extensions: Linkify dependency list
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 11 Jul 2024 19:13:18 +0200 |
parents | c094eabdb30f |
children | d60e04d3996e |
rev | line source |
---|---|
4804
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 --- |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 summary: Yet another MUC reliability module |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 rockspec: |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 dependencies: |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 - mod_track_muc_joins |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 labels: |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 - Stage-Alpha |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 ... |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 This module reacts to [server-to-server][doc:s2s] connections closing by |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 performing [XEP-0410: MUC Self-Ping] from the server side to check if |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 users are still connected to MUCs they have joined according |
4902
ed9aa80c989d
mod_ping_muc: Fix typo in README
Kim Alvefur <zash@zash.se>
parents:
4804
diff
changeset
|
14 [mod_track_muc_joins]. If it can't be confirmed that the user is still |
4804
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 joined then their client devices are notified about this allowing them |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 to re-join. |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 # Installing |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 ``` |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 prosodyctl install mod_ping_muc |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 ``` |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 # Configuring |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
25 |
5130
0772facc786f
mod_ping_muc: Error out if loaded on Components
Kim Alvefur <zash@zash.se>
parents:
4964
diff
changeset
|
26 No configuration. Enable as a regular module in |
0772facc786f
mod_ping_muc: Error out if loaded on Components
Kim Alvefur <zash@zash.se>
parents:
4964
diff
changeset
|
27 [`modules_enabled`][doc:modules_enabled] globally or under a |
0772facc786f
mod_ping_muc: Error out if loaded on Components
Kim Alvefur <zash@zash.se>
parents:
4964
diff
changeset
|
28 `VirtualHost`: |
0772facc786f
mod_ping_muc: Error out if loaded on Components
Kim Alvefur <zash@zash.se>
parents:
4964
diff
changeset
|
29 |
4804
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
30 ```lua |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
31 modules_enabled = { |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
32 -- other modules etc |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
33 "track_muc_joins", |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
34 "ping_muc", |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
35 } |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
36 ``` |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
37 |
5929
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
38 # Client facing protocol |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
39 |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
40 If the module determines that the client has dropped out a MUC, |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
41 it sends it [a stanza to indicate this](https://xmpp.org/extensions/xep-0045.html#service-error-kick): |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
42 |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
43 ``` xml |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
44 <presence type="unavailable" id="random123" from="room@muc.host/nickname" to="user@example.net/resource"> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
45 <x xmlns="http://jabber.org/protocol/muc#user"> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
46 <item affiliation="none" role="none"> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
47 <reason>Connection to remote server lost</reason> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
48 </item> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
49 <status code="110"/> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
50 <status code="330"/> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
51 </x> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
52 </presence> |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
53 ``` |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
54 |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
55 The `reason` message may vary. |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
56 |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
57 Upon receiving this, the client may attempt to [rejoin](https://xmpp.org/extensions/xep-0045.html#enter). |
c094eabdb30f
mod_ping_muc: Describe the client facing protocol (from XEP-0045)
Kim Alvefur <zash@zash.se>
parents:
5130
diff
changeset
|
58 |
4804
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
59 # Compatibility |
a7c0c70e64b6
mod_ping_muc: Yet another attempt to improve MUC reliability
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
60 |
4964
b1c4e78e669e
mod_ping_muc/README: Update Compatibility section for 0.12 going stable
Kim Alvefur <zash@zash.se>
parents:
4902
diff
changeset
|
61 Requires Prosody 0.12.x or trunk |