LoRaWAN-Join-Ereignisse - AWS IoT Wireless

LoRaWAN-Join-Ereignisse

AWS IoT Core for LoRaWAN kann Nachrichten veröffentlichen, um Sie über Join-Ereignisse für LoRaWAN-Geräte zu informieren, die Sie zu AWS IoT hinzufügen. Join-Ereignisse benachrichtigen Sie, wenn eine Anfrage zum Beitritt oder Wiederbeitritt vom Typ 0 oder Typ 2 eingeht und das Gerät mit AWS IoT Core for LoRaWAN beigetreten ist.

Funktionsweise von Join-Ereignissen

Wenn Sie Ihre LoRaWAN-Geräte mit AWS IoT Core for LoRaWAN einbinden, führt AWS IoT Core for LoRaWAN mit AWS IoT Core for LoRaWAN ein Join-Verfahren für Ihr Gerät durch. Ihr Gerät wird dann für die Nutzung aktiviert und kann eine Uplink-Nachricht senden, um anzuzeigen, dass es verfügbar ist. Nachdem das Gerät beigetreten ist, können Uplink- und Downlink-Nachrichten zwischen Ihrem Gerät und AWS IoT Core for LoRaWAN ausgetauscht werden. Weitere Informationen zum Onboarding von Geräten finden Sie unter Einbinden Ihrer Geräte in AWS IoT Core for LoRaWAN.

Sie können Ereignisse aktivieren, um Sie zu benachrichtigen, wenn Ihr Gerät mit AWS IoT Core for LoRaWAN beigetreten ist. Sie werden auch benachrichtigt, wenn das Join-Ereignis fehlschlägt und wenn eine Wiederbeitrittsanfrage vom Typ 0 oder Typ 2 eingeht und wenn sie akzeptiert wird.

LoRaWAN-Join-Ereignisse aktivieren

Bevor Subscriber der reservierten LoRaWAN-Join-Themen Nachrichten empfangen können, müssen Sie für sie Ereignisbenachrichtigungen über die AWS Management Console oder mithilfe der API oder CLI aktivieren. Sie können diese Ereignisse für alle LoRaWAN-Ressourcen in Ihren AWS-Konto oder für ausgewählte Ressourcen aktivieren. Weitere Informationen darüber, wie Sie diese Ereignisse einrichten finden Sie unter Ereignisse für Drahtlos-Ressourcen aktivieren.

Format der MQTT-Themen für LoRaWAN-Ereignisse

Für LoRaWAN-Geräte reservierte MQTT-Themen wird das folgende Format verwendet: Wenn Sie diese Themen abonniert haben, können alle LoRaWAN-Geräte, die bei Ihrem AWS-Konto registriert sind, die Benachrichtigung erhalten:

  • Themen auf Ressourcenebene

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

  • Kennungsthemen

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

Wobei gilt:

{eventName}

{eventName} muss join sein.

{eventType}

{eventType} kann sein.

  • join_req_received

  • rejoin_req_0_received

  • rejoin_req_2_received

  • join_accepted

{resourceID}

{resourceID} kann dev_eui oder wireless_device_id sein.

Sie können beispielsweise die folgenden Themen abonnieren, um eine Ereignisbenachrichtigung zu erhalten, wenn Sie AWS IoT Core for LoRaWAN eine Join-Anfrage von Ihren Geräten akzeptiert haben.

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

Sie können auch das Platzhalterzeichen + verwenden, um mehrere Themen gleichzeitig zu abonnieren. Das Platzhalterzeichen + entspricht einer beliebigen Zeichenfolge in der Ebene, die das Zeichen enthält, z. B. im folgenden Thema:

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

Anmerkung

Sie können das Platzhalterzeichen # nicht verwenden, um die reservierten Themen zu abonnieren.

Weitere Informationen zur Verwendung des Platzhalters + beim Abonnieren von Themen finden Sie unter MQTT-Themenfilter im AWS IoT-Entwicklerhandbuch.

Nachrichten-Payload für das LoRaWAN-Join-Ereignis

Im Folgenden wird die Nachrichtennutzlast für das LoRaWAN-Join-Ereignis angezeigt.

{ // 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", } }

Die Nutzlast enthält die folgenden Attribute:

eventId

Eine eindeutige Ereignis-ID, die von AWS IoT Core for LoRaWAN (Zeichenfolge) generiert wird.

eventType

Die Art des Ereignisses, das eingetreten ist. Dabei kann es sich um einen der folgenden Werte handeln:

  • join_req_received: In diesem Feld werden die EUI-Parameter JoinEui oder AppEui angezeigt

  • rejoin_req_0_received

  • rejoin_req_2_received

  • join_accepted: In diesem Feld wird das NetId und DevAddr angezeigt.

wirelessDeviceId

Die ID des LoRaWAN-Geräts.

timestamp

Der Unix-Zeitstempel für den Zeitpunkt, an dem das Ereignis aufgetreten ist.

DevEui

Die eindeutige Kennung des Geräts, die auf dem Geräteetikett oder der Gerätedokumentation zu finden ist.

DevAddr und EUIs (optional)

Diese Felder sind die optionale Geräteadresse und die EUI-Parameter JoinEUI oder AppEUI.