

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 repositório Amazon-FreeRTOS, que está preterido. Recomendamos [começar aqui](freertos-getting-started-modular.md) ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente baseado no repositório Amazon-FreeRTOS que está preterido, consulte o [Guia de migração do repositório Github do Amazon FreeRTOS](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 fazer download do FreeRTOS do [GitHub](https://github.com/aws/amazon-freertos). Consulte o arquivo [README.md](https://github.com/aws/amazon-freertos/blob/main/README.md) 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`.