IoTHubDeviceClient Classe

Um cliente de dispositivo síncrono que se liga a uma instância Hub IoT do Azure.

Inicializador de um IoTHubDeviceClient.

Este inicializador não deve ser chamado diretamente. Em vez disso, utilize um dos classmethods ">>create_from_<<" para instanciar

Herança
azure.iot.device.iothub.sync_clients.GenericIoTHubClient
IoTHubDeviceClient
azure.iot.device.iothub.abstract_clients.AbstractIoTHubDeviceClient
IoTHubDeviceClient

Construtor

IoTHubDeviceClient(mqtt_pipeline, http_pipeline)

Parâmetros

mqtt_pipeline
<xref:azure.iot.device.iothub.pipeline.MQTTPipeline>
Necessário

O pipeline utilizado para ligar ao ponto final do IoTHub.

http_pipeline
Necessário

Métodos

connect

Liga o cliente a um Hub IoT do Azure ou à instância do Hub IoT Edge do Azure.

O destino é escolhido com base nas credenciais transmitidas através do parâmetro auth_provider que foi fornecido quando este objeto foi inicializado.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que a ligação ao serviço tenha sido completamente estabelecida.

create_from_connection_string

Instanciar o cliente a partir de um dispositivo IoTHub ou cadeia de ligação do módulo.

create_from_sastoken

Instanciar o cliente a partir de uma cadeia de token de SAS pré-criada

create_from_symmetric_key

Instanciar um cliente através da autenticação de chave simétrica.

create_from_x509_certificate

Instanciar um cliente com a autenticação de certificado X509.

disconnect

Desligue o cliente do Hub IoT do Azure ou da instância do Hub IoT Edge do Azure.

Recomenda-se que se certifique de que chama esta função quando terminar completamente a instância do cliente.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que a ligação ao serviço esteja completamente fechada.

get_storage_info_for_blob

Envia um pedido POST através de HTTP para um ponto final do IoTHub que irá devolver informações para carregamento através da Conta de Armazenamento do Azure associada ao IoTHub ao qual o seu dispositivo está ligado.

get_twin

Obtém o dispositivo ou módulo duplo a partir do Hub IoT do Azure ou do serviço Hub IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o duplo tenha sido obtido do serviço.

notify_blob_upload_status

Quando o carregamento estiver concluído, o dispositivo envia um pedido POST para o ponto final Hub IoT com informações sobre o estado de uma tentativa de carregamento para blob. Isto é utilizado por Hub IoT para notificar os clientes de escuta.

patch_twin_reported_properties

Atualize as propriedades comunicadas com o Hub IoT do Azure ou o serviço Hub IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o patch seja enviado para o serviço e reconhecido.

Se o serviço devolver um erro na operação de patch, esta função gerará o erro adequado.

receive_message

Receba uma mensagem que tenha sido enviada a partir do Hub IoT do Azure.

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_message_received para definir um processador

receive_method_request

Receba um pedido de método através do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_method_request_received para definir um processador

receive_twin_desired_properties_patch

Receba um patch de propriedade pretendido através do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa o seguinte:

  1. Se block=True, esta função bloqueará até ocorrer um dos seguintes procedimentos:

    • É recebido um patch de propriedade pretendido do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

    • o período de tempo limite, se for fornecido, decorrido. Se ocorrer um tempo limite, esta função gerará uma exceção InboxEmpty

  2. Se block=False, esta função devolverá quaisquer patches de propriedade pretendidos que possam ter sido recebidos pelo pipeline, mas que ainda não foram devolvidos à aplicação. Se não tiverem sido recebidos patches de propriedade pretendidos pelo pipeline, esta função gerará uma exceção InboxEmpty

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_twin_desired_properties_patch_received para definir um processador

send_message

Envia uma mensagem para o ponto final de eventos predefinido no Hub IoT do Azure ou na instância do Hub IoT Edge do Azure.

Este é um evento síncrono, o que significa que esta função não será devolvida até que o evento tenha sido enviado para o serviço e o serviço tenha reconhecido a receção do evento.

