Montei uma API para enviar avisos e/ou cobranças via WhatsApp atraves do MkAuth, não testei e não sei se funcionaria corretamnete se instalado diretamente no mkauth pois como utilizo o mkauth virtualizado em proxmox e como o sistema é bem leve optei com criar um CT com umbuntu 23.04 a parte no proxmox, acredito que rode até em um pendrive.
O conteudo é auto explicativo e a API é gratuita e cumpre com a funcionalidade que promete sendo 100% funcional, tem gente cobrando mensalidade de 100 reais ou instalação de 300 reais mas aqui vcs conseguem de graça, como a finalidade é somente o envio de cobranças e não um chat-bot caso algum cliente responda alguma mensagem sera notificado que o numero é apenas para uso do sistema portanto sujiro utilizar uma conta de whatsapp a parte ou ate mesmo aqueles numeros virtuais.Download e Instalação
Para adicionar comentários, você deve ser membro de MK-AUTH.
Respostas
ja estou desenvolvendo isso, todo disparo entrara em uma lista de espera, nessa lista sera possivel escolher dia util e turno, cada mensagem vai entra em um ciclo de permisão pré-definido, caso um ciclo caia em um dia não permitido ele é jogado para o topo do proximo ciclo, exemplo, se um ciclo cair no domindo q foi um dia não permitido ele joga para o topo do ciclo da segunda mantendo a ordem do mais antigo para o mais recente, vai demorar mais um pouco pra liberar essa atualização pq aqui na minha cidade ( Caruaru-PE ) estamos em epoca de festas de são joão e estou aproveitando pra fazer um trocado a mais n dispondo de muito tempo pra programar sem contar q esqueci a opção update ligada e acabou substituindo tudo q ja tinha feito pela versão do github e tive q refazer novamente do zero
Olá Cleber,
Gostaria de saber se há planos para acrescentar uma funcionalidade de agendamento em sua API. A ideia é que a API receba as mensagens, as mantenha pendentes e as entregue conforme a configuração da agenda. Isso nos permitiria definir quais dias as mensagens seriam entregues, como não enviar aos domingos, feriados e fora do horário comercial.
Estou usando a ultima versão, parece que não rodou. Quando testei deu erro e não sabia o que era, só depois que vi no banco de dados que tinha um espaço.
Essa verificação é no simulador? Porque aqui eu uso no modo direto via cURL.
Vou tratar aqui o espaço diretamente na consulta SQL: REGEXP_REPLACE(vtab_titulos.celular,'[( )-]+','') AS `celular`
inclui essa verificação de forma nativa, a api vai remover tudo q n seja numeros do campo, atualiza pra ultima patch q vai resolver ou se quiser incluir tbm na sua aplicação utiliza esse comando RegEx .replace(/[^0-9\\.]+/g, '')
quebra de balão utiliza ## e quebra de linha \n, tem q ser tudo em uma linha só, espaços só nas frases
Resolvido, tinha um espaço antes do numero do cliente no cadastro do MK-Auth. Já vou meter um regex no meu sistema para tirar isso. Eu já tinha removido () e - agora tenho que tratar os espaços kkkk
Enviei manual pelo seu programa e deu: Failed: Server connection error
Mais aí eu vi que o seu sistema não aceita enviar mensagem com enter entre as linhas, (pelo menos aqui não deu) tive que deixar tudo em uma linha e sair quebrando com ##. Depois disso enviou com sucesso.
tenta fazer o envio individual pelo simulador e verifica o q o debugger retornou
tenta fazer um envio pelo simulador e contabiliza o tempo, juntando todos os timers o disparo pode ter um atraso de até 40 segundos no maximo se utilizado na configuração padrão, mais do que isso provavelmente foi o mkauth que não fez o disparo, em contra partida a isso esta em desenvolvimento a fila de agendamento direto na aplicação com controle por dias e turnos.
Bom dia, Cleber, fui enviar hoje para 30 pessoas, 29 com sucesso e apenas uma está dando erro e crashando o Mwsm. Toda vez que envio para ele o Mwsm reinicia.
Segue log:
0|Bot-Mwsm | Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
0|Bot-Mwsm | at ServerResponse.setHeader (node:_http_outgoing:659:11)
0|Bot-Mwsm | at ServerResponse.header (/var/api/Mwsm/node_modules/express/lib/response.js:795:10)
0|Bot-Mwsm | at ServerResponse.send (/var/api/Mwsm/node_modules/express/lib/response.js:175:12)
0|Bot-Mwsm | at ServerResponse.json (/var/api/Mwsm/node_modules/express/lib/response.js:279:15)
0|Bot-Mwsm | at /var/api/Mwsm/mwsm.js:1893:35
0|Bot-Mwsm | at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
0|Bot-Mwsm | code: 'ERR_HTTP_HEADERS_SENT'
0|Bot-Mwsm | }
0|Bot-Mwsm | Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
0|Bot-Mwsm | at ServerResponse.setHeader (node:_http_outgoing:659:11)
0|Bot-Mwsm | at ServerResponse.header (/var/api/Mwsm/node_modules/express/lib/response.js:795:10)
0|Bot-Mwsm | at ServerResponse.send (/var/api/Mwsm/node_modules/express/lib/response.js:175:12)
0|Bot-Mwsm | at ServerResponse.json (/var/api/Mwsm/node_modules/express/lib/response.js:279:15)
0|Bot-Mwsm | at Timeout._onTimeout (/var/api/Mwsm/mwsm.js:1951:23)
0|Bot-Mwsm | at listOnTimeout (node:internal/timers:573:17)
0|Bot-Mwsm | at process.processTimers (node:internal/timers:514:7) {
0|Bot-Mwsm | code: 'ERR_HTTP_HEADERS_SENT'
0|Bot-Mwsm | }
PM2 | App [Bot-Mwsm:0] exited with code [1] via signal [SIGINT]
PM2 | App [Bot-Mwsm:0] starting in -fork mode-
PM2 | App [Bot-Mwsm:0] online
0|Bot-Mwsm | API is Ready!