Megosztás a következőn keresztül:


Rövid útmutató: IoT Hubhoz csatlakoztatott eszköz vezérlése

Ebben a rövid útmutatóban egy közvetlen módszerrel vezérelheti az IoT Hubhoz csatlakoztatott szimulált eszközt. Az IoT Hub egy Azure-szolgáltatás, amely lehetővé teszi az IoT-eszközök felügyeletét a felhőből, és nagy mennyiségű eszköztelemetria betöltését a felhőbe tárolás vagy feldolgozás céljából. Közvetlen módszerekkel távolról módosíthatja az IoT Hubhoz csatlakoztatott eszközök viselkedését.

A gyorskezdés két előre írt .NET-alkalmazást használ:

  • Egy szimulált eszközalkalmazás, amely egy szolgáltatásalkalmazásból hívott közvetlen metódusokra válaszol. A közvetlen metódushívások fogadásához ez az alkalmazás egy eszközspecifikus végponthoz csatlakozik az IoT Hubon.

  • Egy szolgáltatásalkalmazás, amely meghívja a közvetlen metódusokat a szimulált eszközön. Ha közvetlen metódust szeretne meghívni egy eszközön, ez az alkalmazás az IoT Hub szolgáltatásoldali végpontjához csatlakozik.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Hozzon létre egyet ingyen.

  • Az ebben a rövid útmutatóban futtatott két mintaalkalmazás a C# használatával van megírva. A fejlesztői gépen a .NET SDK 6.0-s vagy újabb verziójára van szüksége.

    A .NET Core SDK-t többféle platformra a .NET oldaláról töltheti le.

    A C# aktuális verzióját a következő paranccsal ellenőrizheti a fejlesztői gépen:

    dotnet --version
    
  • Klónozza vagy töltse le a .NET-hez készült Microsoft Azure IoT SDK-t a GitHubról. A rövid útmutatóban használt mintaalkalmazásokat az SDK tartalmazza.

  • Győződjön meg arról, hogy a 8883-as port nyitva van a tűzfalon. A rövid útmutatóban szereplő eszközminta MQTT protokollt használ, amely a 8883-es porton keresztül kommunikál. Ez a port néhány vállalati és oktatási hálózati környezetben blokkolva lehet. A probléma megoldásával kapcsolatos további információkért és módszerekért tekintse meg az MQTT protokollt használó IoT Hub-kommunikáció IoTHubhoz való csatlakozás című szakaszát.

Megjegyzés

Ez a cikk az Azure IoT-bővítmény legújabb, azure-iotnevű verzióját használja. Az örökölt verzió neve azure-cli-iot-ext. Egyszerre csak egy verziót kell telepítenie. A jelenleg telepített bővítmények ellenőrzéséhez használhatja a az extension list parancsot.

A bővítmény régi verziójának eltávolításához használja a az extension remove --name azure-cli-iot-ext.

A bővítmény új verziójának hozzáadásához használja a az extension add --name azure-iot.

A jelenleg telepített bővítmények megtekintéséhez használja a következőt az extension list: .

Ebben a szakaszban az Azure CLI használatával hozhat létre egy IoT Hubot és egy erőforráscsoportot. Az Azure-erőforráscsoport egy logikai tároló, amelyben az Azure-erőforrások üzembe helyezése és felügyelete történik. Az IoT Hub központi üzenetközpontként szolgál az IoT-alkalmazás és az eszközök közötti kétirányú kommunikációhoz.

Ha már rendelkezik IoT Hubbal az Azure-előfizetésében, kihagyhatja ezt a szakaszt.

IoT Hub és erőforráscsoport létrehozása:

  1. Indítsa el a CLI-alkalmazást. A parancssori felület parancsainak a cikk további részében való futtatásához másolja ki a parancs szintaxisát, illessze be a parancssori felület alkalmazásába, szerkessze a változóértékeket, és nyomja le Entera billentyűt.

    • Ha Cloud Shellt használ, kattintson a CLI-parancsok Kipróbálás gombjára a Cloud Shell felosztott böngészőablakban való elindításához. Vagy megnyithatja a Cloud Shellt egy külön böngészőlapon.
    • Ha helyileg használja az Azure CLI-t, indítsa el a CLI-konzolalkalmazást, és jelentkezzen be az Azure CLI-be.
  2. Futtassa az az extension add parancsot az azure-iot bővítmény telepítéséhez vagy frissítéséhez az aktuális verzióra.

    az extension add --upgrade --name azure-iot
    
  3. A CLI-alkalmazásban futtassa az az group create parancsot egy erőforráscsoport létrehozásához. Az alábbi parancs létrehoz egy MyResourceGroup nevű erőforráscsoportot az eastus helyen.

    Megjegyzés

    Igény szerint másik helyet is beállíthat. Az elérhető helyek megtekintéséhez futtassa a következőt az account list-locations: . Ez a gyorsindítás az eastus helyet használja, ahogyan az a példaparancsban látható.

    az group create --name MyResourceGroup --location eastus
    
  4. Futtassa az az iot hub create parancsot egy IoT Hub létrehozásához. Az IoT Hub létrehozása eltarthat néhány percig.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban. Használja az IoT Hub-ja nevét a rövid útmutató további részében, ahol helyőrzőt lát.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

