2

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

4

1 回答 1

1

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

我们那里没有 IOS/Swift 代码示例,但是您应该能够从 Node 或 Python 示例中看到您需要的各个部分。IoT Core 的 URL/端点是mqtt.googleapis.com:8883. MQTT 客户端的用户/密码对于用户(未使用)和密码的编码 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(Json Web 令牌)。

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

于 2018-12-03T18:09:44.833 回答