IoTHubModuleClient Clase

Un cliente de módulo sincrónico que se conecta a una instancia de Azure IoT Hub o de Azure IoT Edge.

Inicializador para ioTHubModuleClient.

Este inicializador no debe llamarse directamente. En su lugar, use uno de los métodos de clase ">>create_from_<<" para crear instancias

Herencia
azure.iot.device.iothub.sync_clients.GenericIoTHubClient
IoTHubModuleClient
azure.iot.device.iothub.abstract_clients.AbstractIoTHubModuleClient
IoTHubModuleClient

Constructor

IoTHubModuleClient(mqtt_pipeline, http_pipeline)

Parámetros

mqtt_pipeline
<xref:azure.iot.device.iothub.pipeline.MQTTPipeline>
Requerido

Canalización usada para conectarse al punto de conexión de IoTHub.

http_pipeline
<xref:azure.iot.device.iothub.pipeline.HTTPPipeline>
Requerido

Canalización usada para conectarse al punto de conexión de IoTHub a través de HTTP.

Métodos

connect

Conecta el cliente a una instancia de Azure IoT Hub o azure IoT Edge Hub.

El destino se elige en función de las credenciales que se pasan a través del parámetro auth_provider que se proporcionó cuando se inicializó este objeto.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que se haya establecido completamente la conexión al servicio.

create_from_connection_string

Cree una instancia del cliente desde un dispositivo IoTHub o una cadena de conexión de módulo.

create_from_edge_environment

Cree una instancia del cliente desde el entorno de IoT Edge.

Este método solo se puede ejecutar desde dentro de un contenedor de IoT Edge o en un entorno de depuración configurado para el desarrollo de Edge (por ejemplo, Visual Studio, Visual Studio Code).

create_from_sastoken

Creación de instancias del cliente a partir de una cadena de token de SAS creada previamente

create_from_x509_certificate

Cree una instancia de un cliente mediante la autenticación de certificados X509.

disconnect

Desconecte el cliente de la instancia de Azure IoT Hub o azure IoT Edge Hub.

Se recomienda asegurarse de llamar a esta función cuando haya terminado completamente con la instancia de cliente.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que la conexión al servicio se haya cerrado por completo.

get_twin

Obtiene el dispositivo o módulo gemelo del servicio Azure IoT Hub o azure IoT Edge Hub.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que el gemelo se haya recuperado del servicio.

invoke_method

Invoque un método del cliente a un dispositivo o cliente de módulo y reciba la respuesta a la llamada al método.

patch_twin_reported_properties

Actualice las propiedades notificadas con el servicio Azure IoT Hub o Azure IoT Edge Hub.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que se haya enviado la revisión al servicio y se confirme.

Si el servicio devuelve un error en la operación de revisión, esta función generará el error adecuado.

receive_message_on_input

Recibir un mensaje de entrada que se ha enviado desde otro módulo a una entrada específica.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_message_received para establecer un controlador en su lugar.

receive_method_request

Reciba una solicitud de método a través del Azure IoT Hub o Azure IoT Edge Hub.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_method_request_received para establecer un controlador en su lugar.

receive_twin_desired_properties_patch

Reciba una revisión de propiedad deseada a través del centro de Azure IoT Hub o Azure IoT Edge.

Se trata de una llamada sincrónica, lo que significa lo siguiente:

  1. Si block=True, esta función se bloqueará hasta que se produzca una de las siguientes acciones:

    • Se recibe una revisión de propiedad deseada desde el centro de Azure IoT Hub o Azure IoT Edge Hub.

    • el período de tiempo de espera, si se proporciona, transcurre. Si se produce un tiempo de espera, esta función generará una excepción InboxEmpty.

  2. Si block=False, esta función devolverá las revisiones de propiedades deseadas que puede haber recibido la canalización, pero que aún no se han devuelto a la aplicación. Si no se han recibido revisiones de propiedades deseadas por la canalización, esta función generará una excepción InboxEmpty.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_twin_desired_properties_patch_received para establecer un controlador en su lugar.

send_message

Envía un mensaje al punto de conexión de eventos predeterminado en la instancia de Azure IoT Hub o azure IoT Edge Hub.

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

send_message_to_output