A szolgáltatás kapcsolati sztringjének lekérése

Az IoT Hub szolgáltatáskapcsolati sztringjére is szüksége van ahhoz, hogy a szolgáltatásalkalmazás csatlakozzon a központhoz, és lekérje az üzeneteket. A szolgáltatáskapcsolati sztring az IoT Hub egészéhez tartozik, és eltér az előző szakaszban lekért eszközkapcsolati sztringtől.

A következő parancs lekéri az IoT Hub szolgáltatáskapcsolati sztringét:

az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table

Jegyezze fel a szolgáltatáskapcsolati sztringet, amely a következőképpen néz ki:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

Ezt az értéket a gyorsindítás későbbi részében fogja használni.

Eszköz szimulálása

A szimulált eszközalkalmazás csatlakozik egy eszközspecifikus végponthoz az IoT Hubon, szimulált telemetriát küld, és figyeli a központból érkező közvetlen metódushívásokat. Ebben a rövid útmutatóban a központ közvetlen metódushívása arra utasítja az eszközt, hogy módosítsa az időközt, amikor telemetriát küld. A szimulált eszköz a közvetlen metódus végrehajtása után visszaigazolást küld a központnak.

  1. Egy helyi terminálablakban keresse meg az SDK gyökérmappáját. Ezután keresse meg az iothub\device\samples\getting started\SimulatedDeviceWithCommand mappát.

  2. Futtassa a következő parancsot a szimulált eszközalkalmazáshoz szükséges csomagok telepítéséhez:

    dotnet restore
    
  3. Futtassa a következő parancsot a szimulált eszközalkalmazás létrehozásához és futtatásához.

    {DeviceConnectionString}: Cserélje le ezt a helyőrzőt a korábban feljegyzett eszközkapcsolati karakterláncra.

    dotnet run -- -c "{DeviceConnectionString}"
    

    A következő képernyőképen az a kimenet látható, amikor a szimulálteszköz-alkalmazás telemetriát küld az IoT Hubnak:

    A szimulált eszközalkalmazás kimenetét megjelenítő terminálablak képernyőképe.

A közvetlen metódus meghívása

A szolgáltatásalkalmazás egy szolgáltatásoldali végponthoz csatlakozik az IoT Hubon. Az alkalmazás közvetlen metódushívásokat indít egy eszközre az IoT Hubon keresztül, és figyeli a nyugtázásokat. Az IoT Hub szolgáltatásalkalmazások általában a felhőben futnak.

  1. Egy másik helyi terminálablakban keresse meg az SDK gyökérmappáját. Ezután keresse meg az iothub\service\samples\getting started\InvokeDeviceMethod mappát.

  2. A helyi terminálablakban futtassa a következő parancsokat a szolgáltatásalkalmazáshoz szükséges kódtárak telepítéséhez:

    dotnet build
    
  3. A helyi terminálablakban futtassa az alábbi parancsokat a szolgáltatásalkalmazás létrehozásához és futtatásához.

    {ServiceConnectionString}: Cserélje le ezt a helyőrzőt a korábban feljegyzett IoT Hub szolgáltatáskapcsolati sztringre.

    {DeviceName}: Cserélje le ezt a helyőrzőt a regisztrált eszköz nevére.

    dotnet run -- -c "{ServiceConnectionString}" -d {DeviceName}
    

    Az alábbi képernyőképen a kimenet látható, amikor az alkalmazás közvetlen metódushívást indít az eszközre, és nyugtát kap:

    Képernyőkép egy terminálablakról, amely a szolgáltatásalkalmazásból érkező közvetlen metódushívás eredményét jeleníti meg.

    A szolgáltatásalkalmazás futtatása után megjelenik egy üzenet a szimulált eszközt futtató helyi terminálablakban, és az üzenetek küldésének sebessége megváltozik:

    Képernyőkép egy terminálablakról, amely megjeleníti a közvetlen üzenet eredményét és a szimulált eszközalkalmazás frissített kimenetét.

