Compartir a través de


az iot device

Note

Esta referencia forma parte de la extensión azure-iot para la CLI de Azure (versión 2.67.0 o posterior). La extensión instalará automáticamente la primera vez que ejecute un comando az iot device. Obtenga más información sobre las extensiones.

Aproveche la simulación de dispositivos y otras operaciones centradas en dispositivos, como funcionalidades de mensajería de dispositivo a nube o de nube a dispositivo.

Comandos

Nombre Description Tipo Estado
az iot device c2d-message

Comandos de mensajería de nube a dispositivo.

Extension GA
az iot device c2d-message abandon

Abandone un mensaje de nube a dispositivo.

Extension GA
az iot device c2d-message complete

Complete un mensaje de nube a dispositivo.

Extension GA
az iot device c2d-message purge

Purgar la cola de mensajes de nube a dispositivo para un dispositivo de destino.

Extension GA
az iot device c2d-message receive

Reciba un mensaje de nube a dispositivo.

Extension GA
az iot device c2d-message reject

Rechace o interbloquee un mensaje de nube a dispositivo.

Extension GA
az iot device c2d-message send

Envíe un mensaje de nube a dispositivo.

Extension GA
az iot device registration

Administrar registros de dispositivos IoT para ioT Device Provisioning Service.

Extension Preview
az iot device registration create

Registre un dispositivo IoT con el servicio IoT Device Provisioning.

Extension Preview
az iot device send-d2c-message

Envíe un mensaje mqtt device-to-cloud.

Extension GA
az iot device simulate

Simulación de un dispositivo en una instancia de Azure IoT Hub.

Extension Experimental
az iot device upload-file

Cargue un archivo local como un dispositivo en un contenedor de almacenamiento de blobs preconfigurado.

Extension GA

az iot device send-d2c-message

Envíe un mensaje mqtt device-to-cloud.

El comando admite el envío de mensajes con carga personalizada en formato binario o cadena unicode. Al intentar enviar binarios, los datos deben proceder de un archivo (a través --data-file-pathde ) y el tipo de contenido debe establecerse application/octet-streamen .

Nota: El comando solo funciona para dispositivos basados en autenticación de claves simétricas (SAS). Para habilitar la consulta en un cuerpo del mensaje en el enrutamiento de mensajes, la propiedad del sistema de tipo de contenido debe ser application/JSON y la propiedad del sistema de codificación de contenido debe ser uno de los valores de codificación UTF admitidos por esa propiedad del sistema (UTF-8, UTF-16 o UTF-32). Si la codificación de contenido no se establece cuando Azure Storage se usa como punto de conexión de enrutamiento, IoT Hub escribe los mensajes en formato codificado en base 64. Si usa métodos de autenticación x509, se deben proporcionar los archivos de certificado y clave (y la frase de contraseña si es necesario).

az iot device send-d2c-message --device-id
                               [--certificate-file-path --cp]
                               [--da --data]
                               [--data-file-path --dfp]
                               [--dtmi --model-id]
                               [--hub-name]
                               [--key --symmetric-key]
                               [--key-file-path --kp]
                               [--login]
                               [--mc --msg-count]
                               [--pass --passphrase]
                               [--properties --props]
                               [--resource-group]

Ejemplos

Uso básico

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

Uso básico para el dispositivo que registra el identificador de modelo de "dtmi:com:example:Thermostat; 1' tras la conexión

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

Uso básico del dispositivo con autenticación x509

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

Uso básico del dispositivo con autenticación x509 en la que el archivo de clave tiene una frase de contraseña

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

Uso básico con datos personalizados

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

Enviar propiedades de la aplicación

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

Enviar propiedades del sistema (id. de mensaje e id. de correlación)

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

Enviar datos personalizados especificando el tipo de contenido y la codificación de contenido en las propiedades del sistema

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

Enviar datos personalizados en formato binario especificando la codificación de contenido en las propiedades del sistema

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

