az iot device

Hinweis

Diese Referenz ist Teil der Azure-iot-Erweiterung für die Azure CLI (Version 2.37.0 oder höher). Die Erweiterung wird automatisch installiert, wenn Sie einen Az iot-Gerätebefehl zum ersten Mal ausführen. Weitere Informationen zu Erweiterungen

Nutzen Sie die Gerätesimulation und andere geräteorientierte Vorgänge, z. B. Geräte-zu-Cloud- oder Cloud-zu-Gerät-Messaging-Funktionen.

Befehle

Name Beschreibung Typ Status
az iot device c2d-message

Cloud-to-Device-Messagingbefehle.

Durchwahl Allgemein verfügbar
az iot device c2d-message abandon

Verlassen Sie eine Cloud-to-Device-Nachricht.

Durchwahl Allgemein verfügbar
az iot device c2d-message complete

Schließen Sie eine Cloud-zu-Gerät-Nachricht ab.

Durchwahl Allgemein verfügbar
az iot device c2d-message purge

Löschen der Nachrichtenwarteschlange für Cloud-zu-Gerät für ein Zielgerät.

Durchwahl Allgemein verfügbar
az iot device c2d-message receive

Empfangen einer Cloud-zu-Gerät-Nachricht.

Durchwahl Allgemein verfügbar
az iot device c2d-message reject

Ablehnen oder Totlettieren einer Cloud-zu-Gerät-Nachricht.

Durchwahl Allgemein verfügbar
az iot device c2d-message send

Senden sie eine Cloud-zu-Gerät-Nachricht.

Durchwahl Allgemein verfügbar
az iot device registration

Verwalten Von IoT-Geräteregistrierungen für den IoT-Gerätebereitstellungsdienst.

Durchwahl Vorschau
az iot device registration create

Registrieren Sie ein IoT-Gerät beim IoT-Gerätebereitstellungsdienst.

Durchwahl Vorschau
az iot device send-d2c-message

Senden Sie eine mqtt-Geräte-zu-Cloud-Nachricht.

Durchwahl Allgemein verfügbar
az iot device simulate

Simulieren eines Geräts in einem Azure IoT Hub.

Durchwahl Experimentell
az iot device upload-file

Laden Sie eine lokale Datei als Gerät in einen vorkonfigurierten BLOB-Speichercontainer hoch.

Durchwahl Allgemein verfügbar

az iot device send-d2c-message

Senden Sie eine mqtt-Geräte-zu-Cloud-Nachricht.

Der Befehl unterstützt das Senden von Nachrichten mit benutzerdefinierter Nutzlast im Unicode-Zeichenfolgen- oder Binärformat. Bei der Absicht, binär zu senden, sollten die Daten aus einer Datei (via --data-file-path) stammen, und der Inhaltstyp sollte auf " application/octet-stream.

Hinweis: Der Befehl funktioniert nur für symmetrische Schlüsselauthentifizierungsgeräte (SAS). Um die Abfrage eines Nachrichtentexts im Nachrichtenrouting zu aktivieren, muss die contentType-Systemeigenschaft "application/JSON" sein, und die contentEncoding-Systemeigenschaft muss einer der UTF-Codierungswerte sein, die von dieser Systemeigenschaft unterstützt werden(UTF-8, UTF-16 oder UTF-32). Wenn die Inhaltscodierung nicht festgelegt ist, wenn Azure Storage als Routingendpunkt verwendet wird, schreibt IoT Hub die Nachrichten im Base64-codierten Format. Bei Verwendung von x509-Authentifizierungsmethoden müssen die Zertifikat- und Schlüsseldateien (und bei Bedarf passphrase) bereitgestellt werden.

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]

Beispiele

Grundlegende Verwendung

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

Grundlegende Verwendung für die Geräteregistrierung der Modell-ID von 'dtmi:com:example:Thermometer; 1' bei Verbindung

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

Grundlegende Verwendung für Geräte mit x509-Authentifizierung

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

Grundlegende Verwendung für Geräte mit x509-Authentifizierung, bei der die Schlüsseldatei über eine Passphrase verfügt

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

Grundlegende Verwendung mit benutzerdefinierten Daten

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

Anwendungseigenschaften senden

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

Systemeigenschaften senden (Nachrichten-ID und Korrelations-ID)

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

Senden von benutzerdefinierten Daten durch Angeben von Inhaltstyp und Inhaltscodierung in Systemeigenschaften

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

