Should be noted that this is about mod_pep which implements a bare minimum needed for PEP.
Changes
titleQuerying pubsub items using PubSub fails with "service-unavailable" mod_pep: Querying pubsub items using PubSub fails with "service-unavailable"
Zash
on
Hold on, why does it do a service discovery query? I don't see anything in either 384 or 163 mandating support for this.
> Devices MUST subscribe to 'urn:xmpp:omemo:0:devicelist' via PEP
Followed by an example notification that would received after subscribing via the normal PEP +notify method.
Vanitasvitae
on
Zash: Thats because I use PubSub to query my own device list node
Vanitasvitae
on
Zash: Smack does a disco query at the node in order to determine, whether it is a LeafNode or a CollectionNode. This is done only once, but fails on prosody.
Here you can find some logs: https://pads.pirateparty.gr/p/nodes
The issue title is not correct. It should be:
> Querying a PEP node using disco#info fails with "service-unavailable".
It is XEP-0060 § 5.3 failing. It appears that XEP-0163 does not explicitly require support for the "Discover Node Information" (XEP-0060 § 5.3) use case, XEP-0163 § 5. only mentions "node discovery". I tend to believe that a PEP service requires support for discovery node information use case, as otherwise we need to resort to ugly workaround in order to determine if a PEP node is a leaf or collection node (Or are all PEP nodes besides the root node required to be leaf nodes?).
MattJ
on
Changes
titlemod_pep: Querying pubsub items using PubSub fails with "service-unavailable" mod_pep: Querying a PEP node using disco#info fails with "service-unavailable"
Hi! XEP-0384 requires a client to query PubSub nodes of a user (eg. §4.4) . When I do so using smackx-pubsub on a prosody server, the client first sends a disco iq: <iq to='contact@server.tld' id='w0eGv-16' type='get'><query xmlns='http://jabber.org/protocol/disco#info' node='eu.siacs.conversations.axolotl.devicelist'></query></iq> due to https://github.com/igniterealtime/Smack/blob/master/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java#L237 The server responds with "service-unavailable" due to https://hg.prosody.im/0.9/file/8613086779fa/plugins/mod_pep.lua#l286 I don't know, if this is an issue with prosody or with the OMEMO spec.
Related Smack issue: SMACK-743 https://issues.igniterealtime.org/browse/SMACK-743
Should be noted that this is about mod_pep which implements a bare minimum needed for PEP.
ChangesQuerying pubsub items using PubSub fails with "service-unavailable"mod_pep: Querying pubsub items using PubSub fails with "service-unavailable"Hold on, why does it do a service discovery query? I don't see anything in either 384 or 163 mandating support for this. > Devices MUST subscribe to 'urn:xmpp:omemo:0:devicelist' via PEP Followed by an example notification that would received after subscribing via the normal PEP +notify method.
Zash: Thats because I use PubSub to query my own device list node
Zash: Smack does a disco query at the node in order to determine, whether it is a LeafNode or a CollectionNode. This is done only once, but fails on prosody. Here you can find some logs: https://pads.pirateparty.gr/p/nodes
It looks like xep-0163 §1 example 5 is failing...
https://xmpp.org/extensions/xep-0163.html#example-5 is a response from a client, not from the server.
The issue title is not correct. It should be: > Querying a PEP node using disco#info fails with "service-unavailable". It is XEP-0060 § 5.3 failing. It appears that XEP-0163 does not explicitly require support for the "Discover Node Information" (XEP-0060 § 5.3) use case, XEP-0163 § 5. only mentions "node discovery". I tend to believe that a PEP service requires support for discovery node information use case, as otherwise we need to resort to ugly workaround in order to determine if a PEP node is a leaf or collection node (Or are all PEP nodes besides the root node required to be leaf nodes?).
mod_pep: Querying pubsub items using PubSub fails with "service-unavailable"mod_pep: Querying a PEP node using disco#info fails with "service-unavailable"Should be fixed in 0.10 with https://hg.prosody.im/0.10/rev/5f0c642a41a1
Changes