は、あなたは彼らが受信されるとプレゼンスパケットを追跡する必要があります。受信したパケットの「出所」には、ユーザーのJIDのリソースが含まれます。例えば
:
private XMPPConnection connection;
private PresenceListener listener = new PresenceListener();
public void setConnection(XMPPConnection connection) {
this.connection = connection;
}
public void createPresenceListener() {
connection.addPacketListener(listener, new PacketTypeFilter(Presence.class));
}
public static class PresenceListener implements PacketListener {
public void processPacket(Packet packet) {
Presence presence = (Presence) packet;
if (presence.getType() == null || presence.getType() == Presence.Type.available) {
String from = presence.getFrom();
if (from != null && from.lastIndexOf("/") > 0) {
String resource = from.substring(from.lastIndexOf("/") + 1);
// from here you can track all active resources
}
}
}
}
グレート、これは動作します - どうもありがとうございました! –