Senden von benutzerdefinierten Daten im Binärformat durch Angeben der Inhaltscodierung in Systemeigenschaften

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

Senden von benutzerdefinierten Daten im JSON-Format durch Angeben von Inhaltstyp und Inhaltscodierung in Systemeigenschaften

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

Erforderliche Parameter

--device-id -d

Zielgeräte-ID.

Optionale Parameter

--certificate-file-path --cp

Pfad zur Zertifikatdatei.

--da --data

Nachrichtentext. Geben Sie Text oder unformatierte JSON an.

Standardwert: Ping from Az CLI IoT Extension
--data-file-path --dfp
Vorschau

Geben Sie Pfad zur Datei für die Nachrichtentextnutzlast an. Bitte beachten Sie, dass die Nutzlast im Binärformat gesendet werden muss, den Inhaltstyp auf "Application/octet-stream" festlegen.

--dtmi --model-id

Die Digital Twin Model ID, die das Gerät meldet, wenn eine Verbindung mit dem Hub hergestellt wird. Weitere Informationen finden Sie unter https://docs.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play.

--hub-name -n

IoT Hub-Name oder Hostname. Erforderlich, wenn --login nicht angegeben wird.

--key --symmetric-key

Symmetrischer Schlüssel, der für das Gerät verwendet werden soll. Wenn die symmetrischen Schlüssel und andere Geräteauthentifizierungsargumente bereitgestellt werden, hat der symmetrische Schlüssel Vorrang.

--key-file-path --kp

Pfad zur Schlüsseldatei.

--login -l

Dieser Befehl unterstützt eine Entität Verbindungszeichenfolge mit Rechten zum Ausführen von Aktionen. Wird verwendet, um die Sitzungsanmeldung über "az login" zu vermeiden. Wenn sowohl eine Entität Verbindungszeichenfolge als auch ein Name angegeben werden, hat die Verbindungszeichenfolge Vorrang. Erforderlich, wenn --hub-name nicht angegeben wird.

--mc --msg-count

Anzahl der Gerätenachrichten, die an IoT Hub gesendet werden sollen.

Standardwert: 1
--pass --passphrase

Passphrase für Die Schlüsseldatei.

--properties --props -p

Nachrichteneigenschaftenbehälter in Schlüsselwertpaaren mit dem folgenden Format: a=b; c=d. Für mqtt Messaging - Sie können Systemeigenschaften mit $.=value senden. Beispielsweise legt $.cid=12345 die Systemkorrelations-ID-Eigenschaft fest. Weitere Beispiele für Systemeigenschaftenbezeichner sind $.ct für inhaltstyp, $.mid für die Nachrichten-ID und $.ce für die Inhaltscodierung.

--resource-group -g

Name der Ressourcengruppe Sie können die Standardgruppe mit az configure --defaults group=<name> konfigurieren.

Globale Parameter
--debug

Ausführlichkeit der Protokollierung erhöhen, um alle Debugprotokolle anzuzeigen.

--help -h

Zeigen Sie diese Hilfemeldung an, und schließen Sie sie.

--only-show-errors

Nur Fehler anzeigen und Warnungen unterdrücken.

--output -o

Ausgabeformat.

Zulässige Werte: json, jsonc, none, table, tsv, yaml, yamlc
Standardwert: json
--query

JMESPath-Abfragezeichenfolge. Weitere Informationen und Beispiele finden Sie unter http://jmespath.org/.

--subscription

Der Name oder die ID des Abonnements. Sie können das standardmäßig verwendete Abonnement mittels az account set -s NAME_OR_ID konfigurieren.

--verbose

Ausführlichkeit der Protokollierung erhöhen. „--debug“ für vollständige Debugprotokolle verwenden.

az iot device simulate

Experimentell

Dieser Befehl ist experimentell und wird entwickelt. Referenz- und Supportebenen: https://aka.ms/CLI_refstatus

Simulieren eines Geräts in einem Azure IoT Hub.

