Xmpp 从openfire服务器获取好友列表

Xmpp 从openfire服务器获取好友列表,xmpp,chat,objective-c-blocks,openfire,Xmpp,Chat,Objective C Blocks,Openfire,如何通过编程从objective C中的openfire server获取所有好友,我正在使用XMPP框架实现聊天功能。在iOS中,您可以使用XMPP中的以下功能轻松获取群成员/好友 - (void)xmppRoom:(XMPPRoom *)sender didFetchModeratorsList:(NSArray *)items 这里有一个函数来获取朋友 在下面的函数中添加您的主机名 func getList() { let query = try! XMLElement(xmlStr

如何通过编程从objective C中的openfire server获取所有好友,我正在使用
XMPP
框架实现聊天功能。

在iOS中,您可以使用XMPP中的以下功能轻松获取群成员/好友

- (void)xmppRoom:(XMPPRoom *)sender didFetchModeratorsList:(NSArray *)items

这里有一个函数来获取朋友

在下面的函数中添加您的主机名

func getList() {
  let query = try! XMLElement(xmlString: "<query xmlns='http://jabber.org/protocol/disco#items' node='all users'/>")
  let iq = XMPPIQ(type: "get", to: XMPPJID(string: "Your Host Name"), elementID: xmppStream.generateUUID(), child: query)
  iq?.addAttribute(withName: "id", stringValue: "get")
  xmppStream.send(iq)
}
您可以查看我的XMPP连接和不同委托的此链接

extension YourClassName: XMPPRosterDelegate {

    func xmppRosterDidEndPopulating(_ sender: XMPPRoster!) {
        if let jids = xmppRoster.xmppRosterStorage.jids(for: xmppStream) as? [XMPPJID] {
            print("JIDS: \(String(describing: jids))")
            for item in jids {
                print(item.user)
            }
        }
    }
}