I find a trick that emulate the using of the Invisible status:
Usually a certain Presence is sending by a Presence packet with no To field; then the server broadcast the Presence ant take count by the new state(if is Presence.unavailable don’'t relay outgoing messages to that user).
Trick:
By sending desired Presence to each contact from roster, in our case, the Presence.unavailable one, seems that each user it is informed about the new Presence, but at server side, the message relaying still works fine.
For my invisibility purpose, using Smack based Jabber IM Client while all contacts are informed that I’‘m off-line(unavailable in our terms) that’'s works fine…