Während die Gerätesimulation ausgeführt wird, empfängt das Gerät automatisch Cloud-zu-Gerät -Nachrichten (c2d). Bei der Mqtt-Simulation werden alle c2d-Nachrichten mit Abschluss bestätigt. Bei http Simulation c2d-Bestätigung basiert die Benutzerauswahl, die abgeschlossen, abgelehnt oder abgebrochen werden kann. Die mqtt-Simulation unterstützt auch direkte Methodenaufrufe, die durch einen Antwortstatuscode und eine Antwortnutzlast erkannt werden können. Hinweis: Der Befehl legt standardmäßig den Inhaltstyp auf "application/json" und "content-encoding" auf utf-8 fest. Dies kann außer Kraft gesetzt werden. Hinweis: Bei Verwendung von x509-Authentifizierungsmethoden müssen die Zertifikat- und Schlüsseldateien (und passphrase bei Bedarf) bereitgestellt werden.

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]

Beispiele

Grundlegende Nutzung (mqtt)

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

Grundlegende Verwendung für die Geräteregistrierung der Modell-ID von 'dtmi:com:example:Thermometer; 1' nach Verbindung (mqtt)

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

Grundlegende Verwendung für Gerät mit x509-Authentifizierung (mqtt)

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

Grundlegende Verwendung für Geräte mit x509-Authentifizierung (mqtt), in der die Schlüsseldatei eine Passphrase aufweist

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

Gemischte Eigenschaften senden (mqtt)

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

Senden des Antwortstatuscodes für direkte Methoden und direkte Methodenantwortnutzlast als unformatierter JSON-Code (nur mqtt)

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

Senden des Antwortstatuscodes für direkte Methoden und direkte Methodenantwortnutzlast als Pfad zur lokalen Datei (nur mqtt)

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

Senden des anfänglichen Zustands der geräte twin gemeldeten Eigenschaften als unformatierte JSON für das Zielgerät (nur mqtt)

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

Senden des anfänglichen Zustands von Twin gemeldeten Geräteeigenschaften als Pfad zur lokalen Datei für das Zielgerät (nur mqtt)

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

Grundlegende Verwendung (http)

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

