

# Come utilizzare il supporto della rete pubblica
<a name="lorawan-roaming-use"></a>

Per abilitare il supporto della rete pubblica di Everynet, devi abilitare determinati parametri di roaming durante la creazione di un profilo del servizio. In questa versione beta, questi parametri sono disponibili quando si utilizza l'API Wireless AWS IoT o AWS CLI. Nelle sezioni seguenti vengono illustrati i parametri che occorre abilitare e viene descritto come abilitare la rete pubblica utilizzando AWS CLI.

**Nota**  
È possibile abilitare il supporto della rete pubblica solo durante la creazione di un nuovo profilo del servizio. Non è possibile aggiornare un profilo esistente per abilitare la rete pubblica utilizzando questi parametri.

**Topics**
+ [Parametri di roaming](#lorawan-roaming-parameters)
+ [Abilitazione del supporto della rete pubblica per i dispositivi](#lorawan-roaming-enable)

## Parametri di roaming
<a name="lorawan-roaming-parameters"></a>

Specifica i seguenti parametri durante la creazione di un profilo del servizio per il dispositivo. Specifica questi parametri durante l'aggiunta di un profilo del servizio dall'hub [Profili](https://console.aws.amazon.com/iot/home#/wireless/profiles) della console AWS IoT o l'utilizzo dell'operazione API Wireless AWS IoT, [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html) o del comando AWS CLI, [https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html).

**Nota**  
AWS IoT Core per LoRaWAN non supporta la modalità handover roaming. Durante la creazione del profilo del servizio, non è possibile abilitare il parametro `HrAllowed` che specifica se utilizzare handover roaming.
+ Attivazione del roaming consentita (`RaAllowed`): questo parametro specifica se abilitare l'attivazione del roaming. L'attivazione del roaming consente a un dispositivo finale di attivarsi sotto la copertura di un vNS. Quando si utilizza la funzionalità di roaming, `RaAllowed` deve essere impostato su `true`.
+ Roaming passivo consentito (`PrAllowed`): questo parametro specifica se abilitare il roaming passivo. Quando si utilizza la funzionalità di roaming, `PrAllowed` deve essere impostato su `true`.

## Abilitazione del supporto della rete pubblica per i dispositivi
<a name="lorawan-roaming-enable"></a>

Per abilitare il supporto della rete pubblica LoRaWAN sui tuoi dispositivi, esegui la seguente procedura.

**Nota**  
Puoi abilitare la funzionalità della rete pubblica solo per i dispositivi OTAA. Questa funzionalità non è supportata per i dispositivi che utilizzano ABP come metodo di attivazione.

1. 

**Creazione del profilo del servizio con parametri di roaming**

   Crea un profilo del servizio abilitando i parametri di roaming.
**Nota**  
Quando crei un profilo per il dispositivo che assocerai a questo profilo del servizio, ti consigliamo di specificare un valore elevato per il parametro `RxDelay1`, almeno superiore a 2 secondi.
   + 

**Utilizzo della console di AWS IoT**  
Vai all'hub [Profili](https://console.aws.amazon.com/iot/home#/wireless/profiles) della console AWS IoT e scegli **Aggiungi profilo del servizio**. Quando crei il profilo, scegli **Abilita rete pubblica**.
   + 

**Utilizzo dell'API Wireless AWS IoT**  
Per abilitare il roaming durante la creazione di un profilo del servizio, utilizza l'operazione API [CreateServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html), come mostrato nell'esempio seguente.

     ```
     aws iotwireless create-service-profile \ 
         --region us-east-1 \
         --name roamingprofile1 \ 
         --lorawan '{"AddGwMetadata":true,"PrAllowed":true,"RaAllowed":true}'
     ```

     L'esecuzione di questo comando restituisce l'ARN e l'ID del profilo del servizio come output.

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

1. 

**Verifica dei parametri di roaming nel profilo del servizio**

   Per controllare i parametri di roaming specificati, è possibile visualizzare il profilo del servizio nella console o utilizzare il comando dell'interfaccia a riga di comando `get-service-profile`, come mostrato nell'esempio seguente.
   + 

**Utilizzo della console di AWS IoT**  
Passa all'hub [Profili](https://console.aws.amazon.com/iot/home#/wireless/profiles) della console AWS IoT e scegli il profilo creato. Nella scheda **Configurazione del profilo** della pagina dei dettagli, i parametri **RAAllowed** e **PRAllowed** sono impostati su `true`.
   + 

**Utilizzo dell'API Wireless AWS IoT**  
Per visualizzare i parametri di roaming abilitati, utilizza l'operazione API [GetServiceProfile](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetServiceProfile.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html), come mostrato nell'esempio seguente.

     ```
     aws iotwireless get-service-profile \ 
         --region us-east-1 \ 
         --id 12345678-a1b2-3c45-67d8-e90fa1b2c34d
     ```

     L'esecuzione di questo comando restituisce i dettagli del profilo del servizio come output, inclusi i valori per i parametri di roaming, `RaAllowed` e `PrAllowed`.

     ```
     {
         "Arn": "arn:aws:iotwireless:us-east-1:123456789012:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
         "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d",
         "Name": "roamingprofile1"
         "LoRaWAN": {
             "UlRate": 60,
             "UlBucketSize": 4096,
             "DlRate": 60,
             "DlBucketSize": 4096,
             "AddGwMetadata": true,
             "DevStatusReqFreq": 24,
             "ReportDevStatusBattery": false,
             "ReportDevStatusMargin": false,
             "DrMin": 0,
             "DrMax": 15,
             "PrAllowed": true,
             "RaAllowed": true,
             "NwkGeoLoc": false,
             "TargetPer": 5,
             "MinGwDiversity": 1
         }
     }
     ```

1. 

**Collegamento del profilo del servizio ai dispositivi**

   Collega il profilo del servizio creato con i parametri di roaming ai dispositivi finali. Puoi anche creare un profilo del dispositivo e aggiungere una destinazione per i dispositivi wireless. Utilizza questa destinazione per instradare i messaggi in uplink inviati dal dispositivo. Per ulteriori informazioni sulla creazione di profili del dispositivo e di una destinazione, consultare [Aggiungi profili di dispositivo](lorawan-define-profiles.md#lorawan-device-profiles) e [Aggiunta di destinazioni a AWS IoT Core per LoRaWAN](lorawan-create-destinations.md).
   + 

**Onboarding di nuovi dispositivi**  
Se non hai già eseguito l'onboarding di nuovi dispositivi, specifica il profilo del servizio da utilizzare durante l'aggiunta del dispositivo ad AWS IoT Core per LoRaWAN. Nel comando seguente viene illustrato come utilizzare il comando dell'interfaccia a riga di comando `create-wireless-device` per aggiungere un dispositivo utilizzando l'ID del profilo del servizio creato. Per informazioni sull'aggiunta del profilo del servizio mediante la console, consultare [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).

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

     Nell'esempio seguente viene mostrato il contenuto del file *`createdevice.json`*.

     **Contenuto di createdevice.json**

     ```
     {
         "Name": "DeviceA",  
         "Type": LoRaWAN,
         "DestinationName": "RoamingDestination1",
         "LoRaWAN": {
             "DeviceProfileId": "ab0c23d3-b001-45ef-6a01-2bc3de4f5333",
             "ServiceProfileId": "12345678-a1b2-3c45-67d8-e90fa1b2c34d",
             "OtaaV1_1": {
                 "AppKey": "3f4ca100e2fc675ea123f4eb12c4a012",
                 "JoinEui": "b4c231a359bc2e3d",
                 "NwkKey": "01c3f004a2d6efffe32c4eda14bcd2b4"
             },
             "DevEui": "ac12efc654d23fc2"
         },
     }
     ```

     L'output dell'esecuzione di questo comando produce l'ARN e l'ID del dispositivo wireless.

     ```
     {
         "Arn": "arn:aws:iotwireless:us-east-1:123456789012:WirelessDevice/1ffd32c8-8130-4194-96df-622f072a315f",
         "Id": "1ffd32c8-8130-4194-96df-622f072a315f"
     }
     ```
   + 

**Aggiornamento di dispositivi esistenti**  
Se hai già eseguito l'onboarding dei dispositivi, puoi aggiornare i dispositivi wireless esistenti per utilizzare questo profilo del servizio. Nel comando seguente viene illustrato come utilizzare il comando dell'interfaccia a riga di comando `update-wireless-device` per aggiornare un dispositivo utilizzando l'ID del profilo del servizio creato.

     ```
     aws iotwireless update-wireless-device \
         --id "1ffd32c8-8130-4194-96df-622f072a315f" \
         --service-profile-id "12345678-a1b2-3c45-67d8-e90fa1b2c34d" \ 
         --description "Using roaming service profile A"
     ```

     Il comando non produce output. Puoi utilizzare l'API `GetWirelessDevice` o il comando dell'interfaccia a riga di comando `get-wireless-device` per ottenere le informazioni aggiornate.

1. 

**Collegamento del dispositivo al cloud mediante Everynet**

   Poiché il roaming è stato abilitato, il dispositivo deve ora eseguire un join per ottenerne un nuovo `DevAddr`. Se utilizzi OTAA, il dispositivo LoRaWAN invia una richiesta di join e il server di rete può consentire la richiesta. Può quindi connettersi al Cloud AWS utilizzando la copertura di rete fornita da Everynet. Per istruzioni su come eseguire la procedura di attivazione o il join per il dispositivo, consultare la documentazione del dispositivo.
**Nota**  
Puoi attivare la funzionalità di roaming e connetterti alla rete pubblica solo per i dispositivi che utilizzano OTAA come metodo di attivazione. I dispositivi ABP non sono supportati. Per istruzioni su come eseguire la procedura di attivazione o il join per il dispositivo, consultare la documentazione del dispositivo. Per informazioni, consulta [Modalità di attivazione](lorawan-manage-end-devices.md#lorawan-activation-modes). 
Per disattivare la funzionalità di roaming per i dispositivi, puoi scollegare i dispositivi da questo profilo di servizio e associarli a un altro profilo di servizio con i parametri di roaming impostati su `false`. Dopo il passaggio a questo profilo di servizio, i dispositivi devono eseguire un'altra associazione per evitare che continuino a funzionare sulla rete pubblica.

1. 

**Messaggi in uplink e in downlink di Exchange**

   Dopo che è stato eseguito il join del dispositivo ad AWS IoT Core per LoRaWAN, è possibile avviare lo scambio di messaggi tra il dispositivo e il cloud.
   + 

**Visualizzazione di messaggi in uplink**  
Quando si inviano messaggi in uplink dai dispositivi, AWS IoT Core per LoRaWAN consegna questi messaggi a Account AWS utilizzando la destinazione configurata in precedenza. Questi messaggi verranno inviati dal dispositivo al cloud sulla rete di Everynet.

     È possibile visualizzare i messaggi utilizzando il nome della regola AWS IoT o utilizzare il client MQTT per effettuare la sottoscrizione all'argomento MQTT specificato durante la creazione della destinazione. Per ulteriori informazioni sul nome della regola e altri dettagli di destinazione specificati, consultare [Aggiunta di una destinazione tramite la console](lorawan-create-destinations.md#lorawan-create-destination-console).

     Per ulteriori informazioni sulla visualizzazione del messaggio in uplink e il formato, consultare [Visualizza il formato dei messaggi di uplink inviati dai dispositivi LoRaWAN](lorawan-uplink-metadata-format.md).
   + 

**Invio di messaggi in downlink**  
È possibile accodare e inviare messaggi in downlink ai dispositivi dalla console o utilizzando il comando API Wireless AWS IoT, `SendDataToWirelessDevice`, o il comando AWS CLI, `send-data-to-wireless-device`. Per ulteriori informazioni sull'accodamento e l'invio di messaggi in downlink, consultare [Accodamento dei messaggi di downlink da inviare ai dispositivi LoRaWAN](lorawan-downlink-queue.md).

     Nel codice seguente viene illustrato un esempio di come inviare un messaggio in downlink utilizzando il comando dell'interfaccia a riga di comando `send-data-to-wireless-device`. Viene specificato l'ID del dispositivo wireless per ricevere i dati, il payload, se utilizzare la modalità di riconoscimento e i metadati wireless.

     ```
     aws iotwireless send-data-to-wireless-device \
         --id "1ffd32c8-8130-4194-96df-622f072a315f" \
         --transmit-mode "1" \
         --payload-data "SGVsbG8gVG8gRGV2c2lt" \
         --wireless-metadata LoRaWAN={FPort=1}
     ```

     L'output dell'esecuzione di questo comando genera un `MessageId` per il messaggio di downlink.
**Nota**  
In alcuni casi, anche se ricevi il `MessageId`, i pacchetti possono essere eliminati. Per informazioni sulla risoluzione dei problemi di tali scenari, consultare [Risoluzione dei problemi relativi alla coda dei messaggi di downlink](lorawan-downlink-queue.md#lorawan-downlink-queue-troubleshoot).

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

**Visualizzazione delle informazioni sulla copertura**  
Dopo aver abilitato la rete pubblica, puoi visualizzare le informazioni sulla copertura di rete nella console AWS IoT. Vai all'hub [https://console.aws.amazon.com/iot/home#/wireless/network-coverage](https://console.aws.amazon.com/iot/home#/wireless/network-coverage) della console AWS IoT, quindi cerca le posizioni per visualizzare le informazioni sulla copertura dei tuoi dispositivi sulla mappa.
**Nota**  
Questa funzionalità utilizza il servizio di posizione Amazon per visualizzare le informazioni sulla copertura dei tuoi dispositivi su una mappa di posizione Amazon. Prima di utilizzare le mappe del servizio di posizione Amazon, consulta i relativi termini e condizioni. Tieni presente che AWS potrebbe trasmettere le query API al provider di dati di terze parti prescelto, che potrebbe trovarsi all'esterno della Regione AWS attualmente utilizzata. Per ulteriori informazioni, consultare [Termini del servizio AWS](https://aws.amazon.com/service-terms).