annotate mod_pubsub_serverinfo/README.md @ 6403:13c61a068c71

mod_pubsub_serverinfo: Include hostname in default pubsub node name This change ensures that every host publishes to a unique node by default, which is important when publishing info about multiple hosts. The old default node name was "serverinfo" The new default node name is in the format "serverinfo/example.com" where example.com is automatically replaced by the publishing host's name. This affects existing deployments in the following ways: - If you already configured pubsub_serverinfo_node explicitly in your config, then nothing will change, your current configuration will still be used. - If you did not specify it in your config (i.e. used the default) then the module will switch to publishing to the new node. If your configuration is correct this shouldn't be noticed, because the new node will automatically be created and configured by the module. If you want, you can clean up the old 'serverinfo' node using: prosodyctl shell pubsub delete_node pubsub.example.com serverinfo
author Matthew Wild <mwild1@gmail.com>
date Wed, 11 Feb 2026 09:40:30 +0000
parents 1d48c75c8200
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5801
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
1 ---
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
2 labels:
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
3 - 'Statistics'
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
4 ...
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
5
5869
faf1f1c833e8 mod_pubsub_serverinfo: update reference to XEP.
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5841
diff changeset
6 Exposes server information over Pub/Sub per [XEP-0485: PubSub Server Information](https://xmpp.org/extensions/xep-0485.html).
5801
73887dcb2129 mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents:
diff changeset
7
5807
f08818b8b87d mod_pubsub_serverinfo: Update documentation
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5806
diff changeset
8 The module announces support (used to 'opt-in', per the XEP) and publishes the name of the local domain via a Pub/Sub node. The published data
f08818b8b87d mod_pubsub_serverinfo: Update documentation
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5806
diff changeset
9 will contain a 'remote-domain' element for inbound and outgoing s2s connections. These elements will be named only when the remote domain announces
f08818b8b87d mod_pubsub_serverinfo: Update documentation
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5806
diff changeset
10 support ('opts in') too.
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
11
5841
904b226fddf1 mod_pubsub_serverinfo: Update README to link to known issues
Matthew Wild <mwild1@gmail.com>
parents: 5811
diff changeset
12 **Known issues:**
904b226fddf1 mod_pubsub_serverinfo: Update README to link to known issues
Matthew Wild <mwild1@gmail.com>
parents: 5811
diff changeset
13
5963
c61a82f80e57 mod_pubsub_serverinfo: Reference workaround for issue #1841
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5869
diff changeset
14 - [Issue #1841](https://issues.prosody.im/1841): In Prosody 0.12, this module conflicts with mod_server_contact_info (both will run, but it may affect the ability of some implementations to read the server/contact information provided). To work around this issue, the [mod_server_contact_info](https://modules.prosody.im/mod_server_contact_info) community module can be used.
5841
904b226fddf1 mod_pubsub_serverinfo: Update README to link to known issues
Matthew Wild <mwild1@gmail.com>
parents: 5811
diff changeset
15
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
16 Configuration
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
17 =============
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
18
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
19 ### Loading the module
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
20
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
21 Simply enable this module on the hosts/components that you want to publish information for. Note that, as with most other modules, adding it to the
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
22 global `modules_enabled` will automatically load it on all VirtualHosts on your server:
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
23
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
24 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
25 modules_enabled = {
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
26 ...
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
27 "pubsub_serverinfo";
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
28 ...
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
29 }
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
30 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
31
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
32 Note that adding it to the global modules_enabled won't load it on any Component hosts on your server. If you want to publish info about those, you
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
33 also need to add it to a `modules_enabled` setting under that Component, for example:
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
34
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
35 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
36 Component "rooms.example.com" "muc"
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
37 modules_enabled = {
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
38 "pubsub_serverinfo";
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
39 }
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
40 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
41
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
42 ### Specifying the publish destination
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
43
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
44 This module publishes information to any XMPP pubsub service, which could be local (i.e. served by the same Prosody instance) or remote (via
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
45 server-to-server connections).
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
46
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
47 The destination to publish to is controlled by two settings:
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
48
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
49 - `pubsub_serverinfo_service`
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
50 - `pubsub_serverinfo_node`
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
51
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
52 As usual, these options can be set in the global section (inherited by all hosts/component) or underneath each VirtualHost/Component to apply
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
53 to that VirtualHost/Component only.
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
54
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
55 If unset, `pubsub_serverinfo_service` will default to `pubsub.<domain>` - that is, it will try to publish to a pubsub service that is on the
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
56 `pubsub` subdomain of the host it is publishing about. For example, if you load the module on `example.com` it will default to publishing to
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
57 `pubsub.example.com`. If this is incorrect, you should set `pubsub_serverinfo_service` to a valid pubsub service address.
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
58
6403
13c61a068c71 mod_pubsub_serverinfo: Include hostname in default pubsub node name
Matthew Wild <mwild1@gmail.com>
parents: 6362
diff changeset
59 The `pubsub_serverinfo_node` option defaults to `serverinfo/<host>` where `<host>` is replaced by the name of the publishing host. Note that
13c61a068c71 mod_pubsub_serverinfo: Include hostname in default pubsub node name
Matthew Wild <mwild1@gmail.com>
parents: 6362
diff changeset
60 if you override this default, you *must* set it to something unique for each host you publish from, otherwise they will conflict or overwrite
13c61a068c71 mod_pubsub_serverinfo: Include hostname in default pubsub node name
Matthew Wild <mwild1@gmail.com>
parents: 6362
diff changeset
61 each other.
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
62
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
63 ### Pubsub service configuration
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
64
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
65 As mentioned, you can publish to a local or remote pubsub service. The publish commands will come from the reporting domain(s) where the module
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
66 is loaded (e.g. `example.com`), so those domains must be permitted to publish to the destination pubsub service you have chosen.
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
67
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
68 If you want to run a local pubsub service in the same Prosody instance, you can use this configuration:
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
69
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
70 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
71 Component "pubsub.example.com" "pubsub"
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
72 -- Grant permission for example.com to publish here, by simply making it
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
73 -- an admin:
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
74 admins = { "example.org" }
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
75 ```
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
76
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
77 ### Other settings
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
78
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
79 To prevent a surplus of event notifications, this module will only publish new data after a certain period of time has expired. The default duration
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
80 is 300 seconds (5 minutes). To change this simply put in the config:
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
81
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
82 ```
5803
f55e65315ba0 mod_pubsub_serverinfo: implemented all basic features
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5801
diff changeset
83 pubsub_serverinfo_publication_interval = 180 -- or any other number of seconds
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
84 ```
5805
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
85
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
86 To detect if remote domains allow their domain name to be included in the data that this module publishes, this module will perform a service
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
87 discovery request to each remote domain. To prevent a continuous flood of disco/info requests, the response to these requests is cached. By default,
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
88 a cached value will remain in cache for one hour. This duration can be modified by adding this configuration option:
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
89
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
90 ```
5805
55b99f593c3a mod_pubsub_serverinfo: Disco/info cache TTL should be configurable
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5803
diff changeset
91 pubsub_serverinfo_cache_ttl = 1800 -- or any other number of seconds
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
92 ```
5806
d4612e7f6724 mod_pubsub_serverinfo: Added 'Known Issues' section
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5805
diff changeset
93
6031
25b091cbb471 mod_pubsub_serverinfo: Allow including the count of active users in the published info
Matthew Wild <mwild1@gmail.com>
parents: 5975
diff changeset
94 To include the count of active (within the past 30 days) users:
25b091cbb471 mod_pubsub_serverinfo: Allow including the count of active users in the published info
Matthew Wild <mwild1@gmail.com>
parents: 5975
diff changeset
95
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
96 ```
6031
25b091cbb471 mod_pubsub_serverinfo: Allow including the count of active users in the published info
Matthew Wild <mwild1@gmail.com>
parents: 5975
diff changeset
97 pubsub_serverinfo_publish_user_count = true
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
98 ```
6031
25b091cbb471 mod_pubsub_serverinfo: Allow including the count of active users in the published info
Matthew Wild <mwild1@gmail.com>
parents: 5975
diff changeset
99
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
100 Enabling this option will automatically load mod_measure_active_users, which must be installed.
6031
25b091cbb471 mod_pubsub_serverinfo: Allow including the count of active users in the published info
Matthew Wild <mwild1@gmail.com>
parents: 5975
diff changeset
101
5811
ce8f0e458ffa mod_pubsub_serverinfo: Add node on compatibility
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5808
diff changeset
102 Compatibility
ce8f0e458ffa mod_pubsub_serverinfo: Add node on compatibility
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5808
diff changeset
103 =============
ce8f0e458ffa mod_pubsub_serverinfo: Add node on compatibility
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5808
diff changeset
104
ce8f0e458ffa mod_pubsub_serverinfo: Add node on compatibility
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5808
diff changeset
105 Incompatible with 0.11 or lower.
ce8f0e458ffa mod_pubsub_serverinfo: Add node on compatibility
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5808
diff changeset
106
5806
d4612e7f6724 mod_pubsub_serverinfo: Added 'Known Issues' section
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5805
diff changeset
107 Known Issues / TODOs
d4612e7f6724 mod_pubsub_serverinfo: Added 'Known Issues' section
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5805
diff changeset
108 ====================
d4612e7f6724 mod_pubsub_serverinfo: Added 'Known Issues' section
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5805
diff changeset
109
5808
2465d5191ae9 mod_pubsub_serverinfo: Consider sibling vhosts 'connected'
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5807
diff changeset
110 The reported data does not contain the optional 'connection' child elements. These can be used to describe the direction of a connection.
2465d5191ae9 mod_pubsub_serverinfo: Consider sibling vhosts 'connected'
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 5807
diff changeset
111
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
112 Common Configuration Issues
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
113 ===========================
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
114
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
115 ### Incorrect permissions on pubsub service
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
116
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
117 The XMPP domain itself (for example, `example.org`) must be allowed to publish to the chosen pubsub service, e.g. by making it an admin of that service.
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
118 Sometimes people mistakenly assume a user JID (e.g., `admin@example.org`) should be an admin. See the example above for correct configuration.
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
119
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
120 ### Enabling the module on the wrong host
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
121
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
122 `mod_pubsub_serverinfo` must be enabled globally or within a virtual host, **not inside the PubSub component** (unless you want to publish info about that
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
123 component). Generally you are instructing other hosts to publish data to the pubsub service, not extending the pubsub service itself.
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
124
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
125 Additionally, be aware that adding mod_pubsub_serverinfo to the global modules_enabled will not load it on any Components by default, you must still specify
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
126 that explicitly (see the earlier configuration example).
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
127
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
128 ### Conditional dependency on `mod_measure_active_users`
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
129
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
130 Publishing user counts requires `mod_measure_active_users`. This module will be loaded automatically if user count publication is enabled, but it must be installed on the system for this to succeed.
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
131
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
132 ### DNS records for the PubSub service
6355
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
133
77d565a6df4e mod_pubsub_serverinfo: add 'common configuration issues' to readme
Guus der Kinderen <guus.der.kinderen@gmail.com>
parents: 6031
diff changeset
134 External servers must be able to connect to the PubSub service. Ensure the hostname of the PubSub service has appropriate A/AAAA and SRV records so remote servers can discover and reach the service.
6362
1d48c75c8200 mod_pubsub_serverinfo: Update README with some clarifications/improvements
Matthew Wild <mwild1@gmail.com>
parents: 6355
diff changeset
135 You can use the 'prosodyctl check' command to help with this.