Share via


az iot device c2d-message

Nota

Questo riferimento fa parte dell'estensione azure-iot per l'interfaccia della riga di comando di Azure (versione 2.37.0 o successiva). L'estensione installerà automaticamente la prima volta che si esegue un comando az iot device c2d-message . Altre informazioni sulle estensioni.

Comandi di messaggistica da cloud a dispositivo.

Comandi

Nome Descrizione Tipo Stato
az iot device c2d-message abandon

Abbandonare un messaggio da cloud a dispositivo.

Estensione Disponibilità generale
az iot device c2d-message complete

Completare un messaggio da cloud a dispositivo.

Estensione Disponibilità generale
az iot device c2d-message purge

Eliminare la coda di messaggi da cloud a dispositivo per un dispositivo di destinazione.

Estensione Disponibilità generale
az iot device c2d-message receive

Ricevere un messaggio da cloud a dispositivo.

Estensione Disponibilità generale
az iot device c2d-message reject

Rifiutare o disattivare un messaggio da cloud a dispositivo.

Estensione Disponibilità generale
az iot device c2d-message send

Inviare un messaggio da cloud a dispositivo.

Estensione Disponibilità generale

az iot device c2d-message abandon

Abbandonare un messaggio da cloud a dispositivo.

az iot device c2d-message abandon --device-id
                                  [--etag]
                                  [--hub-name]
                                  [--login]
                                  [--resource-group]

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--etag -e

Tag Etag o tag di entità corrispondente all'ultimo stato della risorsa. Se non viene specificato alcun etag, viene usato il valore '*'.

--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.

az iot device c2d-message complete

Completare un messaggio da cloud a dispositivo.

az iot device c2d-message complete --device-id
                                   [--etag]
                                   [--hub-name]
                                   [--login]
                                   [--resource-group]

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--etag -e

Tag Etag o tag di entità corrispondente all'ultimo stato della risorsa. Se non viene specificato alcun etag, viene usato il valore '*'.

--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.

az iot device c2d-message purge

Eliminare la coda di messaggi da cloud a dispositivo per un dispositivo di destinazione.

az iot device c2d-message purge --device-id
                                [--hub-name]
                                [--login]
                                [--resource-group]

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.

az iot device c2d-message receive

Ricevere un messaggio da cloud a dispositivo.

Il corpo del messaggio ricevuto verrà decodificato solo quando la codifica del contenuto è impostata su 'utf-8', 'utf-16' o 'utf-32'. Il payload del messaggio verrà visualizzato come {{payload non decodificabile}} quando la codifica del contenuto non è impostata su una delle versioni precedenti o non riesce a decodificare anche quando la codifica del contenuto è impostata su una delle opzioni precedenti.

Nota: verrà accettato un solo argomento ack di messaggio [--complete, --reject, --abandon].

az iot device c2d-message receive --device-id
                                  [--abandon {false, true}]
                                  [--complete {false, true}]
                                  [--hub-name]
                                  [--lock-timeout]
                                  [--login]
                                  [--reject {false, true}]
                                  [--resource-group]

Esempio

Utilizzo di base

az iot device c2d-message receive -d {device_id} -n {hub_name} -g {resource_group}

Ricevere un messaggio e impostare un timeout di blocco di 30 secondi per tale messaggio

az iot device c2d-message receive -d {device_id} -n {hub_name} -g {resource_group} --lt {30}

Ricevere un messaggio e prenderlo come "completo" dopo che è stato ricevuto

az iot device c2d-message receive -d {device_id} -n {hub_name} -g {resource_group} --complete

Ricevere un messaggio e rifiutarlo dopo la ricezione

az iot device c2d-message receive -d {device_id} -n {hub_name} -g {resource_group} --reject

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--abandon

Abbandonare il messaggio da cloud a dispositivo dopo la ricezione.

valori accettati: false, true
valore predefinito: False
--complete

Completare il messaggio da cloud a dispositivo dopo la ricezione.

valori accettati: false, true
valore predefinito: False
--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--lock-timeout --lt

Specifica la quantità di tempo in cui un messaggio sarà invisibile ad altre chiamate di ricezione.

valore predefinito: 60
--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--reject

Rifiutare il messaggio da cloud a dispositivo dopo la ricezione.

valori accettati: false, true
valore predefinito: False
--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.

az iot device c2d-message reject

Rifiutare o disattivare un messaggio da cloud a dispositivo.

az iot device c2d-message reject --device-id
                                 [--etag]
                                 [--hub-name]
                                 [--login]
                                 [--resource-group]

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--etag -e

Tag Etag o tag di entità corrispondente all'ultimo stato della risorsa. Se non viene specificato alcun etag, viene usato il valore '*'.

--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.

az iot device c2d-message send

Inviare un messaggio da cloud a dispositivo.

Questo comando si basa su e può installare il pacchetto Cython dipendente (uamqp) al primo esecuzione. https://github.com/Azure/azure-uamqp-python

Nota: per impostazione predefinita, la codifica del contenuto è utf-8. Il comando invierà il corpo del messaggio con azione di codifica quando la proprietà content-encoding è utf-8, utf-16 o utf-32. Se il valore di codifica del contenuto non è uno di questi, la proprietà verrà comunque inviata senza alcuna azione di codifica eseguita.

