Envía eventos del dispositivo con la API SendConnectorEvent - Integraciones gestionadas para AWS IoT Device Management

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Envía eventos del dispositivo con la API SendConnectorEvent

Resumen de los eventos iniciados por el dispositivo

Si bien la SendConnectorEvent API se usa para responder de forma asíncrona a AWS.SendCommand cualquier AWS.DiscoverDevices operación, también se usa para notificar a las integraciones gestionadas cualquier evento iniciado por el dispositivo. Los eventos iniciados por el dispositivo se pueden definir como cualquier evento generado por un dispositivo sin un comando iniciado por el usuario. Estos eventos del dispositivo pueden incluir, entre otros, cambios de estado del dispositivo, detección de movimiento, niveles de batería y más. Puedes devolver estos eventos a las integraciones gestionadas mediante la SendConnectorEvent API con la operación DEVICE_EVENT.

En la siguiente sección, se utiliza una cámara inteligente instalada en un hogar como ejemplo para explicar con más detalle el flujo de trabajo de estos eventos:

Flujo de trabajo de los eventos
flujo de trabajo de eventos del dispositivo
  1. La cámara detecta movimiento y genera un evento que se envía al servidor de recursos.

  2. El servidor de recursos procesa el evento y lo envía al conector C2C.

  3. Su conector traduce este evento a la DEVICE_EVENT interfaz de integraciones gestionadas para AWS IoT Device Management.

  4. Su conector C2C envía este evento de dispositivo a las integraciones gestionadas mediante la SendConnectorEvent API con la operación configurada en «DEVICE_EVENT».

  5. Las integraciones gestionadas identifican al cliente relevante y le transmiten este evento.

  6. El cliente recibe este evento y se lo muestra al usuario mediante un identificador de usuario.

Para obtener más información sobre el funcionamiento de la SendConnectorEvent API, consulte SendConnectorEvent la guía de referencia de la API de integraciones administradas para AWS IoT Device Management.

Requisitos de los eventos iniciados por el dispositivo

Los siguientes son algunos requisitos para los eventos iniciados por el dispositivo.

  • Su recurso de conector C2C debería poder recibir eventos de dispositivos asíncronos desde su servidor de recursos

  • Su recurso de conector C2C debería poder llamar a las integraciones administradas de las API del servicio AWS IoT Device Management a través de SiGv4 con AWS las credenciales Cuenta de AWS utilizadas para registrar el conector C2C.

El siguiente ejemplo muestra un conector que envía un evento originado en un dispositivo a través de la 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" } ] }] }] }

En el siguiente ejemplo, vemos lo siguiente:

  • Proviene del punto final del dispositivo con un ID igual a 1.

  • La capacidad del dispositivo a la que se refiere este evento tiene un ID de clúster de 0x0202, que corresponde al clúster de materia Fan Control.

  • El atributo que ha cambiado tiene el ID 0x000 y corresponde a la enumeración del modo de ventilador del clúster. Se ha actualizado al valor 3, que corresponde al valor Alto.

  • Dado que connectorId es un parámetro devuelto por el servicio en la nube al crearlo, los conectores deben realizar consultas utilizando GetCloudConnector y filtrar porlambdaARN. La propia lambda ARN se consulta mediante Lambda.get_function_url_config la API. Esto permite acceder CloudConnectorId a ellos de forma dinámica en la lambda y no configurarlos estáticamente como antes.