What is the logic behind having Roster.getPresence return null when someone is unavailable? Isn’‘t someone still techincally in your roster when they’‘re signed off, so therefore shouldn’'t a presence of type UNAVAILABLE be there?
When a user is offline you never get a presence packet. That was the original justification for returning null. I think your feedback is good though – returning null isn’'t very intuitive. Perhaps we can change this for Smack 2.0 (it will break existing code so it would be hard to change sooner).
Thanks for the help!