Uma instância da Evolution API é um número de WhatsApp ligado ao seu servidor. Com a integração Baileys liga-se como se liga um computador ao WhatsApp Web: pede-se um código QR à API e lê-se com o telemóvel. Quando a ligação cai, quase sempre se resolve lendo outro QR. Este artigo diz como, e como perceber porque caiu antes de tentar outra vez.
Os pedidos exactos (as rotas, os campos e o formato da resposta) estão na documentação oficial do projecto, e mudam com as versões. Aqui fica a sequência, não a sintaxe.
Ligar uma instância nova
| 1 |
Crie a instância. É um pedido autenticado com a chave da API (AUTHENTICATION_API_KEY) que dá um nome à instância e escolhe a integração. Escolha o Baileys para ligar por QR. A documentação diz o que o pedido leva.
|
|
| 2 |
Peça a ligação. A API devolve o código QR. Nas versões que o suportam, a documentação também prevê um código de emparelhamento, que se escreve no telemóvel em vez de se ler.
|
|
| 3 |
Mostre o QR e leia-o depressa. O código expira em pouco tempo e a API muda-o. Se o ecrã demorar, peça outro. Se o recebe como texto codificado em vez de imagem, a documentação explica como o transformar em imagem.
|
|
| 4 |
No telemóvel, abra o WhatsApp, vá às definições, escolha os dispositivos associados e associe um dispositivo. Aponte a câmara ao QR.
|
|
| 5 |
Confirme o estado. Pergunte à API o estado da ligação. Enquanto diz «connecting», ainda não ligou. Quando passa ao estado de ligado (o nome exacto vem na documentação), pode enviar. Veja enviar a primeira mensagem.
|
|
|
O QR dá acesso ao número. Quem o ler passa a poder enviar mensagens como si. Não o deixe numa página pública, numa conversa de grupo ou numa captura de ecrã guardada. Se o mostrou a quem não devia, termine a sessão em dispositivos associados no telemóvel.
|
Quando a ligação cai
| Causa |
Como se vê |
O que fazer |
| Saiu dos dispositivos associados |
Removeu a sessão no telemóvel ou o WhatsApp terminou-a. |
Ler um QR novo. A sessão antiga não se recupera. |
| O telemóvel esteve muito tempo sem ligação |
O WhatsApp desassocia os dispositivos quando o telefone fica demasiado tempo desligado da internet. |
Ligue o telefone à internet e leia um QR novo se pedir. |
| As sessões perderam-se |
Depois de um reinício ou de uma actualização, a instância deixou de existir. |
Faltava o volume persistente. Veja PostgreSQL e Redis. |
| Fica em «connecting» |
O QR nunca chega a ligar e o serviço reinicia. |
Veja a instância presa em «connecting». |
| O número foi bloqueado |
O telemóvel mostra um aviso do WhatsApp e não há QR que o valha. |
É o risco do Baileys. Não insista: veja o risco e as regras. |
Reconectar sem perder tempo
| 1 |
Primeiro o estado. Pergunte à API em que estado está a instância antes de mexer em nada.
|
|
| 2 |
Depois os registos. docker compose logs -f diz se o erro é de sessão, de rede ou do serviço.
|
|
| 3 |
Pedir outra ligação costuma chegar se a instância existe mas está desligada.
|
|
| 4 |
Só se isso não resultar, apague a instância e crie-a de novo, com a documentação aberta. Terá de ler um QR novo.
|
|
|
Evite desligar e voltar a ligar o mesmo número uma e outra vez. Tentativas repetidas parecem comportamento suspeito, e o WhatsApp pode reagir. Se a ligação não fica estável, procure a causa em vez de repetir.
|
PRODUTO RECOMENDADO Alojamento de sites com cPanel Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 396,00 MT/mês (plano de 3 anos, com cupão) Ver planos |