

# Collegamento di gateway e dispositivi ad AWS IoT Core per LoRaWAN
<a name="lorawan-getting-started"></a>

AWS IoT Core per LoRaWAN ti aiuta a connettere e gestire dispositivi wireless LoRaWAN (Low Power Long Range Wide Area Network) e sostituisce la necessità di sviluppare e utilizzare un LNS. I dispositivi e i gateway WAN a lungo raggio (LoRaWAN) possono connettersi ad AWS IoT Core utilizzando AWS IoT Core per LoRaWAN.

## Convenzioni di denominazione per dispositivi, gateway, profili e destinazioni
<a name="lorawan-naming-convention"></a>

Prima di iniziare a utilizzare AWS IoT Core per LoRaWAN e creare le risorse, considera la convenzione di denominazione dei tuoi dispositivi, gateway e destinazione.

AWS IoT Core per LoRaWAN assegna ID univoci alle risorse create per dispositivi wireless, gateway e profili; tuttavia, è anche possibile assegnare alle risorse nomi più descrittivi per facilitarne l'identificazione. Prima di aggiungere dispositivi, gateway, profili e destinazioni ad AWS IoT Core per LoRaWAN, considera come nominarli per renderli più facili da gestire.

È possibile aggiungere i tag alle risorse create. Prima di aggiungere i tuoi dispositivi LoRaWAN, considera come utilizzare i tag per identificare e gestire le tue risorse AWS IoT Core per LoRaWAN. I tag possono essere modificati dopo averli aggiunti. 

Per ulteriori informazioni su denominazione e l'assegnazione di tag, consulta [Descrizione delle risorse Wireless AWS IoT](iotwireless-describe-resources.md).

## Mappatura dei dati del dispositivo ai dati del servizio
<a name="lorawan-service-device-data"></a>

I dati dei dispositivi wireless LoRaWAN sono spesso codificati per ottimizzare la larghezza di banda. Questi messaggi codificati arrivano ad AWS IoT Core per LoRaWAN in un formato che potrebbe non essere facilmente utilizzato da altri servizi AWS. AWS IoT Core per LoRaWAN utilizza regole AWS IoT che possono utilizzare funzioni AWS Lambda per elaborare e decodificare i messaggi del dispositivo in un formato che altri servizi AWS possono utilizzare.

Per trasformare i dati del dispositivo e inviarli ad altri servizi AWS, devi sapere:
+ Il formato e il contenuto dei dati inviati dai dispositivi wireless.
+ Il servizio a cui inviare i dati.
+ Il formato richiesto dal servizio.

Utilizzando tali informazioni, è possibile creare la regola AWS IoT che esegue la conversione e invia i dati convertiti ai servizi AWS che lo utilizzeranno.

## Utilizzo della console per integrare il dispositivo e il gateway per AWS IoT Core per LoRaWAN
<a name="lorawan-console"></a>

Puoi utilizzare l'interfaccia della console o l'API per aggiungere il gateway e i dispositivi LoRaWAN. Se utilizzi AWS IoT Core per LoRaWAN per la prima volta, consigliamo di utilizzare la console. L'interfaccia della console è più pratica quando si gestiscono alcune risorse AWS IoT Core per LoRaWAN alla volta. Quando si gestiscono un numero elevato di risorse AWS IoT Core per LoRaWAN, prendi in considerazione la creazione di soluzioni più automatizzate utilizzando l'API Wireless AWS IoT .

Gran parte dei dati immessi durante la configurazione delle risorse AWS IoT Core per LoRaWAN sono forniti dai fornitori dei dispositivi e sono specifici per le specifiche LoRaWAN che supportano. I seguenti argomenti descrivono in che modo puoi descrivere le risorse AWS IoT Core per LoRaWAN e usare la console o l'API per aggiungere gateway e dispositivi.

**Nota**  
Se utilizzi una rete pubblica per connettere i tuoi dispositivi LoRaWAN al cloud, puoi saltare l'onboarding dei tuoi gateway. Per ulteriori informazioni, consultare [Gestione del traffico LoRaWAN da reti di dispositivi LoRaWAN pubbliche (Everynet)](iot-lorawan-roaming.md).