Se a ligação ao serviço não tiver sido aberta anteriormente por uma chamada para ligar, esta função abrirá a ligação antes de enviar o evento.

send_method_response

Envie uma resposta a um pedido de método através do Hub IoT do Azure ou do Hub IoT Edge do Azure.

Este é um evento síncrono, o que significa que esta função não será devolvida até que o evento tenha sido enviado para o serviço e o serviço tenha reconhecido a receção do evento.

Se a ligação ao serviço não tiver sido aberta anteriormente por uma chamada para ligar, esta função abrirá a ligação antes de enviar o evento.

shutdown

Encerre o cliente para uma saída correta.

Assim que este método for chamado, todas as tentativas de outras chamadas de cliente resultarão num ClientError a ser gerado

update_sastoken

Atualize o Token de SAS do cliente utilizado para autenticação e, em seguida, reautorize a ligação.

Esta API só pode ser utilizada se o cliente tiver sido criado inicialmente com um Token de SAS.

connect

Liga o cliente a um Hub IoT do Azure ou à instância do Hub IoT Edge do Azure.

O destino é escolhido com base nas credenciais transmitidas através do parâmetro auth_provider que foi fornecido quando este objeto foi inicializado.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que a ligação ao serviço tenha sido completamente estabelecida.

connect()

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

create_from_connection_string

Instanciar o cliente a partir de um dispositivo IoTHub ou cadeia de ligação do módulo.

create_from_connection_string(connection_string, **kwargs)

Parâmetros

connection_string
str
Necessário

A cadeia de ligação do IoTHub à qual pretende ligar.

server_verification_cert
str
Necessário

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

websockets
bool
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
str ou list(str)
Necessário

Opção de Configuração. Conjuntos de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjuntos de cifras.

product_info
str
Necessário

Opção de Configuração. A predefinição é uma cadeia vazia. A cadeia contém informações arbitrárias do produto que são anexadas à cadeia de agente de utilizador.

proxy_options
ProxyOptions
Necessário

Opções para enviar tráfego através de servidores proxy.

sastoken_ttl
int
Necessário

O tempo de vida (em segundos) para o SasToken criado utilizado para autenticação. A predefinição é 3600 segundos (1 hora).

keep_alive
int
Necessário

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens de ping para o mediador. Se não for fornecido o valor predefinido de 60 segundos, será utilizado.

auto_connect
bool
Necessário

Ligue automaticamente o cliente ao IoTHub quando é invocado um método que requer a criação de uma ligação. (Predefinição: Verdadeiro)

connection_retry
bool
Necessário

Tentativa de restabelecer uma ligação perdida (Predefinição: Verdadeiro)

connection_retry_interval
int
Necessário

Intervalo, em segundos, entre tentativas de restabelecer uma ligação perdida (Predefinição: 10)

ensure_desired_properties
bool
Necessário

Confirme que o patch de propriedades pretendidos mais recente foi recebido após ligações novamente (Predefinição:Verdadeiro)

Devoluções

Uma instância de um cliente do IoTHub que utiliza uma cadeia de ligação para autenticação.

Exceções

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

create_from_sastoken

Instanciar o cliente a partir de uma cadeia de token de SAS pré-criada

create_from_sastoken(sastoken, **kwargs)

Parâmetros

sastoken
str
Necessário

A cadeia de token de SAS

server_verification_cert
str
Necessário

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

gateway_hostname
str
Necessário

Opção de Configuração. O nome do anfitrião do gateway para o dispositivo de gateway.

websockets
bool
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
str ou list(str)
Necessário

Opção de Configuração. Conjuntos de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjuntos de cifras.

product_info
str
Necessário

Opção de Configuração. A predefinição é uma cadeia vazia. A cadeia contém informações arbitrárias do produto que são anexadas à cadeia de agente de utilizador.

proxy_options
ProxyOptions
Necessário

Opções para enviar tráfego através de servidores proxy.

keep_alive
int
Necessário

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens de ping para o mediador. Se não for fornecido o valor predefinido de 60 segundos, será utilizado.

auto_connect
bool
Necessário

