

# Verwalten der Kommunikation zwischen Ihren LoRaWAN-Geräten und AWS IoT
<a name="lorawan-device-cloud-communication"></a>

Nachdem Sie Ihr LoRaWAN-Gerät mit AWS IoT Core für LoRaWAN verbunden haben, können Ihre Geräte beginnen, Nachrichten an die Cloud zu senden. Uplink-Nachrichten sind Nachrichten, die von Ihrem Gerät gesendet und von AWS IoT Core für LoRaWAN empfangen werden. Ihre LoRaWAN-Geräte können jederzeit Uplink-Nachrichten senden, die dann an andere AWS-Service und in der Cloud gehostete Anwendungen weitergeleitet werden. Nachrichten, die von AWS IoT Core für LoRaWAN und anderen Geräten und Anwendungen an Ihre Geräte gesendet werden, werden AWS-Service als Downlink-Nachrichten bezeichnet.

Im Folgenden wird gezeigt, wie Sie Uplink- und Downlink-Nachrichten, die zwischen Ihren Geräten und der Cloud gesendet werden, anzeigen und verwalten können. Sie können eine Warteschlange mit Downlink-Nachrichten verwalten und diese Nachrichten in der Reihenfolge an Ihre Geräte senden, in der sie der Warteschlange hinzugefügt wurden.

**Topics**
+ [Das Format der Uplink-Nachrichten anzeigen, die von LoRaWAN-Geräten gesendet wurden](lorawan-uplink-metadata-format.md)
+ [Downlink-Nachrichten zum Versand an LoRaWAN-Geräte in die Warteschlange stellen](lorawan-downlink-queue.md)

# Das Format der Uplink-Nachrichten anzeigen, die von LoRaWAN-Geräten gesendet wurden
<a name="lorawan-uplink-metadata-format"></a>

Nachdem Sie Ihr LoRaWAN-Gerät mit AWS IoT Core für LoRaWAN verbunden haben, können Sie das Format der Uplink-Nachricht beobachten, die Sie von Ihrem WLAN-Gerät erhalten.

## Bevor Sie die Uplink-Nachrichten beobachten können
<a name="lorawan-uplink-metadata-prerequisites"></a>

Sie müssen Ihr WLAN-Gerät integriert und mit AWS IoT verbunden haben, damit es Daten senden und empfangen kann. Informationen zum Onboarding von Geräten mit AWS IoT Core für LoRaWAN finden Sie unter [Einbinden Ihrer Geräte in AWS IoT Core für LoRaWAN](lorawan-onboard-end-devices.md).

## Was enthalten die Uplink-Nachrichten?
<a name="lorawan-uplink-metadata-contains"></a>

LoRaWAN-Geräte stellen über LoRaWAN-Gateways eine Verbindung zu AWS IoT Core für LoRaWAN her. Die Uplink-Nachricht, die Sie vom Gerät erhalten, enthält die folgenden Informationen.
+ Nutzdaten, die der verschlüsselten Nutzdatennachricht entsprechen, die vom WLAN-Gerät gesendet wird.
+ Drahtlose Metadaten, die Folgendes beinhalten:
  + Geräteinformationen wie DevEUI, die Datenrate und der Frequenzkanal, in dem das Gerät betrieben wird.
  + Optionale zusätzliche Parameter und Gateway-Informationen für Gateways, die mit dem Gerät verbunden sind. Zu den Gateway-Parametern gehören EUI, SNR und RSSi des Gateways.

  Mithilfe der drahtlosen Metadaten können Sie nützliche Informationen über das WLAN-Gerät und die Daten abrufen, die zwischen Ihrem Gerät und AWS IoT übertragen werden. Sie können den `AckedMessageId`-Parameter beispielsweise verwenden, um zu überprüfen, ob die letzte bestätigte Downlink-Nachricht vom Gerät empfangen wurde. Wenn Sie sich dafür entscheiden, die Gateway-Informationen einzubeziehen, können Sie optional angeben, ob Sie zu einem stärkeren Gateway-Kanal wechseln möchten, der näher an Ihrem Gerät liegt.

## Wie beobachtet man die Uplink-Nachrichten?
<a name="lorawan-uplink-metadata-observe"></a>