**Topics**
+ [Convenzioni di denominazione per dispositivi, gateway, profili e destinazioni](#lorawan-naming-convention)
+ [Mappatura dei dati del dispositivo ai dati del servizio](#lorawan-service-device-data)
+ [Utilizzo della console per integrare il dispositivo e il gateway per AWS IoT Core per LoRaWAN](#lorawan-console)
+ [Integrare i gateway per AWS IoT Core per LoRaWAN](lorawan-onboard-gateways.md)
+ [Integra i tuoi dispositivi su AWS IoT Core per LoRaWAN](lorawan-onboard-end-devices.md)

# Integrare i gateway per AWS IoT Core per LoRaWAN
<a name="lorawan-onboard-gateways"></a>

Se utilizzi AWS IoT Core per LoRaWAN per la prima volta, puoi aggiungere il primo gateway e il dispositivo LoRaWAN utilizzando la console. 

**Nota**  
Se utilizzi una rete pubblica per connettere i tuoi dispositivi LoRaWAN al cloud, puoi saltare l'onboarding dei tuoi gateway. Per ulteriori informazioni, consultare [Gestione del traffico LoRaWAN da reti di dispositivi LoRaWAN pubbliche (Everynet)](iot-lorawan-roaming.md).

**Prima di effettuare l'onboarding del gateway**  
Prima di effettuare l'onboarding del gateway su AWS IoT Core per LoRaWAN, ti consigliamo di:
+ Utilizzare gateway qualificati per l'utilizzo con AWS IoT Core per LoRaWAN. Questi gateway si connettono ad AWS IoT Core senza ulteriori impostazioni di configurazione e dispongono di una versione 2.0.4 o successiva compatibile con il software [LoRa Basics Station](https://doc.sm.tc/station) in esecuzione su di essi. Per ulteriori informazioni, consultare [Gestione dei gateway con Wireless AWS IoT](lorawan-manage-gateways.md).
+ Considera la convenzione di denominazione delle risorse create in modo da poterle gestire più facilmente. Per ulteriori informazioni, consultare [Descrizione delle risorse Wireless AWS IoT](iotwireless-describe-resources.md).
+ I parametri di configurazione univoci di ciascun gateway sono pronti per essere inseriti in anticipo, così da rendere più agevole l'immissione dei dati nella console. I parametri di configurazione del gateway wireless con cui AWS IoT richiede di comunicare e gestire il gateway includono l'EUI del gateway e la sua banda di frequenza LoRa.

**Topics**
+ [Considera la selezione della banda di frequenza e aggiungi il ruolo IAM necessario](lorawan-rfregion-permissions.md)
+ [Aggiungi un gateway a AWS IoT Core per LoRaWAN](lorawan-onboard-gateway-add.md)
+ [Connetti il tuo gateway LoRaWAN e verifica lo stato della connessione](lorawan-gateway-connection-status.md)

# Considera la selezione della banda di frequenza e aggiungi il ruolo IAM necessario
<a name="lorawan-rfregion-permissions"></a>

Prima di aggiungere il gateway ad AWS IoT Core per LoRaWAN, si consiglia di considerare la banda di frequenza in cui il gateway sarà operativo e di aggiungere il ruolo IAM necessario per connettere il gateway ad AWS IoT Core per LoRaWAN.

**Nota**  
Se stai aggiungendo il gateway tramite la console, fai clic su **Create role (Crea ruolo)** nella console per creare il ruolo IAM necessario, in modo da poter saltare questi passaggi. È necessario eseguire questi passaggi solo se si utilizza la CLI per creare il gateway.

## Considerate la selezione delle bande di frequenza LoRa per i gateway e la connessione del dispositivo
<a name="lorawan-frequency-bands"></a>

AWS IoT Core per LoRaWAN supporta le bande di frequenza EU863-870, US902-928, AU915 e AS923-1 che è possibile utilizzare per collegare gateway e dispositivi fisicamente presenti in paesi che supportano le gamme di frequenza e le caratteristiche di queste bande. Le bande EU863-870 e US902-928 sono comunemente utilizzate rispettivamente in Europa e Nord America. La banda AS923-1 è comunemente usata in Australia, Nuova Zelanda, Giappone e Singapore, tra gli altri paesi. L'AU915 è utilizzato in Australia e Argentina, tra gli altri paesi. Per ulteriori informazioni sulla banda di frequenza da utilizzare nella propria area geografica o nel proprio paese, consulta [ Parametri regionali LoRaWAN®](https://lora-alliance.org/resource_hub/rp2-101-lorawan-regional-parameters-2/). 

LoRa Alliance pubblica le specifiche di LoRaWAN e i documenti sui parametri regionali disponibili per il download dal sito web LoRa Alliance. I parametri regionali LoRa Alliance aiutano le aziende a decidere quale banda di frequenza utilizzare nella loro regione o paese. L'implementazione della banda di frequenza di AWS IoT Core per LoRaWAN segue il suggerimento contenuto nel documento di specifica dei parametri regionali. Questi parametri regionali sono raggruppati in una serie di parametri radio, insieme a un'allocazione di frequenza adattata alla banda Industriale, Scientifica e Medica (ISM). Ti consigliamo di collaborare con i team di conformità per assicurarti di soddisfare i requisiti normativi applicabili. 

## Aggiungi un ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway
<a name="lorawan-onboard-permissions"></a>

Questa procedura descrive come aggiungere un ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway. Assicurati di eseguire questa procedura prima che un gateway LoRaWAN tenti di connettersi con AWS IoT Core per LoRaWAN; tuttavia, è necessario eseguire questa operazione una sola volta.

**Aggiungi il ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway**

1. Apri [ Roles hub of the IAM console (Ruoli hub della console IAM)](https://console.aws.amazon.com/iam/home#/roles) e scegli **Create role (Crea ruolo)**.

1. Se ritieni di aver già aggiunto il ruolo **IoTWirelessGatewayCertManagerRole**, inserisci **IoTWirelessGatewayCertManagerRole** nella barra di ricerca.

   Se viene visualizzato un ruolo **IoTWirelessGatewayCertManagerRole** nei risultati della ricerca, disponi del ruolo IAM necessario. Ora puoi lasciare la procedura.

   Se i risultati della ricerca sono vuoti, non disponi del ruolo IAM necessario. Continua la procedura per aggiungerlo.

1. In **Seleziona tipo di entità attendibile**, scegli **Altro Account AWS**.

1. In **Account ID (Account ID)**, inserisci il tuo account Account AWS ID, quindi scegli **Next: Permissions (Successivo: Autorizzazioni)**.

1. Nella casella di ricerca immetti **AWSIoTWirelessGatewayCertManager**.

1. Nell'elenco dei risultati della ricerca, seleziona la policy denominata **AWSIoTWirelessGatewayCertManager**.

1. Scegli **Successivo: Tag**, quindi **Successivo: Rivedi**.

1. In **Role name (Nome ruolo)** inserisci **IoTWirelessGatewayCertManagerRole** e quindi scegli **Create role (Crea ruolo)**.

1. Per modificare il nuovo ruolo, nel messaggio di conferma, scegli **IoTWirelessGatewayCertManagerRole**.

1. In **Summary (Riepilogo)**, scegli **Trust relationships (Relazioni di trust)** e scegli **Edit trust relationship (Modifica relazione di trust)**.

1. In **Policy Document (Documento policy)**, modifica la proprietà di `Principal` affinché appaia come nell'esempio.

   ```
   "Principal": { 
       "Service": "iotwireless.amazonaws.com" 
   },
   ```

   Dopo aver modificato la proprietà `Principal`, il documento completo di policy dovrebbe essere simile al seguente.

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "iotwireless.amazonaws.com"
         },
         "Action": "sts:AssumeRole",
         "Condition": {}
       }
     ]
   }
   ```

1. Per salvare le modifiche, scegli **Update Trust Policy (Aggiorna policy di attendibilità)**.

Ora è stato creato il **IoTWirelessGatewayCertManagerRole**. Non dovrai farlo di nuovo.

Se è stata eseguita questa procedura mentre si aggiungeva un gateway, puoi chiudere questa finestra e la console IAM e tornare alla console AWS IoT per completare l'aggiunta del gateway. 

# Aggiungi un gateway a AWS IoT Core per LoRaWAN
<a name="lorawan-onboard-gateway-add"></a>

È possibile aggiungere il gateway ad AWS IoT Core per LoRaWAN utilizzando la console o la CLI. 

Prima di aggiungere il gateway, ti consigliamo di considerare i fattori menzionati in **Prima di eseguire l'onboarding del gateway**, nella sezione di [Integrare i gateway per AWS IoT Core per LoRaWAN](lorawan-onboard-gateways.md).

Se utilizzi il tuo gateway per la prima volta, consigliamo di utilizzare la console. Se desideri aggiungere il gateway utilizzando il CLI, devi aver già creato il ruolo IAM necessario in modo che il gateway possa connettersi con AWS IoT Core per LoRaWAN. Per informazioni su come creare il ruolo, consulta [Aggiungi un ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway](lorawan-rfregion-permissions.md#lorawan-onboard-permissions).

## Aggiungere un gateway utilizzando la console
<a name="lorawan-onboard-gateway-console"></a>

Vai alla pagina **Intro** [AWS IoT Core per LoRaWAN](https://console.aws.amazon.com/iot/home#/wireless/landing) della console AWS IoT e scegli **Get started (Nozioni di base)**, poi scegli **Add gateway (Aggiungi gateway)**. Se hai già aggiunto un gateway, scegli **View gateway (Visualizza gateway)** per visualizzare il gateway aggiunto. Se desideri aggiungere altri gateway, scegli **Add gateway (Aggiungi gateway)**. 

1. 

**Fornisci dettagli sul gateway e informazioni sulla banda di frequenza**  
Utilizza **Gateway details (Dettagli gateway)** per fornire informazioni sui dati di configurazione del dispositivo, ad esempio l'EUI del gateway e la configurazione della banda di frequenza.
   + 

**EUI del Gateway**  
L'EUI (Extended Unique Identifier) del singolo dispositivo di gateway. L'EUI è un codice alfanumerico a 16 cifre, come `c0ee40ffff29df10`, che identifica in modo univoco un gateway nella tua rete LoRaWAN. Queste informazioni sono specifiche per il tuo modello gateway e puoi trovarle sul tuo dispositivo gateway o nel relativo manuale utente.
**Nota**  
L'EUI del gateway è diverso dall'indirizzo MAC Wi-Fi che potresti vedere stampato sul tuo dispositivo gateway. L'EUI segue uno standard EUI-64 che identifica in modo univoco il gateway e quindi non può essere ripreso in altre regioni e account Account AWS.
   + 

**Banda di frequenza (RFRegion)**  
La banda di frequenza del gateway. Puoi scegliere tra `US915`, `EU868`, `AU915` oppure `AS923-1`, a seconda del tipo di supporto del gateway e del paese da cui il gateway si connette fisicamente. Per ulteriori informazioni sulle bande, consulta [Considerate la selezione delle bande di frequenza LoRa per i gateway e la connessione del dispositivo](lorawan-rfregion-permissions.md#lorawan-frequency-bands).

1. 

**Specificare i dati di configurazione del gateway wireless (opzionale)**  
Questi campi sono facoltativi ed è possibile utilizzarli per fornire ulteriori informazioni sul gateway e sulla sua configurazione.
   + 

**Nome, Descrizione e Tag per il gateway**  
Le informazioni contenute in questi campi facoltativi provengono da come organizzi e descrivi gli elementi del sistema wireless. Puoi assegnare un **Nome** al gateway, utilizzare il comando **Description (Descrizione)** per fornire informazioni sul gateway e utilizzare **Tag** per aggiungere coppie chiave-valore di metadati sul gateway. Per ulteriori informazioni sulla denominazione e sulla descrizione delle risorse, consulta [Descrizione delle risorse Wireless AWS IoT](iotwireless-describe-resources.md).
   + 

**Configurazione LoRaWAN con sottobande e filtri**  
Facoltativamente, è inoltre possibile specificare i dati di configurazione di LoRaWAN, ad esempio le sottobande che si desidera utilizzare e i filtri in grado di controllare il flusso di traffico. Per questo tutorial, è possibile saltare questi campi. Per ulteriori informazioni, consultare [Configurare le sottobande e le funzionalità di filtraggio del gateway](lorawan-subband-filter-configuration.md).

1. 

**Associa un oggetto AWS IoT con il gateway**  
Specifica se creare un oggetto AWS IoT e associarlo al gateway. Gli oggetti in AWS IoT possono semplificare la ricerca e la gestione dei dispositivi. L'associazione di un oggetto al gateway consente al gateway di accedere ad altre caratteristiche di AWS IoT Core.

1. 

**Crea e scarica il certificato gateway**  
Per autenticare il gateway in modo che possa comunicare in modo sicuro con AWS IoT, il gateway LoRaWAN deve presentare ad AWS IoT Core per LoRaWAN una chiave privata e un certificato. Creazione di un **Certificato gateway** in modo che AWS IoT possa verificare l'identità del gateway utilizzando lo standard X.509.

   Fai clic sul pulsante **Create certificate (Crea un certificato)** e scarica i file del certificato. Li userai in seguito per configurare il gateway.

1. 

**Copia gli endpoint CUPS e LNS e scarica i certificati**  
Il gateway LoRaWAN deve connettersi a un endpoint CUPS o LNS quando si stabilisce una connessione ad AWS IoT Core per LoRaWAN. Ti consigliamo di utilizzare l'endpoint CUPS in quanto fornisce anche la gestione della configurazione. Per verificare l'autenticità degli endpoint di AWS IoT Core per LoRaWAN, il gateway utilizzerà un certificato di attendibilità per ciascuno degli endpoint CUPS e LNS,

   Fai clic su **Copy (Copia)** per copiare gli endpoint CUPS e LNS. Queste informazioni serviranno in seguito per configurare il gateway. Quindi fai clic sul pulsante **Download server trust certificates (Scarica certificati di attendibilità server)** per scaricare i certificati di attendibilità per gli endpoint CUPS e LNS.

1. 

**Crea il ruolo IAM per le autorizzazioni del gateway**  
Aggiungi un ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway.
**Nota**  
In questo passaggio, crei il ruolo **IoTWirelessGatewayCertManager**. Puoi ignorare questa fase se questo spazio dei nomi è già stato creato. È necessario farlo prima che un gateway LoRaWAN tenti di connettersi con AWS IoT Core per LoRaWAN; tuttavia, è necessario farlo solo una volta.

   Per creare il ruolo IAM **IoTWirelessGatewayCertManager** per il tuo account, fai clic sul pulsante **Create role (Crea ruolo)**. Se il ruolo esiste già, selezionalo dall'elenco a discesa.

   Fai clic su **Submit (Invia)** per completare la creazione del gateway.

## Aggiungi un gateway utilizzando l'API
<a name="lorawan-onboard-gateway-api"></a>

Se si sta aggiungendo un gateway per la prima volta utilizzando l'API o la CLI, è necessario aggiungere il ruolo IAM **IoTWirelessGatewayCertManager** in modo che il gateway possa connettersi con AWS IoT Core per LoRaWAN. Per informazioni sulla creazione del ruolo, consulta la seguente sezione [Aggiungi un ruolo IAM per permettere a Configuration and Update Server (CUPS) di gestire le credenziali del gateway](lorawan-rfregion-permissions.md#lorawan-onboard-permissions).

Gli elenchi seguenti descrivono le operazioni API che eseguono le attività associate all'aggiunta, all'aggiornamento o all'eliminazione di un gateway LoRaWAN.

**Operazioni dell'API Wireless AWS IoT per gateway AWS IoT Core per LoRaWAN**
+ [CreateWirelessGateway](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessGateway.html)
+ [GetWirelessGateway](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessGateway.html)
+ [ListWirelessGateways](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListWirelessGateways.html)
+ [ UpdateWirelessGateway ](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateWirelessGateway.html)
+ [DeleteWirelessGatewa](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteWirelessGateway.html)

Per l'elenco completo delle operazioni e dei tipi di dati disponibili per creare e gestire le risorse AWS IoT Core per LoRaWAN, consulta la [documentazione di riferimento delle API Wireless AWS IoT](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/welcome.html)

**Come utilizzare AWS CLI per aggiungere un gateway**  
Puoi utilizzare AWS CLI per creare un gateway wireless utilizzando il comando [create-wireless-gateway](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-wireless-gateway.html). Nell'esempio seguente viene creato un gateway per dispositivo LoRaWAN wireless. Puoi anche fornire un file `input.json` che conterrà ulteriori dettagli, ad esempio il certificato del gateway e le credenziali di provisioning.

**Nota**  
È inoltre possibile eseguire questa procedura con l'API utilizzando i metodi dell'API AWS corrispondenti ai comandi CLI illustrati di seguito. 

```
aws iotwireless create-wireless-gateway \
    --lorawan GatewayEui="a1b2c3d4567890ab",RfRegion="US915" \
    --name "myFirstLoRaWANGateway" \
    --description "Using my first LoRaWAN gateway"
    --cli-input-json input.json
