[ejabberd] pubsub delivery ignores /resource
stpeter at stpeter.im
Tue Feb 2 17:54:39 MSK 2010
On 2/2/10 7:11 AM, Mickaël Rémond wrote:
> Le 2 févr. 2010 à 15:06, Liam a écrit :
>> The way I read the spec, presence-based delivery means no delivery
>> UNLESS subscriber is online.
> Yes, but for resource based subscription, if you do not expect to
> deliver it to another resource in case the subscribed resource is
> online, it seems to me that it has to be an extension of the presence
> based delivery. It cannot be filtered out by the client to server
> process, because it could be delivered to a remote server. The pubsub
> has to keep track of the presence of the resource to avoid the
> delivery in the case to the offline resources.
> However, I am not a pubsub expert and Christophe Romain will probably
> have a much better reply than me.
As I understand XEP-0060, if the subscriber JID is user at host/resource
then the pubsub service will address notifications to that full JID. If
the node is not configured for presence-based delivery then the pubsub
service will simple send the notification to the full JID. The
subscriber's XMPP server is then responsible for delivering the
notification in accordance with RFC 3920 and RFC 3921. That *might* mean
the notification ends up being delivered to a different resource.
There's no real solution for that at the pubsub service unless the
subscription is configured for presence-based delivery. Even then,
presence is not fully reliable, as we know. Naturally, if the subscriber
doesn't want to receive the notification at another resource then it
needs to ensure that the intended resource is always online. That's not
always possible, either. These are some of the tradeoffs involved in
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 6820 bytes
Desc: S/MIME Cryptographic Signature
More information about the ejabberd