Enviar datos personalizados en formato JSON especificando el tipo de contenido y la codificación de contenido en las propiedades del sistema

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

Parámetros requeridos

--device-id -d

Id. de dispositivo de destino.

Parámetros opcionales

Los parámetros siguientes son opcionales, pero dependiendo del contexto, es posible que se requiera uno o varios para que el comando se ejecute correctamente.

--certificate-file-path --cp

Ruta de acceso al archivo de certificado.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--da --data

Cuerpo del mensaje. Proporcione texto o json sin formato.

Propiedad Valor
Valor predeterminado: Ping from Az CLI IoT Extension
--data-file-path --dfp
Vista previa

Proporcione la ruta de acceso al archivo para la carga del cuerpo del mensaje. Tenga en cuenta si la carga debe enviarse en formato binario, establezca el tipo de contenido en application/octet-stream.

--dtmi --model-id

El id. de modelo del gemelo digital que notificará el dispositivo al conectarse al centro. Consulte https://learn.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play para obtener más detalles.

Propiedad Valor
Grupo de parámetros: Digital Twin Arguments
--hub-name -n

Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--key --symmetric-key

Clave simétrica que se va a usar para el dispositivo. Si se proporcionan la clave simétrica y otros argumentos de autenticación de dispositivos, la clave simétrica tiene prioridad.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--key-file-path --kp

Ruta de acceso al archivo de clave.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--login -l

Este comando admite una cadena de conexión de entidad con derechos para realizar la acción. Use para evitar el inicio de sesión de sesión a través de "az login". Si se proporcionan las cadena de conexión y el nombre de una entidad, el cadena de conexión tiene prioridad. Obligatorio si no se proporciona --hub-name.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--mc --msg-count

Número de mensajes de dispositivo que se van a enviar a IoT Hub.

Propiedad Valor
Valor predeterminado: 1
--pass --passphrase

Frase de contraseña para el archivo de clave.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--properties --props -p

Contenedor de propiedades de mensaje en pares clave-valor con el formato siguiente: a=b; c=d. Para la mensajería mqtt: puede enviar propiedades del sistema mediante $. {name}=value. Por ejemplo, $.cid=12345 establece la propiedad id. de correlación del sistema. Otros ejemplos de identificadores de propiedad del sistema incluyen $.ct para el tipo de contenido, $.mid para el identificador de mensaje y $.ce para la codificación de contenido.

--resource-group -g

Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.

Parámetros globales
--debug

Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.

Propiedad Valor
Valor predeterminado: False
--help -h

Mostrar este mensaje de ayuda y salir.

--only-show-errors

Solo se muestran errores, suprimiendo advertencias.

Propiedad Valor
Valor predeterminado: False
--output -o

Formato de salida.

Propiedad Valor
Valor predeterminado: json
Valores aceptados: json, jsonc, none, table, tsv, yaml, yamlc
--query

Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.

--subscription

Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.

--verbose

Aumente el nivel de detalle del registro. Usa --debug para ver registros de depuración completos.

Propiedad Valor
Valor predeterminado: False

az iot device simulate

Habilitación de características

Este comando es experimental y está en desarrollo. Niveles de referencia y soporte técnico: https://aka.ms/CLI_refstatus

Simulación de un dispositivo en una instancia de Azure IoT Hub.

Mientras se ejecuta la simulación de dispositivo, el dispositivo recibirá y confirmará automáticamente los mensajes de la nube al dispositivo (c2d). En el caso de la simulación mqtt, todos los mensajes c2d se confirmarán con la finalización. Para la confirmación c2d de simulación http se basa en la selección del usuario que puede completarse, rechazar o abandonar. La simulación mqtt también admite la invocación de método directo que se puede reconocer mediante un código de estado de respuesta y una carga de respuesta. Nota: El comando de forma predeterminada establecerá content-type en application/json y content-encoding en utf-8. Esto se puede invalidar. Nota: Si usa métodos de autenticación x509, se deben proporcionar los archivos de certificado y clave (y la frase de contraseña si es necesario).