```

Per informazioni sulle CLI utilizzabili, consulta [Riferimento AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/index.html) 

# Connetti il tuo gateway LoRaWAN e verifica lo stato della connessione
<a name="lorawan-gateway-connection-status"></a>

Prima di controllare lo stato della connessione del gateway, è necessario aver già aggiunto il gateway e averlo connesso ad AWS IoT Core per LoRaWAN. Per informazioni su come aggiungere il gateway, consulta [Aggiungi un gateway a AWS IoT Core per LoRaWAN](lorawan-onboard-gateway-add.md).

## Connetti il gateway a AWS IoT Core per LoRaWAN
<a name="lorawan-connect-gateway"></a>

Dopo aver aggiunto il gateway, connettiti all'interfaccia di configurazione del gateway per inserire le informazioni di configurazione e i certificati di attendibilità.

Dopo aver aggiunto le informazioni del gateway ad AWS IoT Core per LoRaWAN, aggiungi alcune informazioni di AWS IoT Core per LoRaWAN al dispositivo gateway. La documentazione fornita dal fornitore del gateway deve descrivere il processo per caricare i file di certificato nel gateway e configurare il dispositivo gateway per comunicare con AWS IoT Core per LoRaWAN.

**Gateway qualificati per l'utilizzo con AWS IoT Core per LoRaWAN**  
Per istruzioni su come configurare il gateway LoRaWAN, consulta la sezione [ configure gateway device (configurare il dispositivo gateway)](https://iotwireless.workshop.aws/en/200_gateway/400_configuregateway.html) del workshop AWS IoT Core per LoRaWAN. Qui troverai informazioni sulle istruzioni per la connessione di gateway qualificati per l'uso con AWS IoT Core per LoRaWAN.

**Gateway che supportano il protocollo CUPS**  
Le istruzioni seguenti mostrano come collegare i gateway che supportano il protocollo CUPS.

1. Carica i seguenti file ottenuti durante l'aggiunta del gateway.
   + Certificato del dispositivo gateway e file di chiavi private.
   + File di certificato attendibile per l'endpoint CUPS `cups.trust`.

1. Specifica l'URL dell'endpoint CUPS ottenuto in precedenza. L'endpoint sarà del formato `prefix.cups.lorawan.region.amazonaws.com:443`.

Per i dettagli su come ottenere queste informazioni, consulta [Aggiungi un gateway a AWS IoT Core per LoRaWAN](lorawan-onboard-gateway-add.md).

**Gateway che supportano il protocollo LNS**  
Le istruzioni seguenti mostrano come collegare i gateway che supportano il protocollo LNS.

1. Carica i seguenti file ottenuti durante l'aggiunta del gateway.
   + Certificato del dispositivo gateway e file di chiavi private.
   + File di certificato attendibile per l'endpoint LNS `lns.trust`.

1. Specifica l'URL dell'endpoint LNS ottenuto in precedenza. L'endpoint sarà del formato https://`prefix.lns.lorawan.region.amazonaws.com:443`.

Per i dettagli su come ottenere queste informazioni, consulta [Aggiungi un gateway a AWS IoT Core per LoRaWAN](lorawan-onboard-gateway-add.md).

Dopo aver collegato il gateway ad AWS IoT Core per LoRaWAN, puoi controllare lo stato della tua connessione e ottenere informazioni su quando è stato ricevuto l'ultimo uplink utilizzando la console o l'API.

## Controllare lo stato della connessione gateway utilizzando la console
<a name="lorawan-connection-status-console"></a>

Per verificare lo stato della connessione utilizzando la console, passa alla pagina [https://console.aws.amazon.com/iot/home#/wireless/gateways](https://console.aws.amazon.com/iot/home#/wireless/gateways) della console AWS IoT e scegli il gateway aggiunto. Nella sezione **LoRaWAN specific details (LoRaWAN dettagli specifici)** della pagina dei dettagli del gateway, vedrai lo stato della connessione e la data e l'ora in cui è stato ricevuto l'ultimo uplink.

## Controllare lo stato della connessione gateway utilizzando l'API
<a name="lorawan-connection-status-api"></a>

Per verificare lo stato della connessione utilizzando l'API, utilizza l'API `GetWirelessGatewayStatistics`. Questa API non ha un corpo della richiesta e contiene solo un corpo di risposta che mostra se il gateway è connesso e quando è stato ricevuto l'ultimo uplink.

```
HTTP/1.1 200
Content-type: application/json

