evolution-api icon indicating copy to clipboard operation
evolution-api copied to clipboard

Mensagens não são recebidas em conversas já iniciada depois de reiniciar (Versão 1.8.2)

Open juliancesar opened this issue 1 year ago • 5 comments

Welcome!

  • [X] Yes, I have searched for similar issues on GitHub and found none.

What did you do?

Depois de reiniciar o container do Evolution o recebimento das mensagens em conversas já iniciadas param de acontecer.

Sobre o problema que identifiquei ele pode ser reproduzido da seguinte maneira:

  1. Utilizando a versão 1.8.2
  2. Conectar um WhatsApp
  3. A partir de um cliente WhatsApp enviar uma mensagem para iniciar a conversa com um agente (número conectado no Evolution), neste momento a conversa irá funcionar 100%, sem problemas ou erros
  4. Reiniciar o Evolution (utilizamos container por aqui, por isso apenas reiniciamos o container)
  5. A partir deste momento, enquanto o agente do Chatwoot (número conectado) não enviar uma mensagem o cliente que iniciou a conversa não terá suas mensagens recebidas no Chatwoot

Importante mencionar que fizemos testes com e sem a marcação de "Forçar validação de identidade do usuário" na configuração da caixa no Chatwoot e o resultado foi o mesmo.

O problema acima consegue ser reproduzido facilmente com a versão 1.8.2, mas o erro não ocorre nas versões 1.8.0 e 1.8.1.

What did you expect?

É esperado que mesmo reiniciando o Evolution as mensagens sejam recebidas corretamente.

What did you observe instead of what you expected?

Depois do reinicio do Evolution as mensagens só são recebidas depois de pelo menos 1 mensagem ser enviada.

Screenshots/Videos

No response

Which version of the API are you using?

  • Chatwoot: 3.11
  • Evolution API: 1.8.2

What is your environment?

Linux

Other environment specifications

No response

If applicable, paste the log output

Com relação aos logs, existem alguns erros que ocorrem, mas o que mais me chamou a atenção foi esse:

{"type":"PreKeyError","message":"Invalid PreKey ID","stack":"PreKeyError: Invalid PreKey ID\n at SessionBuilder.initIncoming (/evolution/node_modules/libsignal/src/session_builder.js:66:19)\n at async 559999868994.0 [as awaitable] (/evolution/node_modules/libsignal/src/session_cipher.js:205:30)\n at async _asyncQueueExecutor (/evolution/node_modules/libsignal/src/queue_job.js:20:29)","name":"PreKeyError"} msg=failed to decrypt message

Aparentemente o erro está relacionado a lib do Baileys/LigSignal, e pesquisando por lá encontrei diversas pessoas com o mesmo erro (https://github.com/WhiskeySockets/Baileys/issues/54).

Notei que na versão 1.8.2 foi utilizado um fork da lib Baileys feito pela equipe do Evolution, e nela existem diversas modificações, será que alguma destas modificações pode ter impactado nesse bug?

E entendo que o contexto é complexo, pois na verdade algumas - ou todas - as modificações aplicadas no fork são na verdade do próprio Baileys que ainda não foi lançado!

Additional Notes

Parabéns pelo excelente trabalho realizado no projeto Evolution API! Já fui desenvolvedor e organizador de projetos de código aberto e conheço as dificuldades que este tipo de projeto enfrenta! Agradeço todo o trabalho realizado!

juliancesar avatar Jul 31 '24 13:07 juliancesar

@dgcode-tec, possivelmente esse bug pode ter relação com as modificações realizadas no fork do Baileys.

Quando puder dê uma olhada. Obrigado.

juliancesar avatar Jul 31 '24 13:07 juliancesar

Alguma maneira de solicionar esse problema?

wbecher avatar Sep 05 '24 00:09 wbecher

Eu fiz o downgrade para a 1.8.1. Mas ela tem o problema de não trazer a foto da usuário do WhatsApp! Já existe a v2.1.0, mas ainda não é recomendada para produção.

juliancesar avatar Sep 06 '24 15:09 juliancesar

eu consegui resolver aqui, na configuração da url do webhook, na configuração do canal no chatwoot a url estava com erro de digitação

errado: https://evolution.teste.com.br//chatwoot/webhook/CSM_whatsapp_suporte

certo: https://evolution.teste.com.br/chatwoot/webhook/CSM_whatsapp_suporte

estava com "//" após o dominio

devloadingbr avatar Sep 28 '24 12:09 devloadingbr

Tem a ver com #791

TiagoGouvea avatar Sep 29 '24 12:09 TiagoGouvea

Estarei fechando essa issue pelo fato da v1.8.2 não estar mais recebendo correções. Estaremos concentrados apenas nas versões da v2 mais atuais e todas as correções serão feitas em versões posteriores.

dpaes avatar Nov 28 '24 18:11 dpaes