Ez a rövid útmutató két Java-alkalmazást használ:

  • Egy szimulált eszközalkalmazás, amely egy háttéralkalmazásból hívott közvetlen metódusokra válaszol.
  • Egy szolgáltatásalkalmazás, amely meghívja a közvetlen metódust a szimulált eszközön.

Előfeltételek

Megjegyzés

Ez a cikk az Azure IoT-bővítmény legújabb, azure-iotnevű verzióját használja. Az örökölt verzió neve azure-cli-iot-ext. Egyszerre csak egy verziót kell telepítenie. A jelenleg telepített bővítmények ellenőrzéséhez használhatja a az extension list parancsot.

A bővítmény régi verziójának eltávolításához használja a az extension remove --name azure-cli-iot-ext.

A bővítmény új verziójának hozzáadásához használja a az extension add --name azure-iot.

A jelenleg telepített bővítmények megtekintéséhez használja a következőt az extension list: .

IoT Hub létrehozása

Ebben a szakaszban az Azure CLI használatával hozhat létre egy IoT Hubot és egy erőforráscsoportot. Az Azure-erőforráscsoport egy logikai tároló, amelyben az Azure-erőforrások üzembe helyezése és felügyelete történik. Az IoT Hub központi üzenetközpontként szolgál az IoT-alkalmazás és az eszközök közötti kétirányú kommunikációhoz.

Ha már rendelkezik IoT Hubbal az Azure-előfizetésében, kihagyhatja ezt a szakaszt.

IoT Hub és erőforráscsoport létrehozása:

  1. Indítsa el a CLI-alkalmazást. A parancssori felület parancsainak a cikk további részében való futtatásához másolja ki a parancs szintaxisát, illessze be a parancssori felület alkalmazásába, szerkessze a változóértékeket, és nyomja le Entera billentyűt.

    • Ha Cloud Shellt használ, kattintson a CLI-parancsok Kipróbálás gombjára a Cloud Shell felosztott böngészőablakban való elindításához. Vagy megnyithatja a Cloud Shellt egy külön böngészőlapon.
    • Ha helyileg használja az Azure CLI-t, indítsa el a CLI-konzolalkalmazást, és jelentkezzen be az Azure CLI-be.
  2. Futtassa az az extension add parancsot az azure-iot bővítmény telepítéséhez vagy frissítéséhez az aktuális verzióra.

    az extension add --upgrade --name azure-iot
    
  3. A CLI-alkalmazásban futtassa az az group create parancsot egy erőforráscsoport létrehozásához. Az alábbi parancs létrehoz egy MyResourceGroup nevű erőforráscsoportot az eastus helyen.

    Megjegyzés

    Igény szerint másik helyet is beállíthat. Az elérhető helyek megtekintéséhez futtassa a következőt az account list-locations: . Ez a gyorsindítás az eastus helyet használja, ahogyan az a példaparancsban látható.

    az group create --name MyResourceGroup --location eastus
    
  4. Futtassa az az iot hub create parancsot egy IoT Hub létrehozásához. Az IoT Hub létrehozása eltarthat néhány percig.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban. Használja az IoT Hub-ja nevét a rövid útmutató további részében, ahol helyőrzőt lát.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

Eszköz regisztrálása

Az eszköznek regisztrálva kell lennie az IoT Hubbal, hogy csatlakozhasson hozzá. Ebben a szakaszban az Azure CLI használatával hozhat létre egy eszközidentitást.

Ha már regisztrált egy eszközt az IoT Hubon, kihagyhatja ezt a szakaszt.

Eszközidentitás létrehozása:

  1. Futtassa az az iot hub device-identity create parancsot a CLI héjában. Ez a parancs létrehozza az eszközidentitást.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban.

    myDevice. Ezt a nevet az eszközazonosítóhoz használhatja ebben a cikkben, vagy megadhat egy másik eszköznevet.

    az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}
    
  2. Az az iot hub device-identity connection-string show parancs futtatása.

    az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}
    

    A kapcsolati sztring kimenete a következő formátumban van:

    HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
    
  3. Mentse a kapcsolati sztring biztonságos helyre.

Megjegyzés

Hagyja nyitva a CLI-alkalmazást. Ezt a későbbi lépésekben használhatja.

A szolgáltatás kapcsolati sztringjének lekérése

Szüksége van egy szolgáltatáskapcsolati sztringre is, amely lehetővé teszi, hogy a háttéralkalmazás csatlakozzon az IoT Hubhoz, és lekérje az üzeneteket. A következő parancs lekéri az IoT Hub szolgáltatáskapcsolati sztringét:

YourIoTHubName: Cserélje le ezt a helyőrzőt a következő parancsban az IoT Hubhoz választott névre.

