az iot device

Uwaga

Ta dokumentacja jest częścią rozszerzenia azure-iot dla interfejsu wiersza polecenia platformy Azure (wersja 2.37.0 lub nowsza). Rozszerzenie zostanie automatycznie zainstalowane przy pierwszym uruchomieniu polecenia az iot device . Dowiedz się więcej o rozszerzeniach.

Korzystaj z symulacji urządzeń i innych operacji skoncentrowanych na urządzeniach, takich jak urządzenia do chmury lub możliwości obsługi komunikatów z chmury do urządzeń.

Polecenia

Nazwa Opis Typ Stan
az iot device c2d-message

Polecenia obsługi komunikatów z chmury do urządzenia.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message abandon

Porzucanie komunikatu chmura-urządzenie.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message complete

Ukończ komunikat chmura-urządzenie.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message purge

Przeczyść kolejkę komunikatów z chmury do urządzenia docelowego.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message receive

Odbieranie komunikatu z chmury do urządzenia.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message reject

Odrzucanie lub zakleszczanie komunikatu z chmury do urządzenia.

Numer wewnętrzny Ogólna dostępność
az iot device c2d-message send

Wyślij komunikat z chmury do urządzenia.

Numer wewnętrzny Ogólna dostępność
az iot device registration

Zarządzanie rejestracjami urządzeń IoT dla usługi IoT Device Provisioning.

Numer wewnętrzny Wersja zapoznawcza
az iot device registration create

Zarejestruj urządzenie IoT w usłudze IoT Device Provisioning Service.

Numer wewnętrzny Wersja zapoznawcza
az iot device send-d2c-message

Wyślij komunikat z urządzenia do chmury mqtt.

Numer wewnętrzny Ogólna dostępność
az iot device simulate

Symulowanie urządzenia w usłudze Azure IoT Hub.

Numer wewnętrzny Eksperymentalne
az iot device upload-file

Przekaż plik lokalny jako urządzenie do wstępnie skonfigurowanego kontenera magazynu obiektów blob.

Numer wewnętrzny Ogólna dostępność

az iot device send-d2c-message

Wyślij komunikat z urządzenia do chmury mqtt.

Polecenie obsługuje wysyłanie komunikatów z niestandardowym ładunkiem w ciągu Unicode lub formacie binarnym. W przypadku zamiaru wysyłania danych binarnych dane powinny pochodzić z pliku (za pośrednictwem --data-file-path), a typ zawartości powinien mieć wartość application/octet-stream.

Uwaga: Polecenie działa tylko dla urządzeń opartych na uwierzytelniania klucza symetrycznego (SAS). Aby włączyć wykonywanie zapytań względem treści komunikatów w routingu komunikatów, właściwość systemowa contentType musi być application/JSON, a właściwość systemu contentEncoding musi być jedną z wartości kodowania UTF obsługiwanych przez tę właściwość systemową (UTF-8, UTF-16 lub UTF-32). Jeśli kodowanie zawartości nie jest ustawione, gdy usługa Azure Storage jest używana jako punkt końcowy routingu, usługa IoT Hub zapisuje komunikaty w formacie zakodowanym w formacie base 64. W przypadku używania metod uwierzytelniania x509 należy podać pliki certyfikatu i klucza (i hasło, jeśli to konieczne).

az iot device send-d2c-message --device-id
                               [--certificate-file-path]
                               [--da]
                               [--data-file-path]
                               [--dtmi]
                               [--hub-name]
                               [--key]
                               [--key-file-path]
                               [--login]
                               [--mc]
                               [--pass]
                               [--properties]
                               [--resource-group]

Przykłady

Podstawowy sposób użycia

az iot device send-d2c-message -n {iothub_name} -d {device_id}

Podstawowe użycie urządzenia rejestrującego identyfikator modelu "dtmi:com:example:Termostat; 1' po połączeniu

az iot device send-d2c-message -n {iothub_name} -d {device_id} --model-id 'dtmi:com:example:Thermostat;1'

Podstawowe użycie urządzenia z uwierzytelnianiem x509

