Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start utworzysz symulowane urządzenie na maszynie z systemem Windows. Symulowane urządzenie jest skonfigurowane do używania mechanizmu zaświadczania klucza symetrycznego na potrzeby uwierzytelniania. Po skonfigurowaniu urządzenia aprowizujesz je w centrum IoT przy użyciu usługi Azure IoT Hub Device Provisioning.
Jeśli nie znasz procesu aprowizacji, zapoznaj się z omówieniem aprowizacji .
Ten przewodnik Szybki start przedstawia rozwiązanie dla stacji roboczej z systemem Windows. Można jednak również wykonać procedury w systemie Linux. Aby zapoznać się z przykładem systemu Linux, zobacz Samouczek: aprowizowanie opóźnienia geograficznego.
Wymagania wstępne
Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
Wykonaj kroki opisane w przewodniku Szybki start: konfigurowanie usługi IoT Hub Device Provisioning przy użyciu witryny Azure Portal.
- Jeśli używasz środowiska deweloperskiego systemu Windows, zainstaluj program Visual Studio 2019 lub nowszy z włączonym obciążeniem "Programowanie aplikacji klasycznych z językiem C++". Obsługiwane są również programy Visual Studio 2015 i Visual Studio 2017. W przypadku systemu Linux lub macOS zapoznaj się z odpowiednią sekcją w temacie Przygotowywanie środowiska projektowego w dokumentacji zestawu SDK.
Zainstaluj zestaw .NET SDK 6.0 lub nowszy na maszynie z systemem Windows. Aby sprawdzić wersję, możesz użyć następującego polecenia.
dotnet --info
- Zainstaluj program Node.js w wersji 4.0 lub nowszej.
- Zainstaluj środowisko Python w wersji 3.7 lub nowszej zainstalowanej na komputerze z systemem Windows. Możesz sprawdzić swoją wersję języka Python, uruchamiając polecenie
python --version.
Zainstaluj zestaw Java SE Development Kit 8 lub nowszy zainstalowany na maszynie.
Pobierz i zainstaluj pakiet Maven.
- Zainstaluj najnowszą wersję usługi Git. Upewnij się, że usługa Git jest dodawana do zmiennych środowiskowych dostępnych w oknie polecenia. Zobacz do zainstalowania, która obejmuje
git, aplikację wiersza polecenia, której można użyć do interakcji z lokalnym repozytorium Git.
przygotowywanie środowiska programistycznego
W tej sekcji przygotujesz środowisko programistyczne używane do kompilowania zestawu SDK języka C usługi Azure IoT. Przykładowy kod próbuje aprowizować urządzenie podczas sekwencji rozruchu urządzenia.
Pobierz najnowszy system kompilacji narzędzia CMake.
Ważne
Przed rozpoczęciem instalacji upewnij się, że na maszynie
CMakesą zainstalowane wymagania wstępne programu Visual Studio (Program Visual Studio i pakiet roboczy Programowanie aplikacji klasycznych z językiem C++). Gdy wymagania wstępne zostaną spełnione, a pobrane pliki zweryfikowane, zainstaluj system kompilacji CMake. Ponadto starsze wersje systemu kompilacji narzędzia CMake nie mogą wygenerować pliku rozwiązania używanego w tym artykule. Upewnij się, że używasz najnowszej wersji narzędzia CMake.Otwórz przeglądarkę internetową i przejdź do strony Wydanie zestawu AZURE IoT C SDK.
Wybierz kartę Tagi w górnej części strony.
Skopiuj nazwę tagu dla najnowszej wersji zestawu AZURE IoT C SDK.
Otwórz wiersz polecenia lub powłokę Git Bash. Uruchom następujące polecenia, aby sklonować najnowszą wersję zestawu AZURE IoT Device SDK for C GitHub. Zastąp
<release-tag>ciąg tagiem skopiowanymi w poprzednim kroku, na przykład:lts_03_2025.git clone -b <release-tag> https://github.com/Azure/azure-iot-sdk-c.git cd azure-iot-sdk-c git submodule update --initWykonanie tej operacji może potrwać kilka minut.
Po zakończeniu operacji uruchom następujące polecenia z
azure-iot-sdk-ckatalogu:mkdir cmake cd cmakePrzykładowy kod używa klucza symetrycznego do zapewnienia zaświadczania. Uruchom następujące polecenie, aby skompilować wersję zestawu SDK specyficzną dla platformy klienta programowania, która obejmuje klienta aprowizacji urządzeń:
cmake -Dhsm_type_symm_key:BOOL=ON -Duse_prov_client:BOOL=ON ..Napiwek
Jeśli
cmakenie znajdziesz kompilatora języka C++, podczas uruchamiania poprzedniego polecenia mogą wystąpić błędy kompilacji. W takim przypadku spróbuj uruchomić polecenie w wierszu polecenia programu Visual Studio.Po pomyślnym zakończeniu kompilacji ostatnie kilka wierszy wyjściowych będzie wyglądać podobnie do następujących danych wyjściowych:
$ cmake -Dhsm_type_symm_key:BOOL=ON -Duse_prov_client:BOOL=ON .. -- Building for: Visual Studio 16 2019 -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19042. -- The C compiler identification is MSVC 19.29.30040.0 -- The CXX compiler identification is MSVC 19.29.30040.0 ... -- Configuring done -- Generating done -- Build files have been written to: E:/IoT Testing/azure-iot-sdk-c/cmake
Otwórz środowisko wiersza polecenia git CMD lub Git Bash.
Sklonuj repozytorium GitHub zestawu AZURE IoT SDK dla platformy .NET przy użyciu następującego polecenia:
git clone https://github.com/Azure/azure-iot-sdk-csharp.git
Otwórz środowisko wiersza polecenia git CMD lub Git Bash.
Sklonuj repozytorium GitHub zestawu SDK usługi Azure IoT Node.js przy użyciu następującego polecenia:
git clone https://github.com/Azure/azure-iot-sdk-node.git --recursive
Otwórz środowisko wiersza polecenia git CMD lub Git Bash.
Sklonuj repozytorium Azure IoT Python SDK GitHub za pomocą następującego polecenia:
git clone -b v2 https://github.com/Azure/azure-iot-sdk-python.git --recursiveUwaga
Przykłady używane w tym samouczku znajdują się w gałęzi w wersji 2 repozytorium azure-iot-sdk-python. Gałąź v3 zestawu SDK Python jest dostępna jako wersja beta.
Otwórz środowisko wiersza polecenia git CMD lub Git Bash.
Sklonuj repozytorium GitHub zestawu SDK usługi Azure IoT dla języka Java przy użyciu następującego polecenia:
git clone https://github.com/Azure/azure-iot-sdk-java.git --recursivePrzejdź do katalogu głównego
azure-iot-sdk-javai skompiluj projekt, aby pobrać wszystkie potrzebne pakiety. Wykonanie tego kroku może potrwać kilka minut.cd azure-iot-sdk-java mvn install -DskipTests=true
Tworzenie rejestracji urządzenia
Usługa Azure IoT Device Provisioning obsługuje dwa typy rejestracji:
- Grupy rejestracji: służą do rejestrowania wielu pokrewnych urządzeń.
- Rejestracje indywidualne: służy do rejestrowania pojedynczego urządzenia.
W tym artykule przedstawiono rejestrację indywidualną dla pojedynczego urządzenia do aprowizowania w centrum IoT.
Zaloguj się do witryny Azure Portal i przejdź do wystąpienia usługi Device Provisioning Service.
Wybierz pozycję Zarządzaj rejestracjami w sekcji Ustawienia w menu nawigacji.
Wybierz kartę Rejestracje indywidualne, a następnie wybierz pozycję Dodaj rejestrację indywidualną.
Na stronie Rejestracja i aprowizowaniedodaj rejestrację podaj następujące informacje, aby skonfigurować szczegóły rejestracji:
Pole opis Zaświadczanie Wybierz pozycję Klucz symetryczny jako mechanizm zaświadczania. Ustawienia klucza symetrycznego Zaznacz pole Automatycznie Generuj klucze symetryczne, jeśli chcesz użyć losowo wygenerowanych kluczy. Usuń zaznaczenie tego pola, jeśli chcesz podać własne klucze. Identyfikator rejestracji Podaj unikatowy identyfikator rejestracji urządzenia. Stan aprowizacji Zaznacz pole Włącz tę rejestrację, jeśli ta rejestracja ma być dostępna do aprowizacji urządzenia. Usuń zaznaczenie tego pola, jeśli chcesz, aby rejestracja została wyłączona. To ustawienie można zmienić później. Zasady ponownej aprowizacji Wybierz zasady ponownej aprowizacji, które odzwierciedlają sposób obsługi urządzeń, które żądają ponownej aprowizacji przez usługę DPS. Aby uzyskać więcej informacji, zobacz Zasady ponownej aprowizacji. Wybierz pozycję Dalej: centra IoT.
Na karcie Centra IoT na stronie Dodawanie rejestracji podaj następujące informacje, aby określić, które centra IoT mogą aprowizować urządzenia:
Pole opis Docelowe centra IoT Wybierz co najmniej jedno połączone centra IoT lub dodaj nowy link do centrum IoT. Aby dowiedzieć się więcej na temat łączenia centrów IoT z wystąpieniem usługi DPS, zobacz Jak połączyć centra IoT i zarządzać nimi. Zasady alokacji Jeśli wybrano więcej niż jedno połączone centrum IoT, wybierz sposób przypisywania urządzeń do różnych centrów. Aby dowiedzieć się więcej na temat zasad alokacji, zobacz Jak używać zasad alokacji.
Jeśli wybrano tylko jedno połączone centrum IoT, zalecamy użycie zasad dystrybucji równomiernie ważonej.Wybierz pozycję Dalej: Ustawienia urządzenia
Na karcie Ustawienia urządzenia na stronie Dodawanie rejestracji podaj następujące informacje, aby zdefiniować sposób konfigurowania nowo aprowizowanych urządzeń:
Pole opis Identyfikator urządzenia Podaj identyfikator urządzenia przypisany do aprowizowanego urządzenia w usłudze IoT Hub. Jeśli nie podasz identyfikatora urządzenia, zostanie użyty identyfikator rejestracji. IoT Edge Sprawdź opcję włączenia IoT Edge na aprowizowanych urządzeniach, jeśli urządzenie korzysta z Azure IoT Edge. Usuń zaznaczenie tego pola, jeśli ta rejestracja dotyczy urządzenia z obsługą usługi IoT Edge. Tagi urządzeń Użyj tego pola tekstowego, aby podać tagi, które mają być stosowane do bliźniaczej reprezentacji urządzenia aprowizowanego urządzenia. Żądane właściwości Użyj tego pola tekstowego, aby podać żądane właściwości, które chcesz zastosować do bliźniaczej reprezentacji urządzenia aprowizowanego urządzenia. Aby uzyskać więcej informacji, zobacz Opis bliźniaczej reprezentacji urządzenia w usłudze IoT Hub oraz sposoby jej używania.
Wybierz pozycję Dalej: Przeglądanie i tworzenie.
Na karcie Przeglądanie i tworzenie sprawdź wszystkie wartości, a następnie wybierz pozycję Utwórz.
Po utworzeniu rejestracji indywidualnej zostanie wygenerowany klucz podstawowy i klucz pomocniczy oraz dodany do wpisu rejestracji. W dalszej części tego przewodnika Szybki start użyjesz klucza podstawowego w przykładzie urządzenia.
Aby wyświetlić symulowaną rejestrację urządzenia z kluczem symetrycznym, wybierz kartę Indywidualne rejestracje .
Wybierz identyfikator rejestracji urządzenia z listy rejestracji indywidualnych.
Skopiuj wartość wygenerowanego klucza podstawowego.
Przygotowywanie i uruchamianie kodu aprowizacji urządzenia
W tej sekcji zaktualizujesz przykładowy kod urządzenia, aby wysłać sekwencję rozruchową urządzenia do wystąpienia usługi Device Provisioning Service. Ta sekwencja rozruchowa powoduje, że urządzenie zostanie rozpoznane, uwierzytelnione i przypisane do centrum IoT Połączone z wystąpieniem usługi Device Provisioning Service.
Przykładowy kod aprowizacji wykonuje następujące zadania w następującej kolejności:
Uwierzytelnia urządzenie przy użyciu zasobu Device Provisioning przy użyciu następujących trzech parametrów:
- Zakres identyfikatora dla wystąpienia usługi Device Provisioning Service
- Identyfikator rejestracji dla rejestracji urządzenia.
- Podstawowy klucz symetryczny rejestracji urządzenia.
Przypisuje urządzenie do centrum IoT Hub, które jest już połączone z wystąpieniem usługi Device Provisioning Service.
Aby zaktualizować i uruchomić przykład aprowizacji przy użyciu informacji o urządzeniu:
W menu usługi dla instancji Device Provisioning Service wybierz pozycję Przegląd.
Skopiuj wartość Zakres identyfikatora.
W programie Visual Studio otwórz plik rozwiązania azure_iot_sdks.sln, który został wygenerowany przez uruchomienie narzędzia CMake. Plik rozwiązania powinien znajdować się w następującej lokalizacji:
\azure-iot-sdk-c\cmake\azure_iot_sdks.slnNapiwek
Jeśli plik nie został wygenerowany w katalogu cmake, upewnij się, że użyto najnowszej wersji systemu kompilacji CMake.
W oknie Eksplorator rozwiązań programu Visual Studio przejdź do folderu Provision_Samples. Rozwiń przykładowy projekt o nazwie prov_dev_client_sample. Rozwiń węzeł Pliki źródłowe i otwórz plik prov_dev_client_sample.c.
Znajdź stałą
id_scopei zastąp wartość wartością Zakres identyfikatora skopiowaną w kroku 2.static const char* id_scope = "0ne00002193";Znajdź definicję funkcji
main()w tym samym pliku. Upewnij się, że zmienna jest ustawionahsm_typenaSECURE_DEVICE_TYPE_SYMMETRIC_KEY, jak pokazano w poniższym przykładzie:SECURE_DEVICE_TYPE hsm_type; //hsm_type = SECURE_DEVICE_TYPE_TPM; //hsm_type = SECURE_DEVICE_TYPE_X509; hsm_type = SECURE_DEVICE_TYPE_SYMMETRIC_KEY;Znajdź wywołanie metody
prov_dev_set_symmetric_key_info()w pliku prov_dev_client_sample.c , które zostało skomentowane.// Set the symmetric key if using they auth type //prov_dev_set_symmetric_key_info("<symm_registration_id>", "<symmetric_Key>");Usuń komentarz z wywołania funkcji i zastąp wartości symboli zastępczych (w tym nawiasy kątowe) identyfikatorem rejestracji urządzenia i skopiowaną wcześniej wartością klucza podstawowego.
// Set the symmetric key if using they auth type prov_dev_set_symmetric_key_info("symm-key-device-007", "your primary key here");Zapisz plik.
Kliknij prawym przyciskiem myszy projekt prov_dev_client_sample i wybierz polecenie Ustaw jako projekt startowy.
Z menu programu Visual Studio wybierz pozycję Debuguj>Uruchom bez debugowania, aby uruchomić rozwiązanie. W wierszu polecenia ponownego kompilowania projektu wybierz pozycję Tak , aby ponownie skompilować projekt przed uruchomieniem.
Następujące dane wyjściowe to przykład pomyślnego nawiązania połączenia urządzenia z wystąpieniem usługi aprowizacji, które ma zostać przypisane do centrum IoT:
Provisioning API Version: 1.2.8 Registering Device Provisioning Status: PROV_DEVICE_REG_STATUS_CONNECTED Provisioning Status: PROV_DEVICE_REG_STATUS_ASSIGNING Registration Information received from service: test-docs-hub.azure-devices.net, deviceId: device-007 Press enter key to exit:
Przykładowy kod aprowizacji wykonuje następujące zadania:
Uwierzytelnia urządzenie przy użyciu zasobu Device Provisioning przy użyciu następujących trzech parametrów:
- Zakres ID dla zasobów usługi Device Provisioning Service
- Identyfikator rejestracji dla rejestracji urządzenia.
- Podstawowy klucz symetryczny rejestracji urządzenia.
Przypisuje urządzenie do centrum IoT Hub, które jest już połączone z wystąpieniem usługi Device Provisioning Service.
Wysyła komunikat testowy do centrum IoT.
Aby zaktualizować i uruchomić przykład aprowizacji przy użyciu informacji o urządzeniu:
Na stronie menu Twojej instancji usługi Device Provisioning Service, wybierz Przegląd.
Skopiuj wartość Zakres identyfikatora.
Otwórz wiersz polecenia i przejdź do pliku SymmetricKeySample w sklonowanym repozytorium zestawu SDK:
cd '.\azure-iot-sdk-csharp\provisioning\device\samples\how to guides\SymmetricKeySample\'W folderze SymmetricKeySample otwórz Parameters.cs w edytorze tekstów. Ten plik zawiera dostępne parametry dla przykładu. Podczas uruchamiania przykładu używane są tylko pierwsze trzy wymagane parametry. Przejrzyj kod w tym pliku. Nie są potrzebne żadne zmiany.
Parametr Wymagania opis --ilub--IdScopePrawda Zakres identyfikatora wystąpienia usługi DPS --rlub--RegistrationIdPrawda Identyfikator rejestracji jest ciągiem bez uwzględniania wielkości liter (do 128 znaków) znaków alfanumerycznych oraz znakami specjalnymi: '-', ,'.''_',':'. Ostatni znak musi być alfanumeryczny lub kreskowy ('-').--plub--PrimaryKeyPrawda Klucz podstawowy rejestracji indywidualnej lub pochodnego klucza urządzenia rejestracji grupy. Zobacz computeDerivedSymmetricKeySample, aby dowiedzieć się, jak wygenerować klucz pochodny. --glub--GlobalDeviceEndpointFałsz Globalny punkt końcowy dla urządzeń do nawiązania połączenia. Wartości domyślne global.azure-devices-provisioning.net--tlub--TransportTypeFałsz Transport używany do komunikowania się z wystąpieniem aprowizacji urządzeń. Wartość domyślna to Mqtt. Możliwe wartości obejmująMqtt, ,Mqtt_WebSocket_Only,Mqtt_Tcp_OnlyAmqpAmqp_WebSocket_OnlyAmqp_Tcp_only, i .Http1W folderze SymmetricKeySample otwórz ProvisioningDeviceClientSample.cs w edytorze tekstów. Ten plik pokazuje, jak klasa SecurityProviderSymmetricKey jest używana wraz z klasą ProvisioningDeviceClient w celu aprowizacji symulowanego urządzenia klucza symetrycznego. Przejrzyj kod w tym pliku. Nie są potrzebne żadne zmiany.
Skompiluj i uruchom przykładowy kod przy użyciu następującego polecenia:
- Zastąp
<id-scope>wartość zakresem identyfikatora skopiowaną w kroku 2. - Zastąp
<registration-id>element identyfikatorem rejestracji podanym dla rejestracji urządzenia. - Zastąp wartość
<primarykey>kluczem podstawowym skopiowaną z rejestracji urządzenia.
dotnet run --i <id-scope> --r <registration-id> --p <primarykey>- Zastąp
Powinny zostać wyświetlone dane wyjściowe podobne do poniższych. Ciąg "TestMessage" jest wysyłany do centrum jako komunikat testowy.
D:\azure-iot-sdk-csharp\provisioning\device\samples\how to guides\SymmetricKeySample>dotnet run --i 0ne00000A0A --r symm-key-csharp-device-01 --p sbDDeEzRuEuGKag+kQKV+T1QGakRtHpsERLP0yPjwR93TrpEgEh/Y07CXstfha6dhIPWvdD1nRxK5T0KGKA+nQ== Initializing the device provisioning client... Initialized for registration Id symm-key-csharp-device-01. Registering with the device provisioning service... Registration status: Assigned. Device csharp-device-01 registered to ExampleIoTHub.azure-devices.net. Creating symmetric key authentication for IoT Hub... Testing the provisioned device with IoT Hub... Sending a telemetry message... Finished. Enter any key to exit.
Przykładowy kod aprowizacji wykonuje następujące zadania w następującej kolejności:
Uwierzytelnia urządzenie przy użyciu zasobu Device Provisioning przy użyciu następujących czterech parametrów:
PROVISIONING_HOSTPROVISIONING_IDSCOPEPROVISIONING_REGISTRATION_IDPROVISIONING_SYMMETRIC_KEY
Przypisuje urządzenie do centrum IoT Hub, które jest już połączone z wystąpieniem usługi Device Provisioning Service.
Wysyła komunikat testowy do centrum IoT.
Aby zaktualizować i uruchomić przykład aprowizacji przy użyciu informacji o urządzeniu:
W menu usługi Twojego wystąpienia usługi Device Provisioning wybierz pozycję Przegląd.
Skopiuj wartości Zakres identyfikatorów i Globalny punkt końcowy urządzenia.
Otwórz wiersz polecenia do wykonywania Node.js poleceń i przejdź do następującego katalogu:
cd azure-iot-sdk-node/provisioning/device/samplesW folderze provisioning/device/samples otwórz register_symkey.js i przejrzyj kod. Zwróć uwagę, że przykładowy kod ustawia niestandardowy ładunek:
provisioningClient.setProvisioningPayload({a: 'b'});Ten kod ładunku można oznaczyć jako komentarz dla tego przewodnika Szybki start. Niestandardowy ładunek będzie wymagany, jeśli chcesz użyć niestandardowej funkcji alokacji w celu przypisania urządzenia do centrum IoT. Aby uzyskać więcej informacji, zobacz Samouczek: używanie niestandardowych zasad alokacji.
Metoda
provisioningClient.register()próbuje rejestracji urządzenia.Nie są potrzebne żadne dalsze zmiany.
W wierszu polecenia uruchom następujące polecenia, aby ustawić zmienne środowiskowe używane przez przykład:
- Zastąp element
<provisioning-global-endpoint>globalnym punktem końcowym urządzenia skopiowany w kroku 2. - Zastąp
<id-scope>wartość zakresem identyfikatora skopiowaną w kroku 2. - Zastąp
<registration-id>element identyfikatorem rejestracji podanym dla rejestracji urządzenia. - Zastąp wartość
<primarykey>kluczem podstawowym skopiowaną z rejestracji urządzenia.
set PROVISIONING_HOST=<provisioning-global-endpoint>set PROVISIONING_IDSCOPE=<id-scope>set PROVISIONING_REGISTRATION_ID=<registration-id>set PROVISIONING_SYMMETRIC_KEY=<primarykey>- Zastąp element
Skompiluj i uruchom przykładowy kod przy użyciu następujących poleceń:
npm installnode register_symkey.jsPowinny zostać wyświetlone dane wyjściowe podobne do poniższych. Ciąg "Hello World" jest wysyłany do centrum jako komunikat testowy.
D:\azure-iot-samples-csharp\provisioning\device\samples>node register_symkey.js registration succeeded assigned hub=ExampleIoTHub.azure-devices.net deviceId=nodejs-device-01 payload=undefined Client connected send status: MessageEnqueued
Przykładowy kod aprowizacji wykonuje następujące zadania w następującej kolejności:
Uwierzytelnia urządzenie przy użyciu zasobu Device Provisioning przy użyciu następujących czterech parametrów:
PROVISIONING_HOSTPROVISIONING_IDSCOPEPROVISIONING_REGISTRATION_IDPROVISIONING_SYMMETRIC_KEY
Przypisuje urządzenie do centrum IoT Hub, które jest już połączone z wystąpieniem usługi Device Provisioning Service.
Wysyła komunikat testowy do centrum IoT.
Aby zaktualizować i uruchomić przykład aprowizacji przy użyciu informacji o urządzeniu:
W menu usługi wystąpienia usługi Device Provisioning wybierz pozycję Przegląd.
Skopiuj wartości Zakres identyfikatorów i Globalny punkt końcowy urządzenia.
Otwórz wiersz polecenia i przejdź do katalogu, w którym znajduje się przykładowy plik provision_symmetric_key.py.
cd azure-iot-sdk-python\samples\async-hub-scenariosW wierszu polecenia uruchom następujące polecenia, aby ustawić zmienne środowiskowe używane przez przykład:
- Zastąp element
<provisioning-global-endpoint>globalnym punktem końcowym urządzenia skopiowany w kroku 2. - Zastąp
<id-scope>wartość zakresem identyfikatora skopiowaną w kroku 2. - Zastąp
<registration-id>element identyfikatorem rejestracji podanym dla rejestracji urządzenia. - Zastąp wartość
<primarykey>kluczem podstawowym skopiowaną z rejestracji urządzenia.
set PROVISIONING_HOST=<provisioning-global-endpoint>set PROVISIONING_IDSCOPE=<id-scope>set PROVISIONING_REGISTRATION_ID=<registration-id>set PROVISIONING_SYMMETRIC_KEY=<primarykey>- Zastąp element
Zainstaluj bibliotekę azure-iot-device , uruchamiając następujące polecenie.
pip install azure-iot-deviceUruchom przykładowy kod języka Python w provision_symmetric_key.py.
python provision_symmetric_key.pyPowinny zostać wyświetlone dane wyjściowe podobne do poniższych. Niektóre przykładowe komunikaty telemetryczne prędkości wiatru są również wysyłane do koncentratora jako test.
D:\azure-iot-sdk-python\samples\async-hub-scenarios>python provision_symmetric_key.py RegistrationStage(RequestAndResponseOperation): Op will transition into polling after interval 2. Setting timer. The complete registration result is python-device-008 docs-test-iot-hub.azure-devices.net initialAssignment null Will send telemetry from the provisioned device sending message #8 sending message #9 sending message #3 sending message #10 sending message #4 sending message #2 sending message #6 sending message #7 sending message #1 sending message #5 done sending message #8 done sending message #9 done sending message #3 done sending message #10 done sending message #4 done sending message #2 done sending message #6 done sending message #7 done sending message #1 done sending message #5
Przykładowy kod aprowizacji wykonuje następujące zadania w następującej kolejności:
Uwierzytelnia urządzenie przy użyciu zasobu Device Provisioning przy użyciu następujących czterech parametrów:
GLOBAL_ENDPOINTSCOPE_IDREGISTRATION_IDSYMMETRIC_KEY
Przypisuje urządzenie do centrum IoT Hub, które jest już połączone z wystąpieniem usługi Device Provisioning Service.
Wysyła komunikat testowy do centrum IoT.
Aby zaktualizować i uruchomić przykład aprowizacji przy użyciu informacji o urządzeniu:
W menu usługi instancji Device Provisioning, wybierz pozycję Przegląd.
Skopiuj wartości Zakres identyfikatorów i Globalny punkt końcowy urządzenia. Te wartości są odpowiednio parametrami
SCOPE_IDi .GLOBAL_ENDPOINT
Otwórz przykładowy kod urządzenia Java do edycji. Pełna ścieżka do przykładowego kodu urządzenia to:
azure-iot-sdk-java/provisioning/provisioning-device-client-samples/provisioning-symmetrickey-individual-sample/src/main/java/samples/com/microsoft/azure/sdk/iot/ProvisioningSymmetricKeyIndividualEnrollmentSample.javaUstaw wartość następujących zmiennych dla usługi DPS i rejestracji urządzeń:
- Zastąp
<id-scope>wartość zakresem identyfikatora skopiowaną w kroku 2. - Zastąp element
<provisioning-global-endpoint>globalnym punktem końcowym urządzenia skopiowany w kroku 2. - Zastąp
<registration-id>element identyfikatorem rejestracji podanym dla rejestracji urządzenia. - Zastąp wartość
<primarykey>kluczem podstawowym skopiowaną z rejestracji urządzenia.
private static final String SCOPE_ID = "<id-scope>"; private static final String GLOBAL_ENDPOINT = "<provisioning-global-endpoint>"; private static final String SYMMETRIC_KEY = "<primarykey>"; private static final String REGISTRATION_ID = "<registration-id>";- Zastąp
Otwórz wiersz polecenia do kompilowania. Przejdź do folderu przykładowego projektu aprowizacji w repozytorium zestawu JAVA SDK.
cd azure-iot-sdk-java\provisioning\provisioning-device-client-samples\provisioning-symmetrickey-individual-sampleSkompiluj przykład.
mvn clean installPrzejdź do
targetfolderu i wykonaj utworzony.jarplik. W poleceniujavazastąp{version}symbol zastępczy wersją w.jarnazwie pliku na maszynie.cd target java -jar ./provisioning-symmetrickey-individual-sample-{version}-with-deps.jarPowinny zostać wyświetlone dane wyjściowe podobne do poniższych.
Starting... Beginning setup. Initialized a ProvisioningDeviceClient instance using SDK version 1.11.0 Starting provisioning thread... Waiting for Provisioning Service to register Opening the connection to device provisioning service... Connection to device provisioning service opened successfully, sending initial device registration message Authenticating with device provisioning service using symmetric key Waiting for device provisioning service to provision this device... Current provisioning status: ASSIGNING Device provisioning service assigned the device successfully IotHUb Uri : <Your IoT hub name>.azure-devices.net Device ID : java-device-007 Sending message from device to IoT Hub... Press any key to exit... Message received! Response status: OK_EMPTY
Potwierdzanie rejestracji aprowizacji urządzeń
Przejdź do portalu Azure Portal.
W menu portalu lub na stronie portalu wybierz pozycję Wszystkie zasoby.
Wybierz centrum IoT Hub, do którego przypisano urządzenie.
W menu usługi w obszarze Zarządzanie urządzeniami wybierz pozycję Urządzenia.
Jeśli urządzenie zostało pomyślnie zainicjowane, identyfikator urządzenia powinien zostać wyświetlony na liście z ustawionym stanem włączonym. Jeśli urządzenie nie jest widoczne, wybierz pozycję Odśwież w górnej części okienka.
Uwaga
Jeśli zmienisz wartość w polu Początkowy stan bliźniaczej reprezentacji urządzenia z domyślnej na inną we wpisie rejestracji dla Twojego urządzenia, może to spowodować pobranie z centrum żądanego stanu reprezentacji bliźniaczej i odpowiednie do niego działanie. Aby uzyskać więcej informacji, zobacz Opis bliźniaczej reprezentacji urządzenia w usłudze IoT Hub oraz sposoby jej używania.
Czyszczenie zasobów
Jeśli planujesz kontynuować pracę i eksplorujesz przykład klienta urządzenia, nie usuwaj zasobów utworzonych w tym przewodniku Szybki start. Jeśli nie planujesz kontynuować, wykonaj następujące kroki, aby usunąć wszystkie zasoby utworzone w tym przewodniku Szybki start.
Usuwanie rejestracji urządzenia
Zamknij okno danych wyjściowych przykładu klienta urządzenia na swojej maszynie.
W menu portalu w witrynie Azure Portal wybierz pozycję Wszystkie zasoby.
Wybierz wystąpienie usługi Device Provisioning Service.
W menu usługi w obszarze Ustawienia wybierz pozycję Zarządzaj rejestracjami.
W okienku roboczym wybierz kartę Rejestracje indywidualne .
Zaznacz pole wyboru obok identyfikatora rejestracji urządzenia zarejestrowanego w tym przewodniku Szybki start.
W górnej części okienka wybierz pozycję Usuń.
Usuwanie rejestracji urządzenia z usługi IoT Hub
W menu portalu w witrynie Azure Portal wybierz pozycję Wszystkie zasoby.
Wybierz centrum IoT Hub.
W menu usługi w obszarze Zarządzanie urządzeniami wybierz pozycję Urządzenia.
W oknie roboczym zaznacz pole wyboru obok identyfikatora urządzenia, które zarejestrowałeś w tym przewodniku szybkiego startu.
W górnej części okienka wybierz pozycję Usuń.
Następne kroki
W tym przewodniku Szybki start zainicjowano aprowizację pojedynczego urządzenia w centrum IoT przy użyciu rejestracji indywidualnej. Następnie dowiedz się, jak aprowizować wiele urządzeń w wielu centrach.