Nachdem Sie Ihr Gerät eingebunden haben, können Sie den [MQTT-Testclient](https://console.aws.amazon.com/iot/home#/test) auf der **Testseite** der AWS IoT-Konsole verwenden, um das Thema zu abonnieren, das Sie bei der Erstellung Ihres Ziels angegeben haben. Sobald Ihr Gerät verbunden ist und Payload-Daten sendet, werden Ihnen Nachrichten angezeigt.

Dieses Diagramm identifiziert die wichtigsten Elemente in einem LoRaWAN-System, die mit AWS IoT Core für LoRaWAN verbunden sind. Es zeigt die primäre Datenebene und den Datenfluss durch das System.

![\[Das Bild zeigt, wie AWS IoT Core für LoRaWAN-Daten von einem WLAN-Gerät an AWS IoT und andere Dienste übertragen werden.\]](http://docs.aws.amazon.com/de_de/iot-wireless/latest/developerguide/images/iot-lorawan-data-flow.png)


Wenn das WLAN-Gerät mit dem Senden von Uplink-Daten beginnt, werden die drahtlosen Metadaten von AWS IoT Core für LoRaWAN mit der Nutzlast umschlossen und dann an Ihre AWS-Anwendungen gesendet.

## Beispiel für Uplink-Nachricht
<a name="lorawan-uplink-metadata-example"></a>

Das folgende Beispiel zeigt das Format der Uplink-Nachricht, die von Ihrem Gerät empfangen wurde.

```
{
    "WirelessDeviceId": "5b58245e-146c-4c30-9703-0ca942e3ff35", 
    "PayloadData": "Cc48AAAAAAAAAAA=",    
    "WirelessMetadata":
    {
        "LoRaWAN":
        {
            "ADR": false,
            "Bandwidth": 125,
            "ClassB": false,
            "CodeRate": "4/5",
            "DataRate": "0",
            "DevAddr": "00b96cd4",
            "DevEui": "58a0cb000202c99",            
            "FOptLen": 2,
            "FCnt": 1,
            "Fport": 136,   
            "Frequency": "868100000",     
            "Gateways": [
             {
                    "GatewayEui": "80029cfffe5cf1cc",      
                    "Snr": -29,
                    "Rssi": 9.75
             }
             ],  
            "MIC": "7255cb07",  
            "MType": "UnconfirmedDataUp",
            "Major": "LoRaWANR1",
            "Modulation": "LORA", 
            "PolarizationInversion": false,    
            "SpreadingFactor": 12,                         
            "Timestamp": "2021-05-03T03:24:29Z"
            
        }
    }
}
```

### Schließen Sie Gateway-Metadaten von Uplink-Metadaten aus
<a name="lorawan-uplink-metadata-example2"></a>

Wenn Sie die Gateway-Metadateninformationen aus Ihren Uplink-Metadaten ausschließen möchten, deaktivieren Sie den **AddGWMetadata-Parameter**, wenn Sie das Dienstprofil erstellen. Informationen zu diesem Parameter finden Sie unter [Fügen Sie Serviceprofile hinzu](lorawan-define-profiles.md#lorawan-service-profiles).

In diesem Fall wird der `Gateways`-Abschnitt in den Uplink-Metadaten nicht angezeigt, wie im folgenden Beispiel dargestellt.

```
{  
    "WirelessDeviceId": "0d9a439b-e77a-4573-a791-49d5c0f4db95",
    "PayloadData": "AAAAAAAA//8=",
    "WirelessMetadata": {
        "LoRaWAN": {
            "ClassB": false,
            "CodeRate": "4/5",
            "DataRate": "1",
            "DevAddr": "01920f27",
            "DevEui": "ffffff10000163b0",
            "FCnt": 1,
            "FPort": 5,
            "Timestamp": "2021-04-29T05:19:43.646Z"
    }
  }
}
```

# Downlink-Nachrichten zum Versand an LoRaWAN-Geräte in die Warteschlange stellen
<a name="lorawan-downlink-queue"></a>

In der Cloud gehostete Anwendungen und andere AWS-Services können Downlink-Nachrichten an Ihre WLAN-Geräte senden. Downlink-Nachrichten sind Nachrichten, die von AWS IoT Core für LoRaWAN an Ihr WLAN-Gerät gesendet werden. Sie können Downlink-Nachrichten für jedes Gerät, das mit AWS IoT Core für LoRaWAN verbunden ist, planen und versenden.

Wenn Sie über mehrere Geräte verfügen, für die Sie eine Downlink-Nachricht senden möchten, können Sie eine Multicast-Gruppe verwenden. Geräte in einer Multicast-Gruppe verwenden dieselbe Multicast-Adresse, die dann an eine ganze Gruppe von Empfängergeräten verteilt wird. Weitere Informationen finden Sie unter [Erstellen Sie Multicast-Gruppen, um eine Downlink-Nutzlast an mehrere Geräte zu senden](lorawan-multicast-groups.md). 

## So funktioniert eine Downlink-Nachrichtenwarteschlange
<a name="lorawan-how-downlink-works"></a>

Die Geräteklasse Ihres LoRaWAN-Geräts bestimmt, wie die Nachrichten in Ihrer Warteschlange an das Gerät gesendet werden. Geräte der Klasse A senden eine Uplink-Nachricht an AWS IoT Core für LoRaWAN, um anzuzeigen, dass das Gerät für den Empfang von Downlink-Nachrichten verfügbar ist. Geräte der Klasse B können Nachrichten in geplanten Downlink-Steckplätzen empfangen. Geräte der Klasse C können jederzeit Downlink-Nachrichten empfangen. Weitere Informationen zu Geräteklassen finden Sie unter [Geräteklassen](lorawan-manage-end-devices.md#lorawan-device-classes).

Im Folgenden wird gezeigt, wie Nachrichten in die Warteschlange gestellt und an Ihre Geräte der Klasse A gesendet werden.

1. AWS IoT Core für LoRaWAN puffert die Downlink-Nachricht, die Sie der Warteschlange hinzugefügt haben, mit dem Frame-Port, den Nutzdaten und den Bestätigungsmodus-Parametern, die Sie mithilfe der AWS IoT-Konsole oder der AWS IoT Wireless-API angegeben haben.

1. Ihr LoRaWAN-Gerät sendet eine Uplink-Nachricht, um anzuzeigen, dass es online ist und mit dem Empfang von Downlink-Nachrichten beginnen kann.

1. Wenn Sie der Warteschlange mehr als eine Downlink-Nachricht hinzugefügt haben, sendet AWS IoT Core für LoRaWAN die erste Downlink-Nachricht in der Warteschlange an Ihr Gerät, wobei das Bestätigungskennzeichen (ACK) festgelegt ist.

1. Ihr Gerät sendet entweder sofort eine Uplink-Nachricht an AWS IoT Core für LoRaWAN oder es schläft bis zur nächsten Uplink-Nachricht und fügt der Nachricht die ACK-Markierung hinzu.

1. Wenn die Uplink-Nachricht mit der ACK-Markierung von AWS IoT Core für LoRaWAN empfangen wird, löscht es die Downlink-Nachricht aus der Warteschlange, was darauf hinweist, dass Ihr Gerät die Downlink-Nachricht erfolgreich empfangen hat. Wenn die ACK-Markierung nach dreimaliger Überprüfung in der Uplink-Nachricht fehlt, wird die Nachricht verworfen.

## Führen Sie Downlink-Warteschlangenoperationen mithilfe der Konsole durch
<a name="lorawan-downlink-queue-console"></a>

Sie können die AWS-Managementkonsole verwenden, um Downlink-Nachrichten in eine Warteschlange zu stellen und einzelne Nachrichten oder die gesamte Warteschlange nach Bedarf zu löschen. Bei Geräten der Klasse A werden die Nachrichten in der Warteschlange an das Gerät gesendet, nachdem ein Uplink vom Gerät empfangen wurde, der anzeigt, dass das Gerät online ist. Nachdem die Nachricht gesendet wurde, wird sie automatisch aus der Warteschlange gelöscht.

**Warteschlange der Downlink-Nachrichten**  
Um eine Downlink-Nachrichtenwarteschlange zu erstellen

1. Gehen Sie zum [Gerätehub der AWS IoT-Konsole](https://console.aws.amazon.com/iot/home#/wireless/devices) und wählen Sie das Gerät aus, für das Sie Downlink-Nachrichten in die Warteschlange stellen möchten.

1. Wählen Sie auf der Seite mit den Gerätedetails im Abschnitt **Downlink-Nachrichten** die Option **Downlink-Nachrichten in die Warteschlange stellen**.

1. Geben Sie folgende Parameter an, um Ihre Downlink-Nachricht zu konfigurieren:
   + **FPort**: Wählen Sie den Frame-Port, über den das Gerät mit AWS IoT Core für LoRaWAN kommunizieren soll.
   + **Nutzlast**: Geben Sie die Nutzlast-Nachricht an, die Sie an Ihr Gerät senden möchten. Die maximale Nutzlastgröße beträgt 242 Byte. Wenn die adaptive Datenrate (ADR) aktiviert ist, verwendet AWS IoT Core für LoRaWAN diese, um die optimale Datenrate für Ihre Nutzlastgröße auszuwählen. Sie können die Datenrate nach Bedarf weiter optimieren.
   + **Bestätigungsmodus**: Bestätigen Sie, ob Ihr Gerät die Downlink-Nachricht empfangen hat. Wenn für eine Nachricht dieser Modus erforderlich ist, wird in Ihrem Datenstrom eine Uplink-Nachricht mit der ACK-Markierung angezeigt, und die Nachricht wird aus der Warteschlange gelöscht.

1. Um Ihre Downlink-Nachricht zur Warteschlange hinzuzufügen, wählen Sie **Absenden**.

Ihre Downlink-Nachricht wurde jetzt der Warteschlange hinzugefügt. Wenn Sie Ihre Nachricht nicht sehen oder eine Fehlermeldung erhalten, können Sie den Fehler wie unter [Beheben Sie Fehler in der Warteschlange für Downlink-Nachrichten](#lorawan-downlink-queue-troubleshoot) beschrieben beheben. 

**Anmerkung**  
Nachdem Ihre Downlink-Nachricht zur Warteschlange hinzugefügt wurde, können Sie die Parameter **FPort**, **Payload** und **Acknowledge-Modus** nicht mehr bearbeiten. Um eine Downlink-Nachricht mit unterschiedlichen Werten für diese Parameter zu senden, können Sie diese Nachricht löschen und eine neue Downlink-Nachricht mit den aktualisierten Parameterwerten in die Warteschlange stellen.

In der Warteschlange werden die Downlink-Nachrichten aufgeführt, die Sie hinzugefügt haben. Um die Nutzdaten für die Uplink- und Downlink-Nachrichten zu sehen, die zwischen Ihren Geräten und AWS IoT Core für LoRaWAN ausgetauscht werden, können Sie den Netzwerkanalysator verwenden. Weitere Informationen finden Sie unter [Überwachen Sie Ihre WLAN-Ressourcenflotte in Echtzeit mit dem Netzwerkanalysator](network-analyzer-overview.md).

**Listet die Warteschlange für Downlink-Nachrichten auf**  
Die von Ihnen erstellte Downlink-Nachricht wird der Warteschlange hinzugefügt. Jede nachfolgende Downlink-Nachricht wird nach dieser Nachricht der Warteschlange hinzugefügt. Eine Liste der Downlink-Nachrichten finden Sie im Abschnitt **Downlink-Nachrichten** auf der Seite mit den Gerätedetails. Nachdem ein Uplink empfangen wurde, werden die Nachrichten an das Gerät gesendet. Nachdem eine Downlink-Nachricht von Ihrem Gerät empfangen wurde, wird sie aus der Warteschlange entfernt. Die nächste Nachricht wird dann in der Warteschlange nach oben verschoben und an Ihr Gerät gesendet.

**Löschen Sie einzelne Downlink-Nachrichten oder löschen Sie die gesamte Warteschlange**  
Jede Downlink-Nachricht wird automatisch aus der Warteschlange gelöscht, nachdem sie an Ihr Gerät gesendet wurde. Sie können auch einzelne Nachrichten oder die gesamte Downlink-Warteschlange löschen. Diese Aktionen können nicht rückgängig gemacht werden.
+ Wenn Sie Nachrichten in der Warteschlange finden, die Sie nicht senden möchten, wählen Sie die Nachrichten aus und klicken Sie auf **Löschen**.
+ Wenn Sie keine Nachrichten aus der Warteschlange an Ihr Gerät senden möchten, können Sie die gesamte Warteschlange löschen, indem Sie **Downlink-Warteschlange löschen** wählen.

## Führen Sie Downlink-Warteschlangenoperationen mithilfe der API durch
<a name="lorawan-downlink-queue-api"></a>

Sie können die AWS IoT Wireless API verwenden, um Downlink-Nachrichten in eine Warteschlange zu stellen und einzelne Nachrichten oder die gesamte Warteschlange nach Bedarf zu löschen.

**Warteschlange der Downlink-Nachrichten**  
Verwenden Sie den [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_SendDataToWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_SendDataToWirelessDevice.html)API-Vorgang oder den [cli/latest/reference/iotwireless/send-data-to-wireless-device.html](cli/latest/reference/iotwireless/send-data-to-wireless-device.html)CLI-Befehl, um eine Downlink-Nachrichtenwarteschlange zu erstellen.

```
aws iotwireless send-data-to-wireless-device \
    --id "11aa5eae-2f56-4b8e-a023-b28d98494e49" \
    --transmit-mode "1" \
    --payload-data "SGVsbG8gVG8gRGV2c2lt" \
    --wireless-metadata LoRaWAN={FPort=1}
```

Die Ausgabe der Ausführung dieses Befehls generiert eine `MessageId` für die Downlink-Nachricht. In einigen Fällen können Pakete verworfen werden, selbst wenn Sie die `MessageId` erhalten. Weitere Informationen zum Beheben dieser Probleme finden Sie unter [Beheben Sie Fehler in der Warteschlange für Downlink-Nachrichten](#lorawan-downlink-queue-troubleshoot).

```
{
    MessageId: "6011dd36-0043d6eb-0072-0008"
}
```

**Liste der Downlink-Nachrichten in der Warteschlange**  
Verwenden Sie den [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListQueuedMessages.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListQueuedMessages.html)-API-Vorgang oder den [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/list-queued-messages.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/list-queued-messages.html)-CLI-Befehl, um alle Downlink-Nachrichten in der Warteschlange aufzulisten.

```
aws iotwireless list-queued-messages
```

Standardmäßig werden bei der Ausführung dieses Befehls maximal 10 Downlink-Nachrichten angezeigt.

**Löschen Sie einzelne Downlink-Nachrichten oder löschen Sie die gesamte Warteschlange**  
Verwenden Sie die [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteQueuedMessages.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteQueuedMessages.html)-API-Operation oder den [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/delete-queued-messages.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/delete-queued-messages.html)-CLI-Befehl, um einzelne Nachrichten aus der Warteschlange zu entfernen oder die gesamte Warteschlange zu löschen.
+ Um einzelne Nachrichten zu entfernen, geben Sie die `messageID` für Nachrichten an, die Sie für Ihr WLAN-Gerät entfernen möchten, angegeben durch `wirelessDeviceId`.
+ Um die gesamte Downlink-Warteschlange zu löschen, geben Sie `messageID` als `*` für Ihr WLAN-Gerät an, spezifiziert durch `wirelessDeviceId`.

## Beheben Sie Fehler in der Warteschlange für Downlink-Nachrichten
<a name="lorawan-downlink-queue-troubleshoot"></a>

Hier sind einige Dinge, die Sie überprüfen sollten, falls Sie nicht die erwarteten Ergebnisse sehen:
+ 

**-Downlink-Nachrichten werden nicht in der AWS IoT-Konsole angezeigt**  
Wenn Sie Ihre Downlink-Nachricht nicht in der Warteschlange sehen, nachdem Sie sie wie unter [Führen Sie Downlink-Warteschlangenoperationen mithilfe der Konsole durch](#lorawan-downlink-queue-console) beschrieben hinzugefügt haben, kann das daran liegen, dass Ihr Gerät einen Vorgang, der *Aktivierungs*- oder *Beitrittsvorgang* genannt wird, noch nicht abgeschlossen hat. Dieser Vorgang ist abgeschlossen, wenn Ihr Gerät mit AWS IoT Core für LoRaWAN aktiviert wird. Weitere Informationen finden Sie unter [Hinzufügen der Spezifikation Ihres drahtlosen Geräts zu AWS IoT Core für LoRaWAN mithilfe der Konsole](lorawan-end-devices-add.md#lorawan-end-device-spec-console).

  Nachdem Sie Ihr Gerät in AWS IoT Core für LoRaWAN eingebunden haben, können Sie Ihr Gerät mithilfe des Netzwerkanalysators oder Amazon CloudWatch überwachen, um zu überprüfen, ob der Beitritt und der erneute Beitritt erfolgreich waren. Weitere Informationen finden Sie unter [Überwachungstools](monitoring-cloudwatch.md#monitoring-tools).
+ 

**Fehlende Downlink-Nachrichtenpakete bei Verwendung der API**  
Wenn Sie den `SendDataToWirelessDevice` API-Vorgang verwenden, gibt die API einen eindeutigen `MessageId` zurück. Es kann jedoch nicht bestätigt werden, ob Ihr LoRaWAN-Gerät die Downlink-Nachricht erhalten hat. Die Downlink-Pakete können verworfen werden, wenn Ihr Gerät den Verbindungsvorgang nicht abgeschlossen hat. Weitere Informationen darüber, wie Sie diesen Fehler beheben, finden Sie im vorherigen Abschnitt.
+ 

**Fehlender ARN-Fehler beim Senden der Downlink-Nachricht**  
Wenn Sie eine Downlink-Nachricht aus der Warteschlange an Ihr Gerät senden, erhalten Sie möglicherweise die Fehlermeldung Amazon Ressourcenname (ARN) fehlt. Dieser Fehler kann auftreten, weil das Ziel für das Gerät, das die Downlink-Nachricht empfängt, nicht korrekt angegeben wurde. Überprüfen Sie die Zielinformationen Ihres Geräts, um diesen Fehler zu beheben.