Ligue automaticamente o cliente ao IoTHub quando é invocado um método que requer a criação de uma ligação. (Predefinição: Verdadeiro)

connection_retry
bool
Necessário

Tentativa de restabelecer uma ligação perdida (Predefinição: Verdadeiro)

connection_retry_interval
int
Necessário

Intervalo, em segundos, entre tentativas de restabelecer uma ligação perdida (Predefinição: 10)

ensure_desired_properties
bool
Necessário

Confirme que o patch de propriedades pretendidos mais recente foi recebido após ligações novamente (Predefinição:Verdadeiro)

Exceções

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

create_from_symmetric_key

Instanciar um cliente através da autenticação de chave simétrica.

create_from_symmetric_key(symmetric_key, hostname, device_id, **kwargs)

Parâmetros

symmetric_key
Necessário

A chave simétrica.

hostname
str
Necessário

Anfitrião a executar o IotHub. Pode encontrar-se no portal do Azure no separador Descrição geral como o nome do anfitrião da cadeia.

device_id
Necessário

O ID do dispositivo

server_verification_cert
str
Necessário

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

gateway_hostname
str
Necessário

Opção de Configuração. O nome do anfitrião do gateway para o dispositivo de gateway.

websockets
bool
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
str ou list(str)
Necessário

Opção de Configuração. Conjunto(s) de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjunto de cifras.

product_info
str
Necessário

Opção de Configuração. A predefinição é a cadeia vazia. A cadeia contém informações arbitrárias do produto que são anexadas à cadeia de agente do utilizador.

proxy_options
ProxyOptions
Necessário

Opções para enviar tráfego através de servidores proxy.

sastoken_ttl
int
Necessário

O tempo de vida (em segundos) do SasToken criado utilizado para autenticação. A predefinição é 3600 segundos (1 hora)

keep_alive
int
Necessário

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens ping para o mediador. Se não for fornecido, será utilizado o valor predefinido de 60 segundos.

auto_connect
bool
Necessário

Ligue automaticamente o cliente ao IoTHub quando é invocado um método que requer que seja estabelecida uma ligação. (Predefinição: Verdadeiro)

connection_retry
bool
Necessário

Tentar restabelecer uma ligação perdida (Predefinição: Verdadeiro)

connection_retry_interval
int
Necessário

Intervalo, em segundos, entre tentativas de restabelecer uma ligação perdida (Predefinição: 10)

ensure_desired_properties
bool
Necessário

Confirme que o patch de propriedades pretendidas mais recente foi recebido após ligações novamente (Predefinição:Verdadeiro)

Devoluções

Uma instância de um cliente do IoTHub que utiliza uma chave simétrica para autenticação.

Exceções

TypeError if given an unsupported parameter.
ValueError if the provided parameters are invalid.

create_from_x509_certificate

Instanciar um cliente com a autenticação de certificado X509.

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

Parâmetros

hostname
str
Necessário

Anfitrião a executar o IotHub. Pode ser encontrado no portal do Azure no separador Descrição geral como o nome do anfitrião da cadeia.

x509
X509
Necessário

O objeto de certificado x509 completo. Para utilizar o certificado, o objeto de inscrição tem de conter o certificado de raiz (o certificado de raiz ou um dos certificados de AC intermédios). Se o certificado for proveniente de um ficheiro CER, tem de ser codificado em base64.

device_id
str
Necessário

O ID utilizado para identificar exclusivamente um dispositivo no IoTHub

server_verification_cert
str
Necessário

Opção de Configuração. A cadeia de certificados fidedigna. Necessário ao utilizar a ligação a um ponto final que tenha uma raiz de confiança não padrão, como um gateway de protocolo.

gateway_hostname
str
Necessário

Opção de Configuração. O nome do anfitrião do gateway para o dispositivo de gateway.

websockets
bool
Necessário

Opção de Configuração. A predefinição é Falso. Defina como verdadeiro se utilizar MQTT através de websockets.

cipher
str ou list(str)
Necessário