az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table

Jegyezze fel a szolgáltatáskapcsolati sztringet, amely a következőképpen néz ki:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

Ezt az értéket a gyorsindítás későbbi részében fogja használni. Ez a szolgáltatáskapcsolati sztring eltér az előző lépésben feljegyzett eszközkapcsolati sztringtől.

Eszköz szimulálása

A szimulált eszközalkalmazás csatlakozik egy eszközspecifikus végponthoz az IoT Hubon, szimulált telemetriát küld, és figyeli a központból érkező közvetlen metódushívásokat. Ebben a rövid útmutatóban a központ közvetlen metódushívása arra utasítja az eszközt, hogy módosítsa az időközt, amikor telemetriát küld. A szimulált eszköz a közvetlen metódus végrehajtása után visszaigazolást küld a központnak.

  1. Egy helyi terminálablakban keresse meg a Java-mintaprojekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\simulated-device-2 mappát.

  2. Nyissa meg az src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a connString változó értékét a korábban jegyzett eszközkapcsolati sztringre. Ezután mentse a módosításokat a SimulatedDevice.java.

  3. A helyi terminálablakban futtassa a következő parancsokat a szükséges kódtárak telepítéséhez és a szimulált eszközalkalmazás létrehozásához:

    mvn clean package
    
  4. A helyi terminálablakban futtassa a következő parancsokat a szimulált eszközalkalmazás futtatásához:

    java -jar target/simulated-device-2-1.0.0-with-deps.jar
    

    A következő képernyőképen az a kimenet látható, amikor a szimulálteszköz-alkalmazás telemetriát küld az IoT Hubnak:

    A szimulált eszközalkalmazás kimenetét megjelenítő terminálablak képernyőképe.

A közvetlen metódus meghívása

A háttéralkalmazás egy szolgáltatásoldali végponthoz csatlakozik az IoT Hubon. Az alkalmazás közvetlen metódushívásokat indít egy eszközre az IoT Hubon keresztül, és figyeli a nyugtázásokat. Az IoT Hub háttéralkalmazásai általában a felhőben futnak.

  1. Egy másik helyi terminálablakban keresse meg a Java-mintaprojekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\back-end-application mappát.

  2. Nyissa meg az src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a iotHubConnectionString változó értékét a korábban feljegyzett szolgáltatáskapcsolati sztringre. Ezután mentse a módosításokat a BackEndApplication.java.

  3. A helyi terminálablakban futtassa a következő parancsokat a szükséges kódtárak telepítéséhez és a háttéralkalmazás létrehozásához:

    mvn clean package
    
  4. A helyi terminálablakban futtassa a következő parancsokat a háttéralkalmazás futtatásához:

    java -jar target/back-end-application-1.0.0-with-deps.jar
    

    Az alábbi képernyőképen a kimenet látható, amikor az alkalmazás közvetlen metódushívást indít az eszközre, és nyugtát kap:

    Képernyőkép egy terminálablakról, amely a szolgáltatásalkalmazásból érkező közvetlen metódushívás eredményét jeleníti meg.

    A háttéralkalmazás futtatása után megjelenik egy üzenet a szimulált eszközt futtató helyi terminálablakban, és az üzenetek küldésének sebessége megváltozik:

    Képernyőkép egy terminálablakról, amely megjeleníti a közvetlen üzenet eredményét és a szimulált eszközalkalmazás frissített kimenetét.

Ez a rövid útmutató két Node.js alkalmazást használ:

  • Egy szimulált eszközalkalmazás, amely egy háttéralkalmazásból hívott közvetlen metódusokra válaszol. A közvetlen metódushívások fogadásához ez az alkalmazás egy eszközspecifikus végponthoz csatlakozik az IoT Hubon.
  • Egy háttéralkalmazás, amely a szimulált eszközön a közvetlen metódusokat hívja meg. Ha közvetlen metódust szeretne meghívni egy eszközön, ez az alkalmazás egy szolgáltatásspecifikus végponthoz csatlakozik az IoT Hubon.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Hozzon létre egyet ingyen.

  • Node.js 12+.

    A Node.js aktuális verzióját a következő paranccsal ellenőrizheti a fejlesztői gépen:

    node --version
    
  • Klónozza vagy töltse le az Azure IoT-Node.js-mintákat a GitHubról.

  • Győződjön meg arról, hogy a 8883-as port nyitva van a tűzfalon. A rövid útmutatóban szereplő eszközminta MQTT protokollt használ, amely a 8883-es porton keresztül kommunikál. Ez a port néhány vállalati és oktatási hálózati környezetben blokkolva lehet. A probléma megoldásával kapcsolatos további információkért és módszerekért tekintse meg az MQTT protokollt használó IoT Hub-kommunikáció IoTHubhoz való csatlakozás című szakaszát.

