Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Obohacení zpráv je schopnost Azure IoT Hubu označit zprávy dalšími informacemi před odesláním zpráv do určeného koncového bodu. Jedním z důvodů, proč použít rozšiřování zpráv, je zahrnout data, která lze použít ke zjednodušení zpracování v podřízené části. Například obohacení zpráv zařízení tagem dvojčete zařízení může snížit zatížení zákazníků tím, že není potřeba volání rozhraní API dvojčete zařízení pro získání těchto informací. Další informace najdete v tématu Přehled rozšiřování zpráv.
V první části tohoto kurzu jste viděli, jak vytvořit vlastní koncové body a směrovat zprávy do jiných služeb Azure. V tomto kurzu se dozvíte, jak vytvořit a nakonfigurovat další prostředky potřebné k otestování rozšiřování zpráv pro centrum IoT. Tyto prostředky zahrnují druhý kontejner pro existující účet úložiště (vytvořený v první části kurzu) pro ukládání obohacených zpráv a trasu zpráv, která je tam odešle. Po dokončení konfigurace směrování zpráv a rozšiřování zpráv použijete aplikaci k odesílání zpráv do centra IoT. Rozbočovač je pak směruje do obou úložných kontejnerů. Rozšířené jsou pouze zprávy odeslané do koncového bodu pro kontejner rozšířeného úložiště.
V tomto kurzu provedete následující úlohy:
- Ve svém účtu úložiště vytvořte druhý kontejner.
- Vytvořte další vlastní koncový bod a směrujte do něj zprávy z centra IoT.
- Nakonfigurujte obohacování zpráv, které jsou směrovány do nového koncového bodu.
- Spusťte aplikaci, která simuluje zařízení IoT, které odesílá zprávy do centra.
- Prohlédněte si výsledky a ověřte, že se u cílených zpráv používá obohacení zpráv.
Požadavky
Musíte mít předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Musíte mít dokončený kurz: Odesílání dat zařízení do Azure Storage pomocí směrování zpráv IoT Hubu a stále udržovat prostředky, které jste pro něj vytvořili.
Ujistěte se, že je ve firewallu otevřený port 8883. Ukázka zařízení v tomto kurzu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být blokovaný v některých podnikových a vzdělávacích síťových prostředích. Další informace a způsoby řešení tohoto problému najdete v tématu Připojení ke službě IoT Hub (MQTT).
Na webu Azure Portal nejsou žádné další požadavky.
Vytvoření druhého kontejneru v účtu úložiště
V první části tohoto kurzu jste vytvořili účet úložiště a kontejner pro směrované zprávy. Teď byste měli vytvořit druhý kontejner pro rozšířené zprávy.
V Azure portálu vyhledejte Účty úložiště.
Vyberte účet, který jste předtím vytvořili.
V nabídce účtu úložiště vyberte Kontejnery v Úložišti dat.
Vyberte Kontejner a vytvořte nový kontejner.
Pojmenujte kontejner
enricheda vyberte Vytvořit.
Směrování zpráv do druhého koncového bodu
Vytvořte druhý koncový bod a trasu pro rozšířené zprávy.
Důležité
Tento článek obsahuje postup připojení ke službě pomocí sdíleného přístupového podpisu. Tato metoda ověřování je vhodná pro testování a vyhodnocení, ale ověřování ve službě pomocí MICROSOFT Entra ID nebo spravovaných identit je bezpečnější přístup. Další informace najdete v tématu Osvědčené postupy zabezpečení zabezpečení řešení > IoT v cloudu.
Na webu Azure Portal přejděte do centra IoT.
V nabídce prostředků v části Nastavení centra vyberte Směrování zpráv a pak vyberte Přidat.
Na kartě Koncový bod vytvořte koncový bod úložiště zadáním následujících informací:
Parameter Hodnota Typ koncového bodu Vyberte Úložiště. Název koncového bodu Zadejte ContosoStorageEndpointEnriched.Kontejner Azure Storage Vyberte Vybrat kontejner. Podle pokynů vyberte účet úložiště a obohacený kontejner, který jste vytvořili v předchozí části. Kódování Vyberte JSON. Pokud je toto pole neaktivní, oblast vašeho účtu úložiště nepodporuje JSON. V takovém případě s výchozím AVRO pokračujte.
Přijměte výchozí hodnoty pro zbývající parametry a vyberte Vytvořit + další.
Pokračujte ve vytváření nové trasy, teď když jste přidali koncový bod úložiště. Zadejte následující informace pro novou trasu:
Parameter Hodnota Název ContosoStorageRouteEnriched Zdroj dat Ověřte, že v rozevíracím seznamu jsou vybrané zprávy telemetrie zařízení. Povol trasu Ověřte, zda je toto pole nastaveno na enabledhodnotu .Dotaz směrování Zadejte level="storage"jako řetězec dotazu.
Vyberte Vytvořit + přidat obohacení.
Přidejte obohacení zpráv k novému koncovému bodu
Vytvořte tři rozšíření zpráv, které budou směrovány do rozšířeného kontejneru úložiště.
Na kartě Obohacení v průvodci Přidání trasy přidejte tři obohacení zpráv pro zprávy, které jdou do koncového bodu kontejneru úložiště nazvaného enriched.
Přidejte tyto hodnoty jako rozšíření zpráv pro koncový bod ContosoStorageEndpointEnriched:
Jméno Hodnota myIotHub $hubnameUmístění zařízení $twin.tags.location(předpokládá, že dvojče zařízení má značku umístění)ID zákazníka 6ce345b8-1e4a-411e-9398-d34587459a3aPo dokončení by vaše rozšíření měla vypadat podobně jako na tomto obrázku:
Výběrem Přidat přidáte obohacení zpráv.
Teď máte nastavené rozšiřování zpráv pro všechny zprávy směrované do koncového bodu, který jste vytvořili pro rozšířené zprávy. Pokud nechcete do dvojčete zařízení přidat značku umístění, můžete přeskočit na část Obohacení testovacích zpráv a pokračovat v kurzu.
Přidejte značku polohy do dvojčete zařízení
Jedním z obohacení zpráv nakonfigurovaných ve vašem centru IoT je klíč DeviceLocation, jehož hodnota je určena následující cestou dvojčete zařízení: $twin.tags.location Pokud zařízení twin nemá značku umístění, cestu $twin.tags.location dvojčete označíme jako řetězec pro klíč DeviceLocation v rozšíření zpráv.
Pokud chcete přidat značku polohy do dvojčete vašeho zařízení, postupujte takto:
Na webu Azure Portal přejděte do centra IoT.
V navigační nabídce centra IoT vyberte Zařízení a pak vyberte své zařízení.
Vyberte kartu zařízení dvojče v horní části stránky zařízení a přidejte následující řádek těsně před závěrečnou složenou závorku v dolní části sekce zařízení dvojče. Pak vyberte Uložit.
, "tags": {"location": "Plant 43"}
Doporučení
Než budete pokračovat k další části, počkejte asi pět minut. Než se aktualizace dvojčete zařízení projeví v hodnotách obohacení zpráv, může to trvat až tak dlouho.
Další informace o tom, jak se cesty digitálních dvojčat zařízení zpracovávají pomocí obohacení zpráv, najdete v tématu Omezení obohacení zpráv. Další informace o dvojčatech zařízení najdete v tématu Principy a používání dvojčat zařízení ve službě IoT Hub.
Test rozšíření zpráv
Teď, když jsou rozšíření zpráv nakonfigurované pro koncový bod ContosoStorageEndpointEnriched , spusťte aplikaci simulovaného zařízení pro odesílání zpráv do centra IoT. V tomto okamžiku bylo směrování zpráv nastaveno takto:
Zprávy směrované do koncového bodu úložiště, který jste vytvořili v první části kurzu, nebudou obohaceny a budou uloženy v kontejneru úložiště, který jste vytvořili.
Zprávy směrované do koncového bodu úložiště ContosoStorageEndpointEnriched budou obohaceny a uloženy do kontejneru obohaceného úložiště.
Pokud ještě nespouštíte konzolovou aplikaci SimulatedDevice z první části tohoto kurzu, spusťte ji znovu:
Doporučení
Pokud postupujete podle kroků Azure CLI pro tento kurz, spusťte ukázkový kód v samostatné relaci. Tímto způsobem můžete ukázkový kód povolit, aby pokračoval ve spuštění, zatímco budete postupovat podle zbývajících kroků rozhraní příkazového řádku.
V ukázkové složce přejděte do
/iot-hub/Tutorials/Routing/SimulatedDevice/složky.Definice proměnných, které jste aktualizovali dříve, by měly být stále platné, ale pokud ne, upravte je v
Program.cssouboru:Najděte definice proměnných v horní části třídy Program . Aktualizujte následující proměnné vlastními informacemi:
- s_myDeviceId: ID zařízení, které jste přiřadili při registraci zařízení do centra IoT.
-
s_iotHubUri: Název hostitele vašeho centra IoT, který přebírá formát
IOTHUB_NAME.azure-devices.net. - s_deviceKey: Primární klíč zařízení nalezený v informacích o identitě zařízení.
Soubor uložte a zavřete.
Spusťte ukázkový kód:
dotnet run
Po ponechání konzolové aplikace běžet po dobu několika minut si prohlédněte data:
Na webu Azure Portal přejděte ke svému účtu úložiště.
V navigační nabídce vyberte Prohlížeč úložiště. Výběrem Blob kontejnerů zobrazíte dva kontejnery, které jste vytvořili během těchto tutoriálů.
Zprávy v kontejneru označované jako rozšířené obsahují rozšiřování zpráv. Zprávy v kontejneru, který jste vytvořili dříve, obsahují surové zprávy bez obohacení. Postupně procházejte rozšířený kontejner, dokud se nedostanete na dno, a poté otevřete nejnovější soubor zpráv. Potom pro druhý kontejner proveďte totéž, abyste ověřili, že jeden je obohacený a druhý není.
Když se podíváte na zprávy, které byly obohaceny, měli byste vidět "myIotHub" s názvem uzlu, umístěním a ID zákazníka, například takto:
{
"EnqueuedTimeUtc":"2019-05-10T06:06:32.7220000Z",
"Properties":
{
"level":"storage",
"myIotHub":"{your hub name}",
"DeviceLocation":"Plant 43",
"customerID":"6ce345b8-1e4a-411e-9398-d34587459a3a"
},
"SystemProperties":
{
"connectionDeviceId":"Contoso-Test-Device",
"connectionAuthMethod":"{\"scope\":\"device\",\"type\":\"sas\",\"issuer\":\"iothub\",\"acceptingIpFilterRule\":null}",
"connectionDeviceGenerationId":"636930642531278483",
"enqueuedTime":"2019-05-10T06:06:32.7220000Z"
},"Body":"eyJkZXZpY2VJZCI6IkNvbnRvc28tVGVzdC1EZXZpY2UiLCJ0ZW1wZXJhdHVyZSI6MjkuMjMyMDE2ODQ4MDQyNjE1LCJodW1pZGl0eSI6NjQuMzA1MzQ5NjkyODQ0NDg3LCJwb2ludEluZm8iOiJUaGlzIGlzIGEgc3RvcmFnZSBtZXNzYWdlLiJ9"
}
Vyčistěte zdroje
Pokud chcete odebrat všechny prostředky, které jste vytvořili v obou částech tohoto kurzu, odstraňte skupinu prostředků. Tato akce odstraní všechny prostředky obsažené ve skupině. Pokud nechcete odstranit celou skupinu prostředků, můžete vybrat jednotlivé prostředky ke smazání.
- Na webu Azure Portal přejděte do skupiny prostředků, která obsahuje centrum IoT a účet úložiště pro účely tohoto kurzu.
- Zkontrolujte všechny prostředky, které jsou ve skupině prostředků, a určete, které prostředky chcete vyčistit.
- Pokud chcete odstranit všechny prostředky, vyberte Odstranit skupinu prostředků.
- Pokud chcete odstranit jenom určitý prostředek, pomocí zaškrtávacích políček u každého názvu prostředku vyberte ty, které chcete odstranit. Poté vyberte Odstranit.
Další kroky
V tomto kurzu jste nakonfigurovali a otestovali rozšiřování zpráv pro zprávy ioT Hubu při jejich směrování do koncového bodu.
Další informace o rozšiřování zpráv naleznete v tématu Přehled rozšiřování zpráv.
Další informace o IoT Hubu najdete v dalším kurzu.