我已將路由設置爲更新雙端口,並選擇端點作爲Iot集線器支持的事件(默認),但它不起作用。如何實現Azure Iot-Hub中Twin Change的路由功能?
下面是截圖
難道我做錯了什麼或缺少的東西? 任何意見或引用其他材料,將不勝感激。
我已將路由設置爲更新雙端口,並選擇端點作爲Iot集線器支持的事件(默認),但它不起作用。如何實現Azure Iot-Hub中Twin Change的路由功能?
下面是截圖
難道我做錯了什麼或缺少的東西? 任何意見或引用其他材料,將不勝感激。
最後,我得到了解決辦法,我只需切換到從頭它工作完全正常的另一個帳戶和設置的一切。
我注意到的唯一區別是在美國西部我的舊帳戶中的位置,並在美國中部地區新帳戶的位置。我沒有找到確切的解決方案,但它爲我工作。但我仍然想知道是基於位置的問題還是其他?
您的路線設置是正確的。我猜測問題出在Azure IoT Hub事件的客戶端(缺省端點)上。您可以使用Device Explorer工具進行測試。下面的屏幕片段展示了我的例子:
其他快速選擇消費這些事件是創造一個蔚藍的功能
using System;
public static void Run(string myIoTHubMessage, TraceWriter log)
{
log.Info($"C# IoT Hub trigger function processed a message: {myIoTHubMessage}");
}
function.json文件:
{
"bindings": [
{
"type": "eventHubTrigger",
"name": "myIoTHubMessage",
"direction": "in",
"path": "myPath",
"connection": "myevents_IOTHUB",
"consumerGroup": "$Default",
"cardinality": "many"
}
],
"disabled": true
}
我創建了Azure函數來使用Azure IoT Hub事件(默認端點),但是我沒有提到得到任何雙胞胎更新觸發器,我唯一得到的是從設備SDK發送的iot-hub消息。 –
我也獨立地測試路由功能,結果是我也得到了結果:匹配 –
對於更新設備孿生我更新了設備孿生從iot-hub門戶的期望值,並且還改變了來自設備側SDK的報告值,但是對於兩種方式都沒有觸發發生。 –
你如何接收這些事件?你能顯示你的代碼嗎? –
@Rita Hab對於接收事件,我使用azure函數並嘗試了EventHubTrigger和IoT Hub(EventHub) - JavaScript模板。這裏是如下: 'module.exports = function(context,IoTHubMessages){ context.log('JavaScript eventhub trigger function called for message array $ {IoTHubMessages}'); IoTHubMessages.forEach(message => {context.log('Processed message $ {JSON.stringify(message)}'); }); context.done(); };' –
@Rita Han在函數json綁定: {「bindings」:[{「type」:「eventHubTrigger」,「name」:「IoTHubMessages」,「direction」:「in」,「path」: 「iothub-ehub-HUBNAME-192805-73caa1654c」,「connection」:「HUBNAME_events_IOTHUB」,「cardinality」:「many」,「consumerGroup」:「myconsumer」}],「disabled」:false} –