{
  “ConnectionStatus”: “Connected”,
  “LastUplinkReceivedAt”: “2021-03-24T23:13:08.476015749Z”,
  “WirelessGatewayId”: “30cbdcf3-86de-4291-bfab-5bfa2b12bad5"
}
```

# Integra i tuoi dispositivi su AWS IoT Core per LoRaWAN
<a name="lorawan-onboard-end-devices"></a>

Dopo aver effettuato l'onboarding del gateway su AWS IoT Core per LoRaWAN e aver verificato il suo stato di connessione, è possibile caricare i dispositivi wireless. Per informazioni su come effettuare l'onboarding dei gateway, consulta [Integrare i gateway per AWS IoT Core per LoRaWAN](lorawan-onboard-gateways.md).

I dispositivi LoRaWAN utilizzano un protocollo LoRaWAN per scambiare dati con applicazioni ospitate nel cloud. AWS IoT Core per LoRaWAN supporta dispositivi conformi alle specifiche 1.0.x o 1.1 LoRaWAN standardizzate da LoRa Alliance.

Un dispositivo LoRaWAN contiene in genere uno o più sensori e attori. I dispositivi inviano dati di telemetria uplink attraverso i gateway LoRaWAN ad AWS IoT Core per LoRaWAN. Le applicazioni ospitate nel cloud possono controllare i sensori inviando comandi downlink ai dispositivi LoRaWAN tramite gateway LoRaWAN.

**Prima di effettuare l'onboarding del dispositivo wireless**  
Prima di caricare il dispositivo wireless su AWS IoT Core per LoRaWAN, è necessario disporre di tutte le informazioni necessarie in anticipo:
+ 

**Specifiche LoRaWAN e configurazione del dispositivo wireless**  
I parametri di configurazione univoci di ciascun dispositivo sono pronti per essere inseriti in anticipo, così da rendere più agevole l'immissione dei dati nella console. I parametri specifici che è necessario inserire dipendono dalla specifica LoRaWAN utilizzata dal dispositivo. Per l'elenco completo delle specifiche e dei parametri di configurazione, vedi la documentazione di ciascun dispositivo.
+ 

**Nome e descrizione del dispositivo (facoltativo)**  
Le informazioni contenute in questi campi facoltativi provengono da come organizzi e descrivi gli elementi del sistema wireless. Per ulteriori informazioni sulla denominazione e sulla descrizione delle risorse, consulta [Descrizione delle risorse Wireless AWS IoT](iotwireless-describe-resources.md).
+ 

**Profili di dispositivo e di servizio**  
Avere alcuni parametri di configurazione dei dispositivi wireless pronti, condivisi da molti dispositivi e che possono essere memorizzati in AWS IoT Core per LoRaWAN come profili di dispositivi e servizi. I parametri di configurazione sono disponibili nella documentazione del dispositivo o nel dispositivo. È necessario identificare un profilo del dispositivo che corrisponda ai parametri di configurazione del dispositivo o crearne uno, se necessario, prima di aggiungere il dispositivo. Per ulteriori informazioni, consultare [Aggiungi profili a AWS IoT Core per LoRaWAN](lorawan-define-profiles.md).
+ 

**Destinazione AWS IoT Core per LoRaWAN**  
Ogni dispositivo deve essere assegnato a una destinazione che elaborerà i propri messaggi da inviare ad AWS IoT e altri servizi. Le regole AWS IoT che elaborano e inviano i messaggi del dispositivo sono specifiche del formato dei messaggi del dispositivo. Per elaborare i messaggi dal dispositivo e inviarli al servizio corretto, identifica la destinazione da utilizzare con i messaggi del dispositivo e assegnala al dispositivo.

**Topics**
+ [Aggiungi il dispositivo wireless ad AWS IoT Core per LoRaWAN](lorawan-end-devices-add.md)
+ [Aggiungi profili a AWS IoT Core per LoRaWAN](lorawan-define-profiles.md)
+ [Aggiunta di destinazioni a AWS IoT Core per LoRaWAN](lorawan-create-destinations.md)
+ [Creare regole per elaborare i messaggi del dispositivo LoRaWAN](lorawan-destination-rules.md)
+ [Connetti il tuo dispositivo LoRaWAN e verifica lo stato della connessione](lorawan-device-connection-status.md)

# Aggiungi il dispositivo wireless ad AWS IoT Core per LoRaWAN
<a name="lorawan-end-devices-add"></a>

Se stai aggiungendo il dispositivo wireless per la prima volta, ti consigliamo di utilizzare la console. Naviga sulla pagina **Intro** [AWS IoT Core per LoRaWAN](https://console.aws.amazon.com/iot/home#/wireless/landing) della console AWS IoT, scegli **Get started (Nozioni di base)**, quindi scegli **Add device (Aggiungi dispositivo)**. Se hai già aggiunto un dispositivo, scegli **View device (Visualizza il dispositivo)** per visualizzare il gateway aggiunto. Se desideri aggiungere altri dispositivi, scegli **Add device (Aggiungi dispositivo)**.

In alternativa, puoi anche aggiungere dispositivi wireless dalla pagina [ Devices (Dispositivi)](https://console.aws.amazon.com/iot/home#/wireless/devices) della console AWS IoT.

## Aggiungi le specifiche del dispositivo wireless ad AWS IoT Core per LoRaWAN utilizzando la console
<a name="lorawan-end-device-spec-console"></a>

Scegli una **Specificazione del dispositivo wireless** in base al tuo metodo di attivazione e alla versione LoRaWAN. Una volta selezionati, i dati vengono crittografati con una chiave che AWS possiede e gestisce per te. 

**Modalità di attivazione OTAA e ABP**  
Prima che il tuo dispositivo LoRaWAN possa inviare dati uplink, devi completare un processo chiamato *Attivazione* o *Procedura join*. Per attivare il dispositivo, è possibile utilizzare OTAA (attivazione per via etere) o ABP (Attivazione per personalizzazione).

ABP non richiede una procedura di join e utilizza chiavi statiche. Quando si utilizza OTAA, il dispositivo LoRaWAN invia una richiesta di join e il server di rete può permettere la richiesta. Si consiglia di utilizzare OTAA per attivare il dispositivo in quanto vengono generate nuove chiavi di sessione per ogni attivazione così da renderlo più sicuro.

**Versione di LoRaWAN**  
Quando utilizzi OTAA, il dispositivo LoRaWAN e le applicazioni ospitate nel cloud condividono le chiavi di root. Queste chiavi di root dipendono dal fatto che tu stia utilizzando la versione v1.0.x o v1.1. v1.0.x ha solo una chiave di root, **AppKey** (Chiave applicazione) mentre v1.1 ha due chiavi root, **AppKey** (Chiave applicazione) e **NwkKey** (Chiave di rete). Le chiavi di sessione sono derivate in base alle chiavi di root per ogni attivazione. Sia **NwkKey** che **AppKey** sono valori esadecimali a 32 cifre forniti dal fornitore wireless.

**EUI del dispositivo wireless**  
Dopo aver selezionato l'opzione **Wireless device specification (Specificazione del dispositivo wireless)**, vengono visualizzati i parametri EUI (Extended Unique Identifier) per il dispositivo wireless sulla console. Puoi trovare queste informazioni sulla documentazione relativa al dispositivo o al fornitore wireless.
+ **DevEUI**: valore esadecimale a 16 cifre univoco per il dispositivo e trovato sull'etichetta del dispositivo o sulla relativa documentazione.
+ **AppEUI**: valore esadecimale a 16 cifre univoco per il server di join e trovato nella documentazione del dispositivo. Nella versione v1.1 di LoRaWAN, **AppEUI** viene chiamato **JoinEUI**.

Per ulteriori informazioni sugli identificatori univoci, le chiavi di sessione e le chiavi root, fai riferimento alla documentazione della [ LoRa Alliance](https://lora-alliance.org/about-lorawan).

## Aggiungere le specifiche del dispositivo wireless ad AWS IoT Core per LoRaWAN utilizzando l'API
<a name="lorawan-end-device-spec-api"></a>

Se stai aggiungendo un dispositivo wireless utilizzando l'API, prima di creare il dispositivo wireless devi creare il tuo profilo di servizio e dispositivo. Utilizzerai il profilo del dispositivo e l'ID profilo del servizio durante la creazione del dispositivo wireless. Per informazioni su come creare questi profili usando l'API, consulta [Aggiungi un profilo del dispositivo utilizzando l'API](lorawan-define-profiles.md#lorawan-device-profile-api).

Negli elenchi seguenti vengono descritte le operazioni API che eseguono le attività associate all'aggiunta, all'aggiornamento o all'eliminazione di un profilo di servizio.

**Operazioni API Wireless AWS IoT per i profili di servizio**
+ [CreateWirelessDevice](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessDevice.html)
+ [GetWirelessDevice](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessDevice.html)
+ [ListWirelessDevices](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListWirelessDevices.html)
+ [ UpdateWirelessDevice](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateWirelessDevice.html)
+ [DeleteWirelessDevice](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteWirelessDevice.html)

Per l'elenco completo delle operazioni e dei tipi di dati disponibili per creare e gestire le risorse AWS IoT Core per LoRaWAN, consulta la [documentazione di riferimento delle API Wireless AWS IoT](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/welcome.html)

**Come utilizzare AWS CLI per creare un dispositivo wireless**  
Puoi utilizzare AWS CLI per creare un dispositivo wireless utilizzando il comando [create-wireless-device](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-device-profile.html). L'esempio seguente crea un dispositivo wireless utilizzando un file input.json per immettere i parametri.

**Nota**  
È inoltre possibile eseguire questa procedura con l'API utilizzando i metodi dell'API AWS corrispondenti ai comandi CLI illustrati di seguito. 

**Contenuto di input.json**

```
{
    "Description": "My LoRaWAN wireless device"
    "DestinationName": "IoTWirelessDestination"
    "LoRaWAN": {
        "DeviceProfileId": "ab0c23d3-b001-45ef-6a01-2bc3de4f5333",
        "ServiceProfileId": "fe98dc76-cd12-001e-2d34-5550432da100",
        "OtaaV1_1": {
            "AppKey": "3f4ca100e2fc675ea123f4eb12c4a012",
            "JoinEui": "b4c231a359bc2e3d",
            "NwkKey": "01c3f004a2d6efffe32c4eda14bcd2b4"
        },
        "DevEui": "ac12efc654d23fc2"
    },
    "Name": "SampleIoTWirelessThing"
    "Type": LoRaWAN
}
```

È possibile fornire questo file come input per il comando `create-wireless-device`.

```
aws iotwireless create-wireless-device \
    --cli-input-json file://input.json
