谷歌云物联网:如何从Swift编写的iOS应用程序连接到MQTT桥



我找不到任何关于如何从基于Swift的应用程序连接到Google Cloud IoT MQTT桥的文档。可以连接吗?任何参考资料、链接或样品都将不胜感激。

编辑回复评论:要使用MQTT桥连接到IoT Core,请查看此处的代码。

我们没有IOS/Swift代码示例,但您应该能够从Node或Python示例中看到所需的各种部分。物联网核心的URL/端点为mqtt.googleapis.com:8883。MQTT客户机的user/pass对于用户(未使用(将为空,而编码的JWT对于密码将为空。相同的代码有它看起来的样子,应该足以让你满怀希望地开始。

为了与IoT Core通信,MQTT主题是devices/<device_id>/events/,用于从设备到云的遥测,如果您想报告要由IoT Core存储的设备的状态,它是devices/<device_id>/state/;如果您想将消息从IoT Core发送回设备,它要么是devices/<device_id>/config/,用于在设备未主动连接的情况下在连接时传递的持久消息,或者devices/<device_id>/command/,如果它更像是一个"开火并忘记"、低延迟类型的消息。



原始答案:我们还没有关于这个特定用例的任何文档,但我发现了这个:

https://github.com/emqtt/CocoaMQTT

它启用了来自IOS的MQTT客户端连接,并且是用Swift编写的,因此应该可以工作。除此之外,您还需要一个库来为事物的身份验证端编码JWT(JsonWebToken(。

话虽如此,您可以完全放弃MQTT,只在IoT Core中使用HTTP桥,因为这可能更容易?您可以在此处查看相关文档:https://cloud.google.com/iot/docs/how-tos/http-bridge.您仍然需要JWT部分来进行身份验证,但这将使您不必在应用程序中实现MQTT。

相关内容

最新更新