Megjegyzés

Ez a cikk az Azure IoT-bővítmény legújabb, azure-iotnevű verzióját használja. Az örökölt verzió neve azure-cli-iot-ext. Egyszerre csak egy verziót kell telepítenie. A jelenleg telepített bővítmények ellenőrzéséhez használhatja a az extension list parancsot.

A bővítmény régi verziójának eltávolításához használja a az extension remove --name azure-cli-iot-ext.

A bővítmény új verziójának hozzáadásához használja a az extension add --name azure-iot.

A jelenleg telepített bővítmények megtekintéséhez használja a következőt az extension list: .

IoT Hub létrehozása

Ebben a szakaszban az Azure CLI használatával hozhat létre egy IoT Hubot és egy erőforráscsoportot. Az Azure-erőforráscsoport egy logikai tároló, amelyben az Azure-erőforrások üzembe helyezése és felügyelete történik. Az IoT Hub központi üzenetközpontként szolgál az IoT-alkalmazás és az eszközök közötti kétirányú kommunikációhoz.

Ha már rendelkezik IoT Hubbal az Azure-előfizetésében, kihagyhatja ezt a szakaszt.

IoT Hub és erőforráscsoport létrehozása:

  1. Indítsa el a CLI-alkalmazást. A parancssori felület parancsainak a cikk további részében való futtatásához másolja ki a parancs szintaxisát, illessze be a parancssori felület alkalmazásába, szerkessze a változóértékeket, és nyomja le Entera billentyűt.

    • Ha Cloud Shellt használ, kattintson a CLI-parancsok Kipróbálás gombjára a Cloud Shell felosztott böngészőablakban való elindításához. Vagy megnyithatja a Cloud Shellt egy külön böngészőlapon.
    • Ha helyileg használja az Azure CLI-t, indítsa el a CLI-konzolalkalmazást, és jelentkezzen be az Azure CLI-be.
  2. Futtassa az az extension add parancsot az azure-iot bővítmény telepítéséhez vagy frissítéséhez az aktuális verzióra.

    az extension add --upgrade --name azure-iot
    
  3. A CLI-alkalmazásban futtassa az az group create parancsot egy erőforráscsoport létrehozásához. Az alábbi parancs létrehoz egy MyResourceGroup nevű erőforráscsoportot az eastus helyen.

    Megjegyzés

    Igény szerint másik helyet is beállíthat. Az elérhető helyek megtekintéséhez futtassa a következőt az account list-locations: . Ez a gyorsindítás az eastus helyet használja, ahogyan az a példaparancsban látható.

    az group create --name MyResourceGroup --location eastus
    
  4. Futtassa az az iot hub create parancsot egy IoT Hub létrehozásához. Az IoT Hub létrehozása eltarthat néhány percig.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban. Használja az IoT Hub-ja nevét a rövid útmutató további részében, ahol helyőrzőt lát.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

Eszköz regisztrálása

Az eszköznek regisztrálva kell lennie az IoT Hubbal, hogy csatlakozhasson hozzá. Ebben a szakaszban az Azure CLI használatával hozhat létre egy eszközidentitást.

Ha már regisztrált egy eszközt az IoT Hubon, kihagyhatja ezt a szakaszt.

Eszközidentitás létrehozása:

  1. Futtassa az az iot hub device-identity create parancsot a CLI héjában. Ez a parancs létrehozza az eszközidentitást.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban.

    myDevice. Ezt a nevet az eszközazonosítóhoz használhatja ebben a cikkben, vagy megadhat egy másik eszköznevet.

    az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}
    
  2. Az az iot hub device-identity connection-string show parancs futtatása.

    az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}
    

    A kapcsolati sztring kimenete a következő formátumban van:

    HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
    
  3. Mentse a kapcsolati sztring biztonságos helyre.

Megjegyzés

Hagyja nyitva a CLI-alkalmazást. Ezt a későbbi lépésekben használhatja.

A szolgáltatás kapcsolati sztringjének lekérése

Az IoT Hub szolgáltatáskapcsolati sztringjére is szüksége van ahhoz, hogy a háttéralkalmazás csatlakozzon az IoT Hubhoz, és lekérje az üzeneteket. A következő parancs lekéri az IoT Hub szolgáltatáskapcsolati sztringét:

YourIoTHubName: Cserélje le ezt a helyőrzőt a következő parancsban az IoT Hubhoz választott névre.

az iot hub connection-string show \
  --policy-name service --hub-name {YourIoTHubName} --output table

