Como configurar a API de WhatsApp com Docker

Guia passo a passo para instalação no Ubuntu

Introdução

Este guia explica como configurar e usar a API do WhatsApp utilizando Docker no sistema operacional Ubuntu. Ideal para quem busca agilidade na implementação e facilidade de manutenção.

Pré-requisitos

  • Ubuntu: Versão 20.04 ou superior.
  • Docker: Certifique-se de que o Docker e Docker Compose estão instalados.

Configuração Inicial

Para começar, atualize os pacotes do sistema e instale as dependências necessárias:

sudo apt update
sudo apt install docker.io docker-compose -y

Habilite e inicie o Docker para garantir que ele estará ativo ao reiniciar o servidor:

sudo systemctl enable docker
sudo systemctl start docker

Instalação do Projeto

Clone o repositório do projeto dentro da pasta /var/www para manter a organização:

sudo mkdir -p /var/www
cd /var/www
sudo git clone https://github.com/chrishubert/whatsapp-api.git
cd whatsapp-api

Em seguida, use o Docker Compose para baixar as dependências e subir os contêineres:

docker-compose pull && docker-compose up -d

Iniciar uma Sessão

Depois de iniciar os contêineres, você pode criar uma nova sessão utilizando uma API Key. Aqui está um exemplo com uma chave gerada aleatoriamente (substitua ABCD pelo valor da sua API Key):

curl http://localhost:3000/session/start/ABCD

Ver Logs do Contêiner

Após criar a sessão, você precisará verificar os logs do contêiner para visualizar o QR Code que será escaneado para vincular a API com o WhatsApp. Use o seguinte comando:

docker logs -f whatsapp-api

Liberar Porta no Firewall

Se sua API está hospedada em uma VPS na nuvem (como AWS, Azure, Hostinger, ou outros provedores), a liberação da porta 3000 deve ser configurada nas regras de firewall da plataforma de hospedagem. Siga os passos gerais abaixo para liberar a porta:

1. Acesse o painel de controle do seu provedor de nuvem.
2. Localize as configurações de rede ou firewall associadas à sua VPS/instância.
3. Adicione uma nova regra de entrada para liberar a porta:
   - Protocolo: TCP
   - Porta: 3000
   - Origem: 0.0.0.0/0 (ou restrinja a IPs específicos para maior segurança).
4. Salve as alterações e aplique as configurações.
5. Teste a conexão para garantir que a porta está acessível externamente.

Testar a API com Postman

Siga os passos abaixo para testar a API no Postman:

1. Configurar a URL

http://ip-do-servidor:3000/client/sendMessage/ABCD

2. Adicionar Header

Content-Type: application/json

3. Configurar o Body

{
  "chatId": "[email protected]",
  "contentType": "string",
  "content": "Mensagem de Teste"
}

4. Enviar Requisição

Envie a requisição. Se tudo estiver correto, a mensagem será enviada ao número especificado.

Caso queira consultar a documentação com todas as funcionalidades da API, acesse: http://ip-do-servidor:3000/api-docs.

Carregando...