[JDEV] Client support for XMPP Privacy and Jabberd 2
Dudley Carr
dudley at cs.stanford.edu
Wed Jan 21 01:06:09 CST 2004
I'm working on a client-side implementation of XMPP Privacy and I seem to have
run into a snag. There are visual elements in our client that can be changed
which in turn changes the active privacy list. This is all good and well expect
if there are multiple clients logged onto the same server with the same JID but
with different resources.
Both clients typically would read the privacy settings after logging in.
However, they would be unaware of changes to the privacy lists, and thus the
visual elements (such as showing your status as invisible) in the one of the
clients would be incorrect. The roster, like the privacy lists, is a piece of
data that clients have to synchronize on. Unlike the privacy lists, the roster
side steps this problem b/c the XMPP spec, I believe, requires roster changes to
be pushed to all the resources. As far as I can tell, this isn't true for
privacy lists changes.
A possible work around that I was considering is to send an set-IQ packet from
one client to another so that they can be synchronized, but the current Jabber 2
server doesn't allow IQ packets through for query namespaces such as
jabber:iq:privacy or jabber:iq:roster. I can't seem to find anything in XMPP
that would disallow this behavior, but it does make sense in most cases.
I'm out of ideas on this one short of some kind of custom namespace solution.
Regards,
Dudley
More information about the JDev
mailing list