Jegyezze fel a szolgáltatáskapcsolati sztringet, amely a következőképpen néz ki:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

Ezt az értéket a gyorsindítás későbbi részében fogja használni. Ez a szolgáltatáskapcsolati sztring eltér az előző lépésben feljegyzett eszközkapcsolati sztringtől.

Eszköz szimulálása

A szimulált eszközalkalmazás csatlakozik egy eszközspecifikus végponthoz az IoT Hubon, szimulált telemetriát küld, és figyeli a központból érkező közvetlen metódushívásokat. Ebben a rövid útmutatóban a központ közvetlen metódushívása arra utasítja az eszközt, hogy módosítsa az időközt, amikor telemetriát küld. A szimulált eszköz a közvetlen metódus végrehajtása után visszaigazolást küld a központnak.

  1. Egy helyi terminálablakban keresse meg a minta Node.js projekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\simulated-device-2 mappát.

  2. Nyissa meg a SimulatedDevice.js fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a connectionString változó értékét a korábban jegyzett eszközkapcsolati sztringre. Ezután mentse a módosításokat aSimulatedDevice.js.

  3. A helyi terminálablakban futtassa a következő parancsokat a szükséges kódtárak telepítéséhez és a szimulált eszközalkalmazás futtatásához:

    npm install
    node SimulatedDevice.js
    

    A következő képernyőképen az a kimenet látható, amikor a szimulálteszköz-alkalmazás telemetriát küld az IoT Hubnak:

    A szimulált eszközalkalmazás kimenetét megjelenítő terminálablak képernyőképe.

A közvetlen metódus meghívása

A háttéralkalmazás egy szolgáltatásoldali végponthoz csatlakozik az IoT Hubon. Az alkalmazás közvetlen metódushívásokat indít egy eszközre az IoT Hubon keresztül, és figyeli a nyugtázásokat. Az IoT Hub háttéralkalmazásai általában a felhőben futnak.

  1. Egy másik helyi terminálablakban keresse meg a minta Node.js projekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\back-end-application mappát.

  2. Nyissa meg a BackEndApplication.js fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a connectionString változó értékét a korábban feljegyzett szolgáltatáskapcsolati sztringre. Ezután mentse el a módosításokat a BackEndApplication.js-ba.

  3. A helyi terminálablakban futtassa a következő parancsokat a szükséges kódtárak telepítéséhez és a háttéralkalmazás futtatásához:

    npm install
    node BackEndApplication.js
    

    Az alábbi képernyőképen a kimenet látható, amikor az alkalmazás közvetlen metódushívást indít az eszközre, és nyugtát kap:

    Képernyőkép egy terminálablakról, amely a szolgáltatásalkalmazásból érkező közvetlen metódushívás eredményét jeleníti meg.

    A háttéralkalmazás futtatása után megjelenik egy üzenet a szimulált eszközt futtató helyi terminálablakban, és az üzenetek küldésének sebessége megváltozik:

    Képernyőkép egy terminálablakról, amely megjeleníti a közvetlen üzenet eredményét és a szimulált eszközalkalmazás frissített kimenetét.

Ez a rövid útmutató két Python-alkalmazást használ:

  • Egy szimulált eszközalkalmazás, amely egy háttéralkalmazásból hívott közvetlen metódusokra válaszol.
  • Egy háttéralkalmazás, amely a szimulált eszközön a közvetlen metódusokat hívja meg.

Előfeltételek

Megjegyzés

Ez a cikk az Azure IoT-bővítmény legújabb, azure-iotnevű verzióját használja. Az örökölt verzió neve azure-cli-iot-ext. Egyszerre csak egy verziót kell telepítenie. A jelenleg telepített bővítmények ellenőrzéséhez használhatja a az extension list parancsot.

A bővítmény régi verziójának eltávolításához használja a az extension remove --name azure-cli-iot-ext.

A bővítmény új verziójának hozzáadásához használja a az extension add --name azure-iot.

A jelenleg telepített bővítmények megtekintéséhez használja a következőt az extension list: .

IoT Hub létrehozása

Ebben a szakaszban az Azure CLI használatával hozhat létre egy IoT Hubot és egy erőforráscsoportot. Az Azure-erőforráscsoport egy logikai tároló, amelyben az Azure-erőforrások üzembe helyezése és felügyelete történik. Az IoT Hub központi üzenetközpontként szolgál az IoT-alkalmazás és az eszközök közötti kétirányú kommunikációhoz.

Ha már rendelkezik IoT Hubbal az Azure-előfizetésében, kihagyhatja ezt a szakaszt.

