0
に、ユーザの実際のJIDを取得:私はこのような部屋の居住者を発見するためのコードを持って部屋
public List<String> getRoomOccupants() {
List<String> occupants = new ArrayList<>();
DiscoverItems discoItems = null;
DiscoverItems.Item item = null;
try {
ServiceDiscoveryManager discoManager = ServiceDiscoveryManager.getInstanceFor(connection);
discoItems = discoManager.discoverItems(zipWhipNumber+"@"+roomService);
Iterator<DiscoverItems.Item> occupantsItems = discoItems.getItems().iterator();
while(occupantsItems.hasNext())
{
item = occupantsItems.next();
occupants.add(item.getName());
System.out.println(" EntityID : " + item.getEntityID() + "\n EntityName : " + item.getName());
}
} catch (NoResponseException | XMPPErrorException
| NotConnectedException e1) {
e1.printStackTrace();
}
return occupants;
}
しかし、実体識別子は、部屋のない完全なJID内のユーザーの名前です。万一、ユーザーが別のニックネームに名前を変更した場合、彼は完全なJIDを見つけることができません。
部屋から完全なJIDを取得する方法を教えてもらえますか?
ありがとうございました。