Eventi di join LoRaWAN - Wireless AWS IoT

Eventi di join LoRaWAN

AWS IoT Core per LoRaWAN può pubblicare messaggi per notificarti gli eventi per i dispositivi LoRaWAN di cui hai eseguito l'onboarding in AWS IoT. Gli eventi di join ti notificano quando viene ricevuta una richiesta di join o di rejoin di tipo 0 o di tipo 2 e il dispositivo è stato sottoposto al join con AWS IoT Core per LoRaWAN.

Come funzionano gli eventi di join

Quando esegui l'onboarding dei dispositivi LoRaWAN con AWS IoT Core per LoRaWAN, AWS IoT Core per LoRaWAN esegue una procedura di join per il tuo dispositivo con AWS IoT Core per LoRaWAN. Il dispositivo viene quindi attivato per l'uso e può inviare un messaggio di uplink per indicare che è disponibile. Una volta eseguito il join del dispositivo, i messaggi di uplink e downlink possono essere scambiati tra il dispositivo e AWS IoT Core per LoRaWAN. Per informazioni su come eseguire l'onboarding del dispositivo, consulta Integra i tuoi dispositivi su AWS IoT Core per LoRaWAN.

Puoi abilitare gli eventi per ricevere la notifica di quando viene eseguito il join del tuo dispositivo con AWS IoT Core per LoRaWAN. Ricevi una notifica anche quando l'evento di join non riesce, quando viene ricevuta una richiesta di rejoin di tipo 0 o di tipo 2 e quando viene accettata.

Abilitazione degli eventi di join LoRaWAN

Prima che sottoscrittori agli argomenti riservati di join LoRaWAN possano ricevere messaggi, è necessario abilitare le notifiche degli eventi dalla AWS Management Console o utilizzando l'API o l'interfaccia a riga di comando. Puoi abilitare questi eventi per tutte le risorse LoRaWAN 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 LoRaWAN

Gli argomenti MQTT riservati per i dispositivi LoRaWAN utilizzano il seguente formato. Se hai sottoscritto questi argomenti, tutti i dispositivi LoRaWAN registrati nel tuoAccount AWS possono ricevere la notifica:

  • Argomenti a livello di risorsa

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

  • Argomenti identificatore

    $aws/iotwireless/events/{eventName}/{eventType}/lorawan/wireless_devices/{resourceID}/{id}

Dove:

{eventName}

{eventName} deve essere join.

{eventType}

{eventType} può essere:

  • join_req_received

  • rejoin_req_0_received

  • rejoin_req_2_received

  • join_accepted

{resourceID}

{resourceID} può essere dev_eui o wireless_device_id.

Ad esempio, puoi sottoscrivere i seguenti argomenti per ricevere una notifica di evento quando AWS IoT Core per LoRaWAN ha accettato una richiesta di join dai tuoi dispositivi.

$aws/iotwireless/events/join/join_accepted/lorawan/wireless_devices/wireless_device_id/{id}

È possibile utilizzare anche il carattere jolly + per sottoscrivere più argomenti contemporaneamente. Il carattere jolly + corrisponde a qualsiasi stringa nel livello che contiene il carattere, come il seguente argomento:

$aws/iotwireless/events/join/join_req_received/lorawan/wireless_devices/wireless_device_id/+

Nota

Non è possibile utilizzare il carattere jolly # per sottoscrivere argomenti riservati.

Per ulteriori informazioni sull'utilizzo del carattere jolly + quando si sottoscrivono gli argomenti, consulta MQTT topic filters nella Guida per gli sviluppatori di AWS IoT.

Payload dei messaggi per l'evento di join LoRaWAN

Di seguito viene illustrato il payload dei messaggi per l'evento di join LoRaWAN.

{ // General fields "eventId": "string", "eventType": "join_req_received|rejoin_req_0_received|rejoin_req_2_received|join_accepted", "WirelessDeviceId": "string", "timestamp": "timestamp", // Event-specific fields "LoRaWAN": { "DevEui": "string", // The fields below are optional indicating that it can be a null value. "DevAddr": "string", "JoinEui": "string", "AppEui": "string", } }

Il payload contiene gli attributi seguenti:

eventId

ID evento univoco generato da AWS IoT Core per LoRaWAN (stringa).

eventType

Il tipo di evento che si è verificato. Può essere uno dei seguenti valori:

  • join_req_received: questo campo mostra i parametri EUI JoinEui o AppEui

  • rejoin_req_0_received

  • rejoin_req_2_received

  • join_accepted: questo campo mostra NetId e DevAddr.

wirelessDeviceId

ID del dispositivo LoRaWAN.

timestamp

Timestamp Unix del momento in cui si è verificato l'evento.

DevEui

Identificatore univoco del dispositivo trovato sull'etichetta del dispositivo o sulla documentazione del dispositivo.

DevAddr e EUI (facoltativo)

Questi campi rappresentano l'indirizzo del dispositivo facoltativo e i parametri EUI JoinEUI o AppEUI.