IoT Hub és erőforráscsoport létrehozása:

  1. Indítsa el a CLI-alkalmazást. A parancssori felület parancsainak a cikk további részében való futtatásához másolja ki a parancs szintaxisát, illessze be a parancssori felület alkalmazásába, szerkessze a változóértékeket, és nyomja le Entera billentyűt.

    • Ha Cloud Shellt használ, kattintson a CLI-parancsok Kipróbálás gombjára a Cloud Shell felosztott böngészőablakban való elindításához. Vagy megnyithatja a Cloud Shellt egy külön böngészőlapon.
    • Ha helyileg használja az Azure CLI-t, indítsa el a CLI-konzolalkalmazást, és jelentkezzen be az Azure CLI-be.
  2. Futtassa az az extension add parancsot az azure-iot bővítmény telepítéséhez vagy frissítéséhez az aktuális verzióra.

    az extension add --upgrade --name azure-iot
    
  3. A CLI-alkalmazásban futtassa az az group create parancsot egy erőforráscsoport létrehozásához. Az alábbi parancs létrehoz egy MyResourceGroup nevű erőforráscsoportot az eastus helyen.

    Megjegyzés

    Igény szerint másik helyet is beállíthat. Az elérhető helyek megtekintéséhez futtassa a következőt az account list-locations: . Ez a gyorsindítás az eastus helyet használja, ahogyan az a példaparancsban látható.

    az group create --name MyResourceGroup --location eastus
    
  4. Futtassa az az iot hub create parancsot egy IoT Hub létrehozásához. Az IoT Hub létrehozása eltarthat néhány percig.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban. Használja az IoT Hub-ja nevét a rövid útmutató további részében, ahol helyőrzőt lát.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

Eszköz regisztrálása

Az eszköznek regisztrálva kell lennie az IoT Hubbal, hogy csatlakozhasson hozzá. Ebben a szakaszban az Azure CLI használatával hozhat létre egy eszközidentitást.

Ha már regisztrált egy eszközt az IoT Hubon, kihagyhatja ezt a szakaszt.

Eszközidentitás létrehozása:

  1. Futtassa az az iot hub device-identity create parancsot a CLI héjában. Ez a parancs létrehozza az eszközidentitást.

    YourIoTHubName. Cserélje le a következő parancsban ezt a helyőrzőt és a körülötte lévő zárójeleket az IoT hubhoz választott névvel. Az IoT Hub nevének globálisan egyedinek kell lennie az Azure-ban.

    myDevice. Ezt a nevet az eszközazonosítóhoz használhatja ebben a cikkben, vagy megadhat egy másik eszköznevet.

    az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}
    
  2. Az az iot hub device-identity connection-string show parancs futtatása.

    az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}
    

    A kapcsolati sztring kimenete a következő formátumban van:

    HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>
    
  3. Mentse a kapcsolati sztring biztonságos helyre.

Megjegyzés

Hagyja nyitva a CLI-alkalmazást. Ezt a későbbi lépésekben használhatja.

A szolgáltatás kapcsolati sztringjének lekérése

Szüksége van egy szolgáltatáskapcsolati sztringre is, amely lehetővé teszi, hogy a háttéralkalmazás csatlakozzon az IoT Hubhoz, és lekérje az üzeneteket. A következő parancs lekéri az IoT Hub szolgáltatáskapcsolati sztringét:

YourIoTHubName: Cserélje le ezt a helyőrzőt a következő parancsban az IoT Hubhoz választott névre.

az iot hub connection-string show \
  --policy-name service \
  --hub-name {YourIoTHubName} \
  --output table

Jegyezze fel a szolgáltatáskapcsolati sztringet, amely a következőképpen néz ki:

HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}

Ezt az értéket a gyorsindítás későbbi részében fogja használni. Ez a szolgáltatáskapcsolati sztring eltér az előző lépésben feljegyzett eszközkapcsolati sztringtől.

Eszköz szimulálása

A szimulált eszközalkalmazás csatlakozik egy eszközspecifikus végponthoz az IoT Hubon, szimulált telemetriát küld, és figyeli a központból érkező közvetlen metódushívásokat. Ebben a rövid útmutatóban a központ közvetlen metódushívása arra utasítja az eszközt, hogy módosítsa az időközt, amikor telemetriát küld. A szimulált eszköz a közvetlen metódus végrehajtása után visszaigazolást küld a központnak.

  1. Egy helyi terminálablakban keresse meg a Python-mintaprojekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\simulated-device-2 mappát.

  2. Nyissa meg a SimulatedDeviceSync.py fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a CONNECTION_STRING változó értékét a korábban jegyzett eszközkapcsolati sztringre. Ezután mentse a módosításokat a SimulatedDeviceSync.py.

  3. A helyi terminálablakban futtassa a következő parancsokat a szimulált eszközalkalmazáshoz szükséges kódtárak telepítéséhez:

    pip install azure-iot-device
    
  4. A helyi terminálablakban futtassa a következő parancsokat a szimulált eszközalkalmazás futtatásához:

    python SimulatedDeviceSync.py
    

    A következő képernyőképen az a kimenet látható, amikor a szimulálteszköz-alkalmazás telemetriát küld az IoT Hubnak:

    A szimulált eszközalkalmazás kimenetét megjelenítő terminálablak képernyőképe.