az iot device send-d2c-message -n {iothub_name} -d {device_id} --cp {certificate_file_path} --kp {key_file_path}

Podstawowe użycie urządzenia z uwierzytelnianiem x509, w którym plik klucza ma hasło

az iot device send-d2c-message -n {iothub_name} -d {device_id} --cp {certificate_file_path} --kp {key_file_path} --pass {passphrase}

Podstawowe użycie z danymi niestandardowymi

az iot device send-d2c-message -n {iothub_name} -d {device_id} --data {message_body}

Wysyłanie właściwości aplikacji

az iot device send-d2c-message -n {iothub_name} -d {device_id} --props 'key0=value0;key1=value1'

Wysyłanie właściwości systemu (identyfikator komunikatu i identyfikator korelacji)

az iot device send-d2c-message -n {iothub_name} -d {device_id} --props '$.mid=<id>;$.cid=<id>'

Wysyłanie danych niestandardowych przez określenie typu zawartości i kodowania zawartości we właściwościach systemu

az iot device send-d2c-message -n {iothub_name} -d {device_id} --props '$.ct=<content-type>;$.ce=<content-encoding>' --data {message_body}

Wysyłanie niestandardowych danych w formacie binarnym przez określenie kodowania zawartości we właściwościach systemu

az iot device send-d2c-message -n {iothub_name} -d {device_id} --props '$.ct=application/octet-stream' --data-file-path {file_path}

Wysyłanie danych niestandardowych w formacie JSON przez określenie typu zawartości i kodowania zawartości we właściwościach systemu

az iot device send-d2c-message -n {iothub_name} -d {device_id} --props '$.ct=application/json;$.ce=utf-8' --data-file-path {file_path}

Parametry wymagane

--device-id -d

Identyfikator urządzenia docelowego.

Parametry opcjonalne

--certificate-file-path --cp

Ścieżka do pliku certyfikatu.

--da --data

Treść wiadomości. Podaj tekst lub nieprzetworzone dane json.

wartość domyślna: Ping from Az CLI IoT Extension
--data-file-path --dfp
Wersja zapoznawcza

Podaj ścieżkę do pliku dla ładunku treści komunikatu. Pamiętaj, że gdy ładunek musi być wysyłany w formacie binarnym, ustaw typ zawartości na wartość application/octet-stream.

--dtmi --model-id

Identyfikator modelu usługi Digital Twin, który urządzenie będzie raportować podczas nawiązywania połączenia z koncentratorem. Zobacz https://docs.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play , aby uzyskać więcej szczegółów.

--hub-name -n

Nazwa lub nazwa hosta usługi IoT Hub. Wymagane, jeśli nie podano opcji --login.

--key --symmetric-key

Klucz symetryczny do użycia dla urządzenia. Jeśli podano klucz symetryczny i inne argumenty uwierzytelniania urządzenia, klucz symetryczny ma priorytet.

--key-file-path --kp

Ścieżka do pliku klucza.

--login -l

To polecenie obsługuje jednostkę parametry połączenia z uprawnieniami do wykonania akcji. Użyj polecenia , aby uniknąć logowania do sesji za pomocą polecenia "az login". Jeśli zarówno jednostka parametry połączenia, jak i nazwa są podane, parametry połączenia ma priorytet. Wymagane, jeśli nie podano --hub-name.

--mc --msg-count

Liczba komunikatów urządzenia do wysłania do usługi IoT Hub.

wartość domyślna: 1
--pass --passphrase

Hasło dla pliku klucza.

--properties --props -p

Torba właściwości komunikatu w parach klucz-wartość o następującym formacie: a=b; c=d. W przypadku komunikatów mqtt — można wysyłać właściwości systemu przy użyciu wartości $.=value. Na przykład $.cid=12345 ustawia właściwość identyfikatora korelacji systemu. Inne przykłady identyfikatorów właściwości systemu obejmują $.ct dla typu zawartości, $.mid dla identyfikatora komunikatu i $.ce do kodowania zawartości.

--resource-group -g