```

Per informazioni sulle CLI utilizzabili, consulta [Riferimento AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/index.html) 

# Aggiungi profili a AWS IoT Core per LoRaWAN
<a name="lorawan-define-profiles"></a>

È possibile definire profili di dispositivo e servizio per descrivere le configurazioni più comuni del dispositivo. Questi profili descrivono i parametri di configurazione condivisi dai dispositivi per semplificare l'aggiunta di tali dispositivi. AWS IoT Core per LoRaWAN supporta profili di dispositivi e profili di servizio.

 I parametri di configurazione e i valori da inserire in questi profili sono forniti dal produttore del dispositivo.

## Aggiungi profili di dispositivo
<a name="lorawan-device-profiles"></a>

I profili del dispositivo definiscono le funzionalità del dispositivo e i parametri di avvio utilizzati dal server di rete per impostare il servizio di accesso radio LoRaWAN. Include la selezione di parametri come banda di frequenza LoRa, versione dei parametri regionali LoRa e versione MAC del dispositivo. Per informazioni sulle diverse bande di frequenza, consulta [Considerate la selezione delle bande di frequenza LoRa per i gateway e la connessione del dispositivo](lorawan-rfregion-permissions.md#lorawan-frequency-bands).

### Aggiungi un profilo dispositivo utilizzando la console
<a name="lorawan-device-profile-console"></a>

Se si aggiunge un dispositivo wireless utilizzando la console come descritto in [Aggiungi le specifiche del dispositivo wireless ad AWS IoT Core per LoRaWAN utilizzando la console](lorawan-end-devices-add.md#lorawan-end-device-spec-console), dopo aver aggiunto le specifiche del dispositivo wireless, è possibile aggiungere il profilo del dispositivo. In alternativa, puoi anche aggiungere dispositivi wireless dalla pagina [ Profiles (Profili)](https://console.aws.amazon.com/iot/home#/wireless/profiles) della console AWS IoT nella scheda **LoRaWAN**.

È possibile scegliere tra i profili dispositivo di default o creare un nuovo profilo dispositivo. Ti consigliamo di utilizzare i profili del dispositivo di default. Se l'applicazione richiede la creazione di un profilo di dispositivo, fornisci un **Nome del profilo del dispositivo**, seleziona la **Banda di frequenza (RFRegion)** che stai utilizzando per il dispositivo e il gateway e mantieni le altre impostazioni ai valori predefiniti, a meno che non sia specificato diversamente nella documentazione del dispositivo.

### Aggiungi un profilo del dispositivo utilizzando l'API
<a name="lorawan-device-profile-api"></a>

Se stai aggiungendo un dispositivo wireless utilizzando l'API, prima di creare il dispositivo wireless devi creare il tuo profilo di dispositivo.

Negli elenchi seguenti vengono descritte le operazioni API che eseguono le attività associate all'aggiunta, all'aggiornamento o all'eliminazione di un profilo di servizio.

**Operazioni API Wireless AWS IoT per i profili di servizio**
+ [CreateDeviceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDeviceProfile.html)
+ [GetDeviceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html)
+ [ListDeviceProfiles](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListDeviceProfiles.html)
+ [ UpdateDeviceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateDeviceProfile.html)
+ [DeleteDeviceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteDeviceProfile.html)

Per l'elenco completo delle operazioni e dei tipi di dati disponibili per creare e gestire le risorse AWS IoT Core per LoRaWAN, consulta la [documentazione di riferimento delle API Wireless AWS IoT](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/welcome.html)

**Come utilizzare AWS CLI per creare un profilo di dispositivo**  
Puoi utilizzare AWS CLI per creare un profilo del dispositivo utilizzando il comando [create-device profile](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-device-profile.html). Nell'esempio seguente viene creato un profilo di dispositivo.

```
aws iotwireless create-device-profile
```

L'esecuzione di questo comando crea automaticamente un profilo di dispositivo con un ID che è possibile utilizzare durante la creazione del dispositivo wireless. Ora è possibile creare il profilo del servizio utilizzando la seguente API e quindi creare il dispositivo wireless utilizzando i profili del dispositivo e del servizio.

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:123456789012:DeviceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
}
```

