Scelta dei gateway per ricevere il traffico dati in downlink LoRaWAN - Wireless AWS IoT

Scelta dei gateway per ricevere il traffico dati in downlink LoRaWAN

Quando si invia un messaggio di downlink da AWS IoT Core per LoRaWAN al dispositivo, è possibile scegliere i gateway che si desidera utilizzare per il traffico di dati in downlink. Per ricevere il traffico in downlink è possibile specificare un singolo gateway o scegliere da un elenco di gateway.

Come specificare l'elenco dei gateway

È possibile specificare un singolo gateway o l'elenco dei gateway da utilizzare per inviare un messaggio in downlink da AWS IoT Core per LoRaWAN sul proprio dispositivo utilizzando l'operazione API SendDataToWirelessDevice. Quando si richiama l'operazione API, specificare i seguenti parametri utilizzando l'oggetto ParticipatingGateways per i gateway.

Nota

L'elenco dei gateway che si desidera utilizzare non è disponibile nella console AWS IoT. È possibile specificare questo elenco di gateway da utilizzare solo quando si utilizza l'operazione API SendDataToWirelessDevice o la CLI.

  • DownlinkMode: indica se inviare il messaggio di downlink in modalità sequenziale o simultanea. Per i dispositivi di classe A, specificare UsingUplinkGateway per utilizzare solo i gateway scelti dalla precedente trasmissione di messaggi di uplink.

  • GatewayList: l'elenco dei gateway che si desidera usare per inviare il traffico dati in downlink. Il payload del downlink verrà inviato ai gateway specificati con la frequenza specificata. Ciò è indicato mediante un elenco di oggetti GatewayListItem, formati da coppie GatewayId e DownlinkFrequency.

  • TransmissionInterval: il tempo che AWS IoT Core per LoRaWAN attenderà prima di trasmettere il payload al gateway successivo.

Nota

È possibile specificare questo elenco di gateway da utilizzare solo quando si invia il messaggio di downlink a un dispositivo wireless di classe B o C. Se si utilizza un dispositivo di classe A, il gateway scelto per l'invio del messaggio di uplink verrà utilizzato quando viene inviato un messaggio di downlink al dispositivo.

L'esempio seguente mostra come specificare tali parametri per il gateway. Il file input.json conterrà ulteriori dettagli. Per ulteriori informazioni sull'invio di un messaggio di downlink mediante l'operazione API SendDataToWirelessDevice, consulta Eseguire operazioni di accodamento dei messaggi di downlink utilizzando l'API.

Nota

I parametri per specificare l'elenco dei gateway partecipanti non sono disponibili quando si invia un messaggio di downlink da AWS IoT Core per LoRaWANmediante la console AWS IoT.

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

Nell'esempio seguente viene mostrato il contenuto del file input.json.

Contenuto di 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 } ] } } } }

L'output dell'esecuzione di questo comando genera un MessageId per il messaggio di downlink. In alcuni casi, anche se ricevi il MessageId, i pacchetti possono essere eliminati. Per ulteriori informazioni su come risolvere l'errore, consulta la sezione Risoluzione dei problemi relativi alla coda dei messaggi di downlink.

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

Ottenimento delle informazioni sull'elenco dei gateway partecipanti

È possibile ottenere informazioni sull'elenco dei gateway che partecipano alla ricezione del messaggio di downlink elencando i messaggi nella coda di downlink. Per elencare i messaggi, utilizzare l'API ListQueuedMessages.

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

L'esecuzione di questo comando restituisce informazioni sui messaggi in coda e sui relativi parametri.