Envía un evento o mensaje a la salida del módulo especificado.

Estos son eventos salientes y están diseñados para ser "eventos de salida".

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

send_method_response

Envíe una respuesta a una solicitud de método a través del centro de Azure IoT Hub o Azure IoT Edge.

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

shutdown

Cierre el cliente para una salida correcta.

Una vez que se llama a este método, los intentos en llamadas de cliente adicionales darán lugar a un clientError que se genere.

update_sastoken

Actualice el token de SAS del cliente que se usa para la autenticación y, a continuación, vuelva a autorizar la conexión.

Esta API solo se puede usar si el cliente se creó inicialmente con un token de SAS.

connect

Conecta el cliente a una instancia de Azure IoT Hub o azure IoT Edge Hub.

El destino se elige en función de las credenciales que se pasan a través del parámetro auth_provider que se proporcionó cuando se inicializó este objeto.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que se haya establecido completamente la conexión al servicio.

connect()

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera de la conexión.

si se produce un error inesperado durante la ejecución.

create_from_connection_string

Cree una instancia del cliente desde un dispositivo IoTHub o una cadena de conexión de módulo.

create_from_connection_string(connection_string, **kwargs)

Parámetros

connection_string
str
Requerido

Cadena de conexión de IoTHub a la que desea conectarse.

server_verification_cert
str
Requerido

Opción de configuración. Cadena de certificados de confianza. Necesario al usar la conexión a un punto de conexión que tiene una raíz de confianza no estándar, como una puerta de enlace de protocolo.

websockets
bool
Requerido

Opción de configuración. El valor predeterminado es False. Se establece en true si se usa MQTT sobre websockets.

cipher
str o list(str)
Requerido

Opción de configuración. Conjuntos de cifrado para TLS/SSL, como una cadena en "Formato de lista de cifrado OpenSSL" o como una lista de cadenas del conjunto de cifrado.

product_info
str
Requerido

Opción de configuración. El valor predeterminado es una cadena vacía. La cadena contiene información arbitraria del producto que se anexa a la cadena del agente de usuario.

proxy_options
ProxyOptions
Requerido

Opciones para enviar tráfico a través de servidores proxy.

sastoken_ttl
int
Requerido

El período de vida (en segundos) para el SasToken creado que se usa para la autenticación. El valor predeterminado es 3600 segundos (1 hora).

keep_alive
int
Requerido

Período máximo en segundos entre las comunicaciones con el agente. Si no se intercambia ningún otro mensaje, controla la velocidad a la que el cliente enviará mensajes ping al agente. Si no se proporciona el valor predeterminado de 60 segundos, se usará .

auto_connect
bool
Requerido

Conecte automáticamente el cliente a IoTHub cuando se invoca un método que requiere que se establezca una conexión. (Valor predeterminado: Verdadero)

connection_retry
bool
Requerido

Intento de restablecer una conexión eliminada (valor predeterminado: True)

connection_retry_interval
int
Requerido

Intervalo, en segundos, entre intentos de restablecer una conexión descartada (valor predeterminado: 10)

ensure_desired_properties
bool
Requerido

Asegúrese de que se ha recibido la revisión de propiedades deseadas más reciente tras volver a establecer conexiones (Valor predeterminado:True)

Devoluciones

Instancia de un cliente de IoTHub que usa una cadena de conexión para la autenticación.

Excepciones

ValueError if given an invalid connection_string.
TypeError if given an unsupported parameter.

create_from_edge_environment

Cree una instancia del cliente desde el entorno de IoT Edge.

Este método solo se puede ejecutar desde dentro de un contenedor de IoT Edge o en un entorno de depuración configurado para el desarrollo de Edge (por ejemplo, Visual Studio, Visual Studio Code).

create_from_edge_environment(**kwargs)

Parámetros

websockets
bool
Requerido

Opción de configuración. El valor predeterminado es False. Se establece en true si se usa MQTT sobre websockets.

cipher
str o list(str)
Requerido

Opción de configuración. Conjuntos de cifrado para TLS/SSL, como una cadena en "Formato de lista de cifrado OpenSSL" o como una lista de cadenas del conjunto de cifrado.

product_info
str
Requerido

