azure - 当设备在未在 IoT 中心注册的情况下发送遥测消息时,IoT 中心会发生什么行为?

标签 azure azure-iot-hub

我似乎无法在任何地方获取此信息。我想知道如果发送此消息的设备未在 IoT 中心注册,遥测消息会发生什么情况。

这是因为我发现来自 IoT 中心中未注册设备的一些消息正在被处理到内置事件中心,并在内置事件中心之后进入下一个 Function App。

因此,我想知道如果在 IoT 中心未注册设备的情况下发送消息,IoT 中心的行为如何。

谢谢。

最佳答案

这是一个非常好的问题,因为它取决于您连接到 IoT 中心的方式。对于我的回答,我将考虑 MQTT、AMQP 和 HTTP。当您使用不存在的设备 ID 连接到 IoT 中心时,您将看到以下错误代码:

MQTT: 401003 IotHubUnauthorized
AMQP: 404001 DeviceNotFound
HTTP: 404001 DeviceNotFound

现在,如果您注册了设备,但在 IoT 中心禁用了它,错误是相同的,但您不会在跟踪中找到 MQTT 错误。相反,在客户端,您将收到服务器不可用错误。

如果您愿意,您可以通过 enabling tracing on the device connect/disconnect events 亲自查看这些错误代码.

最后:IoT 中心的行为是不允许任何设备在未注册时进行连接。

关于azure - 当设备在未在 IoT 中心注册的情况下发送遥测消息时,IoT 中心会发生什么行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61092151/

相关文章:

azure - 使用 Multi-Tenancy 应用程序从 Azure 租户获取订阅

azure - Get-AzureRmSnapshot 引发错误 Get-AzureRmSnapshot : Method 'get_SerializationSettings'

java - 如何在java中使用mqtt从云(iothub)检索数据

azure - 使用 REST 将数据发送到 Azure IoT 中心

html - 将 SVG 文件设置为背景 url

Azure 门户 - 未找到仪表板(新门户)

azure - 在 .Net Core 项目中使用 Microsoft.WindowsAzure.SDK 发出警告

azure - 是否可以依次启动各个iot-edge模块?如果可以的话,该怎么办呢?

azure - 使用 azure python/java sdk 在 IoT 中心创建 azure IoT 设备

Azure IoT Edge 与协议(protocol)网关(IoT 中心)