Opção de Configuração. Conjunto(s) de cifras para TLS/SSL, como uma cadeia em "Formato de lista de cifras OpenSSL" ou como uma lista de cadeias de conjunto de cifras.

product_info
str
Necessário

Opção de Configuração. A predefinição é a cadeia vazia. A cadeia contém informações arbitrárias do produto que são anexadas à cadeia de agente do utilizador.

proxy_options
ProxyOptions
Necessário

Opções para enviar tráfego através de servidores proxy.

keep_alive
int
Necessário

Período máximo em segundos entre comunicações com o mediador. Se não estiverem a ser trocadas outras mensagens, esta ação controla a taxa a que o cliente enviará mensagens ping para o mediador. Se não for fornecido, será utilizado o valor predefinido de 60 segundos.

auto_connect
bool
Necessário

Ligue automaticamente o cliente ao IoTHub quando é invocado um método que requer que seja estabelecida uma ligação. (Predefinição: Verdadeiro)

connection_retry
bool
Necessário

Tentar restabelecer uma ligação perdida (Predefinição: Verdadeiro)

connection_retry_interval
int
Necessário

Intervalo, em segundos, entre tentativas de restabelecer uma ligação perdida (Predefinição: 10)

ensure_desired_properties
bool
Necessário

Confirme que o patch de propriedades pretendidas mais recente foi recebido após ligações novamente (Predefinição:Verdadeiro)

Devoluções

Uma instância de um cliente IoTHub que utiliza um certificado X509 para autenticação.

Exceções

TypeError if given an unsupported parameter.

disconnect

Desligue o cliente do Hub IoT do Azure ou da instância do Hub IoT Edge do Azure.

Recomenda-se que se certifique de que chama esta função quando terminar completamente a instância do cliente.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que a ligação ao serviço esteja completamente fechada.

disconnect()

Exceções

se ocorrer uma falha inesperada durante a execução.

get_storage_info_for_blob

Envia um pedido POST através de HTTP para um ponto final do IoTHub que irá devolver informações para carregamento através da Conta de Armazenamento do Azure associada ao IoTHub ao qual o seu dispositivo está ligado.

get_storage_info_for_blob(blob_name)

Parâmetros

blob_name
str
Necessário

O nome no formato de cadeia do blob que será carregado com a API de armazenamento. Este nome será utilizado para gerar as credenciais adequadas para o Armazenamento e tem de corresponder ao que será utilizado com o SDK de Armazenamento do Azure para executar o carregamento de blobs.

Devoluções

Um objeto semelhante a JSON (dicionário) de Hub IoT que irá conter informações relevantes, incluindo: correlationId, hostName, containerName, blobName, sasToken.

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

get_twin

Obtém o dispositivo ou módulo duplo a partir do Hub IoT do Azure ou do serviço Hub IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o duplo tenha sido obtido do serviço.

get_twin()

Devoluções

Completo Duplo como um ditado JSON

Tipo de retorno

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falhas.

se a ligação for perdida durante a execução.

se a tentativa de ligação exceder o limite de tempo

se o cliente não estiver ligado (e não existir ligação automática ativada)

se ocorrer uma falha inesperada durante a execução.

notify_blob_upload_status

Quando o carregamento estiver concluído, o dispositivo envia um pedido POST para o ponto final Hub IoT com informações sobre o estado de uma tentativa de carregamento para blob. Isto é utilizado por Hub IoT para notificar os clientes de escuta.

notify_blob_upload_status(correlation_id, is_success, status_code, status_description)

Parâmetros

correlation_id
str
Necessário

Fornecido por Hub IoT a pedido de get_storage_info_for_blob.

is_success
bool
Necessário

Um booleano que indica se o ficheiro foi carregado com êxito.

status_code
int
Necessário

Um código de estado numérico que corresponde ao estado do carregamento do ficheiro para o armazenamento.

status_description
str
Necessário

Uma descrição que corresponde ao status_code.

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

patch_twin_reported_properties

Atualize as propriedades comunicadas com o Hub IoT do Azure ou o serviço Hub IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa que esta função não será devolvida até que o patch seja enviado para o serviço e reconhecido.