az iot device simulate --device-id
                       [--certificate-file-path --cp]
                       [--da --data]
                       [--dtmi --model-id]
                       [--hub-name]
                       [--init-reported-properties --irp]
                       [--key --symmetric-key]
                       [--key-file-path --kp]
                       [--login]
                       [--mc --msg-count]
                       [--method-response-code --mrc]
                       [--method-response-payload --mrp]
                       [--mi --msg-interval]
                       [--pass --passphrase]
                       [--properties --props]
                       [--proto --protocol {http, mqtt}]
                       [--receive-settle --rs {abandon, complete, reject}]
                       [--resource-group]

Ejemplos

Uso básico (mqtt)

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

Uso básico para el dispositivo que registra el identificador de modelo de "dtmi:com:example:Thermostat; 1' tras la conexión (mqtt)

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

Uso básico del dispositivo con autenticación x509 (mqtt)

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

Uso básico del dispositivo con autenticación x509 (mqtt) en la que el archivo de clave tiene una frase de contraseña

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

Envío de propiedades mixtas (mqtt)

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

Envío de código de estado de respuesta del método directo y carga de respuesta del método directo como json sin formato (solo mqtt)

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

Enviar código de estado de respuesta de método directo y carga de respuesta de método directo como ruta de acceso al archivo local (solo mqtt)

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

Enviar el estado inicial de las propiedades notificadas del dispositivo gemelo como json sin formato para el dispositivo de destino (solo mqtt)

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

Enviar el estado inicial de las propiedades notificadas del dispositivo gemelo como ruta de acceso al archivo local para el dispositivo de destino (solo mqtt)

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

Uso básico (http)

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