Nazwa grupy zasobów. Grupę domyślną można skonfigurować przy użyciu polecenia az configure --defaults group=<name>.

Parametry globalne
--debug

Zwiększ szczegółowość rejestrowania, aby wyświetlić wszystkie dzienniki debugowania.

--help -h

Pokaż ten komunikat pomocy i zakończ pracę.

--only-show-errors

Pokaż tylko błędy, pomijając ostrzeżenia.

--output -o

Format danych wyjściowych.

akceptowane wartości: json, jsonc, none, table, tsv, yaml, yamlc
wartość domyślna: json
--query

Ciąg zapytania JMESPath. Zobacz http://jmespath.org/ , aby uzyskać więcej informacji i przykładów.

--subscription

Nazwa lub identyfikator subskrypcji. Subskrypcję domyślną można skonfigurować przy użyciu polecenia az account set -s NAME_OR_ID.

--verbose

Zwiększ szczegółowość rejestrowania. Użyj --debuguj, aby uzyskać pełne dzienniki debugowania.

az iot device simulate

Eksperymentalne

To polecenie jest eksperymentalne i opracowywane. Poziomy odwołań i pomocy technicznej: https://aka.ms/CLI_refstatus

Symulowanie urządzenia w usłudze Azure IoT Hub.

Gdy symulacja urządzenia jest uruchomiona, urządzenie automatycznie odbiera i potwierdza komunikaty z chmury do urządzenia (c2d). W przypadku symulacji mqtt wszystkie komunikaty c2d zostaną potwierdzone wraz z ukończeniem. W przypadku potwierdzenia c2d symulacji http opiera się na wyborze użytkownika, które można ukończyć, odrzucić lub porzucić. Symulacja mqtt obsługuje również wywołanie metody bezpośredniej, które można potwierdzić za pomocą kodu stanu odpowiedzi i ładunku odpowiedzi. Uwaga: polecenie domyślnie ustawi typ zawartości na wartość application/json i kodowanie zawartości na wartość utf-8. Może to zostać zastąpione. Uwaga: W przypadku używania metod uwierzytelniania x509 należy podać pliki certyfikatu i klucza (i hasło, jeśli to konieczne).

az iot device simulate --device-id
                       [--certificate-file-path]
                       [--da]
                       [--dtmi]
                       [--hub-name]
                       [--init-reported-properties]
                       [--key]
                       [--key-file-path]
                       [--login]
                       [--mc]
                       [--method-response-code]
                       [--method-response-payload]
                       [--mi]
                       [--pass]
                       [--properties]
                       [--proto {http, mqtt}]
                       [--receive-settle {abandon, complete, reject}]
                       [--resource-group]

Przykłady

Użycie podstawowe (mqtt)

az iot device simulate -n {iothub_name} -d {device_id}

Podstawowe użycie urządzenia rejestrującego identyfikator modelu "dtmi:com:example:Termostat; 1' po połączeniu (mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --model-id 'dtmi:com:example:Thermostat;1'