Quando si invia un corpo di messaggio binario, il contenuto deve essere fornito da un file (tramite --data-file-path) e il tipo di contenuto deve essere impostato su application/octet-stream.

az iot device c2d-message send --device-id
                               [--ack {full, negative, positive}]
                               [--auth-type {key, login}]
                               [--ce]
                               [--cid]
                               [--content-type]
                               [--da]
                               [--data-file-path]
                               [--expiry]
                               [--hub-name]
                               [--login]
                               [--message-id]
                               [--properties]
                               [--repair {false, true}]
                               [--resource-group]
                               [--uid]
                               [--wait {false, true}]
                               [--yes {false, true}]

Esempio

Utilizzo di base con corpo del messaggio predefinito

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

Inviare messaggi da cloud a dispositivo con dati e proprietà personalizzati.

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

Inviare un messaggio C2D e attendere l'acknowledgement del dispositivo

az iot device c2d-message send -d {device_id} -n {iothub_name} --ack full --wait

Inviare un messaggio C2D in formato binario da un file.

az iot device c2d-message send -d {device_id} -n {iothub_name} --data-file-path {file_path} --content-type 'application/octet-stream'

Inviare un messaggio C2D in formato JSON da un file.

az iot device c2d-message send -d {device_id} -n {iothub_name} --data-file-path {file_path} --content-type 'application/json'

Parametri necessari

--device-id -d

ID dispositivo di destinazione.

Parametri facoltativi

--ack

Richiedere il recapito di commenti e suggerimenti per messaggio relativi allo stato finale del messaggio. La descrizione dei valori ack è la seguente. Positivo: se il messaggio c2d raggiunge lo stato Completato, hub IoT genera un messaggio di feedback. Negativo: se il messaggio c2d raggiunge lo stato Messaggi non recapitabili, hub IoT genera un messaggio di feedback. Completo: hub IoT genera un messaggio di feedback in entrambi i casi. Per impostazione predefinita, non viene richiesto alcun ack.

valori accettati: full, negative, positive
--auth-type

Indica se l'operazione deve derivare automaticamente una chiave di criteri o usare la sessione di Azure AD corrente. Se il tipo di autenticazione è login e viene specificato il nome host della risorsa, la ricerca della risorsa verrà ignorata a meno che non sia necessario. È possibile configurare l'impostazione predefinita usando az configure --defaults iothub-data-auth-type=<auth-type-value>.

valori accettati: key, login
valore predefinito: key
--ce --content-encoding

Codifica per il corpo del messaggio C2D.

valore predefinito: utf-8
--cid --correlation-id

ID di correlazione associato al messaggio C2D.

--content-type --ct

Tipo di contenuto per il corpo del messaggio C2D.

--da --data

Corpo del messaggio. Specificare testo o json non elaborato.

valore predefinito: Ping from Az CLI IoT Extension
--data-file-path --dfp
Anteprima

Specificare il percorso del file per il payload del corpo del messaggio. Si noti che quando il payload deve essere inviato in formato binario, impostare il tipo di contenuto su application/octet-stream.

--expiry --expiry-time-utc

Le unità sono millisecondi dall'epoca unix. Se non viene indicato il valore predefinito hub IoT TTL del messaggio C2D.

--hub-name -n

hub IoT nome o nome host. Obbligatorio se non viene specificato --login.

--login -l

Questo comando supporta un'entità stringa di connessione con diritti per eseguire l'azione. Usare per evitare l'accesso di sessione tramite "az login". Se vengono forniti sia un stringa di connessione di entità che un nome, il stringa di connessione ha priorità. Obbligatorio se --hub-name non è specificato.

--message-id --mid

ID messaggio C2D. Se non viene specificato alcun ID messaggio, verrà generato un UUID.

--properties --props -p

Contenitore delle proprietà del messaggio in coppie chiave-valore con il formato seguente: a=b; c=d.

--repair -r

Reinstallare la dipendenza uamqp compatibile con la versione dell'estensione. Valore predefinito: false.

valori accettati: false, true
valore predefinito: False
--resource-group -g

Nome del gruppo di risorse. È possibile configurare il gruppo predefinito con az configure --defaults group=<name>.

--uid --user-id

Proprietà id utente del messaggio C2D.

--wait -w

Se l'operazione di invio c2d viene bloccata fino a quando non viene ricevuto il feedback del dispositivo.

valori accettati: false, true
valore predefinito: False
--yes -y

Ignorare le richieste dell'utente. Indica l'accettazione dell'azione. Usato principalmente per gli scenari di automazione. Valore predefinito: false.

valori accettati: false, true
valore predefinito: False
Parametri globali
--debug

Aumenta il livello di dettaglio della registrazione per mostrare tutti i log di debug.

--help -h

Visualizza questo messaggio della guida ed esce.

--only-show-errors

Mostra solo gli errori, eliminando gli avvisi.

--output -o

Formato di output.

valori accettati: json, jsonc, none, table, tsv, yaml, yamlc
valore predefinito: json
--query

Stringa di query JMESPath. Per altre informazioni ed esempi, vedere http://jmespath.org/.

--subscription

Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.

--verbose

Aumenta il livello di dettaglio della registrazione. Usare --debug per log di debug completi.