Per informazioni sulle CLI utilizzabili, consulta [Riferimento AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/index.html) 

## Aggiungi profili di servizio
<a name="lorawan-service-profiles"></a>

I profili di servizio descrivono i parametri di comunicazione che il dispositivo deve comunicare con il server applicazioni.

### Aggiunta di un profilo di servizio utilizzando la console
<a name="lorawan-service-profile-console"></a>

Se si aggiunge un dispositivo wireless utilizzando la console come descritto in [Aggiungi le specifiche del dispositivo wireless ad AWS IoT Core per LoRaWAN utilizzando la console](lorawan-end-devices-add.md#lorawan-end-device-spec-console), dopo aver aggiunto il profilo del dispositivo, è possibile aggiungere il profilo del servizio. In alternativa, puoi anche aggiungere dispositivi wireless dalla pagina [ Profiles (Profili)](https://console.aws.amazon.com/iot/home#/wireless/profiles) della console AWS IoT nella scheda **LoRaWAN**.

Ti consigliamo di lasciare abilitata l'impostazione **AddGWMetaData** in modo da ricevere metadati gateway aggiuntivi per ogni payload, ad esempio RSSI e SNR per la trasmissione dei dati.

### Aggiunta di un profilo di servizio utilizzando l'API
<a name="lorawan-service-profile-api"></a>

Se stai aggiungendo un dispositivo wireless utilizzando l'API, prima di creare il dispositivo wireless devi creare il tuo profilo di servizio.

Negli elenchi seguenti vengono descritte le operazioni API che eseguono le attività associate all'aggiunta, all'aggiornamento o all'eliminazione di un profilo di servizio.

**Operazioni API Wireless AWS IoT per i profili di servizio**
+ [CreateServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html)
+ [GetServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetServiceProfile.html)
+ [ListServiceProfiles](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListServiceProfiles.html)
+ [ UpdateServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateServiceProfile.html)
+ [DeleteServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteServiceProfile.html)

Per l'elenco completo delle operazioni e dei tipi di dati disponibili per creare e gestire le risorse AWS IoT Core per LoRaWAN, consulta la [documentazione di riferimento delle API Wireless AWS IoT](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/welcome.html)

**Come utilizzare AWS CLI per creare un profilo di servizio**  
Puoi utilizzare AWS CLI per creare un servizio utilizzando il comando [create-service-profile](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-service-profile.html). Nell'esempio seguente viene creato un profilo di servizio.

```
aws iotwireless create-service-profile
```

L'esecuzione di questo comando crea automaticamente un profilo di dispositivo con un ID che è possibile utilizzare durante la creazione del dispositivo wireless. Ora è possibile creare il dispositivo wireless utilizzando il dispositivo e i profili di servizio.

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:123456789012:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
}
```

# Aggiunta di destinazioni a AWS IoT Core per LoRaWAN
<a name="lorawan-create-destinations"></a>

Le destinazioni di AWS IoT Core per LoRaWAN descrivono la regola di AWS IoT che elabora i dati di un dispositivo per l'utilizzo dai servizi AWS.

Poiché la maggior parte dei dispositivi LoRaWAN non invia dati ad AWS IoT Core per LoRaWAN in un formato che può essere usato dai servizi AWS, una regola di AWS IoT deve prima elaborarli. La regola AWS IoT contiene l'istruzione SQL che interpreta i dati del dispositivo e le operazioni della regola dell'argomento che inviano il risultato dell'istruzione SQL ai servizi che la utilizzeranno.

Se stai aggiungendo la destinazione per la prima volta, ti consigliamo di utilizzare la console. 

## Aggiunta di una destinazione tramite la console
<a name="lorawan-create-destination-console"></a>

Se si aggiunge un dispositivo wireless utilizzando la console come descritto in [Aggiungi le specifiche del dispositivo wireless ad AWS IoT Core per LoRaWAN utilizzando la console](lorawan-end-devices-add.md#lorawan-end-device-spec-console), dopo aver già aggiunto le specifiche e i profili del dispositivo wireless ad AWS IoT Core per LoRaWAN come descritto in precedenza, puoi andare avanti e aggiungere una destinazione.

In alternativa, puoi aggiungere anche una destinazione di AWS IoT Core per LoRaWAN dalla pagina [ Destinations (Destinazioni)](https://console.aws.amazon.com/iot/home#/wireless/destinations) della console AWS IoT.

Per elaborare i dati di un dispositivo, specifica i seguenti campi durante la creazione di una destinazione di AWS IoT Core per LoRaWAN, quindi scegli **Add destination (Aggiungi destinazione)**.
+ 

**Dettagli della destinazione**  
Inserisci un **Nome della destinazione** e una descrizione facoltativa per la destinazione.
+ 

**Nome regola**  
La regola AWS IoT configurata per valutare i messaggi inviati dal tuo dispositivo ed elaborare i dati del dispositivo. Il nome della regola verrà mappato alla tua destinazione. La destinazione richiede la regola per elaborare i messaggi ricevuti. È possibile scegliere se elaborare i messaggi richiamando una regola AWS IoT o pubblicando sul broker di messaggi AWS IoT.
  + Se scegli **Ente a rule name (Inserisci il nome di una regola)**, inserisci un nome, e quindi scegli **Copy (Copia)** per copiare il nome di una regola che inserirai quando crei la regola AWS IoT. Puoi scegliere **Create a rule (Crea una regola)** per creare la regola ora o passare all'hub [ Rules (Regole)](https://console.aws.amazon.com/iot/home#/create/rule) della console AWS IoT e creare una regola con quel nome.

    Puoi anche inserire una regola e utilizzare impostazione **Advanced (Avanzata)** per specificare un nome dell'argomento. Il nome dell'argomento viene fornito durante l'invocazione della regola e si accede utilizzando l'espressione `topic` all'interno della regola. Per ulteriori informazioni sulle regole AWS IoT, consulta [https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html).
  + Se scegli **Publish to AWS IoT message broker** (Pubblica sul broker di messaggi IoT), inserisci un nome di argomento. È quindi possibile copiare il nome dell'argomento MQTT e più sottoscriventi possono iscriversi a questo argomento per ricevere messaggi pubblicati su tale argomento. Per ulteriori informazioni, consultare [https://docs.aws.amazon.com/iot/latest/developerguide/topics.html](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html).

  Per ulteriori informazioni sulle regole di AWS IoT per le destinazioni, consulta [Creare regole per elaborare i messaggi del dispositivo LoRaWAN](lorawan-destination-rules.md).
+ 

**Nome ruolo**  
Il ruolo IAM che fornisce al dispositivo l'autorizzazione ai dati per accedere alla regola denominata in **Rule name (Nome regola)**. Nella console puoi creare un nuovo ruolo di servizio o selezionare un ruolo di servizio già esistente. Se stai creando un nuovo ruolo di servizio, puoi inserire un nome di ruolo (ad esempio, **IoTWirelessDestinationRole**), o lasciare vuoto per consentire a AWS IoT Core per LoRaWAN di generare un nuovo nome ruolo. AWS IoT Core per LoRaWAN creerà automaticamente il ruolo IAM con le autorizzazioni appropriate per tuo conto.

  Per ulteriori informazioni sui ruoli IAM, consulta [Utilizza ruoli IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html).

## Aggiungi una destinazione utilizzando l'API
<a name="lorawan-create-destination-api"></a>

Se invece desideri aggiungere una destinazione utilizzando la CLI, è necessario aver già creato la regola e il ruolo IAM per la destinazione. Per ulteriori informazioni sui dettagli richiesti da una definizione nel ruolo, consulta [Creazione di un ruolo IAM per le destinazioni](#lorawan-create-destinations-roles).

Gli elenchi seguenti descrivono le operazioni API che eseguono le attività associate all'aggiunta, all'aggiornamento o all'eliminazione di una destinazione.

**Operazioni API Wireless AWS IoT per le destinazioni**
+ [CreateDestination](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDestination.html)
+ [GetDestination](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDestination.html)
+ [ListDestinations](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListDestinations.html)
+ [ UpdateDestination](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateDestination.html)
+ [DeleteDestination](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteDestination.html)

Per l'elenco completo delle operazioni e dei tipi di dati disponibili per creare e gestire le risorse AWS IoT Core per LoRaWAN, consulta la [documentazione di riferimento delle API Wireless AWS IoT](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/welcome.html)

**Come utilizzare la AWS CLI per aggiungere una destinazione**  
Puoi utilizzare AWS CLI per aggiungere una destinazione utilizzando il comando [create-destination](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-destination.html). L'esempio seguente mostra come creare una destinazione inserendo un nome di regola utilizzando `RuleName` come valore per il parametro `expression-type`. Se desideri specificare il nome di un argomento per la pubblicazione o la sottoscrizione al broker di messaggi, modifica il valore del parametro `expression-type` in `MqttTopic`.

```
aws iotwireless create-destination \
    --name IoTWirelessDestination \
    --expression-type RuleName \
    --expression IoTWirelessRule \
    --role-arn arn:aws:iam::123456789012:role/IoTWirelessDestinationRole