Podstawowe użycie urządzenia z uwierzytelnianiem x509 (mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --cp {certificate_file_path} --kp {key_file_path}

Podstawowe użycie urządzenia z uwierzytelnianiem x509 (mqtt), w którym plik klucza ma hasło

az iot device simulate -n {iothub_name} -d {device_id} --cp {certificate_file_path} --kp {key_file_path} --pass {passphrase}

Wysyłanie właściwości mieszanych (mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --properties "myprop=myvalue;$.ct=application/json"

Wysyłanie kodu stanu odpowiedzi metody bezpośredniej i ładunku odpowiedzi metody bezpośredniej jako nieprzetworzonego kodu json (tylko mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --method-response-code 201 --method-response-payload '{"result":"Direct method successful"}'

Wyślij kod stanu odpowiedzi metody bezpośredniej i ładunek odpowiedzi metody bezpośredniej jako ścieżkę do pliku lokalnego (tylko mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --method-response-code 201 --method-response-payload '../my_direct_method_payload.json'

Wyślij początkowy stan zgłoszonych właściwości bliźniaczej reprezentacji urządzenia jako nieprzetworzone dane json dla urządzenia docelowego (tylko mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --init-reported-properties '{"reported_prop_1":"val_1", "reported_prop_2":val_2}'

Wyślij początkowy stan zgłoszonych właściwości bliźniaczej reprezentacji urządzenia jako ścieżkę do pliku lokalnego dla urządzenia docelowego (tylko mqtt)

az iot device simulate -n {iothub_name} -d {device_id} --init-reported-properties '../my_device_twin_reported_properties.json'

Podstawowe użycie (http)

az iot device simulate -n {iothub_name} -d {device_id} --protocol http

Wysyłanie właściwości mieszanych (http)

az iot device simulate -n {iothub_name} -d {device_id} --protocol http --properties "iothub-app-myprop=myvalue;content-type=application/json;iothub-correlationid=12345"

Wybierz łączną liczbę komunikatów i interwał między komunikatami

az iot device simulate -n {iothub_name} -d {device_id} --msg-count 1000 --msg-interval 5

Odrzuć komunikaty c2d (tylko http)

az iot device simulate -n {iothub_name} -d {device_id} --rs reject --protocol http

Porzucanie komunikatów c2d (tylko http)

az iot device simulate -n {iothub_name} -d {device_id} --rs abandon --protocol http

Parametry wymagane

--device-id -d

Identyfikator urządzenia docelowego.

Parametry opcjonalne

--certificate-file-path --cp

Ścieżka do pliku certyfikatu.

--da --data

Treść wiadomości. Podaj tekst lub nieprzetworzone dane json.

wartość domyślna: Ping from Az CLI IoT Extension
--dtmi --model-id

Identyfikator modelu usługi Digital Twin, który urządzenie będzie raportować podczas nawiązywania połączenia z koncentratorem. Zobacz https://docs.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play , aby uzyskać więcej szczegółów.

--hub-name -n

Nazwa lub nazwa hosta usługi IoT Hub. Wymagane, jeśli nie podano opcji --login.

--init-reported-properties --irp

Początkowy stan zgłoszonych właściwości bliźniaczej reprezentacji urządzenia docelowego podczas uruchamiania symulatora. Opcjonalny parametr, obsługiwany tylko dla mqtt.

--key --symmetric-key

Klucz symetryczny do użycia dla urządzenia. Jeśli podano klucz symetryczny i inne argumenty uwierzytelniania urządzenia, klucz symetryczny ma priorytet.

--key-file-path --kp

Ścieżka do pliku klucza.

--login -l

To polecenie obsługuje jednostkę parametry połączenia z uprawnieniami do wykonania akcji. Użyj polecenia , aby uniknąć logowania do sesji za pomocą polecenia "az login". Jeśli zarówno jednostka parametry połączenia, jak i nazwa są podane, parametry połączenia ma priorytet. Wymagane, jeśli nie podano --hub-name.

--mc --msg-count

Liczba komunikatów urządzenia do wysłania do usługi IoT Hub.

wartość domyślna: 100
--method-response-code --mrc

Kod stanu, który ma zostać zwrócony, gdy metoda bezpośrednia jest wykonywana na urządzeniu. Opcjonalny parametr, obsługiwany tylko dla mqtt.

--method-response-payload --mrp

Ładunek do zwrócenia, gdy metoda bezpośrednia jest wykonywana na urządzeniu. Podaj ścieżkę pliku lub nieprzetworzone dane json. Opcjonalny parametr, obsługiwany tylko dla mqtt.

--mi --msg-interval

Opóźnienie w sekundach między komunikatami z urządzenia do chmury.

wartość domyślna: 3
--pass --passphrase

Hasło dla pliku klucza.

--properties --props -p

Torba właściwości komunikatu w parach klucz-wartość o następującym formacie: a=b; c=d. W przypadku komunikatów mqtt — można wysyłać właściwości systemu przy użyciu wartości $.=value. Na przykład $.cid=12345 ustawia właściwość identyfikatora korelacji systemu. Inne przykłady identyfikatorów właściwości systemu obejmują $.ct dla typu zawartości, $.mid dla identyfikatora komunikatu i $.ce do kodowania zawartości. W przypadku komunikatów http — właściwości aplikacji są wysyłane przy użyciu polecenia iothub-app-=value, na przykład iothub-app-myprop=myvalue. Właściwości systemu są zazwyczaj poprzedzone iothub— podobnie jak iothub-correlationid, ale istnieją wyjątki, takie jak content-type i content-encoding.

--proto --protocol

Wskazuje protokół komunikatów urządzenie-chmura.

akceptowane wartości: http, mqtt
wartość domyślna: mqtt
--receive-settle --rs

Wskazuje, jak rozstrzygnąć odebrane komunikaty z chmury do urządzenia. Obsługiwane tylko w przypadku protokołu HTTP.

akceptowane wartości: abandon, complete, reject
wartość domyślna: complete
--resource-group -g

Nazwa grupy zasobów. Grupę domyślną można skonfigurować przy użyciu polecenia az configure --defaults group=<name>.

Parametry globalne
--debug

Zwiększ szczegółowość rejestrowania, aby wyświetlić wszystkie dzienniki debugowania.

--help -h

Pokaż ten komunikat pomocy i zakończ pracę.

--only-show-errors

Pokaż tylko błędy, pomijając ostrzeżenia.

--output -o

Format danych wyjściowych.

akceptowane wartości: json, jsonc, none, table, tsv, yaml, yamlc
wartość domyślna: json
--query

Ciąg zapytania JMESPath. Zobacz http://jmespath.org/ , aby uzyskać więcej informacji i przykładów.

--subscription

Nazwa lub identyfikator subskrypcji. Subskrypcję domyślną można skonfigurować przy użyciu polecenia az account set -s NAME_OR_ID.

--verbose

Zwiększ szczegółowość rejestrowania. Użyj --debuguj, aby uzyskać pełne dzienniki debugowania.

az iot device upload-file

Przekaż plik lokalny jako urządzenie do wstępnie skonfigurowanego kontenera magazynu obiektów blob.

az iot device upload-file --content-type
                          --device-id
                          --file-path
                          [--hub-name]
                          [--login]
                          [--resource-group]

Parametry wymagane

--content-type --ct

Typ pliku MIME.

--device-id -d

Identyfikator urządzenia docelowego.

--file-path --fp

Ścieżka do pliku do przekazania.

Parametry opcjonalne

--hub-name -n

Nazwa lub nazwa hosta usługi IoT Hub. Wymagane, jeśli nie podano opcji --login.

--login -l

To polecenie obsługuje jednostkę parametry połączenia z uprawnieniami do wykonania akcji. Użyj polecenia , aby uniknąć logowania do sesji za pomocą polecenia "az login". Jeśli zarówno jednostka parametry połączenia, jak i nazwa są podane, parametry połączenia ma priorytet. Wymagane, jeśli nie podano --hub-name.

--resource-group -g

Nazwa grupy zasobów. Grupę domyślną można skonfigurować przy użyciu polecenia az configure --defaults group=<name>.

Parametry globalne
--debug

Zwiększ szczegółowość rejestrowania, aby wyświetlić wszystkie dzienniki debugowania.

--help -h

Pokaż ten komunikat pomocy i zakończ pracę.

--only-show-errors

Pokaż tylko błędy, pomijając ostrzeżenia.

--output -o

Format danych wyjściowych.

akceptowane wartości: json, jsonc, none, table, tsv, yaml, yamlc
wartość domyślna: json
--query

Ciąg zapytania JMESPath. Zobacz http://jmespath.org/ , aby uzyskać więcej informacji i przykładów.

--subscription

Nazwa lub identyfikator subskrypcji. Subskrypcję domyślną można skonfigurować przy użyciu polecenia az account set -s NAME_OR_ID.

--verbose

Zwiększ szczegółowość rejestrowania. Użyj --debuguj, aby uzyskać pełne dzienniki debugowania.