[JDEV] Re:[standards-jig] Invisibility Support in Jabber

Tijl Houtbeckers thoutbeckers at splendo.com
Fri Aug 9 05:39:26 CDT 2002


Ben Schumacher <ben at blahr.com> wrote on 9-8-2002 3:06:23:
>
>
>Here's the deal. I'd like to propose a new type of presence packet for 
>the XMPP protocol. I fully expect to hear a lot of backlash from 
>everybody with regard to the suggestion, but I think it will add value 
>to the protocol. (Please send all flames off-list to ben-devnull at blahr.
>com.) 

I agree with you we need better invisibility support. However the 
biggest problem with what you propose is that every time you log in as 
invisible you have to send a list to the server of people you want to 
be visible to. I'd rather have a persistant list stored on the server 
wich deals with this. It would be a bit like the ICQ model (wich is 
very good IMHO). In ICQ this is called your "visible" list. The 
difference between ICQ's model and yours is that in ICQ "invisible" is 
a seperate state. When you are invisible the people on your visible 
list can see that are in the "invisible" state. On the one hand I this 
can be usefull, on the other it potentially breaks excisting clients. 
What I like in your model though is that I can still be xa, away, etc. 
even though I am invisible. But in any case I think the "visible" list 
should be persistant and stored on the server. What are the opinion on 
creating some kind of "invisible" list as well? 

The way the ICQv7 transport currently does all this is a bit of a hack 
(cause it has to work within the current spec. as much as possible), 
there's still no way of knowing who is on what list 
(normal/visible/invisible), but it's still the best invisibility I've 
seen on Jabber so far :) so here is the text from http://icqv7-t.
sourceforge.net : 

> Invisible list is the list of users which don't see your presence 
> when you aren't in invisible state. 
>
> Manipulation on invisible list should be performed while you aren't 
> in invisible state. 
>
> To put an user into the invisible list send 
>
> <presence to='uin at icq.foo.bar' type='invisible'/>
>
> to remove from the invisible list send 
>
> <presence to='uin at icq.foo.bar' type='available'/>
>
> Visible list is the list of users which can see your presence when 
> you are in invisible state. 
>
> Manipulation on visible list should be performed while you are in 
> invisible state. 
>
> To put an user into the visible list send 
>
> <presence to='uin at icq.foo.bar' type='available'/>
>
> to remove from the invisible list send 
>
> <presence to='uin at icq.foo.bar' type='invisible'/>
>
> Warning! The invisible list is server-stored, so users will be there 
> even you relogin 





More information about the JDev mailing list