Se o serviço devolver um erro na operação de patch, esta função gerará o erro adequado.

patch_twin_reported_properties(reported_properties_patch)

Parâmetros

reported_properties_patch
dict
Necessário

Patch propriedades reportadas de duplo como um ditado JSON

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falhas.

se a ligação for perdida durante a execução.

se a tentativa de ligação exceder o limite de tempo

se o cliente não estiver ligado (e não existir ligação automática ativada)

se ocorrer uma falha inesperada durante a execução.

receive_message

Receba uma mensagem que tenha sido enviada a partir do Hub IoT do Azure.

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_message_received para definir um processador

receive_message(block=True, timeout=None)

Parâmetros

block
bool
Necessário

Indica se a operação deve bloquear até ser recebida uma mensagem.

timeout
int
Necessário

Opcionalmente, forneça um número de segundos até que o bloqueio exceda o tempo limite.

Devoluções

Mensagem enviada do Hub IoT do Azure ou Nenhuma se não tiver sido recebido nenhum pedido de método até ao final do período de bloqueio.

Tipo de retorno

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

receive_method_request

Receba um pedido de método através do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_method_request_received para definir um processador

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

Parâmetros

method_name
str
valor predefinido: None

Opcionalmente, forneça o nome do método para o qual receber pedidos. Se este parâmetro não for fornecido, todos os métodos que ainda não estão a ser especificamente visados por um pedido diferente para receive_method serão recebidos.

block
bool
valor predefinido: True

Indica se a operação deve bloquear até ser recebido um pedido.

timeout
int
valor predefinido: None

Opcionalmente, forneça um número de segundos até que o bloqueio exceda o tempo limite.

Devoluções

Objeto MethodRequest que representa o pedido de método recebido ou Nenhum se nenhum pedido de método tiver sido recebido até ao final do período de bloqueio.

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

receive_twin_desired_properties_patch

Receba um patch de propriedade pretendido através do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

Esta é uma chamada síncrona, o que significa o seguinte:

  1. Se block=True, esta função bloqueará até ocorrer um dos seguintes procedimentos:

    • É recebido um patch de propriedade pretendido do Hub IoT do Azure ou do Hub de IoT Edge do Azure.

    • o período de tempo limite, se for fornecido, decorrido. Se ocorrer um tempo limite, esta função gerará uma exceção InboxEmpty

  2. Se block=False, esta função devolverá quaisquer patches de propriedade pretendidos que possam ter sido recebidos pelo pipeline, mas que ainda não foram devolvidos à aplicação. Se não tiverem sido recebidos patches de propriedade pretendidos pelo pipeline, esta função gerará uma exceção InboxEmpty

Preterido desde a versão 2.3.0: recomendamos que utilize a propriedade .on_twin_desired_properties_patch_received para definir um processador

receive_twin_desired_properties_patch(block=True, timeout=None)

Parâmetros

block
bool
valor predefinido: True

Indica se a operação deve bloquear até ser recebido um pedido.

timeout
int
valor predefinido: None

Opcionalmente, forneça um número de segundos até que o bloqueio exceda o tempo limite.

Devoluções

Patch propriedades pretendidas de duplo como um ditado JSON ou Nenhum se nenhum patch tiver sido recebido até ao final do período de bloqueio

Tipo de retorno

dict,

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falha.

se a ligação for perdida durante a execução.

se a ligação exceder o limite de tempo.

se ocorrer uma falha inesperada durante a execução.

send_message

Envia uma mensagem para o ponto final de eventos predefinido no Hub IoT do Azure ou na instância do Hub IoT Edge do Azure.

Este é um evento síncrono, o que significa que esta função não será devolvida até que o evento tenha sido enviado para o serviço e o serviço tenha reconhecido a receção do evento.

Se a ligação ao serviço não tiver sido aberta anteriormente por uma chamada para ligar, esta função abrirá a ligação antes de enviar o evento.

send_message(message)

Parâmetros

message
Message
Necessário

A mensagem real a enviar. Tudo o que for transmitido que não seja uma instância da classe Mensagem será convertido no objeto Mensagem.

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falhas.