Envío de propiedades mixtas (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"

Elegir el recuento total de mensajes y el intervalo entre los mensajes

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

Rechazar mensajes c2d (solo http)

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

Abandonar mensajes c2d (solo http)

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

Parámetros requeridos

--device-id -d

Id. de dispositivo de destino.

Parámetros opcionales

Los parámetros siguientes son opcionales, pero dependiendo del contexto, es posible que se requiera uno o varios para que el comando se ejecute correctamente.

--certificate-file-path --cp

Ruta de acceso al archivo de certificado.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--da --data

Cuerpo del mensaje. Proporcione texto o json sin formato.

Propiedad Valor
Valor predeterminado: Ping from Az CLI IoT Extension
--dtmi --model-id

El id. de modelo del gemelo digital que notificará el dispositivo al conectarse al centro. Consulte https://learn.microsoft.com/en-us/azure/iot-develop/overview-iot-plug-and-play para obtener más detalles.

Propiedad Valor
Grupo de parámetros: Digital Twin Arguments
--hub-name -n

Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--init-reported-properties --irp

Estado inicial de las propiedades notificadas de gemelos para el dispositivo de destino cuando se ejecuta el simulador. Parámetro opcional, solo compatible con mqtt.

--key --symmetric-key

Clave simétrica que se va a usar para el dispositivo. Si se proporcionan la clave simétrica y otros argumentos de autenticación de dispositivos, la clave simétrica tiene prioridad.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--key-file-path --kp

Ruta de acceso al archivo de clave.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--login -l

Este comando admite una cadena de conexión de entidad con derechos para realizar la acción. Use para evitar el inicio de sesión de sesión a través de "az login". Si se proporcionan las cadena de conexión y el nombre de una entidad, el cadena de conexión tiene prioridad. Obligatorio si no se proporciona --hub-name.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--mc --msg-count

Número de mensajes de dispositivo que se van a enviar a IoT Hub.

Propiedad Valor
Valor predeterminado: 100
--method-response-code --mrc

Código de estado que se va a devolver cuando se ejecuta el método directo en el dispositivo. Parámetro opcional, solo compatible con mqtt.

--method-response-payload --mrp

Carga que se devolverá cuando se ejecuta el método directo en el dispositivo. Proporcione la ruta de acceso del archivo o json sin formato. Parámetro opcional, solo compatible con mqtt.

--mi --msg-interval

Retraso en segundos entre mensajes de dispositivo a nube.

Propiedad Valor
Valor predeterminado: 3
--pass --passphrase

Frase de contraseña para el archivo de clave.

Propiedad Valor
Grupo de parámetros: Device Authentication Arguments
--properties --props -p

Contenedor de propiedades de mensaje en pares clave-valor con el formato siguiente: a=b; c=d. Para la mensajería mqtt: puede enviar propiedades del sistema mediante $. {name}=value. Por ejemplo, $.cid=12345 establece la propiedad id. de correlación del sistema. Otros ejemplos de identificadores de propiedad del sistema incluyen $.ct para el tipo de contenido, $.mid para el identificador de mensaje y $.ce para la codificación de contenido. Para la mensajería http: las propiedades de la aplicación se envían mediante iothub-app-{name}=value, por ejemplo iothub-app-myprop=myvalue. Las propiedades del sistema suelen tener el prefijo iothub-{name} como iothub-correlationid, pero hay excepciones como content-type y content-encoding.

--proto --protocol

Indica el protocolo de mensajes de dispositivo a nube.

Propiedad Valor
Valor predeterminado: mqtt
Valores aceptados: http, mqtt
--receive-settle --rs

Indica cómo liquidar los mensajes recibidos de la nube al dispositivo. Solo se admite con HTTP.

Propiedad Valor
Valor predeterminado: complete
Valores aceptados: abandon, complete, reject
--resource-group -g

Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.

Parámetros globales
--debug

Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.

Propiedad Valor
Valor predeterminado: False
--help -h

Mostrar este mensaje de ayuda y salir.

--only-show-errors

Solo se muestran errores, suprimiendo advertencias.

Propiedad Valor
Valor predeterminado: False
--output -o

Formato de salida.

Propiedad Valor
Valor predeterminado: json
Valores aceptados: json, jsonc, none, table, tsv, yaml, yamlc
--query

Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.

--subscription

Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.

--verbose

Aumente el nivel de detalle del registro. Usa --debug para ver registros de depuración completos.

Propiedad Valor
Valor predeterminado: False

az iot device upload-file

Cargue un archivo local como un dispositivo en un contenedor de almacenamiento de blobs preconfigurado.

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

Parámetros requeridos

--content-type --ct

Tipo de archivo MIME.

--device-id -d

Id. de dispositivo de destino.

--file-path --fp

Ruta de acceso al archivo para la carga.

Parámetros opcionales

Los parámetros siguientes son opcionales, pero dependiendo del contexto, es posible que se requiera uno o varios para que el comando se ejecute correctamente.

--hub-name -n

Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--login -l

Este comando admite una cadena de conexión de entidad con derechos para realizar la acción. Use para evitar el inicio de sesión de sesión a través de "az login". Si se proporcionan las cadena de conexión y el nombre de una entidad, el cadena de conexión tiene prioridad. Obligatorio si no se proporciona --hub-name.

Propiedad Valor
Grupo de parámetros: IoT Hub Identifier Arguments
--resource-group -g

Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.

Parámetros globales
--debug

Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.

Propiedad Valor
Valor predeterminado: False
--help -h

Mostrar este mensaje de ayuda y salir.

--only-show-errors

Solo se muestran errores, suprimiendo advertencias.

Propiedad Valor
Valor predeterminado: False
--output -o

Formato de salida.

Propiedad Valor
Valor predeterminado: json
Valores aceptados: json, jsonc, none, table, tsv, yaml, yamlc
--query

Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.

--subscription

Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.

--verbose

Aumente el nivel de detalle del registro. Usa --debug para ver registros de depuración completos.

Propiedad Valor
Valor predeterminado: False