

# LoRaWAN 다운링크 데이터 트래픽을 수신할 게이트웨이 선택
<a name="lorawan-gateway-participate"></a>

AWS IoT Core for LoRaWAN에서 디바이스로 다운링크 메시지를 보낼 때 다운링크 데이터 트래픽에 사용할 게이트웨이를 선택할 수 있습니다. 개별 게이트웨이를 지정하거나 게이트웨이 목록에서 선택하여 다운링크 트래픽을 수신할 수 있습니다.

## 게이트웨이 목록을 지정하는 방법
<a name="lorawan-participate-how"></a>

[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 작업을 사용하여 AWS IoT Core for LoRaWAN에서 디바이스로 다운링크 메시지를 보낼 때 사용할 개별 게이트웨이 또는 게이트웨이 목록을 지정할 수 있습니다. API 작업을 호출할 때 게이트웨이에 대한 `ParticipatingGateways` 객체를 사용하여 다음 파라미터를 지정하세요.

**참고**  
사용하려는 게이트웨이 목록이 AWS IoT 콘솔에 없습니다. `SendDataToWirelessDevice` API 작업 또는 CLI를 사용할 때만 사용할 게이트웨이 목록을 지정할 수 있습니다.
+ `DownlinkMode`: 다운링크 메시지를 순차 모드로 보낼지 아니면 동시 모드로 보낼지를 나타냅니다. 클래스 A 장치의 경우 이전 업링크 메시지 전송에서 선택한 게이트웨이만 사용하려면 `UsingUplinkGateway`를 지정합니다.
+ `GatewayList`: 다운링크 데이터 트래픽을 보내는 데 사용할 게이트웨이 목록입니다. 다운링크 페이로드는 지정된 빈도로 지정된 게이트웨이로 전송됩니다. 이는 `GatewayId` 및 `DownlinkFrequency` 쌍으로 구성된 `GatewayListItem` 객체 목록을 사용하여 표시됩니다.
+ `TransmissionInterval`: AWS IoT Core for LoRaWAN가 페이로드를 다음 게이트웨이로 전송하기 전에 대기하는 시간입니다.

**참고**  
다운링크 메시지를 클래스 B 또는 클래스 C 무선 디바이스로 전송할 때만 사용할 게이트웨이 목록을 지정할 수 있습니다. 클래스 A 디바이스를 사용하는 경우 다운링크 메시지가 디바이스로 전송될 때 업링크 메시지를 보낼 때 선택한 게이트웨이가 사용됩니다.

다음은 게이트웨이에 대해 이러한 파라미터를 지정하는 방법을 보여주는 예입니다. `input.json` 파일에는 추가 세부 정보가 포함됩니다. `SendDataToWirelessDevice` API 작업을 사용하여 다운링크 메시지를 전송하는 방법에 대한 자세한 내용은 [API를 사용하여 다운링크 대기열 작업 수행](lorawan-downlink-queue.md#lorawan-downlink-queue-api)을 참조하세요.

**참고**  
AWS IoT 콘솔을 사용하여 AWS IoT Core for LoRaWAN에서 다운링크 메시지를 보낼 때는 참여 게이트웨이 목록을 지정하기 위한 파라미터를 사용할 수 없습니다.

```
aws iotwireless send-data-to-wireless-device \
    --id "11aa5eae-2f56-4b8e-a023-b28d98494e49" \
    --transmit-mode "1" \
    --payload-data "SGVsbG8gVG8gRGV2c2lt" \
    --cli-input-json file://input.json
```

다음은 `input.json` 파일의 콘텐츠를 보여줍니다.

**input.json 내용**

```
{
    "WirelessMetadata": {
        "LoRaWAN": {
            "FPort": "1", 
            "ParticipatingGateways": {
                "DownlinkMode": "SEQUENTIAL", 
                "TransmissionInterval": 1200,
                "GatewayList": [
                    {
                        "DownlinkFrequency": 100000000,
                        "GatewayID": a01b2c34-d44e-567f-abcd-0123e445663a
                    },
                    {
                        "DownlinkFrequency": 100000101,
                        "GatewayID": 12345678-a1b2-3c45-67d8-e90fa1b2c34d
                    }
                ]
            }
        }
    }
}
```

이 명령을 실행하면 출력에 다운링크 메시지의 `MessageId`가 생성됩니다. 경우에 따라, `MessageId`를 수신하더라도 패킷이 삭제될 수 있습니다. 이 오류를 해결하는 방법에 대한 자세한 내용은 [다운링크 메시지 대기열 오류 문제 해결](lorawan-downlink-queue.md#lorawan-downlink-queue-troubleshoot) 섹션을 참조하세요.

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

## 참여 게이트웨이 목록에 대한 정보 가져오기
<a name="lorawan-participate-get"></a>

다운링크 대기열에 메시지를 나열하면 다운링크 메시지를 받는 데 참여하는 게이트웨이 목록에 대한 정보를 얻을 수 있습니다. 메시지를 나열하려면 [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를 사용하세요.

```
aws iotwireless list-queued-messages \
    --wireless-device-type "LoRaWAN"
```

이 명령을 실행하면 큐에 있는 메시지 및 해당 매개 변수에 대한 정보가 반환됩니다.