A közvetlen metódus meghívása

A háttéralkalmazás egy szolgáltatásoldali végponthoz csatlakozik az IoT Hubon. Az alkalmazás közvetlen metódushívásokat indít egy eszközre az IoT Hubon keresztül, és figyeli a nyugtázásokat. Az IoT Hub háttéralkalmazásai általában a felhőben futnak.

  1. Egy másik helyi terminálablakban keresse meg a Python-mintaprojekt gyökérmappáját. Ezután keresse meg az iot-hub\Quickstarts\back-end-application mappát.

  2. Nyissa meg a BackEndApplication.py fájlt egy tetszőleges szövegszerkesztőben.

    Cserélje le a CONNECTION_STRING változó értékét a korábban feljegyzett szolgáltatáskapcsolati sztringre. Ezután mentse a módosításokat a BackEndApplication.py.

  3. A helyi terminálablakban futtassa a következő parancsokat a szimulált eszközalkalmazáshoz szükséges kódtárak telepítéséhez:

    pip install azure-iot-hub
    
  4. A helyi terminálablakban futtassa a következő parancsokat a háttéralkalmazás futtatásához:

    python BackEndApplication.py
    

    Az alábbi képernyőképen a kimenet látható, amikor az alkalmazás közvetlen metódushívást indít az eszközre, és nyugtát kap:

    Képernyőkép egy terminálablakról, amely a szolgáltatásalkalmazásból érkező közvetlen metódushívás eredményét jeleníti meg.

    A háttéralkalmazás futtatása után megjelenik egy üzenet a szimulált eszközt futtató konzolablakban, és az üzenetek küldésének sebessége megváltozik:

    Képernyőkép egy terminálablakról, amely megjeleníti a közvetlen üzenet eredményét és a szimulált eszközalkalmazás frissített kimenetét.

Erőforrások tisztítása

Ha folytatja a következő ajánlott cikket, megtarthatja a már létrehozott erőforrásokat, és újra felhasználhatja őket.

Ellenkező esetben törölheti a cikkben létrehozott Azure-erőforrásokat a díjak elkerülése érdekében.

Fontos

Az erőforráscsoport törlése nem vonható vissza. Az erőforráscsoport és a benne foglalt erőforrások véglegesen törlődnek. Ügyeljen arra, hogy véletlenül ne törölje a rossz erőforráscsoportot vagy erőforrásokat. Ha az IoT Hubot egy meglévő erőforráscsoporton belül hozta létre, amely a megtartani kívánt erőforrásokat tartalmazza, csak magát az IoT Hub-erőforrást törölje az erőforráscsoport törlése helyett.

Erőforráscsoport törlése név alapján:

  1. Jelentkezzen be az Azure Portalra, és válassza az Erőforráscsoportok elemet.

  2. A bármely mező szűrője szövegmezőben írja be az IoT hubot tartalmazó erőforráscsoport nevét.

  3. Az eredménylistában válassza ki az IoT Hubot tartalmazó erőforráscsoportot.

  4. Az erőforráscsoport munkaablakában válassza az Erőforráscsoport törlése lehetőséget a parancssávon.

    Képernyőkép egy erőforráscsoport munkaablakáról az Azure Portalon, az erőforráscsoport törlése parancs kiemelésével a parancssávon.

  5. A rendszer az erőforráscsoport törlésének megerősítését kéri. Írja be ismét az erőforráscsoport nevét a megerősítéshez, majd válassza a Törlés lehetőséget. A rendszer néhány pillanaton belül törli az erőforráscsoportot és a benne foglalt erőforrásokat.

Következő lépések

Ebben a rövid útmutatóban egy közvetlen metódust hívott meg egy szolgáltatásalkalmazásból egy eszközön, és válaszolt a közvetlen metódushívásra egy szimulált eszközalkalmazásban.

Ha szeretné megtudni, hogyan irányíthatja át az eszközről a felhőbe irányuló üzeneteket a felhő különböző helyeire, folytassa a következő oktatóanyagban.