Echa un ojo en la documentación
http://www.igniterealtime.org/builds...on/roster.html al párrafo hacia el final que dice
"Rosters and presence use a permissions-based model where users must give permission before they are added to someone else's roster. This protects a user's privacy by making sure that only approved users are able to view their presence information. Therefore, when you add a new roster entry it will be in a pending state until the other user accepts your request."
Como te digo, si el otro usuario no te acepta como "amigo", no verás si está online o no.
Otro tema es que hagas una sala de chat separada, ahí si puedes ver los ocupantes de la sala
http://www.igniterealtime.org/builds...sions/muc.html
Se bueno.