Description
A função setchatState nos meus testes:
1º Problema) Não passa de 40 segundos, mesmo eu enviando chamadas recorrentes da função (com intervalos de 3,5,10 segundos entre elas)
Obs: Se fosse possível passar para a função um parâmetro de duração do comando, ou então ela ficar com "duração eterna", até que eu envie o staus setChatState = 2 (remover status)
2º Problema) Não funciona chamar a função 2..3 vezes seguidas. Depois que o State automaticamente para de executar (depois que sumir o status de "gravando..." ou "digitando...") , já não funciona mais a execução da função, até que você saia e entre na conversa novamente (parece que depois faz isso, da uma atualizada nos states e ai a função setchatState volta a funcionar).
Para reproduzir este problema:
- Faça a chamada da função (via Postman por exemplo)
- Aguarde entre 20 a 30 segundos, que o status "digitando..." ou "gravando áudio..." desaparecerá automaticamente
- Envie outra chamada da função (obs: entre esse passo e o passo anterior, o remetente não pode ter feito ação de digitar ou gravar alguma coisa, pq isso tb pode dar uma forçada na atualização dos status assim como sair e entrar de novo na conversa)
- Vai observar que a função setChatState não vai funcionar (o status não é alterado)
- Agora saia da conversa (clique em outra) e entre novamente
- Envie outra chamada da função setChatState, verá que volta a funcionar. Ou seja, você envia uma vez Funciona, depois as próximas chamadas da função só funcionam depois que sai e entra na conversa (ou se o remente digitar ou gravar alguma coisa)
Environment
- **Wppconnect version(s): 1.3
- Browser: Chromium (que é instalado automaticamente pelas dependicas do Wppconnect na versão 1.3)
- OS: Windows Server 2012
- Node version: 6.14.11
Steps to Reproduce
- enviar a chamada da função passando state 0 ou 1
- o status vai durar entre 20 a 25 segundos e desaparecerá automaticamente
- Então se a status dura entre 20 a 25 segundos, fazer a chamada da função setChatState 6 vezes, deveria durar uns 2 minutos o status.
- Fazer a chamada da função setChatState 6 vezes a cada 10...18 segundos
- Perceberá que mesmo assim, vai durar no máximo 40 segundos o status passado.
Your Code
// FAÇO A CHAMADA DO CÓDIGO ABAIXO 6 VEZES (OU MAIS) A CADA 15 SEGUNDOS, PARA FAZER O STATUS DURAR UNS 2 MINUTOS. MAS, NÃO PASSA DE 40 SEGUNDOS.
const formDataAux = JSON.stringify({
'instancia': mensagem.instancia,
'number': mensagem.destinatario,
'state': mensagem.chat_state
});
await request.post(
{
headers: {'content-type': 'application/json'},
url: "http://localhost:3000/wp/setChatState",
body:formDataAux
}, async function(error, response, body){
if (error != undefined && error != null) { console.error("❌ Ocorreu um erro ao enviar mensagem agendada Chat State!\n\n Instancia: "+ mensagem.instancia +" / Phone User: " + mensagem.remetente + " / Recno Msg: " + mensagem.recnomsg + "\n\nErro: " + error) }
else {
console.log("✅ Status Chat enviado com sucesso! \n\n Instancia: "+ mensagem.instancia +" / Phone User: " + mensagem.remetente + " / Recno Msg: " + mensagem.recnomsg)
}
})
EVIDENCIA EM VIDEO
https://drive.google.com/file/d/1pT0MosZcruEATCcIQzoSyHxQh5UJsjpW/view?usp=sharing