Versao 2.1.1 erro Invalid PreKey ID trava evolution
[email protected] start:prod
node dist/main
2024/10/01 11:54PM 50 pid=171 hostname=68d6aea7bce1 key={"remoteJid":"5521992685661:[email protected]","fromMe":false,"id":"3EB0819AD20E8EA4566A36"} err={"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 5521992685661.68 [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
2024/10/01 11:54PM 50 pid=171 hostname=68d6aea7bce1 key={"remoteJid":"5521992685661:[email protected]","fromMe":false,"id":"3EB0819AD20E8EA4566A36"} err={"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 5521992685661.68 [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
2024/10/01 11:58PM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/01 11:58PM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/02 12:01AM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/02 12:01AM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/02 12:05AM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/02 12:05AM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
2024/10/02 12:08AM 50 pid=171 hostname=68d6aea7bce1 trace=Error: Timed Out at /evolution/node_modules/baileys/lib/Utils/generics.js:145:32 msg=error in sending keep alive
Mais explicação sobre o problema por favor
O erro persiste na 2.1.2.
@DavidsonGomes Acredito ser esse erro aqui mencionado há alguns meses no Baileys.
Apenas depois que respondemos a pessoa pelo celular, o Evolution começa a pegar as mensagens (referencia). Como se gerasse/validasse essa tal PreKey ID.
Estou sofrendo com o mesmo problema do Invalid PreKey ID
{"level":50,"time":1730234953609,"pid":185,"hostname":"035739d38afa","key":{"remoteJid":"[email protected]","fromMe":false,"id":"3AA6AC6346DF3D07A184"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 554299613014.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"}
Estou sofrendo com o mesmo problema do Invalid PreKey ID
{"level":50,"time":1730234953609,"pid":185,"hostname":"035739d38afa","key":{"remoteJid":"[email protected]","fromMe":false,"id":"3AA6AC6346DF3D07A184"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 554299613014.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"}
Mesma coisa aqui. Testei as versões 2.0.10, 2.1.0, 2.2.0 e esse erro persiste. Começando HOJE com a Evolution API.
Pessoal, eu já tive esse problema algumas vezes e ainda não consegui achar a causa raiz do problema, entretanto tenho algumas pista que precisam ser validadas, seguem:
- Este erro está relacionado a troca de chaves de criptografia do Baileys (https://github.com/WhiskeySockets/Baileys) utilizada pelo Evolution API para fazer a comunicação do WhatsApp
- É possível verificar no repo do Baileys vários problemas relacionados, mas não achei qual seria o meu
- Notei que este problema ocorria comigo com frequência quando utilizada a versão 1.x, agora com a versão 2.x com REDIS o problema parou de ocorrer
- Vale notar que o Evolution armazena as chaves de criptografía no REDIS, que normalmente é utilizado para armazenar informações que podem ser perdidas como cache, mas neste caso ele utiliza para armazenar as Chaves, que se perdidas deixa de comunicar
- Nos meus erros a comunicação parava de funcionar, mas se o agente enviasse uma mensagem voltada (issue: https://github.com/EvolutionAPI/evolution-api/issues/727)
- Outro ponto importante é que mesmo deletando as chaves do REDIS demorava alguns dias para dar problema!
Hoje como solução eu adotei as seguintes estratégias:
- usar o redis
- fazer backup do redis para Disaster Recovery, pois as chaves de comunicação estão lá!
Estas foram as minhas experiências! Espero ajudar!
@guilhermelirio, vc está usando REDIS? Se sim, vc excluiu as Chaves?
Abaixo é possível ver a estrutura que o Evolution V2 armazena os dados, sendo que no evolution_v2 > instance estão as chaves de criptografia do Baileys entre outras coisas.
Mesmo problema aqui.
- Instância zerada
- Versão 2.1.2
- Usando reverse proxy no nginx
- Enviar msg utilizando a API do Evolution funciona normalmente
- Tentei enviar mensagems pelo celular para estabelecer uma comunicação prévia mas não adiantou
- Teste i com o REDIS desativado e com ele ativado também - não houve diferença
- O Chatwoot recebe as mensagens normalmente
- O envio a partir do Chatwoot retorna o erro Invalid PreKey ID
is that any update on these error ?
estou com redis ativado e tambem estou tendo esse problema
evolution_api | {"level":50,"time":1736440432714,"pid":163,"hostname":"99e1daff8d29","key":{"remoteJid":"55328xxxxxx:[email protected]","fromMe":false,"id":"3A361E511649168DFBA5"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 553288735683.33 [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"}
Segue acontecendo nas versões atuais.
O Evolution "recebe" a mensagem, mas não consegue descriptografar, e com isso não passa pra frente (SQS/webhook/rabbit), e sendo assim não chega pro sistema.
Enviando uma mensagem pra pessoa (do Evolution para o contato em questão), voltou a funcionar.
evolution_api | {"level":50,"time":1736440432714,"pid":163,"hostname":"99e1daff8d29","key":{"remoteJid":"55328xxxxxx:[email protected]","fromMe":false,"id":"3A361E511649168DFBA5"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 553288735683.33 [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"}Segue acontecendo nas versões atuais.
O Evolution "recebe" uma mensagem, mas não consegue descriptografar, e com isso não passa pra frente (SQS/webhook/rabbit), e sendo assim não chega pro sistema.
Enviando uma mensagem pra pessoa (do Evolution para o contato em questão), voltou a funcionar.
Então, continua sendo um problema, como podemos nos ajudar a corrigir esse erro ? estou a disposição, podemos fazer um grupo para centralizarmos informações 5511963473093
Penso que a gente saber via código que isso tá acontecendo, já seria um avanço.
O Evolution poderia ter um webhook pra enviar falhas deles, dai daria pra saber quando algo inesperado acontece.. sem precisar olhar o console do servidor.
Agora, esse bug em si, tem a ver mais a ver com o Baileys do que com o Evolution, então o buraco é mais embaixo.
evolution_api | {"level":50,"time":1736440432714,"pid":163,"hostname":"99e1daff8d29","key":{"remoteJid":"55328xxxxxx:[email protected]","fromMe":false,"id":"3A361E511649168DFBA5"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 553288735683.33 [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"}Segue acontecendo nas versões atuais.
O Evolution "recebe" a mensagem, mas não consegue descriptografar, e com isso não passa pra frente (SQS/webhook/rabbit), e sendo assim não chega pro sistema.
Enviando uma mensagem pra pessoa (do Evolution para o contato em questão), voltou a funcionar.
Tengo o mesmo problema, se eu puder ajudar em algo, me avisem.
evolution_api | {"level":50,"time":1736440432714,"pid":163,"hostname":"99e1daff8d29","key":{"remoteJid":"55328xxxxxx:[email protected]","fromMe":false,"id":"3A361E511649168DFBA5"},"err":{"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 process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async 553288735683.33 [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"}Segue acontecendo nas versões atuais.
O Evolution "recebe" a mensagem, mas não consegue descriptografar, e com isso não passa pra frente (SQS/webhook/rabbit), e sendo assim não chega pro sistema.
Enviando uma mensagem pra pessoa (do Evolution para o contato em questão), voltou a funcionar.
Realmente ao enviar a mensagem do evolution para o contato volta a funcionar!
o mesmo para minha estrutura, o erro persiste.
A suitable solution for the case until Evolution finds another one to definitively solve it is, as I did, to create a gateway to act between Evolution and your application, so that in the gateway you receive the messages, respond to the user with something like "Please wait a moment...", and thus you will already have a message being sent directly to the user, even before it reaches your application.
Na minha estrutura o erro também persiste. Já estou na v2.2.1 e nada :/
Olá! Eu estava passando pelo mesmo problema, mas consegui "resolver". Verifiquem se a versão do whatsapp que está sendo utilizada no aparelho é a última. Eu fiz dois testes, em um Galaxy J8 com uma versão antiga do android e meu pixel 4a 5g com a versão mais recente. Ao utilizar o número na versão mais moderna do whatsapp eu consegui receber as mensagens corretamente.
Não sei se é a causa do problema, mas vocês podem tentar isso como uma possível solução.
To pensando aqui, esse erro deveria ser enviado pelo webhook de erros do Evolution.. assim dá pra gente ficar sabendo "ativamente" quando acontecer e agir.
Estou usando a Versão: 2.2.3 e com o mesmo problema
Por que que essa issue foi fechada? Versão 2.2.3 aqui e acabou de começar a dar esse mesmo erro depois de usar o evolution por algumas semanas 😭
@gilney-canaltelecom Já foi corrigido, só que ainda não lançou a 2.2.4, mas você pode clonar o repositório na branch develop, e faz o build do docker. Resolveu pra mim
@HELIOPOTELICKI Ah, te dizer que nem tinha notado o branch develop antes. Valeu pela informação 👍