

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Demonstração do cliente Echo de Secure Sockets
<a name="secure-sockets-demo"></a>

**Importante**  <a name="deprecation-message-demo"></a>
Essa demonstração está hospedada no Amazon-FreeRTOS repositório que está obsoleto. Recomendamos [começar aqui](freertos-getting-started-modular.md) ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente com base no repositório agora Amazon-FreeRTOS obsoleto, consulte o. [Amazon-FreeRTOS Guia de migração do repositório Github](github-repo-migration.md)

O exemplo a seguir usa uma única tarefa do RTOS. O código-fonte para este exemplo pode ser encontrado em `demos/tcp/aws_tcp_echo_client_single_task.c`.

Antes de começar, verifique se você fez download do FreeRTOS no seu microcontrolador, criou e executou os projetos de demonstração do FreeRTOS. Você pode clonar ou baixar FreeRTOS em. [GitHub](https://github.com/aws/amazon-freertos) Consulte o [README.md](https://github.com/aws/amazon-freertos/blob/main/README.md)arquivo para obter instruções. 

**Para executar a demonstração**

**nota**  
Para configurar e executar as demonstrações do FreeRTOS, siga as etapas em [Conceitos básicos do FreeRTOS](freertos-getting-started.md).  
No momento, os Kits de desenvolvimento Cypress CYW943907AEVAL1F e CYW954907AEVAL1F não oferecem suporte às demonstrações de cliente e servidor de TCP.

1. Siga as instruções em [Configuração do TLS Echo Server](https://docs.aws.amazon.com/freertos/latest/portingguide/tls-echo-server.html) no Guia de portabilidade do FreeRTOS.

   Um servidor echo TLS deve estar em execução e na escuta na porta 9000.

   Durante a configuração, você deverá gerar quatro arquivos:
   + `client.pem` (certificado de cliente)
   + `client.key` (chave privada de cliente)
   + `server.pem` (certificado de servidor)
   + `server.key` (chave privada de servidor)

1. Use a ferramenta `tools/certificate_configuration/CertificateConfigurator.html` para copiar o certificado de cliente (`client.pem`) e a chave privada de cliente (`client.key`) para `aws_clientcredential_keys.h`.

1. Abra o arquivo `FreeRTOSConfig.h`.

1. Defina as variáveis `configECHO_SERVER_ADDR0`, `configECHO_SERVER_ADDR1`, `configECHO_SERVER_ADDR2` e `configECHO_SERVER_ADDR3` como os quatro inteiros que compõem o endereço IP em que o servidor Echo TLS está em execução.

1. Defina a variável `configTCP_ECHO_CLIENT_PORT` como `9000`, a porta em que o servidor Echo TLS está escutando.

1. Defina a variável `configTCP_ECHO_TASKS_SINGLE_TASK_TLS_ENABLED` como `1`.

1. Use a ferramenta `tools/certificate_configuration/PEMfileToCString.html` para copiar o certificado de servidor (`server.pem`) para `cTlsECHO_SERVER_CERTIFICATE_PEM` no arquivo `aws_tcp_echo_client_single_task.c`.

1. Abra `{{freertos}}/vendors/{{vendor}}/boards/{{board}}/aws_demos/config_files/aws_demo_config.h`, comente `#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED` e defina `CONFIG_OTA_MQTT_UPDATE_DEMO_ENABLED` ou `CONFIG_OTA_HTTP_UPDATE_DEMO_ENABLED`.

O microcontrolador e o servidor Echo TLS devem estar na mesma rede. Quando a demonstração começar (`main.c`), você verá a mensagem de log `Received correct string from echo server`.