我如何能够获得具有用户ID的任何特定用户。
我的意思是说没有在名单列表中添加该用户。
请帮我解决这个问题。
提前致谢。
答案 0 :(得分:2)
我假设你在谈论iOS XMPPFramework。如果没有,请忽略这个答案。 您可以向其他用户发送定向状态,如下所示:
XMPPPresence *presence = [[XMPPPresence alloc] initWithType:@"probe" to:someJid];
[_xmppStream sendElement:presence];
_xmppStream是一个开放且连接的XMPPStream。
但请注意,如果其他用户不在您的名单中,大多数XMPP服务器将不允许回复此类定向在线状态。如果您正在管理自己的XMPP服务器,则可以对其进行修改以允许此类操作。
答案 1 :(得分:0)
您可以通过拨打以下插件网址来询问是否存在任何用户
http:// {SERVER_NAME}:9090 / plugins / presence / status?jid = USERID @ SERVER_NAME& type = text
EX:
[NSURLConnection sendAsynchronousRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://SERVER_NAME:9090/plugins/presence/status?jid=ANYUSER@SERVER_NAME&type=text"]] queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
if(connectionError==nil)
NSLog(@"plugins response ===%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
}];
它将返回" online"有吸引力的用户和"不可用的"对于离线用户。请注意图片中显示的openfire服务器上的服务器设置。