【问题标题】:Azure Java Function based on deviceTwinTrigger: Retrieve DeviceId基于 deviceTwinTrigger 的 Azure Java 函数:检索 DeviceId
【发布时间】:2019-06-06 22:12:45
【问题描述】:

按照本指南:https://docs.microsoft.com/nl-nl/azure/azure-functions/functions-bindings-event-hubs#trigger---java-example

我正在开发一个必须在 Azure 中运行的 Java 函数。在我的 IoT 集线器中,我定义了一个路由,它触发了所有设备孪生向事件集线器的更改。从那里,我的函数被很好地触发,并且我可以记录确实被改变的内容。到目前为止一切都很好,但是..

如何提取设备 ID?现在,我只检索消息(设备孪生中已更改的内容),但我不知道此内容更改属于哪个设备。

有人知道吗?

【问题讨论】:

    标签: java azure azure-functions


    【解决方案1】:

    您遇到了known issue,表示当前事件中心绑定数据的实现缺少一些属性,例如您寻找的设备 ID。

    在我们的绑定中,我们通过仅输出该类型的 4 个顶级属性来吸收这种变化,而没有意识到它是从 Dictionary 派生的。所以我们填充绑定数据here 的代码是一个错误。而不是我们自己的 ToDictionary 实现 here 用于这 4 个属性(过滤掉其他系统属性),我们应该只添加整个集合,这已经是一个字典。

    这里是thread 跟踪问题的修复。

    【讨论】:

    • 感谢您的信息。知道是否有我们现在可以使用的解决方法吗?
    • 对不起,除了使用 v1 函数,我没有找到任何解决方法。但是 v1 根本不支持 java。
    • 感谢您的信息,非常感谢 :)
    【解决方案2】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-13
    • 1970-01-01
    • 1970-01-01
    • 2021-11-02
    • 2016-04-07
    相关资源
    最近更新 更多