[Pidgin] #8167: jabber_buddy_find_resource uses resource priorities inappropriately
Pidgin
trac at pidgin.im
Sun Jan 18 22:04:49 EST 2009
#8167: jabber_buddy_find_resource uses resource priorities inappropriately
--------------------+-------------------------------------------------------
Reporter: fqueze | Owner: deryni
Type: patch | Status: new
Milestone: | Component: XMPP
Version: 2.5.4 | Resolution:
Keywords: |
--------------------+-------------------------------------------------------
Comment(by darkrain42):
The XMPP prpl doesn't actually track unavailable presences (the `jbr` is
removed when an unavailable presence is sent to us), so the situation you
describe should never occur currently (though it certainly would be a
problem if the prpl did track them). I'm also not entirely sure, but I
suspect a `priority` attribute on an unavailable resource would be
considered bogus (I certainly can't see how it would be useful at all).
With regard to the ordering of resources, my reading of the spec (in
particular [http://xmpp.org/internet-drafts/draft-saintandre-
rfc3921bis-07.html#rules-barejid-resource-message 3921bis-07 8.3.1.1] with
the caveat that it talks about servers) is that priority is the first
determiner of delivery resource, with ties being determined by the server
(Google Talk delivers to all resources of highest priority; I believe
ejabberd does something akin to what Pidgin does, but I don't know/haven't
tested). Also, since it might be a source of confusion, I believe when the
standard refers to 'available resource', it means a resource that is
online (i.e. not unavailable), but it says nothing of the value of the
<show> element.
That bis section refers to server rules for priority, but I think they
should be applied to the client in this case too, since should be applied
relatively equivalently to the display in the Buddy List (the resource
whose status is set in the core stems from this function) because that
status reflects the resource to whom a message sent to the bare JID will
be delivered (and otherwise interact).
--
Ticket URL: <http://developer.pidgin.im/ticket/8167#comment:1>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list