Eventi sullo stato di registrazione del dispositivo
Gli eventi dello stato di registrazione del dispositivo pubblicano le notifiche degli eventi in caso di modifica dello stato di registrazione del dispositivo, (ad esempio, in caso di provisioning o registrazione di un dispositivo Sidewalk). Gli eventi forniscono informazioni sui diversi stati del dispositivo dal momento in cui viene eseguito il provisioning al momento della registrazione.
Come funzionano gli eventi sullo stato di registrazione del dispositivo
Quando esegui l'onboarding del dispositivo Sidewalk con Amazon Sidewalk e Wireless AWS IoT, Wireless AWS IoT esegue un'operazione create
e aggiunge il dispositivo Sidewalk al tuo Account AWS. Il dispositivo entra quindi nello stato di provisioning e eventType
diventa provisioned
. Per informazioni su come eseguire l'onboarding del dispositivo, consulta Nozioni di base sull'utilizzo di AWS IoT Core per Amazon Sidewalk.
Una volta che lo stato del dispositivo è provisioned
, Amazon Sidewalk esegue un'operazione register
per registrare il dispositivo Sidewalk con Wireless AWS IoT. Il processo di registrazione inizia dove vengono configurate le chiavi di crittografia e di sessione con AWS IoT. Quando il dispositivo è registrato, eventType
diventa registered
, e il dispositivo è pronto per l'uso.
Una volta che lo stato del dispositivo è registered
, Sidewalk può inviare una richiesta per deregister
il dispositivo. Wireless AWS IoT quindi soddisfa la richiesta e modifica lo stato del dispositivo in provisioned
. Per ulteriori informazioni sullo stato del dispositivo, consulta DeviceState (Stato Dispositivo).
Abilita le notifiche per gli eventi di stato della registrazione del dispositivo
Prima che i sottoscrittori dello stato di registrazione del dispositivo, possano ricevere messaggi, è necessario abilitare per loro le notifiche degli eventi, dalla AWS Management Console o utilizzando l'API o la CLI. Puoi abilitare questi eventi per tutte le risorse Sidewalk nel tuo Account AWS o per risorse selezionate. Per ulteriori informazioni su come abilitare gli eventi, consulta Abilitazione degli eventi per le risorse wireless.
Formato degli argomenti MQTT per eventi di stato di registrazione del dispositivo
Per ricevere avvisi sugli eventi di stato di registrazione del dispositivo, puoi sottoscrivere gli argomenti riservati MQTT che iniziano con un simbolo del dollaro ($). Per ulteriori informazioni, consultare Argomenti MQTT nella Guida per gli sviluppatori di AWS IoT.
Gli argomenti MQTT riservati per gli eventi di stato di registrazione del dispositivo Sidewalk utilizzano il seguente formato:
-
Per argomenti a livello di risorsa:
$aws/iotwireless/events/{eventName}/{eventType}/sidewalk/wireless_devices
-
Per argomenti identificatore:
$aws/iotwireless/events/{eventName}/{eventType}/sidewalk/{resourceType}/{resourceID}/{id}
Dove:
- {eventName}
-
{eventName} deve essere
device_registation_state
. - {eventType}
-
{eventType} può essere
provisioned
oregistered
. - {resourceType}
-
{resourceType} può essere
sidewalk_accounts
owireless_devices
. - {resourceID}
-
{resourceID} è
amazon_id
per {resourceType} disidewalk_accounts
ewireless_device_id
per {resourceType} diwireless_devices
.
È possibile utilizzare anche il carattere jolly +
per sottoscrivere più argomenti contemporaneamente. Il carattere jolly +
corrisponde a qualsiasi stringa nel livello che contiene il carattere. Ad esempio, se vuoi ricevere notifiche su tutti i tipi di evento possibili (provisioned
e registered
) e per tutti i dispositivi registrati su un particolare ID Amazon, puoi utilizzare il filtro di argomenti che segue:
$aws/iotwireless/events/device_registration_state/+/sidewalk/sidewalk_accounts/amazon_id/+
Nota
Non è possibile utilizzare il carattere jolly #
per sottoscrivere argomenti riservati. Per ulteriori informazioni sui filtri per argomento, consulta MQTT topic filters nella Guida per gli sviluppatori di AWS IoT.
Payload dei messaggi per eventi di stato di registrazione del dispositivo
Dopo aver abilitato notifiche per eventi di stato di registrazione del dispositivo, le notifiche degli eventi vengono pubblicate su MQTT con un payload JSON. Questi eventi contengono il payload di esempio seguente:
{ "eventId": "string", "eventType": "provisioned|registered", "WirelessDeviceId": "string", "timestamp": "timestamp", // Event-specific fields "operation": "create|deregister|register", "Sidewalk": { "AmazonId": "string", "SidewalkManufacturingSn": "string" } }
Il payload contiene gli attributi seguenti:
- eventId
-
ID evento univoco (stringa).
- eventType
-
Il tipo di evento che si è verificato. Può essere
provisioned
oregistered
. - wirelessDeviceId
-
Identificatore del dispositivo wireless.
- timestamp
-
Timestamp Unix del momento in cui si è verificato l'evento.
- operazione
-
Operazione che ha attivato l'evento. I valori validi sono
create
,register
ederegister
. - sidewalk
-
L'ID Amazon Sidewalk o
SidewalkManufacturingSn
per cui vuoi ricevere le notifiche di evento.