```

L'esecuzione di questo comando crea una destinazione con il nome di destinazione, il nome della regola e il nome del ruolo specificati. Per informazioni sui nomi di regole e ruoli per le destinazioni, consulta [Creare regole per elaborare i messaggi del dispositivo LoRaWAN](lorawan-destination-rules.md) e [Creazione di un ruolo IAM per le destinazioni](#lorawan-create-destinations-roles).

Per informazioni sulle CLI utilizzabili, consulta [Riferimento AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/index.html). 

## Creazione di un ruolo IAM per le destinazioni
<a name="lorawan-create-destinations-roles"></a>

Destinazioni AWS IoT Core per LoRaWAN richiedono ruoli IAM che danno ad AWS IoT Core per LoRaWAN le autorizzazioni necessarie per inviare i dati alla regola AWS IoT. Se tale ruolo non è già definito, è necessario definirlo in modo che venga visualizzato nell'elenco dei ruoli.

Quando utilizzi la console per aggiungere una destinazione, AWS IoT Core per LoRaWAN crea automaticamente un ruolo IAM per te, come descritto in precedenza in questo argomento. Quando aggiungi una destinazione utilizzando l'API o la CLI, devi creare il ruolo IAM per la tua destinazione.

**Per creare una policy IAM per il ruolo di destinazione di AWS IoT Core per LoRaWAN**

1. Apri la pagina [ Policies hub of the IAM console (Hub delle policy nella console IAM)](https://console.aws.amazon.com/iam/home#/policies).

1. Scegli **Create policy (Crea policy)**, quindi scegli la scheda **JSON**.

1. Nell'editor, elimina qualsiasi contenuto dall'editor e incolla il documento relativo alle policy.

   ```
   {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "iot:DescribeEndpoint",
                   "iot:Publish"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

1. Scegli **Review policy (Rivedi la policy)**, e inserisci un nome per questa policy in **Name (Nome)**. Dovrai utilizzare questo nome nella procedura successiva.

   Se necessario, è inoltre possibile descrivere questa policy in **Description (Descrizione)**.

1. Scegli **Crea policy**.

**Per creare un ruolo IAM per una destinazione di AWS IoT Core per LoRaWAN**

1. Apri [ Roles hub of the IAM console (Hub dei ruoli della console IAM)](https://console.aws.amazon.com/iam/home#/roles) e scegli **Create role (Crea ruolo)**.

1. In **Seleziona tipo di entità attendibile**, scegli **Altro Account AWS**.

1. In **Account ID (ID account)**, inserisci il tuo account Account AWS ID, quindi scegli **Next: Permissions (Successivo: autorizzazioni)**.

1. Nella casella di ricerca, inserisci il nome della policy IAM creata nella procedura precedente.

1. Nei risultati della ricerca, controlla la policy IAM creata nella procedura precedente.

1. Scegli **Successivo: Tag**, quindi **Successivo: Rivedi**.

1. In **Role Name (Nome ruolo)**, inserisci il nome di questo ruolo, quindi scegli **Create role (Crea ruolo)**.

1. Nel messaggio di conferma, scegli il nome del ruolo creato per modificare il nuovo ruolo.

1. In **Summary (Riepilogo)**, scegli la finestra **Trust relationships (Relazioni di trust)** e seleziona **Edit trust relationship (Modifica relazione di trust)**.

1. In **Policy Document (Documento policy)**, modifica la proprietà di `Principal` affinché appaia come nell'esempio.

   ```
   "Principal": { 
       "Service": "iotwireless.amazonaws.com" 
   },
   ```

   Dopo aver modificato la proprietà `Principal`, il documento completo di policy dovrebbe essere simile al seguente.

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "iotwireless.amazonaws.com"
         },
         "Action": "sts:AssumeRole",
         "Condition": {}
       }
     ]
   }
   ```

1. Per salvare le modifiche, scegli **Update Trust Policy (Aggiorna policy di attendibilità)**.

Puoi trovare questo ruolo definito nell'elenco dei ruoli quando configuri le tue destinazioni AWS IoT Core per LoRaWAN.

# Creare regole per elaborare i messaggi del dispositivo LoRaWAN
<a name="lorawan-destination-rules"></a>

Le regole AWS IoT inviano messaggi del dispositivo ad altri servizi. Le regole AWS IoT possono anche elaborare i messaggi binari ricevuti da un dispositivo LoRaWAN per convertire i messaggi in altri formati che possono renderli più facili per altri servizi da utilizzare.

[Destinazioni AWS IoT Core per LoRaWAN](lorawan-create-destinations.md) associano un dispositivo wireless alla regola che elabora i dati dei messaggi del dispositivo da inviare ad altri servizi. La regola agisce sui dati del dispositivo non appena AWS IoT Core per LoRaWAN lo riceve. [Le destinazioni AWS IoT Core per LoRaWAN](lorawan-create-destinations.md) possono essere condivise da tutti i dispositivi i cui messaggi hanno lo stesso formato di dati e che inviano i loro dati allo stesso servizio.

## Come funziona il processo di regole AWS IoT per i messaggi del dispositivo
<a name="how-rules-process-message"></a>

Come una regola AWS IoT elabora i dati dei messaggi di un dispositivo dipende dal servizio che riceverà i dati, dal formato dei dati dei messaggi del dispositivo e dal formato dei dati richiesto dal servizio. In genere, la regola chiama una funzione AWS Lambda per convertire i dati dei messaggi del dispositivo nel formato richiesto da un servizio e quindi invia il risultato al servizio.

Nella figura seguente viene illustrato come i dati dei messaggi vengono protetti ed elaborati mentre vengono spostati dal dispositivo wireless a un servizio AWS.

![\[Immagine che mostra come i dati AWS IoT Core per LoRaWAN vengono passati da un dispositivo wireless ad AWS IoT e altri servizi.\]](http://docs.aws.amazon.com/it_it/iot-wireless/latest/developerguide/images/iot-lorawan-data-flow.png)


1. Il dispositivo wireless LoRaWAN crittografa i suoi messaggi binari utilizzando la modalità CTR AES128 prima di trasmetterli.

1. AWS IoT Core per LoRaWAN decritta il messaggio binario e codifica il payload del messaggio binario decrittato come stringa base64.

1. Il messaggio codificato su base 64 risultante viene inviato come payload del messaggio, non formattato come documento JSON, alla regola AWS IoT descritta nella destinazione assegnata al dispositivo.

1. La regola AWS IoT indirizza i dati del messaggio al servizio descritto nella configurazione della regola.

Il payload binario crittografato ricevuto dal dispositivo wireless non viene alterato o interpretato da AWS IoT Core per LoRaWAN. Il payload del messaggio binario decrittato è codificato solo come stringa base64. Affinché i servizi possano accedere agli elementi dati nel payload del messaggio binario, gli elementi dati devono essere analizzati fuori dal payload da una funzione chiamata dalla regola. Il payload del messaggio con codifica base64 è una stringa ASCII, quindi potrebbe essere archiviata come tale per essere analizzata in un secondo momento.

## Creazione di regole per dispositivi LoRaWAN
<a name="create-lorawan-rules"></a>

AWS IoT Core per LoRaWAN utilizza regole AWS IoT per inviare in modo sicuro i messaggi del dispositivo direttamente ad altri servizi AWS senza la necessità di utilizzare il broker di messaggi. Rimuovere il broker di messaggi dal percorso di importazione dati riduce i costi e ottimizza il flusso di dati.

Una regola AWS IoT Core per LoRaWAN per inviare messaggi del dispositivo ad altri servizi AWS, richiede una destinazione AWS IoT Core per LoRaWAN una regola AWS IoT assegnata a quella destinazione. La regola AWS IoT deve contenere un'istruzione di query SQL e almeno un'operazione della regola. 

In genere, l'istruzione query della regola AWS IoT è composta da:
+ Una clausola SQL SELECT che seleziona e formatta i dati dal payload del messaggio
+ Un filtro argomento (l'oggetto FROM nell'istruzione query di regole) che identifichi i messaggi da utilizzare
+ Un'istruzione condizionale facoltativa (una clausola SQL WHERE) che specifica le condizioni su cui agire

Di seguito è illustrato un esempio di dichiarazione di query di regole:

```
SELECT temperature FROM iot/topic' WHERE temperature > 50
```

Durante la costruzione delle regole AWS IoT per elaborare payload dai dispositivi LoRaWAN, non è necessario specificare la clausola FROM come parte dell'oggetto query regola. L'istruzione di query delle regole deve avere la clausola SQL SELECT e facoltativamente può avere la clausola WHERE. Se l'istruzione query utilizza la clausola FROM, viene ignorata.

Di seguito è illustrato un esempio di un'istruzione di query di regole in grado di elaborare i payload dai dispositivi LoRaWAN:

```
SELECT WirelessDeviceId, WirelessMetadata.LoRaWAN.FPort as FPort,
       WirelessMetadata.LoRaWAN.DevEui as DevEui, 
       PayloadData
