

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Demo Client Echo Secure Sockets
<a name="secure-sockets-demo"></a>

**Importante**  <a name="deprecation-message-demo"></a>
Questa demo è ospitata nel repository Amazon-FreeRTOS che è obsoleto. Ti consigliamo di [iniziare da qui quando crei un nuovo progetto](freertos-getting-started-modular.md). Se disponi già di un progetto FreeRTOS esistente basato sull'ormai obsoleto repository Amazon-FreerTOS, consulta il. [Guida alla migrazione del repository Github di Amazon-FreeRTOS](github-repo-migration.md)

L'esempio seguente utilizza un'attività RTOS singola. Il codice sorgente per questo esempio è disponibile all'indirizzo `demos/tcp/aws_tcp_echo_client_single_task.c`.

Prima di iniziare, verifica di aver scaricato FreeRTOS sul tuo microcontrollore e di aver creato ed eseguito i progetti demo di FreerTOS. Puoi clonare o scaricare FreerTOS da. [GitHub](https://github.com/aws/amazon-freertos) Consultare il file [README.md](https://github.com/aws/amazon-freertos/blob/main/README.md) per le istruzioni. 

**Per eseguire la demo**

**Nota**  
Per configurare ed eseguire le demo di FreerTOS, segui i passaggi indicati. [Inizia con FreerTOS](freertos-getting-started.md)  
Le demo del server e del client TCP non sono attualmente supportate nei kit di sviluppo F e F di Cypress CYW943907AEVAL1. CYW954907 AEVAL1

1. Segui le istruzioni in [Configurazione del TLS Echo Server](https://docs.aws.amazon.com/freertos/latest/portingguide/tls-echo-server.html) nella FreerTOS Porting Guide.

   Il server echo TLS deve essere in esecuzione e in ascolto sulla porta 9000.

   Durante la configurazione, occorre aver generato quattro file:
   + `client.pem` (certificato del client)
   + `client.key` (chiave privata del client)
   + `server.pem` (certificato del server)
   + `server.key` (chiave privata del server)

1. Utilizzare lo strumento `tools/certificate_configuration/CertificateConfigurator.html` per copiare il certificato del client (`client.pem`) e la chiave privata del client (`client.key`) in `aws_clientcredential_keys.h`.

1. Apri il file `FreeRTOSConfig.h`.

1. Impostare le variabili `configECHO_SERVER_ADDR0`, `configECHO_SERVER_ADDR1`, `configECHO_SERVER_ADDR2` e `configECHO_SERVER_ADDR3` sui quattro interi che costituiscono l'indirizzo IP in cui il TLS Echo Server è in esecuzione.

1. Impostare la variabile `configTCP_ECHO_CLIENT_PORT` su `9000`, la porta su cui il TLS Echo Server è in ascolto.

1. Impostare la variabile `configTCP_ECHO_TASKS_SINGLE_TASK_TLS_ENABLED` su `1`.

1. Utilizzare lo strumento `tools/certificate_configuration/PEMfileToCString.html` per copiare il certificato del server (`server.pem`) in `cTlsECHO_SERVER_CERTIFICATE_PEM` nel file `aws_tcp_echo_client_single_task.c`.

1. Apri`{{freertos}}/vendors/{{vendor}}/boards/{{board}}/aws_demos/config_files/aws_demo_config.h`, commenta e definisci o. `#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED` `CONFIG_OTA_MQTT_UPDATE_DEMO_ENABLED` `CONFIG_OTA_HTTP_UPDATE_DEMO_ENABLED`

Il microcontroller e il server echo TLS devono trovarsi sulla stessa rete. All'avvio della demo (`main.c`), viene visualizzato un messaggio di log contenente `Received correct string from echo server`.