-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Open
Description
Hi,
I couldn't find XEP-0198 listed in this wiki, https://github.com/robbiehanson/XMPPFramework/wiki/XEPs.
But, i could see many issues related to stream management discussed here.
I tried this, but i couldn't get any acknowledgements.
func xmppStreamDidAuthenticate(_ sender: XMPPStream) {
ConnectionManager.instance.status = ConnectionStatus.AUTHENTICATED
ConnectionManager.instance.connection?.send(XMPPPresence())
ConnectionManager.instance.initManagers()
ChatManager.instance.sendPendingMessages()
LogManager.instance.info(message: "Connection Status: Authenticated")
let xmppStreamManagement = XMPPStreamManagement(storage: XMPPStreamManagementMemoryStorage())
xmppStreamManagement.addDelegate(StreamDelegate.instance, delegateQueue: DispatchQueue.main)
xmppStreamManagement.automaticallyRequestAcks(afterStanzaCount: 1, orTimeout: TimeInterval(1))
xmppStreamManagement.autoResume = true
xmppStreamManagement.enable(withResumption: true, maxTimeout: TimeInterval.zero)
xmppStreamManagement.requestAck()
xmppStreamManagement.activate(ConnectionManager.instance.connection!)
xmppStreamManagement.requestAck()
LogManager.instance.info(message: String(xmppStreamManagement.canResumeStream()))
}
class StreamDelegate: NSObject, XMPPStreamManagementDelegate {
static let instance = StreamDelegate()
func xmppStreamManagement(_ sender: XMPPStreamManagement, wasEnabled enabled: DDXMLElement) {
LogManager.instance.info(message: "XXXX")
}
func xmppStreamManagementDidRequestAck(_ sender: XMPPStreamManagement) {
LogManager.instance.info(message: "XXXX")
}
func xmppStreamManagement(_ sender: XMPPStreamManagement, wasNotEnabled failed: DDXMLElement) {
LogManager.instance.info(message: "XXXX")
}
func xmppStreamManagement(_ sender: XMPPStreamManagement, stanzaIdForSentElement element: XMPPElement) -> Any? {
LogManager.instance.info(message: "XXXX")
}
func xmppStreamManagement(_ sender: XMPPStreamManagement, getIsHandled isHandledPtr: UnsafeMutablePointer<ObjCBool>?, stanzaId stanzaIdPtr: AutoreleasingUnsafeMutablePointer<AnyObject?>?, forReceivedElement element: XMPPElement) {
LogManager.instance.info(message: "XXXX")
}
func xmppStreamManagement(_ sender: XMPPStreamManagement, didReceiveAckForStanzaIds stanzaIds: [Any]) {
LogManager.instance.info(message: "XXXX")
}
}Metadata
Metadata
Assignees
Labels
No labels