Invisible still not possible?

Hi, I’ve been searching the board for how to set a client presense to ‘invisible’. MY understanding is that back in 2007 it was impossible to do. what about now? I came across some bug fix with a note saying something like ‘it is possible now, use privacy lists’.

Can anybody provide more details on that please or a code snippet?

BTW I’m trying to write a simple app to monitor and log my contacts presence, but I would like to be able to set/change my own presence. Any suggestions?

Thank you!

As far as I know (and understand what you’re asking), “invisible” is not defined by any presence packet. Invisibility is a “lack” of presence. When you are logged, if you don’t send any presence packet none of your contacts can see you. But it doesn’t prevent you to get their presence from your roster.

Hey, thanks for answering!

From what I see with the Smack lib client app, as soon as you log in - you are visible. And if, at the same time, you’re logged in into your gmail account and try to set ‘invisible’ status, it says ‘You are not invisible’. So my client app overrides the invisible status by gmail and makes it always visible.

Also from what I see in google C++ documentation there is such think as invisability:

(http://code.google.com/apis/talk/libjingle/querying_presence.html)

// Populate an object to report your current status.

buzz::Status my_status;

my_status.set_jid(xmpp_client_->jid());

my_status.set_available(true);

my_status.set_invisible(false);

my_status.set_show(buzz::Status::SHOW_ONLINE);

my_status.set_priority(0);

my_status.set_know_capabilities(true);

my_status.set_phone_capability(true);

my_status.set_is_google_client(true);

my_status.set_version(“1.0.0.66”);

Well, Spark has a privacy plugin that allows “invisible” mode. You may want to dig through the Spark code base to learn how it works.