Envie eventos do dispositivo com a SendConnectorEvent API - Integrações gerenciadas para AWS IoT Device Management

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Envie eventos do dispositivo com a SendConnectorEvent API

Visão geral dos eventos iniciados pelo dispositivo

Embora a SendConnectorEvent API seja usada para responder AWS.SendCommand e AWS.DiscoverDevices operar de forma assíncrona, ela também é usada para notificar integrações gerenciadas sobre quaisquer eventos iniciados pelo dispositivo. Os eventos iniciados pelo dispositivo podem ser definidos como qualquer evento gerado por um dispositivo sem um comando iniciado pelo usuário. Esses eventos do dispositivo podem incluir, mas não estão limitados a, mudanças de estado do dispositivo, detecção de movimento, níveis de bateria e muito mais. Você pode enviar esses eventos de volta às integrações gerenciadas usando a SendConnectorEvent API com a operação DEVICE_EVENT.

A seção a seguir usa uma câmera inteligente instalada em uma casa como exemplo para explicar melhor o fluxo de trabalho desses eventos:

Fluxo de trabalho de eventos do
Fluxo de trabalho de eventos do
  1. Sua câmera detecta movimento para o qual gera um evento que é enviado ao seu servidor de recursos.

  2. Seu servidor de recursos processa o evento e o envia para seu conector C2C.

  3. Seu conector traduz esse evento para as integrações gerenciadas da interface AWS IoT Device Management. DEVICE_EVENT

  4. Seu conector C2C envia esse evento de dispositivo para integrações gerenciadas usando a SendConnectorEvent API com a operação definida como “DEVICE_EVENT”.

  5. As integrações gerenciadas identificam o cliente relevante e retransmitem esse evento para o cliente.

  6. O cliente recebe esse evento e o exibe ao usuário por meio do identificador do usuário.

Para obter mais informações sobre a operação da SendConnectorEvent API, consulte o SendConnectorEvent Guia de referência da API de integrações gerenciadas do AWS IoT Device Management.

Requisitos de eventos iniciados pelo dispositivo

A seguir estão alguns requisitos para eventos iniciados pelo dispositivo.

  • Seu recurso de conector C2C deve ser capaz de receber eventos de dispositivo assíncronos do seu servidor de recursos

  • Seu recurso de conector C2C deve ser capaz de chamar integrações gerenciadas para as APIs do serviço AWS IoT Device Management via SigV4 AWS usando as credenciais usadas para registrar o conector C2C. Conta da AWS

O exemplo a seguir demonstra um conector enviando um evento originado pelo dispositivo por meio da API: SendConnectorEvent

AWS-API: /SendConnectorEvent URI: POST /connector-event/{Your-Connector-Id} { "UserId": "Your-End-User-ID", "Operation": "DEVICE_EVENT", "OperationVersion": "1.0", "StatusCode": 200, "Message": None, "ConnectorDeviceId": "Your_Device_Id", "MatterEndpoint": { "id": "1", "clusters": [{ "id": "0x0202", "attributes": [ { "0x0000": "3" } ] }] }] }

No exemplo a seguir, vemos o seguinte:

  • Isso vem do endpoint do dispositivo com ID igual a 1.

  • A capacidade do dispositivo à qual esse evento se refere tem um ID de cluster de 0x0202, pertencente ao cluster de assuntos do Fan Control.

  • O atributo que foi alterado tem o ID de 0x000, pertencente ao Fan Mode Enum dentro do cluster. Ele foi atualizado para o valor 3, referente ao valor de Alto.

  • Como connectorId é um parâmetro retornado pelo serviço de nuvem na criação, os conectores devem consultar usando GetCloudConnector e filtrar porlambdaARN. O próprio lambda ARN é consultado usando Lambda.get_function_url_config a API. Isso permite que CloudConnectorId o seja acessado dinamicamente no lambda e não configurado estaticamente como antes.