我正在使用gloox 1.0编写一个基于xmpp的聊天客户端。我无法找到使用gloox获取服务器上的活动房间列表的方法(其他用户创建的房间)。我使用openfire作为我的本地服务器。我怎么能这样做?
答案 0 :(得分:0)
您需要创建一个Disco对象和一个继承DiscoHandler的自定义类。
要查询您拨打getDiscoItems(muc_server_jid, ...)的列表。您的DiscoHandler应该实现handleDiscoItems(),它会收到Disco::Items个对象items
。
您可以使用items.itemList()获取指向std::list个对象的Disco::Item个指针。对于每个Disco :: Item,您可以调用item.jid()和item.name()来获取房间的地址和(可选)名称。