se a ligação for perdida durante a execução.

se a tentativa de ligação exceder o limite de tempo

se o cliente não estiver ligado (e não existir ligação automática ativada)

se ocorrer uma falha inesperada durante a execução.

ValueError if the message fails size validation.

send_method_response

Envie uma resposta a um pedido de método através do Hub IoT do Azure ou do Hub IoT Edge do Azure.

Este é um evento síncrono, o que significa que esta função não será devolvida até que o evento tenha sido enviado para o serviço e o serviço tenha reconhecido a receção do evento.

Se a ligação ao serviço não tiver sido aberta anteriormente por uma chamada para ligar, esta função abrirá a ligação antes de enviar o evento.

send_method_response(method_response)

Parâmetros

method_response
MethodResponse
Necessário

O MethodResponse a enviar.

Exceções

se as credenciais forem inválidas e não for possível estabelecer uma ligação.

se o estabelecimento de uma ligação resultar em falhas.

se a ligação for perdida durante a execução.

se a tentativa de ligação exceder o limite de tempo

se o cliente não estiver ligado (e não existir ligação automática ativada)

se ocorrer uma falha inesperada durante a execução.

shutdown

Encerre o cliente para uma saída correta.

Assim que este método for chamado, todas as tentativas de outras chamadas de cliente resultarão num ClientError a ser gerado

shutdown()

Exceções

se ocorrer uma falha inesperada durante a execução.

update_sastoken

Atualize o Token de SAS do cliente utilizado para autenticação e, em seguida, reautorize a ligação.

Esta API só pode ser utilizada se o cliente tiver sido criado inicialmente com um Token de SAS.

update_sastoken(sastoken)

Parâmetros

sastoken
str
Necessário

A nova cadeia de token de SAS para o cliente utilizar

Exceções

ValueError if the sastoken parameter is invalid

se as credenciais forem inválidas e não for possível restabelecer uma ligação.

se um restaumento da ligação resultar em falha.

se a ligação for perdida durante a execução.

se a tentativa de reautorização exceder o limite de tempo.

se o cliente não tiver sido criado inicialmente com um token de SAS.

se ocorrer uma falha inesperada durante a execução.

Atributos

connected

Propriedade só de leitura para indicar se o transporte está ligado ou não.

on_background_exception

A função de processador ou coroutina será chamada quando ocorrer uma exceção em segundo plano.

A definição de função ou coroutina deve ter um argumento posicional (o objeto de exceção)

on_connection_state_change

A função do processador ou coroutina que será chamada quando o estado da ligação for alterado.

A definição de função ou coroutina não deve ter argumentos posicionais.

on_message_received

A função de processador ou coroutina que será chamada quando uma mensagem é recebida.

A definição de função ou coroutina deve ter um argumento posicional (o Message objeto)

on_method_request_received

A função de processador ou coroutina que será chamada quando um pedido de método é recebido.

Lembre-se de reconhecer o pedido de método na sua função ou corouteno através da utilização do método .send_method_response() do cliente.

A definição de função ou coroutina deve ter um argumento posicional (o MethodRequest objeto)

on_new_sastoken_required

A função de processador ou coroutina que será chamada quando o cliente precisar de um novo token de SAS. Isto ocorrerá aproximadamente 2 minutos antes de o Token de SAS expirar. Nas plataformas do Windows, se o tempo de vida exceder aproximadamente 49 dias, será necessário um novo token após esses 49 dias, independentemente da duração da SAS.

Tenha em atenção que este processador só é necessário ao utilizar um cliente criado através do método .create_from_sastoken().

O novo token pode ser fornecido na sua função ou coroutina através da utilização do método .update_sastoken() do cliente.

A definição de função ou coroutina não deve ter argumentos posicionais.

on_twin_desired_properties_patch_received

A função de processador ou coroutina que será chamada quando um patch de propriedades pretendidas de duplo é recebido.

A definição de função ou coroutina deve ter um argumento posicional (o patch duplo sob a forma de um objeto de dicionário JSON)