如何在 IOS 中获取所有名册名称

Posted

技术标签:

【中文标题】如何在 IOS 中获取所有名册名称【英文标题】:How can I get all roster name with presence in IOS 【发布时间】:2013-11-11 10:16:39 【问题描述】:

我正在 iPhone 中创建一个聊天应用程序,我想显示当前存在的花名册,但我得到了所有花名册的 ID。

NSXMLElement *queryElement = [iq elementForName: @"query" xmlns: @"jabber:iq:roster"];

if (queryElement) 
    NSArray *itemElements = [queryElement elementsForName: @"item"];
    [cts removeAllObjects];
    for (int i=0; i<[itemElements count]; i++) 

        NSString *jid = [[[itemElements objectAtIndex:i] attributeForName:@"jid"] stringValue];
        [cts addObject:jid];
    

NSLog(@"Roster ID's %@",cts);

这是我获取所有花名册 id 的代码,我想获取存在和状态等,

我怎样才能得到请帮帮我。

提前致谢

【问题讨论】:

如果您希望人们帮助您,发布一些代码会很有用 【参考方案1】:

这是我发现的 ios 上最好的 xmpp 框架之一,它运行良好。 XMPPFramwork from Robbiehnson

【讨论】:

- (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence 下,您将能够获得这样的状态NSString *statusMsg = [[presence elementForName:@"status"] stringValue]; 参考rfc3921#presence 了解有关存在的想法

以上是关于如何在 IOS 中获取所有名册名称的主要内容,如果未能解决你的问题,请参考以下文章

使用 strophe.js 在 eJabberd 服务器上获取具有名称的特定花名册

XMPP 获取所有名册的存在和状态消息

如何在 iOs 中获取用户的可用性通知?

IOS 照片库获取给定照片的相册名称

在登录时检索一个人的名册联系人列表

xmpp如何获取当前连接jid名称