Gemischte Eigenschaften senden (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"

Auswählen der Gesamtanzahl der Nachrichten und des Intervalls zwischen Nachrichten

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

Ablehnen von c2d-Nachrichten (nur http)

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

Abbrechen von c2d-Nachrichten (nur http)

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

Erforderliche Parameter

--device-id -d

Zielgeräte-ID.

Optionale Parameter

--certificate-file-path --cp

Pfad zur Zertifikatdatei.

--da --data

Nachrichtentext. Geben Sie Text oder unformatierte JSON an.

Standardwert: Ping from Az CLI IoT Extension
--dtmi --model-id

Die Digital Twin Model ID, die das Gerät meldet, wenn eine Verbindung mit dem Hub hergestellt wird. Weitere Informationen finden Sie unter https://docs.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play.

--hub-name -n

IoT Hub-Name oder Hostname. Erforderlich, wenn --login nicht angegeben wird.

--init-reported-properties --irp

Der anfängliche Zustand der twin gemeldeten Eigenschaften für das Zielgerät, wenn der Simulator ausgeführt wird. Optionaler Param, nur für mqtt unterstützt.

--key --symmetric-key

Symmetrischer Schlüssel, der für das Gerät verwendet werden soll. Wenn die symmetrischen Schlüssel und andere Geräteauthentifizierungsargumente bereitgestellt werden, hat der symmetrische Schlüssel Vorrang.

--key-file-path --kp

Pfad zur Schlüsseldatei.

--login -l

Dieser Befehl unterstützt eine Entität Verbindungszeichenfolge mit Rechten zum Ausführen von Aktionen. Wird verwendet, um die Sitzungsanmeldung über "az login" zu vermeiden. Wenn sowohl eine Entität Verbindungszeichenfolge als auch ein Name angegeben werden, hat die Verbindungszeichenfolge Vorrang. Erforderlich, wenn --hub-name nicht angegeben wird.

--mc --msg-count

Anzahl der Gerätenachrichten, die an IoT Hub gesendet werden sollen.

Standardwert: 100
--method-response-code --mrc

Statuscode, der zurückgegeben werden soll, wenn die direkte Methode auf dem Gerät ausgeführt wird. Optionaler Param, nur für mqtt unterstützt.

--method-response-payload --mrp

Nutzlast, die zurückgegeben werden soll, wenn die direkte Methode auf dem Gerät ausgeführt wird. Geben Sie dateipfad oder unformatierte JSON an. Optionaler Param, nur für mqtt unterstützt.

--mi --msg-interval

Verzögerung in Sekunden zwischen Geräte-zu-Cloud-Nachrichten.

Standardwert: 3
--pass --passphrase

Passphrase für Die Schlüsseldatei.

--properties --props -p

Nachrichteneigenschaftenbehälter in Schlüsselwertpaaren mit dem folgenden Format: a=b; c=d. Für mqtt Messaging - Sie können Systemeigenschaften mit $.=value senden. Beispielsweise legt $.cid=12345 die Systemkorrelations-ID-Eigenschaft fest. Weitere Beispiele für Systemeigenschaftenbezeichner sind $.ct für inhaltstyp, $.mid für die Nachrichten-ID und $.ce für die Inhaltscodierung. Für http-Messaging – Anwendungseigenschaften werden mithilfe von "iothub-app-=value" gesendet, z. B. "iothub-app-myprop=myvalue". Systemeigenschaften werden in der Regel mit iothub präfixiert– wie iothub-correlationid, aber es gibt Ausnahmen wie Inhaltstyp und Inhaltscodierung.

--proto --protocol

Gibt das Protokoll für Geräte-zu-Cloud-Nachrichten an.

Zulässige Werte: http, mqtt
Standardwert: mqtt
--receive-settle --rs

Gibt an, wie empfangene Cloud-zu-Gerät-Nachrichten abgleichen. Wird nur mit HTTP unterstützt.

Zulässige Werte: abandon, complete, reject
Standardwert: complete
--resource-group -g

Name der Ressourcengruppe Sie können die Standardgruppe mit az configure --defaults group=<name> konfigurieren.

Globale Parameter
--debug

Ausführlichkeit der Protokollierung erhöhen, um alle Debugprotokolle anzuzeigen.

--help -h

Zeigen Sie diese Hilfemeldung an, und schließen Sie sie.

--only-show-errors

Nur Fehler anzeigen und Warnungen unterdrücken.

--output -o

Ausgabeformat.

Zulässige Werte: json, jsonc, none, table, tsv, yaml, yamlc
Standardwert: json
--query

JMESPath-Abfragezeichenfolge. Weitere Informationen und Beispiele finden Sie unter http://jmespath.org/.

--subscription

Der Name oder die ID des Abonnements. Sie können das standardmäßig verwendete Abonnement mittels az account set -s NAME_OR_ID konfigurieren.

--verbose

Ausführlichkeit der Protokollierung erhöhen. „--debug“ für vollständige Debugprotokolle verwenden.

az iot device upload-file

Laden Sie eine lokale Datei als Gerät in einen vorkonfigurierten BLOB-Speichercontainer hoch.

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

Erforderliche Parameter

--content-type --ct

MIME-Dateityp.

--device-id -d

Zielgeräte-ID.

--file-path --fp

Pfad zur Datei zum Hochladen.

Optionale Parameter

--hub-name -n

IoT Hub-Name oder Hostname. Erforderlich, wenn --login nicht angegeben wird.

--login -l

Dieser Befehl unterstützt eine Entität Verbindungszeichenfolge mit Rechten zum Ausführen von Aktionen. Wird verwendet, um die Sitzungsanmeldung über "az login" zu vermeiden. Wenn sowohl eine Entität Verbindungszeichenfolge als auch ein Name angegeben werden, hat die Verbindungszeichenfolge Vorrang. Erforderlich, wenn --hub-name nicht angegeben wird.

--resource-group -g

Name der Ressourcengruppe Sie können die Standardgruppe mit az configure --defaults group=<name> konfigurieren.

Globale Parameter
--debug

Ausführlichkeit der Protokollierung erhöhen, um alle Debugprotokolle anzuzeigen.

--help -h

Zeigen Sie diese Hilfemeldung an, und schließen Sie sie.

--only-show-errors

Nur Fehler anzeigen und Warnungen unterdrücken.

--output -o

Ausgabeformat.

Zulässige Werte: json, jsonc, none, table, tsv, yaml, yamlc
Standardwert: json
--query

JMESPath-Abfragezeichenfolge. Weitere Informationen und Beispiele finden Sie unter http://jmespath.org/.

--subscription

Der Name oder die ID des Abonnements. Sie können das standardmäßig verwendete Abonnement mittels az account set -s NAME_OR_ID konfigurieren.

--verbose

Ausführlichkeit der Protokollierung erhöhen. „--debug“ für vollständige Debugprotokolle verwenden.