Opción de configuración. El valor predeterminado es una cadena vacía. La cadena contiene información arbitraria del producto que se anexa a la cadena del agente de usuario.

proxy_options
ProxyOptions
Requerido

Opciones para enviar tráfico a través de servidores proxy.

sastoken_ttl
int
Requerido

El período de vida (en segundos) para el SasToken creado que se usa para la autenticación. El valor predeterminado es 3600 segundos (1 hora)

keep_alive
int
Requerido

Período máximo en segundos entre las comunicaciones con el agente. Si no se intercambia ningún otro mensaje, controla la velocidad a la que el cliente enviará mensajes ping al agente. Si no se proporciona el valor predeterminado de 60 segundos, se usará .

auto_connect
bool
Requerido

Conecte automáticamente el cliente a IoTHub cuando se invoca un método que requiere que se establezca una conexión. (Valor predeterminado: Verdadero)

connection_retry
bool
Requerido

Intento de restablecer una conexión eliminada (valor predeterminado: True)

connection_retry_interval
int
Requerido

Intervalo, en segundos, entre intentos de restablecer una conexión descartada (valor predeterminado: 10)

Devoluciones

Instancia de un cliente de IoTHub que usa el entorno de IoT Edge para la autenticación.

Excepciones

OSError if the IoT Edge container is not configured correctly.
ValueError if debug variables are invalid.
TypeError if given an unsupported parameter.

create_from_sastoken

Creación de instancias del cliente a partir de una cadena de token de SAS creada previamente

create_from_sastoken(sastoken, **kwargs)

Parámetros

sastoken
str
Requerido

Cadena de token de SAS

server_verification_cert
str
Requerido

Opción de configuración. Cadena de certificados de confianza. Necesario al usar la conexión a un punto de conexión que tiene una raíz de confianza no estándar, como una puerta de enlace de protocolo.

gateway_hostname
str
Requerido

Opción de configuración. Nombre de host de puerta de enlace para el dispositivo de puerta de enlace.

websockets
bool
Requerido

Opción de configuración. El valor predeterminado es False. Se establece en true si se usa MQTT sobre websockets.

cipher
str o list(str)
Requerido

Opción de configuración. Conjuntos de cifrado para TLS/SSL, como una cadena en "Formato de lista de cifrado OpenSSL" o como una lista de cadenas del conjunto de cifrado.

product_info
str
Requerido

Opción de configuración. El valor predeterminado es una cadena vacía. La cadena contiene información arbitraria del producto que se anexa a la cadena del agente de usuario.

proxy_options
ProxyOptions
Requerido

Opciones para enviar tráfico a través de servidores proxy.

keep_alive
int
Requerido

Período máximo en segundos entre las comunicaciones con el agente. Si no se intercambia ningún otro mensaje, controla la velocidad a la que el cliente enviará mensajes ping al agente. Si no se proporciona el valor predeterminado de 60 segundos se usará.

auto_connect
bool
Requerido

Conecte automáticamente el cliente a IoTHub cuando se invoca un método que requiere que se establezca una conexión. (Valor predeterminado: Verdadero)

connection_retry
bool
Requerido

Intento de volver a establecer una conexión eliminada (valor predeterminado: True)

connection_retry_interval
int
Requerido

Intervalo, en segundos, entre intentos de restablecer una conexión eliminada (valor predeterminado: 10)

ensure_desired_properties
bool
Requerido

Asegúrese de que se ha recibido la revisión de propiedades deseadas más reciente tras volver a establecer conexiones (Valor predeterminado:True)

Excepciones

TypeError if given an unsupported parameter.
ValueError if the sastoken parameter is invalid.

create_from_x509_certificate

Cree una instancia de un cliente mediante la autenticación de certificados X509.

create_from_x509_certificate(x509, hostname, device_id, module_id, **kwargs)

Parámetros

hostname
str
Requerido

Host que ejecuta IotHub. Puede encontrarse en el Azure Portal de la pestaña Información general como nombre de host de cadena.

x509
X509
Requerido

Objeto de certificado x509 completo. Para usar el certificado, el objeto de inscripción debe contener el certificado (ya sea el certificado raíz o uno de los certificados de entidad de certificación intermedios). Si el certificado procede de un archivo CER, debe estar codificado en base64.

