openfire消息档案管理中的服务不可用错误
我正在使用openfire 4.2.0监控插件1.6.0。
以下是openfire管理控制台上存档设置的屏幕截图。
以下是我正在使用的插件的屏幕截图。
我的问题
如您所见,插件已安装。 但当我尝试使用以下代码获取聊天记录时:我收到服务不可用的响应。
func fetchChatHistoryFromServer(completionHandler completion: @escaping FetchChatHistoryCompletionHandler) { let iq = DDXMLElement(name: "iq") iq.addAttribute(withName: "type", stringValue: "set") iq.addAttribute(withName: "id", stringValue: UserManager.shared.activeUser.jid) let query = DDXMLElement(name: "query") query.setXmlns("urn:xmpp:mam:2") query.addAttribute(withName: "queryid", stringValue: XMPPManager.shared.xmppStream.generateUUID) let x = DDXMLElement(name: "x") x.setXmlns("jabber:x:data") x.addAttribute(withName: "type", stringValue: "submit") let field = DDXMLElement(name: "field") field.addAttribute(withName: "var", stringValue: "FORM_TYPE") field.addAttribute(withName: "type", stringValue: "hidden") let fieldValue = DDXMLElement(name: "value", stringValue: "urn:xmpp:mam:2") field.addChild(fieldValue) x.addChild(field) query.addChild(x) iq.addChild(query) //let xmppResultSet = XMPPResultSet(max: 2000) Logger.log(iq) didFetchChatHistoryCompletionBlock = completion xmppMessageArchivingManagement?.retrieveMessageArchive(withFields: [iq], with: nil) }
OutPut日志: –
urn:xmpp:mam:2
回应: –
urn:xmpp:mam:2 urn:xmpp:mam:2
openfire不支持urn:xmpp:mam:2
你必须使用urn:xmpp:mam:1
代替。 你必须在XMPPMessageArchiveManagemnt类中更改它。 只需转到XMPPMessageArchiveManagement类。在20行中它表示/** 'urn:xmpp:mam:2' */ extern NSString *const XMLNS_XMPP_MAM;
。 只需按住命令并在更改后点击XMLNS_XMPP_MAM urn:xmpp:mam:2
到urn:xmpp:mam:1
- 在UITableViewCell中自动增加/减少UILabelView高度?
- 具有4个viewControllers的Page Viewtroller – 如何将视图2设置为初始viewController?
- “文件的非可移植路径”File.h“; 指定的路径与磁盘上的文件名“不同”更新为Xcode 8.3后桥接标题中的警告
- ios将数据从TabbarController传递到Storyboard中的ViewController
- 可以使用Touch ID来让很多人使用相同的iPhone吗?
- BSMachError授权访问摄像头
- 如果在iOS中的NSNotificationCenter声明
- 重新加载具有图像的UICollectionViewCell
- iOS中的导航器– Marc StevenCoder –中
- 当在iPad上运行应用程序时,Xcode 7错误消息“__connection_block_invoke_2中的错误:连接中断”
- 展开UITableView以显示堆栈视图中的所有单元格?