【问题标题】:Send message using XMPP openfire in swift 3.0在 swift 3.0 中使用 XMPP openfire 发送消息
【发布时间】:2017-06-01 08:31:59
【问题描述】:

我想使用 xmpp 向 openFire 发送消息,即使我可以接收消息,一切正常。但是不能发送不知道为什么?我试过这段代码:

@IBAction func SendMessageClicked(_ sender: AnyObject) {

       let message = messageTextField.text
        var clientJid: XMPPJID!
        clientJid = XMPPJID.init(string: "Bure@ip-772-99-99-99.ec3.internal")
        let senderJID = clientJid
          let msg = XMPPMessage(type: "chat", to: senderJID)
        msg?.addBody(message)
        stream?.send(msg)
}

因为它不会引发任何错误,但不会发送消息。 请帮忙。

【问题讨论】:

    标签: swift3 xmpp openfire sendmessage


    【解决方案1】:
     let xMessage = XMPPMessage(type: "chat", to: XMPPJID(string: clientJid))
            xMessage.addBody(message)
            xMessage.addOriginId(stream.generateUUID)
            stream.send(xMessage)
    

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,我刚刚发现了问题。在尝试发送消息之前,请确保已建立连接并完成身份验证。为此,您可以使用这些 XMPPStreamDelegate 函数:

      func xmppStreamDidConnect(_ stream: XMPPStream!) {
          //Connection is now established
      }
      
      func xmppStreamDidAuthenticate(_ sender: XMPPStream!) {
          //Athentication is done. Now you can send messages.
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-01
        • 2015-04-19
        • 1970-01-01
        • 2013-02-12
        • 1970-01-01
        • 1970-01-01
        • 2013-10-28
        • 2010-10-28
        相关资源
        最近更新 更多