device_id
str
Requerido

Identificador que se usa para identificar de forma única un dispositivo en IoTHub.

module_id
str
Requerido

Identificador que se usa para identificar de forma única un módulo en un dispositivo de IoTHub.

server_verification_cert
str
Requerido

Opción de configuración. Cadena de certificados de confianza. Es necesario cuando se usa la conexión a un punto de conexión que tiene una raíz de confianza no estándar, como una puerta de enlace de protocolo.

gateway_hostname
str
Requerido

Opción de configuración. Nombre de host de puerta de enlace para el dispositivo de puerta de enlace.

websockets
bool
Requerido

Opción de configuración. El valor predeterminado es False. Se establece en true si se usa MQTT sobre websockets.

cipher
str o list(str)
Requerido

Opción de configuración. Conjuntos de cifrado para TLS/SSL, como una cadena en "Formato de lista de cifrado OpenSSL" o como una lista de cadenas del conjunto de cifrado.

product_info
str
Requerido

Opción de configuración. El valor predeterminado es una cadena vacía. La cadena contiene información arbitraria del producto que se anexa a la cadena del agente de usuario.

proxy_options
ProxyOptions
Requerido

Opciones para enviar tráfico a través de servidores proxy.

keep_alive
int
Requerido

Período máximo en segundos entre las comunicaciones con el agente. Si no se intercambia ningún otro mensaje, controla la velocidad a la que el cliente enviará mensajes ping al agente. Si no se proporciona el valor predeterminado de 60 segundos se usará.

auto_connect
bool
Requerido

Conecte automáticamente el cliente a IoTHub cuando se invoca un método que requiere que se establezca una conexión. (Valor predeterminado: Verdadero)

connection_retry
bool
Requerido

Intento de volver a establecer una conexión eliminada (valor predeterminado: True)

connection_retry_interval
int
Requerido

Intervalo, en segundos, entre intentos de restablecer una conexión eliminada (valor predeterminado: 10)

ensure_desired_properties
bool
Requerido

Asegúrese de que se ha recibido la revisión de propiedades deseadas más reciente tras volver a establecer conexiones (Valor predeterminado:True)

Devoluciones

Instancia de un cliente de IoTHub que usa un certificado X509 para la autenticación.

Excepciones

TypeError if given an unsupported parameter.

disconnect

Desconecte el cliente de la instancia de Azure IoT Hub o azure IoT Edge Hub.

Se recomienda asegurarse de llamar a esta función cuando haya terminado completamente con la instancia de cliente.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que la conexión al servicio se haya cerrado por completo.

disconnect()

Excepciones

si se produce un error inesperado durante la ejecución.

get_twin

Obtiene el dispositivo o módulo gemelo del servicio Azure IoT Hub o azure IoT Edge Hub.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que el gemelo se haya recuperado del servicio.

get_twin()

Devoluciones

Completar gemelo como un dict JSON

Tipo de valor devuelto

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de conexión

si el cliente no está conectado (y no hay ninguna conexión automática habilitada)

si se produce un error inesperado durante la ejecución.

invoke_method

Invoque un método del cliente a un dispositivo o cliente de módulo y reciba la respuesta a la llamada al método.

invoke_method(method_params, device_id, module_id=None)

Parámetros

method_params
dict
Requerido

Debe contener un methodName (str), payload (str), connectTimeoutInSeconds (int), responseTimeoutInSeconds (int).

device_id
str
Requerido

Id. de dispositivo del dispositivo de destino donde se invocará el método.

module_id
str
valor predeterminado: None

Id. de módulo del módulo de destino donde se invocará el método. (Opcional)

Devoluciones

method_result debe contener un estado y una carga

Tipo de valor devuelto

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera de la conexión.

si se produce un error inesperado durante la ejecución.

patch_twin_reported_properties

Actualice las propiedades notificadas con el servicio Azure IoT Hub o Azure IoT Edge Hub.

Se trata de una llamada sincrónica, lo que significa que esta función no devolverá hasta que se haya enviado la revisión al servicio y se confirme.

Si el servicio devuelve un error en la operación de revisión, esta función generará el error adecuado.

patch_twin_reported_properties(reported_properties_patch)

Parámetros

