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
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.
Ruta de acceso al archivo de certificado.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
Cuerpo del mensaje. Proporcione texto o json sin formato.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | Ping from Az CLI IoT Extension |
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.
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 |
Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | IoT Hub Identifier Arguments |
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 |
Ruta de acceso al archivo de clave.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
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 |
Número de mensajes de dispositivo que se van a enviar a IoT Hub.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | 1 |
Frase de contraseña para el archivo de clave.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
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.
Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.
Parámetros globales
Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Mostrar este mensaje de ayuda y salir.
Solo se muestran errores, suprimiendo advertencias.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Formato de salida.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | json |
| Valores aceptados: | json, jsonc, none, table, tsv, yaml, yamlc |
Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.
Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.
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
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
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.
Ruta de acceso al archivo de certificado.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
Cuerpo del mensaje. Proporcione texto o json sin formato.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | Ping from Az CLI IoT Extension |
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 |
Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | IoT Hub Identifier Arguments |
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.
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 |
Ruta de acceso al archivo de clave.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
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 |
Número de mensajes de dispositivo que se van a enviar a IoT Hub.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | 100 |
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.
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.
Retraso en segundos entre mensajes de dispositivo a nube.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | 3 |
Frase de contraseña para el archivo de clave.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | Device Authentication Arguments |
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.
Indica el protocolo de mensajes de dispositivo a nube.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | mqtt |
| Valores aceptados: | http, mqtt |
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 |
Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.
Parámetros globales
Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Mostrar este mensaje de ayuda y salir.
Solo se muestran errores, suprimiendo advertencias.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Formato de salida.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | json |
| Valores aceptados: | json, jsonc, none, table, tsv, yaml, yamlc |
Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.
Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.
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
Tipo de archivo MIME.
Id. de dispositivo de destino.
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.
Nombre o nombre de host de IoT Hub. Obligatorio si no se proporciona --login.
| Propiedad | Valor |
|---|---|
| Grupo de parámetros: | IoT Hub Identifier Arguments |
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 |
Nombre del grupo de recursos. Puede configurar el grupo predeterminado mediante az configure --defaults group=<name>.
Parámetros globales
Aumente el nivel de detalle del registro para mostrar todos los registros de depuración.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Mostrar este mensaje de ayuda y salir.
Solo se muestran errores, suprimiendo advertencias.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |
Formato de salida.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | json |
| Valores aceptados: | json, jsonc, none, table, tsv, yaml, yamlc |
Cadena de consulta JMESPath. Consulte http://jmespath.org/ para obtener más información y ejemplos.
Nombre o identificador de la suscripción. Puede configurar la suscripción predeterminada mediante az account set -s NAME_OR_ID.
Aumente el nivel de detalle del registro. Usa --debug para ver registros de depuración completos.
| Propiedad | Valor |
|---|---|
| Valor predeterminado: | False |