Rychlý start: Řízení zařízení připojeného k centru IoT
V tomto rychlém startu použijete přímou metodu k řízení simulovaného zařízení připojeného k centru IoT. IoT Hub je služba Azure, která umožňuje spravovat zařízení IoT z cloudu a ingestovat do cloudu velké objemy telemetrických dat zařízení za účelem uložení nebo zpracování. Pomocí přímých metod můžete vzdáleně změnit chování zařízení připojených k centru IoT.
Rychlý start používá dvě předem vytvořené aplikace .NET:
Aplikace simulovaného zařízení, která reaguje na přímé metody volané z aplikace služby. Aby bylo možné přijímat volání přímé metody, připojí se tato aplikace ke koncovému bodu centra IoT pro konkrétní zařízení.
Aplikace služby, která volá přímé metody na simulovaném zařízení. Aby na zařízení bylo možné volat přímou metodu, připojí se tato aplikace ke koncovému bodu na straně služby ve vašem centru IoT.
Požadavky
Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.
Dvě ukázkové aplikace, které spustíte v tomto rychlém startu, jsou napsány pomocí C#. Na vývojovém počítači potřebujete sadu .NET SDK 6.0 nebo novější.
Sadu .NET Core SDK pro různé platformy si můžete stáhnout z webu .NET.
Aktuální verzi C# na počítači používaném pro vývoj můžete ověřit pomocí následujícího příkazu:
dotnet --version
Naklonujte nebo stáhněte sadu Azure IoT C# SDK z GitHubu.
Ujistěte se, že je v bráně firewall otevřený port 8883. Ukázka zařízení v tomto rychlém startu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být v některých podnikových a vzdělávacích síťových prostředích blokovaný. Další informace a způsoby, jak tento problém obejít, najdete v tématu Připojení k IoT Hub (MQTT).
Použijte prostředí Bash v Azure Cloud Shell. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shell.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Spuštění Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Poznámka
Tento článek používá nejnovější verzi rozšíření Azure IoT s názvem azure-iot
. Starší verze se nazývá azure-cli-iot-ext
. Současně byste měli mít nainstalovanou jenom jednu verzi. K ověření aktuálně nainstalovaných rozšíření můžete použít příkaz az extension list
.
Použijte az extension remove --name azure-cli-iot-ext
k odebrání starší verze rozšíření.
Použijte az extension add --name azure-iot
k přidání nové verze rozšíření.
Pokud chcete zjistit, jaká rozšíření máte nainstalovaná, použijte az extension list
.
V této části použijete Azure CLI k vytvoření centra IoT a skupiny prostředků. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Centrum IoT funguje jako centrum zpráv pro obousměrnou komunikaci mezi aplikací IoT a zařízeními.
Pokud už ve svém předplatném Azure máte centrum IoT, můžete tuto část přeskočit.
Vytvoření centra IoT a skupiny prostředků:
Spusťte aplikaci CLI. Pokud chcete spustit příkazy rozhraní příkazového řádku ve zbývající části tohoto článku, zkopírujte syntaxi příkazu, vložte ji do aplikace CLI, upravte hodnoty proměnných a stiskněte
Enter
.- Pokud používáte Cloud Shell, vyberte tlačítko Vyzkoušet v příkazech rozhraní příkazového řádku a spusťte Cloud Shell v rozděleném okně prohlížeče. Nebo můžete Cloud Shell otevřít na samostatné kartě prohlížeče.
- Pokud používáte Azure CLI místně, spusťte aplikaci konzoly CLI a přihlaste se k Azure CLI.
Spuštěním příkazu az extension add nainstalujte nebo upgradujte rozšíření azure-iot na aktuální verzi.
az extension add --upgrade --name azure-iot
Spuštěním příkazu az group create v aplikaci CLI vytvořte skupinu prostředků. Následující příkaz vytvoří skupinu prostředků MyResourceGroup v umístění eastus .
Poznámka
Volitelně můžete nastavit jiné umístění. Pokud chcete zobrazit dostupná umístění, spusťte příkaz
az account list-locations
. V tomto rychlém startu se používá eastus , jak je znázorněno v ukázkovém příkazu.az group create --name MyResourceGroup --location eastus
Spuštěním příkazu az iot hub create vytvořte centrum IoT. Vytvoření centra IoT hub může trvat několik minut.
YourIotHubName. V následujícím příkazu nahraďte tento zástupný symbol a okolní složené závorky názvem, který jste zvolili pro centrum IoT. Název centra IoT musí být v Azure globálně jedinečný. Ve zbývající části tohoto rychlého startu použijte název vašeho centra IoT všude, kde se zobrazí zástupný symbol.
az iot hub create --resource-group MyResourceGroup --name {your_iot_hub_name}
Načtení připojovacího řetězce služby
Potřebujete také připojovací řetězec služby ioT Hubu, který aplikaci služby umožní připojit se k centru a načíst zprávy. Připojovací řetězec služby je určený pro centrum IoT jako celek a liší se od připojovacího řetězce zařízení, který jste získali v předchozí části.
Následující příkaz načte připojovací řetězec služby pro vaše centrum IoT:
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Poznamenejte si připojovací řetězec služby, který vypadá nějak takto:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Tuto hodnotu použijete později v tomto rychlém startu.
Simulace zařízení
Aplikace simulovaného zařízení se připojí ke koncovému bodu v centru IoT pro konkrétní zařízení, odešle simulovaná telemetrická data a z vašeho centra naslouchá voláním přímé metody. Volání přímé metody z centra v tomto rychlém startu nařídí zařízení, aby změnilo interval, ve kterém se odesílají telemetrická data. Simulované zařízení odešle potvrzení zpět do vašeho centra poté, co spustí přímou metodu.
V okně místního terminálu přejděte do kořenové složky ukázkového projektu jazyka C#. Pak přejděte do složky iothub\device\samples\getting started\SimulatedDeviceWithCommand .
Spuštěním následujícího příkazu nainstalujte požadované balíčky pro aplikaci simulovaného zařízení:
dotnet restore
Spuštěním následujícího příkazu sestavte a spusťte aplikaci simulovaného zařízení.
{DeviceConnectionString}
: Nahraďte tento zástupný text připojovacím řetězcem zařízení, který jste si poznamenali dříve.dotnet run -- -c "{DeviceConnectionString}"
Následující snímek obrazovky ukazuje výstup, zatímco aplikace simulovaného zařízení odesílá telemetrická data do vašeho centra IoT:
Volání přímé metody
Aplikace služby se připojí ke koncovému bodu na straně služby na vašem IoT Hub. Aplikace provádí volání přímých metod do zařízení prostřednictvím centra IoT a naslouchá potvrzením. Aplikace služby IoT Hub obvykle běží v cloudu.
V jiném okně místního terminálu přejděte do kořenové složky ukázkového projektu jazyka C#. Pak přejděte do složky iothub\service\samples\getting started\InvokeDeviceMethod .
V okně místního terminálu spusťte následující příkazy pro instalaci požadovaných knihoven pro aplikaci služby:
dotnet build
Spuštěním následujících příkazů v okně místního terminálu sestavte a spusťte aplikaci služby.
{ServiceConnectionString}
: Tento zástupný symbol nahraďte připojovacím řetězcem služby IoT Hub, který jste si poznamenali dříve.{DeviceName}
: Tento zástupný symbol nahraďte názvem zařízení, které jste zaregistrovali.dotnet run -- -c "{ServiceConnectionString}" -d {DeviceName}
Následující snímek obrazovky ukazuje výstup, když aplikace provede volání přímé metody do zařízení a obdrží potvrzení:
Po spuštění aplikace služby se v okně konzoly se simulovaným zařízením zobrazí zpráva a rychlost odesílání zpráv se změní:
V tomto rychlém startu se používají dvě aplikace Java:
- Aplikaci simulovaného zařízení, která odpovídá na přímé metody volané z back-endové aplikace.
- Aplikace služby, která volá přímou metodu na simulovaném zařízení.
Požadavky
Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.
Java SE Development Kit 8. V části Dlouhodobá podpora Javy pro Azure a Azure Stack v části Dlouhodobá podpora vyberte Java 8.
Aktuální verzi Javy na vývojovém počítači můžete ověřit pomocí následujícího příkazu:
java -version
-
Aktuální verzi Mavenu na vývojovém počítači můžete ověřit pomocí následujícího příkazu:
mvn --version
Naklonujte nebo stáhněte ukázky Azure IoT Java z GitHubu.
Ujistěte se, že je v bráně firewall otevřený port 8883. Ukázka zařízení v tomto rychlém startu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být v některých podnikových a vzdělávacích síťových prostředích blokovaný. Další informace a způsoby, jak tento problém obejít, najdete v tématu Připojení k IoT Hub (MQTT).
Použijte prostředí Bash v Azure Cloud Shell. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shell.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Poznámka
Tento článek používá nejnovější verzi rozšíření Azure IoT s názvem azure-iot
. Starší verze se nazývá azure-cli-iot-ext
. Najednou byste měli mít nainstalovanou jenom jednu verzi. K ověření aktuálně nainstalovaných rozšíření můžete použít příkaz az extension list
.
Slouží az extension remove --name azure-cli-iot-ext
k odebrání starší verze rozšíření.
Použijte az extension add --name azure-iot
k přidání nové verze rozšíření.
Pokud chcete zjistit, jaká rozšíření máte nainstalovaná, použijte az extension list
.
Vytvoření centra IoT
V této části použijete Azure CLI k vytvoření centra IoT a skupiny prostředků. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Centrum IoT funguje jako centrální centrum zpráv pro obousměrnou komunikaci mezi aplikací IoT a zařízeními.
Pokud už ve svém předplatném Azure máte centrum IoT, můžete tuto část přeskočit.
Vytvoření centra IoT a skupiny prostředků:
Spusťte aplikaci CLI. Pokud chcete spustit příkazy rozhraní příkazového řádku ve zbývající části tohoto článku, zkopírujte syntaxi příkazu, vložte ji do aplikace CLI, upravte hodnoty proměnných a stiskněte
Enter
.- Pokud používáte Cloud Shell, vyberte tlačítko Vyzkoušet v příkazech rozhraní příkazového řádku a spusťte Cloud Shell v rozdělené okně prohlížeče. Nebo můžete Cloud Shell otevřít na samostatné kartě prohlížeče.
- Pokud používáte Azure CLI místně, spusťte konzolovou aplikaci rozhraní příkazového řádku a přihlaste se k Azure CLI.
Spuštěním příkazu az extension add nainstalujte nebo upgradujte rozšíření azure-iot na aktuální verzi.
az extension add --upgrade --name azure-iot
Spuštěním příkazu az group create v aplikaci CLI vytvořte skupinu prostředků. Následující příkaz vytvoří skupinu prostředků MyResourceGroup v umístění eastus .
Poznámka
Volitelně můžete nastavit jiné umístění. Pokud chcete zobrazit dostupná umístění, spusťte příkaz
az account list-locations
. V tomto rychlém startu se používá eastus , jak je znázorněno v příkladu příkazu.az group create --name MyResourceGroup --location eastus
Spuštěním příkazu az iot hub create vytvořte centrum IoT. Vytvoření centra IoT může trvat několik minut.
YourIotHubName. Tento zástupný symbol a okolní závorky nahraďte v následujícím příkazu pomocí názvu, který jste zvolili pro centrum IoT. Název centra IoT musí být v Azure globálně jedinečný. Název centra IoT použijte ve zbytku tohoto rychlého startu všude, kde se zobrazí zástupný symbol.
az iot hub create --resource-group MyResourceGroup --name {your_iot_hub_name}
Registrace zařízení
Zařízení musí být zaregistrované ve vašem centru IoT, aby se mohlo připojit. V této části použijete Azure CLI k vytvoření identity zařízení.
Pokud už máte zařízení zaregistrované ve službě IoT Hub, můžete tuto část přeskočit.
Vytvoření identity zařízení:
V prostředí rozhraní příkazového řádku spusťte příkaz az iot hub device-identity create . Tento příkaz vytvoří identitu zařízení.
your_iot_hub_name. Tento zástupný symbol nahraďte názvem, který jste zvolili pro centrum IoT.
myDevice. Tento název můžete použít pro ID zařízení v tomto článku nebo zadat jiný název zařízení.
az iot hub device-identity create --device-id myDevice --hub-name {your_iot_hub_name}
Spusťte příkaz az iot hub device-identity connection-string show .
az iot hub device-identity connection-string show --device-id myDevice --hub-name {your_iot_hub_name}
Výstup připojovacího řetězce je v následujícím formátu:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
Uložte připojovací řetězec do zabezpečeného umístění.
Poznámka
Nechte aplikaci rozhraní příkazového řádku otevřenou. Použijete ho v pozdějších krocích.
Načtení připojovacího řetězce služby
Potřebujete také připojovací řetězec služby, který back-endové aplikaci umožní připojení k vašemu centru IoT a načtení zpráv. Následující příkaz načte připojovací řetězec služby pro vaše centrum IoT:
YourIoTHubName: Nahraďte tento zástupný symbol názvem, který jste zvolili pro centrum IoT.
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Poznamenejte si připojovací řetězec služby, který vypadá nějak takto:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Tuto hodnotu použijete později v tomto rychlém startu. Tento připojovací řetězec služby se liší od připojovacího řetězce zařízení, který jste si poznamenali v předchozím kroku.
Simulace zařízení
Aplikace simulovaného zařízení se připojí ke koncovému bodu v centru IoT pro konkrétní zařízení, odešle simulovaná telemetrická data a z vašeho centra naslouchá voláním přímé metody. Volání přímé metody z centra v tomto rychlém startu nařídí zařízení, aby změnilo interval, ve kterém se odesílají telemetrická data. Simulované zařízení odešle potvrzení zpět do centra po spuštění přímé metody.
V okně místního terminálu přejděte do kořenové složky ukázkového projektu Java. Potom přejděte do složky iot-hub\Quickstarts\simulated-device-2.
V libovolném textovém editoru otevřete soubor src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java.
connString
Hodnotu proměnné nahraďte připojovacím řetězcem zařízení, který jste si poznamenali dříve. Pak uložte změny do SimulatedDevice.java.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny a sestavte aplikaci simulovaného zařízení:
mvn clean package
Spuštěním následujících příkazů v okně místního terminálu spusťte aplikaci simulovaného zařízení:
java -jar target/simulated-device-2-1.0.0-with-deps.jar
Následující snímek obrazovky ukazuje výstup, zatímco aplikace simulovaného zařízení odesílá telemetrická data do vašeho centra IoT:
Volání přímé metody
Back-endová aplikace se připojí ke koncovému bodu vašeho centra IoT na straně služby. Aplikace provádí přímé volání metody do zařízení prostřednictvím vašeho centra IoT a naslouchá potvrzením. Back-endová aplikace služby IoT Hub se obvykle spouští v cloudu.
V jiném okně místního terminálu přejděte do kořenové složky ukázkového projektu Java. Potom přejděte do složky iot-hub\Quickstarts\back-end-application.
V libovolném textovém editoru otevřete soubor src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java.
iotHubConnectionString
Hodnotu proměnné nahraďte připojovacím řetězcem služby, který jste si poznamenali dříve. Pak uložte změny do BackEndApplication.java.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny a sestavte back-endovou aplikaci:
mvn clean package
Spuštěním následujících příkazů v okně místního terminálu spusťte back-endovou aplikaci:
java -jar target/back-end-application-1.0.0-with-deps.jar
Následující snímek obrazovky ukazuje výstup, když aplikace provede přímé volání metody do zařízení a obdrží potvrzení:
Po spuštění back-endové aplikace se v okně konzoly se simulovaným zařízením zobrazí zpráva a rychlost odesílání zpráv se změní:
V tomto rychlém startu se používají dvě aplikace Node.js:
- Aplikaci simulovaného zařízení, která odpovídá na přímé metody volané z back-endové aplikace. Aby bylo možné přijímat volání přímé metody, připojí se tato aplikace ke koncovému bodu centra IoT pro konkrétní zařízení.
- Back-endovou aplikaci, která na simulovaném zařízení volá přímé metody. Za účelem volání přímé metody na zařízení se tato aplikace připojí ke koncovému bodu specifickému pro službu ve službě IoT Hub.
Požadavky
Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.
-
Aktuální verzi Node.js na počítači používaném pro vývoj můžete ověřit pomocí následujícího příkazu:
node --version
Naklonujte nebo stáhněte ukázky Node.js Azure IoT z GitHubu.
Ujistěte se, že je v bráně firewall otevřený port 8883. Ukázka zařízení v tomto rychlém startu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být v některých podnikových a vzdělávacích síťových prostředích blokovaný. Další informace a způsoby, jak tento problém obejít, najdete v tématu Připojení k IoT Hub (MQTT).
Použijte prostředí Bash v Azure Cloud Shell. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shell.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Poznámka
Tento článek používá nejnovější verzi rozšíření Azure IoT s názvem azure-iot
. Starší verze se nazývá azure-cli-iot-ext
. Najednou byste měli mít nainstalovanou jenom jednu verzi. K ověření aktuálně nainstalovaných rozšíření můžete použít příkaz az extension list
.
Slouží az extension remove --name azure-cli-iot-ext
k odebrání starší verze rozšíření.
Použijte az extension add --name azure-iot
k přidání nové verze rozšíření.
Pokud chcete zjistit, jaká rozšíření máte nainstalovaná, použijte az extension list
.
Vytvoření centra IoT
V této části použijete Azure CLI k vytvoření centra IoT a skupiny prostředků. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Centrum IoT funguje jako centrální centrum zpráv pro obousměrnou komunikaci mezi aplikací IoT a zařízeními.
Pokud už ve svém předplatném Azure máte centrum IoT, můžete tuto část přeskočit.
Vytvoření centra IoT a skupiny prostředků:
Spusťte aplikaci CLI. Pokud chcete spustit příkazy rozhraní příkazového řádku ve zbývající části tohoto článku, zkopírujte syntaxi příkazu, vložte ji do aplikace CLI, upravte hodnoty proměnných a stiskněte
Enter
.- Pokud používáte Cloud Shell, vyberte tlačítko Vyzkoušet v příkazech rozhraní příkazového řádku a spusťte Cloud Shell v rozdělené okně prohlížeče. Nebo můžete Cloud Shell otevřít na samostatné kartě prohlížeče.
- Pokud používáte Azure CLI místně, spusťte konzolovou aplikaci rozhraní příkazového řádku a přihlaste se k Azure CLI.
Spuštěním příkazu az extension add nainstalujte nebo upgradujte rozšíření azure-iot na aktuální verzi.
az extension add --upgrade --name azure-iot
Spuštěním příkazu az group create v aplikaci CLI vytvořte skupinu prostředků. Následující příkaz vytvoří skupinu prostředků MyResourceGroup v umístění eastus .
Poznámka
Volitelně můžete nastavit jiné umístění. Pokud chcete zobrazit dostupná umístění, spusťte příkaz
az account list-locations
. V tomto rychlém startu se používá eastus , jak je znázorněno v příkladu příkazu.az group create --name MyResourceGroup --location eastus
Spuštěním příkazu az iot hub create vytvořte centrum IoT. Vytvoření centra IoT může trvat několik minut.
YourIotHubName. Tento zástupný symbol a okolní závorky nahraďte v následujícím příkazu pomocí názvu, který jste zvolili pro centrum IoT. Název centra IoT musí být v Azure globálně jedinečný. Název centra IoT použijte ve zbytku tohoto rychlého startu všude, kde se zobrazí zástupný symbol.
az iot hub create --resource-group MyResourceGroup --name {your_iot_hub_name}
Registrace zařízení
Zařízení musí být zaregistrované ve vašem centru IoT, aby se mohlo připojit. V této části použijete Azure CLI k vytvoření identity zařízení.
Pokud už máte zařízení zaregistrované ve službě IoT Hub, můžete tuto část přeskočit.
Vytvoření identity zařízení:
V prostředí rozhraní příkazového řádku spusťte příkaz az iot hub device-identity create . Tento příkaz vytvoří identitu zařízení.
your_iot_hub_name. Tento zástupný symbol nahraďte názvem, který jste zvolili pro centrum IoT.
myDevice. Tento název můžete použít pro ID zařízení v tomto článku nebo zadat jiný název zařízení.
az iot hub device-identity create --device-id myDevice --hub-name {your_iot_hub_name}
Spusťte příkaz az iot hub device-identity connection-string show .
az iot hub device-identity connection-string show --device-id myDevice --hub-name {your_iot_hub_name}
Výstup připojovacího řetězce je v následujícím formátu:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
Uložte připojovací řetězec do zabezpečeného umístění.
Poznámka
Nechte aplikaci rozhraní příkazového řádku otevřenou. Použijete ho v pozdějších krocích.
Načtení připojovacího řetězce služby
Potřebujete také připojovací řetězec služby ioT Hubu, aby se back-endová aplikace mohla připojit k vašemu centru IoT a načíst zprávy. Následující příkaz načte připojovací řetězec služby pro vaše centrum IoT:
YourIoTHubName: Nahraďte tento zástupný symbol názvem, který jste zvolili pro centrum IoT.
az iot hub connection-string show \
--policy-name service --hub-name {YourIoTHubName} --output table
Poznamenejte si připojovací řetězec služby, který vypadá nějak takto:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Tuto hodnotu použijete později v tomto rychlém startu. Tento připojovací řetězec služby se liší od připojovacího řetězce zařízení, který jste si poznamenali v předchozím kroku.
Simulace zařízení
Aplikace simulovaného zařízení se připojí ke koncovému bodu v centru IoT pro konkrétní zařízení, odešle simulovaná telemetrická data a z vašeho centra naslouchá voláním přímé metody. Volání přímé metody z centra v tomto rychlém startu nařídí zařízení, aby změnilo interval, ve kterém se odesílají telemetrická data. Simulované zařízení odešle potvrzení zpět do centra po spuštění přímé metody.
V okně místního terminálu a přejděte do kořenové složky ukázkového projektu Node.js. Potom přejděte do složky iot-hub\Quickstarts\simulated-device-2.
V libovolném textovém editoru otevřete soubor SimulatedDevice.js.
connectionString
Hodnotu proměnné nahraďte připojovacím řetězcem zařízení, který jste si poznamenali dříve. Pak uložte změny do SimulatedDevice.js.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny a spusťte aplikaci simulovaného zařízení:
npm install node SimulatedDevice.js
Následující snímek obrazovky ukazuje výstup, zatímco aplikace simulovaného zařízení odesílá telemetrická data do vašeho centra IoT:
Volání přímé metody
Back-endová aplikace se připojí ke koncovému bodu na straně služby ve vašem centru IoT. Aplikace provádí volání přímých metod do zařízení prostřednictvím centra IoT a naslouchá potvrzením. Back-endová aplikace služby IoT Hub se obvykle spouští v cloudu.
V jiném okně místního terminálu přejděte do kořenové složky ukázkového projektu Node.js. Potom přejděte do složky iot-hub\Quickstarts\back-end-application.
V libovolném textovém editoru otevřete soubor BackEndApplication.js.
Nahraďte hodnotu
connectionString
proměnné připojovacím řetězcem služby, který jste si poznamenali dříve. Potom uložte změny do BackEndApplication.js.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny a spusťte back-endovou aplikaci:
npm install node BackEndApplication.js
Následující snímek obrazovky ukazuje výstup, když aplikace provede volání přímé metody do zařízení a obdrží potvrzení:
Po spuštění back-endové aplikace se v okně konzoly se simulovaným zařízením zobrazí zpráva a rychlost odesílání zpráv se změní:
V tomto rychlém startu se používají dvě aplikace Pythonu:
- Aplikaci simulovaného zařízení, která odpovídá na přímé metody volané z back-endové aplikace.
- Back-endovou aplikaci, která na simulovaném zařízení volá přímé metody.
Požadavky
Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.
Python 3.7 nebo novější. Další podporované verze Pythonu najdete v tématu Funkce zařízení Azure IoT.
Naklonujte nebo stáhněte ukázky Azure IoT Pythonu z GitHubu.
Ujistěte se, že je v bráně firewall otevřený port 8883. Ukázka zařízení v tomto rychlém startu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být v některých podnikových a vzdělávacích síťových prostředích blokovaný. Další informace a způsoby, jak tento problém obejít, najdete v tématu Připojení k IoT Hub (MQTT).
Použijte prostředí Bash v Azure Cloud Shell. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shell.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Spuštění Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Poznámka
Tento článek používá nejnovější verzi rozšíření Azure IoT s názvem azure-iot
. Starší verze se nazývá azure-cli-iot-ext
. Současně byste měli mít nainstalovanou jenom jednu verzi. K ověření aktuálně nainstalovaných rozšíření můžete použít příkaz az extension list
.
Použijte az extension remove --name azure-cli-iot-ext
k odebrání starší verze rozšíření.
Použijte az extension add --name azure-iot
k přidání nové verze rozšíření.
Pokud chcete zjistit, jaká rozšíření máte nainstalovaná, použijte az extension list
.
Vytvoření centra IoT
V této části použijete Azure CLI k vytvoření centra IoT a skupiny prostředků. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Centrum IoT funguje jako centrum zpráv pro obousměrnou komunikaci mezi aplikací IoT a zařízeními.
Pokud už ve svém předplatném Azure máte centrum IoT, můžete tuto část přeskočit.
Vytvoření centra IoT a skupiny prostředků:
Spusťte aplikaci CLI. Pokud chcete spustit příkazy rozhraní příkazového řádku ve zbývající části tohoto článku, zkopírujte syntaxi příkazu, vložte ji do aplikace CLI, upravte hodnoty proměnných a stiskněte
Enter
.- Pokud používáte Cloud Shell, vyberte tlačítko Vyzkoušet v příkazech rozhraní příkazového řádku a spusťte Cloud Shell v rozděleném okně prohlížeče. Nebo můžete Cloud Shell otevřít na samostatné kartě prohlížeče.
- Pokud používáte Azure CLI místně, spusťte aplikaci konzoly CLI a přihlaste se k Azure CLI.
Spuštěním příkazu az extension add nainstalujte nebo upgradujte rozšíření azure-iot na aktuální verzi.
az extension add --upgrade --name azure-iot
Spuštěním příkazu az group create v aplikaci CLI vytvořte skupinu prostředků. Následující příkaz vytvoří skupinu prostředků MyResourceGroup v umístění eastus .
Poznámka
Volitelně můžete nastavit jiné umístění. Pokud chcete zobrazit dostupná umístění, spusťte příkaz
az account list-locations
. V tomto rychlém startu se používá eastus , jak je znázorněno v ukázkovém příkazu.az group create --name MyResourceGroup --location eastus
Spuštěním příkazu az iot hub create vytvořte centrum IoT. Vytvoření centra IoT hub může trvat několik minut.
YourIotHubName. V následujícím příkazu nahraďte tento zástupný symbol a okolní složené závorky názvem, který jste zvolili pro centrum IoT. Název centra IoT musí být v Azure globálně jedinečný. Ve zbývající části tohoto rychlého startu použijte název vašeho centra IoT všude, kde se zobrazí zástupný symbol.
az iot hub create --resource-group MyResourceGroup --name {your_iot_hub_name}
Registrace zařízení
Zařízení musí být zaregistrované ve vašem centru IoT, aby se mohlo připojit. V této části použijete Azure CLI k vytvoření identity zařízení.
Pokud už máte zařízení zaregistrované ve službě IoT Hub, můžete tuto část přeskočit.
Vytvoření identity zařízení:
V prostředí rozhraní příkazového řádku spusťte příkaz az iot hub device-identity create . Tento příkaz vytvoří identitu zařízení.
your_iot_hub_name. Nahraďte tento zástupný text názvem, který jste zvolili pro centrum IoT.
myDevice. Tento název můžete použít pro ID zařízení v tomto článku nebo zadat jiný název zařízení.
az iot hub device-identity create --device-id myDevice --hub-name {your_iot_hub_name}
Spusťte příkaz az iot hub device-identity connection-string show .
az iot hub device-identity connection-string show --device-id myDevice --hub-name {your_iot_hub_name}
Výstup připojovacího řetězce je v následujícím formátu:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
Uložte připojovací řetězec do zabezpečeného umístění.
Poznámka
Nechte aplikaci rozhraní příkazového řádku otevřenou. Použijete ho v pozdějších krocích.
Načtení připojovacího řetězce služby
Potřebujete také připojovací řetězec služby, který back-endové aplikaci umožní připojení k vašemu centru IoT a načtení zpráv. Následující příkaz načte připojovací řetězec služby pro vaše centrum IoT:
YourIoTHubName: Nahraďte tento zástupný text názvem, který zvolíte pro centrum IoT.
az iot hub connection-string show \
--policy-name service \
--hub-name {YourIoTHubName} \
--output table
Poznamenejte si připojovací řetězec služby, který vypadá nějak takto:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Tuto hodnotu použijete později v tomto rychlém startu. Tento připojovací řetězec služby se liší od připojovacího řetězce zařízení, který jste si poznamenali v předchozím kroku.
Simulace zařízení
Aplikace simulovaného zařízení se připojí ke koncovému bodu v centru IoT pro konkrétní zařízení, odešle simulovaná telemetrická data a z vašeho centra naslouchá voláním přímé metody. Volání přímé metody z centra v tomto rychlém startu nařídí zařízení, aby změnilo interval, ve kterém se odesílají telemetrická data. Simulované zařízení odešle potvrzení zpět do vašeho centra poté, co spustí přímou metodu.
V okně místního terminálu přejděte do kořenové složky ukázkového projektu Python. Potom přejděte do složky iot-hub\Quickstarts\simulated-device-2.
Otevřete soubor SimulatedDeviceSync.py v libovolném textovém editoru.
Nahraďte hodnotu
CONNECTION_STRING
proměnné připojovacím řetězcem zařízení, který jste si poznamenali dříve. Potom změny uložte do SimulatedDeviceSync.py.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny pro aplikaci simulovaného zařízení:
pip install azure-iot-device
Spuštěním následujících příkazů v okně místního terminálu spusťte aplikaci simulovaného zařízení:
python SimulatedDeviceSync.py
Následující snímek obrazovky ukazuje výstup, zatímco aplikace simulovaného zařízení odesílá telemetrická data do vašeho centra IoT:
Volání přímé metody
Back-endová aplikace se připojí ke koncovému bodu vašeho centra IoT na straně služby. Aplikace provádí volání přímých metod do zařízení prostřednictvím centra IoT a naslouchá potvrzením. Back-endová aplikace služby IoT Hub se obvykle spouští v cloudu.
V jiném okně místního terminálu přejděte do kořenové složky ukázkového projektu Python. Potom přejděte do složky iot-hub\Quickstarts\back-end-application.
V libovolném textovém editoru otevřete soubor BackEndApplication.py.
Nahraďte hodnotu
CONNECTION_STRING
proměnné připojovacím řetězcem služby, který jste si poznamenali dříve. Potom uložte změny do BackEndApplication.py.V okně místního terminálu pomocí následujících příkazů nainstalujte požadované knihovny pro aplikaci simulovaného zařízení:
pip install azure-iot-hub
Spuštěním následujících příkazů v okně místního terminálu spusťte back-endovou aplikaci:
python BackEndApplication.py
Následující snímek obrazovky ukazuje výstup, když aplikace provede volání přímé metody do zařízení a obdrží potvrzení:
Po spuštění back-endové aplikace se v okně konzoly se simulovaným zařízením zobrazí zpráva a rychlost odesílání zpráv se změní:
Vyčištění prostředků
Pokud budete pokračovat k dalšímu doporučenému článku, můžete již vytvořené prostředky zachovat a znovu je použít.
Jinak můžete prostředky Azure vytvořené v tomto článku odstranit a vyhnout se tak poplatkům.
Důležité
Odstranění skupiny prostředků je nevratné. Skupina prostředků i všechny prostředky v ní obsažené se trvale odstraní. Ujistěte se, že nechtěně neodstraníte nesprávnou skupinu prostředků nebo prostředky. Pokud jste službu IoT Hub vytvořili uvnitř existující skupiny prostředků obsahující prostředky, které chcete zachovat, odstraňte místo skupiny prostředků pouze samotný prostředek služby IoT.
Odstranění skupiny prostředků podle názvu:
Přihlaste se k webu Azure Portal a potom vyberte Skupiny prostředků.
Do textového pole Filtrovat podle názvu zadejte název skupiny prostředků obsahující IoT Hub.
Napravo od vaší skupiny prostředků v seznamu výsledků vyberte ... a pak Odstranit skupinu prostředků.
Zobrazí se výzva k potvrzení odstranění skupiny prostředků. Znovu zadejte název skupiny prostředků, abyste to potvrdili, a pak vyberte Odstranit. Po chvíli bude skupina prostředků včetně všech obsažených prostředků odstraněná.
Další kroky
V tomto rychlém startu jste volali přímou metodu na zařízení z aplikace služby a odpověděli jste na volání přímé metody v aplikaci simulovaného zařízení.
Informace o tom, jak směrovat zprávy typu zařízení-cloud do různých cílů v cloudu, najdete v dalším kurzu.