0

使用 DeviceClient 时,我可以使用 SendEvent 发送消息,使用 SendBlob 发送文件。但是我没有找到一种方法来接收 Azure IoT Hub 已收到消息/文件的确认?

我发现解决这个问题的唯一方法是使用 serviceClient.GetFileNotificationReceiver()。我错过了什么还是这是唯一的方法?

此外,似乎我需要 SharedAccessKeyName 才能使用 ServiceClient。但这并不存在于例如由 DeviceExplorer(我用于 DeviceClient)创建的令牌中。任何建议表示赞赏。

4

1 回答 1

0

对于 Java 和 C sdks,有IotHubEventCallbackIOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK但对于 C#,没有实现这样的接口。

因此,对于 C#,如果 DeviceClient.SendEventAsync() 没有抛出任何异常,则消息将成功发送,否则将失败。

或者,您可以利用与事件中心兼容的端点来监控 IoT 中心的操作状态、D2C 消息、文件上传......

对于 ServiceClient,您需要 Azure IoT Hub 连接字符串,而不是设备连接字符串。您可以在设备资源管理器的配置中找到它:

在此处输入图像描述

于 2017-08-16T02:44:51.323 回答