reported_properties_patch
dict
Requerido

Revisión de propiedades notificadas de gemelos como una diferencia JSON

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de conexión

si el cliente no está conectado (y no hay ninguna conexión automática habilitada)

si se produce un error inesperado durante la ejecución.

receive_message_on_input

Recibir un mensaje de entrada que se ha enviado desde otro módulo a una entrada específica.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_message_received para establecer un controlador en su lugar.

receive_message_on_input(input_name, block=True, timeout=None)

Parámetros

input_name
str
Requerido

Nombre de entrada en el que se va a recibir un mensaje.

block
bool
Requerido

Indica si la operación debe bloquearse hasta que se reciba un mensaje.

timeout
int
Requerido

Opcionalmente, proporcione un número de segundos hasta que se agote el tiempo de espera de bloqueo.

Devoluciones

Mensaje que se envió a la entrada especificada o Ninguno si no se ha recibido ninguna solicitud de método al final del período de bloqueo.

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera de la conexión.

si se produce un error inesperado durante la ejecución.

receive_method_request

Reciba una solicitud de método a través del Azure IoT Hub o Azure IoT Edge Hub.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_method_request_received para establecer un controlador en su lugar.

receive_method_request(method_name=None, block=True, timeout=None)

Parámetros

method_name
str
valor predeterminado: None

Opcionalmente, proporcione el nombre del método para el que se van a recibir solicitudes. Si no se especifica este parámetro, se recibirán todos los métodos que aún no están dirigidos específicamente por una solicitud diferente a receive_method.

block
bool
valor predeterminado: True

Indica si la operación debe bloquearse hasta que se reciba una solicitud.

timeout
int
valor predeterminado: None

Opcionalmente, proporcione un número de segundos hasta que se agote el tiempo de espera de bloqueo.

Devoluciones

Objeto MethodRequest que representa la solicitud de método recibida o None si no se ha recibido ninguna solicitud de método al final del período de bloqueo.

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera de la conexión.

si se produce un error inesperado durante la ejecución.

receive_twin_desired_properties_patch

Reciba una revisión de propiedad deseada a través del centro de Azure IoT Hub o Azure IoT Edge.

Se trata de una llamada sincrónica, lo que significa lo siguiente:

  1. Si block=True, esta función se bloqueará hasta que se produzca una de las siguientes acciones:

    • Se recibe una revisión de propiedad deseada desde el centro de Azure IoT Hub o Azure IoT Edge Hub.

    • el período de tiempo de espera, si se proporciona, transcurre. Si se produce un tiempo de espera, esta función generará una excepción InboxEmpty.

  2. Si block=False, esta función devolverá las revisiones de propiedades deseadas que puede haber recibido la canalización, pero que aún no se han devuelto a la aplicación. Si no se han recibido revisiones de propiedades deseadas por la canalización, esta función generará una excepción InboxEmpty.

En desuso desde la versión 2.3.0: se recomienda usar la propiedad .on_twin_desired_properties_patch_received para establecer un controlador en su lugar.

receive_twin_desired_properties_patch(block=True, timeout=None)

Parámetros

block
bool
valor predeterminado: True

Indica si la operación debe bloquearse hasta que se reciba una solicitud.

timeout
int
valor predeterminado: None

Opcionalmente, proporcione un número de segundos hasta que se agote el tiempo de espera de bloqueo.

Devoluciones

Revisión de las propiedades deseadas gemelas como dict JSON o None si no se ha recibido ninguna revisión al final del período de bloqueo

Tipo de valor devuelto

dict,

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera de la conexión.

si se produce un error inesperado durante la ejecución.

send_message

Envía un mensaje al punto de conexión de eventos predeterminado en la instancia de Azure IoT Hub o azure IoT Edge Hub.

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

send_message(message)

Parámetros

message
Message
Requerido

Mensaje real que se va a enviar. Todo lo que se pase que no sea una instancia de la clase Message se convertirá en objeto Message.

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de conexión

si el cliente no está conectado (y no hay ninguna conexión automática habilitada)

si se produce un error inesperado durante la ejecución.

ValueError if the message fails size validation.

send_message_to_output

Envía un evento o mensaje a la salida del módulo especificado.

Estos son eventos salientes y están diseñados para ser "eventos de salida".

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