```

In questo esempio, `PayloadData` è un payload binario codificato in base64, inviato dal tuo dispositivo LoRaWAN.

Ecco un'istruzione query di regola di esempio che può eseguire una decodifica binaria del payload in entrata e trasformarlo in un formato diverso come JSON:

```
SELECT WirelessDeviceId, WirelessMetadata.LoRaWAN.FPort as FPort,
       WirelessMetadata.LoRaWAN.DevEui as DevEui, 
       aws_lambda("arn:aws:lambda:<region>:<account>:function:<name>",                                       
                  {                                      
                   "PayloadData":PayloadData,                                       
                   "Fport": WirelessMetadata.LoRaWAN.FPort   
                  }) as decodingoutput
```

Per ulteriori informazioni sull'utilizzo delle clausole SELECT AND WHERE, consulta [https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-reference.html](https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-reference.html).

Per informazioni sulle regole AWS IoT e su come crearle e utilizzarle, consulta [https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) e [https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules-tutorial.html](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules-tutorial.html). 

Per informazioni su come creare e utilizzare destinazioni AWS IoT Core per LoRaWAN, consulta [Aggiunta di destinazioni a AWS IoT Core per LoRaWAN](lorawan-create-destinations.md).

Per informazioni sull'utilizzo dei payload dei messaggi binari in una regola, consulta [https://docs.aws.amazon.com/iot/latest/developerguide/binary-payloads.html](https://docs.aws.amazon.com/iot/latest/developerguide/binary-payloads.html).

Per ulteriori informazioni sulla sicurezza dei dati e sulla crittografia utilizzati per proteggere il payload dei messaggi durante il percorso, consulta [Protezione dei dati in Wireless AWS IoT](data-protection.md).

Per un'architettura di riferimento che mostra un esempio di decodifica e implementazione binaria per le regole IoT, consulta [Esempi di soluzioni AWS IoT Core per LoRaWAN su GitHub](https://github.com/aws-samples/aws-iot-core-lorawan/tree/main/transform_binary_payload).

# Connetti il tuo dispositivo LoRaWAN e verifica lo stato della connessione
<a name="lorawan-device-connection-status"></a>

Prima di poter controllare lo stato della connessione del dispositivo, è necessario aver già aggiunto il dispositivo e averlo collegato ad AWS IoT Core per LoRaWAN. Per informazioni su come aggiungere un dispositivo, consulta [Aggiungi il dispositivo wireless ad AWS IoT Core per LoRaWAN](lorawan-end-devices-add.md).

Dopo aver aggiunto il dispositivo, consulta il manuale utente del dispositivo per informazioni su come avviare l'invio di un messaggio di uplink dal dispositivo LoRaWAN.

## Controllare lo stato della connessione del dispositivo utilizzando la console
<a name="lorawan-device-connection-status-console"></a>

Per verificare lo stato della connessione utilizzando la console, passa alla pagina [https://console.aws.amazon.com/iot/home#/wireless/devices](https://console.aws.amazon.com/iot/home#/wireless/devices) della console AWS IoT e scegli il dispositivo che hai aggiunto. Nella sezione **Details (Dettagli)** della pagina dei dettagli dei dispositivi wireless, vedrai la data e l'ora in cui è stato ricevuto l'ultimo uplink.

## Controllare lo stato della connessione del dispositivo utilizzando l'API
<a name="lorawan-device-connection-status-api"></a>

Per verificare lo stato della connessione utilizzando l'API, utilizza l'API `GetWirelessDeviceStatistics`. Questa API non ha un corpo della richiesta e contiene solo un corpo di risposta che mostra quando è stato ricevuto l'ultimo uplink.

```
HTTP/1.1 200
Content-type: application/json

{  
  “LastUplinkReceivedAt”: “2021-03-24T23:13:08.476015749Z”,
  "LoRaWAN": {
        "DataRate": 5,
        "DevEui": "647fda0000006420",
        "Frequency": 868100000
        "Gateways": [ 
         { 
            "GatewayEui": "c0ee40ffff29df10",
            "Rssi": -67,
            "Snr": 9.75
         }
      ],
  “WirelessDeviceId”: “30cbdcf3-86de-4291-bfab-5bfa2b12bad5"
}
```

## Passaggi successivi
<a name="lorawan-device-connection-next-steps"></a>

Dopo aver collegato il dispositivo e verificato lo stato della connessione, è possibile osservare il formato dei metadati uplink ricevuti dal dispositivo utilizzando il [ Client di prova MQTT](https://console.aws.amazon.com/iot/home#/test) sulla pagina **Test** della console AWS IoT. Per ulteriori informazioni, consultare [Visualizza il formato dei messaggi di uplink inviati dai dispositivi LoRaWAN](lorawan-uplink-metadata-format.md).