Eventos de estado de registro do dispositivo - AWS IoT Wireless

Eventos de estado de registro do dispositivo

Eventos de estado de registro do dispositivo publicam notificações de eventos quando há uma alteração no estado de registro do dispositivo, como quando um dispositivo do Sidewalk foi provisionado ou registrado. Os eventos fornecem informações sobre os diferentes estados pelos quais o dispositivo passa desde o momento em que é provisionado até o momento em que é registrado.

Como eventos de estado de registro do dispositivo funcionam

Quando você integra seu dispositivo do Sidewalk com o Amazon Sidewalk e AWS IoT Wireless, a AWS IoT Wireless executa uma operação create e adiciona seu dispositivo Sidewalk a sua Conta da AWS. Seu dispositivo então entra no estado provisionado e o eventType se torna provisioned. Para acessar informações sobre integrar seu dispositivo, consulte Conceitos básicos do AWS IoT Core para Amazon Sidewalk.

Depois que o dispositivo estiver provisioned, o Amazon Sidewalk executa uma operação register para registrar seu dispositivo Sidewalk com AWS IoT Wireless. O processo de registro começa, onde a criptografia e as chaves de sessão são configuradas com AWS IoT. Quando o dispositivo é registrado, o eventType se torna registered e seu dispositivo está pronto para uso.

Depois que o dispositivo estiver registered, o Sidewalk poderá enviar uma solicitação para deregister seu dispositivo. A AWS IoT Wireless, em seguida, atende à solicitação e altera o estado do dispositivo de volta para provisioned. Para obter mais informações sobre os estados do dispositivo, consulte DeviceState.

Ativar notificações para eventos de estado de registro do dispositivo

Antes que os assinantes dos tópicos reservados do estado de registro do dispositivo possam receber mensagens, você deve habilitar as notificações de eventos para eles a partir do AWS Management Console, ou usando a API ou CLI. Você pode habilitar esses eventos para todos os recursos do Sidewalk em sua Conta da AWS ou para recursos selecionados. Para obter mais informações sobre como configurar esses eventos, consulte Ativar eventos para recursos sem fio.

Formato dos tópicos do MQTT para eventos de estado de registro de dispositivos

Para receber notificações sobre eventos do estado do registro do dispositivo, você pode se inscrever nos tópicos reservados do MQTT que começam com um cifrão ($). Para obter mais informações, consulte MQTT topics no Guia do desenvolvedor do AWS IoT.

Os tópicos reservados do MQTT para eventos de estado de registro de dispositivos do Sidewalk usam o seguinte formato:

  • Para tópicos em nível de recurso:

    $aws/iotwireless/events/{eventName}/{eventType}/sidewalk/wireless_devices

  • Para tópicos de identificador:

    $aws/iotwireless/events/{eventName}/{eventType}/sidewalk/{resourceType}/{resourceID}/{id}

Em que:

{eventName}

{eventName} deve ser device_registation_state.

{eventType}

{eventType} pode ser provisioned ou registered.

{resourceType}

{resourceType} pode ser sidewalk_accounts ou wireless_devices.

{resourceID}

{resourceID} é amazon_id para {resourceType} de sidewalk_accounts e wireless_device_id para {resourceType} de wireless_devices.

Você também pode usar o caractere curinga + para se inscrever em vários tópicos ao mesmo tempo. O caractere curinga + corresponde a qualquer string no nível que contém o caractere. Por exemplo, se você quiser ser notificado sobre todos os tipos de eventos possíveis (provisioned e registered) e sobre todos os dispositivos registrados em um determinado ID da Amazon, você pode usar o seguinte filtro de tópicos:

$aws/iotwireless/events/device_registration_state/+/sidewalk/sidewalk_accounts/amazon_id/+

nota

Você não pode usar o caractere curinga # para se inscrever nos tópicos reservados. Para obter mais informações sobre filtros de tópicos, consulte MQTT topic filters no Guia do desenvolvedor do AWS IoT.

Carga útil de mensagens para eventos de estado de registro do dispositivo

Depois de ativar as notificações para eventos de estado de registro do dispositivo, as notificações de eventos são publicadas no MQTT com uma carga JSON. Esses eventos contêm os seguintes exemplos de carga:

{ "eventId": "string", "eventType": "provisioned|registered", "WirelessDeviceId": "string", "timestamp": "timestamp", // Event-specific fields "operation": "create|deregister|register", "Sidewalk": { "AmazonId": "string", "SidewalkManufacturingSn": "string" } }

As cargas contêm os seguintes atributos:

eventId

Um ID de evento exclusivo (sequência).

eventType

O tipo de evento que ocorreu. Pode ser provisioned ou registered.

wirelessDeviceId

O identificador do dispositivo sem fio.

timestamp

A data e hora do Unix de quando o evento ocorreu.

operação

A operação que acionou o evento. Os valores válidos são create, register e deregister.

sidewalk

O ID da Amazon do Sidewalk ou o SidewalkManufacturingSn para o qual quer receber notificações de eventos.