2017-06-09 34 views
0

我使用CocoaMQTT来连接和发布事件。要发布,其重要的是我连接到MQTT。但连接是异步的,发布也是如此。我希望它是连续的,首先它应该连接并且一旦连接然后发布,例如如果连接在5分钟后发生然后发布应该在那之后发生。连接到MQTT发生在发布后,由于异步

https://github.com/emqtt/CocoaMQTT

我究竟该怎么办呢?

这里是我的代码:

class ViewController: UIViewController { 
var iot: MQTTDelegate! 

@IBAction func click(_ sender: Any) { 
    self.iot = IoT(
       withClientId: "clientId", 
       host: "host", 
       port: 1883 
      ) 

    iot.connect(username: "username", password: "token") 

    iot.publish(topic: "hello", message: "") 
} 
} 

如果我移动连接到单独的按钮,然后它可以作为第一次我点击连接按钮,然后我点击“点击”按钮,它的顺序。我如何使上述代码顺序?

我用PromiseKit promisify的代码,但我不知道究竟要完成连接。

回答

0

您可以使用didconnect(在委托中给出)然后发布您的消息。

相关问题