send_message_to_output(message, output_name)

Parámetros

message
Message
Requerido

Mensaje que se va a enviar a la salida especificada. Todo lo que se pase que no sea una instancia de la clase Message se convertirá en objeto Message.

output_name
str
Requerido

Nombre de la salida a la que se va a enviar el evento.

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de conexión

si el cliente no está conectado (y no hay ninguna conexión automática habilitada)

si se produce un error inesperado durante la ejecución.

ValueError if the message fails size validation.

send_method_response

Envíe una respuesta a una solicitud de método a través del centro de Azure IoT Hub o Azure IoT Edge.

Se trata de un evento sincrónico, lo que significa que esta función no devolverá hasta que se haya enviado el evento al servicio y el servicio haya confirmado la recepción del evento.

Si la conexión al servicio no se ha abierto previamente mediante una llamada a para conectarse, esta función abrirá la conexión antes de enviar el evento.

send_method_response(method_response)

Parámetros

method_response
MethodResponse
Requerido

MethodResponse que se va a enviar.

Excepciones

si las credenciales no son válidas y no se puede establecer una conexión.

si se produce un error al establecer una conexión.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de conexión

si el cliente no está conectado (y no hay ninguna conexión automática habilitada)

si se produce un error inesperado durante la ejecución.

shutdown

Cierre el cliente para una salida correcta.

Una vez que se llama a este método, los intentos en llamadas de cliente adicionales darán lugar a un clientError que se genere.

shutdown()

Excepciones

si se produce un error inesperado durante la ejecución.

update_sastoken

Actualice el token de SAS del cliente que se usa para la autenticación y, a continuación, vuelva a autorizar la conexión.

Esta API solo se puede usar si el cliente se creó inicialmente con un token de SAS.

update_sastoken(sastoken)

Parámetros

sastoken
str
Requerido

La nueva cadena de token de SAS para que el cliente la use

Excepciones

ValueError if the sastoken parameter is invalid

si las credenciales no son válidas y no se puede restablecer una conexión.

Si se vuelve a establecer la conexión, se produce un error.

si se pierde la conexión durante la ejecución.

si se agota el tiempo de espera del intento de reautorización.

si el cliente no se creó inicialmente con un token de SAS.

si se produce un error inesperado durante la ejecución.

Atributos

connected

Propiedad de solo lectura para indicar si el transporte está conectado o no.

on_background_exception

Se llamará a la función o corrutina del controlador cuando se produzca una excepción en segundo plano.

La definición de función o corrutina debe tomar un argumento posicional (el objeto de excepción)

on_connection_state_change

Función de controlador o corrutina a la que se llamará cuando cambie el estado de conexión.

La definición de función o corrutina no debe tener argumentos posicionales.

on_message_received

Función de controlador o corrutina a la que se llamará cuando se reciba un mensaje de entrada.

La definición de función o corrutina debe tomar un argumento posicional (el Message objeto)

on_method_request_received

Función de controlador o corrutina a la que se llamará cuando se reciba una solicitud de método.

Recuerde confirmar la solicitud de método en la función o corrutina mediante el uso del método .send_method_response() del cliente.

La definición de función o corrutina debe tomar un argumento posicional (el MethodRequest objeto)

on_new_sastoken_required

Función de controlador o corrutina a la que se llamará cuando el cliente requiera un nuevo token de SAS. Esto ocurrirá aproximadamente 2 minutos antes de que expire el token de SAS. En las plataformas Windows, si la duración supera aproximadamente 49 días, se requerirá un nuevo token después de esos 49 días independientemente de cuánto tiempo dure la vida útil de SAS.

Tenga en cuenta que este controlador SOLO es necesario cuando se usa un cliente creado a través del método .create_from_sastoken().

El nuevo token se puede proporcionar en la función o corrutina mediante el uso del método .update_sastoken() del cliente.

La definición de función o corrutina no debe tener argumentos posicionales.

on_twin_desired_properties_patch_received

Función de controlador o corrutina a la que se llamará cuando se reciba una revisión de propiedades deseadas de gemelo.

La definición de función o corrutina debe tomar un argumento posicional (la revisión de gemelos en forma de un objeto de diccionario JSON)