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
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!
Amigo.
Voce precisa fazer essa alteração no Mkauth, segue a orientação que o Jose Santos passou.
O WhatsApp na cron é disparado a cada minuto, diferente do SMS, que é a cada 2 minutos.
No arquivo
/etc/cron.d/zap
, a execução da fila de mensagens está configurada para a pasta/opt/mk-auth/jobs/ZAP
.As mensagens são enviadas a cada 5 segundos.
Como já devem perceber, ainda não é possível controlar a fila de mensagens no sistema. Portanto, a responsabilidade de controle recai sobre a aplicação que integra com o mk-auth (para evitar banimento).
Cleber bom dia
como faço para alterar o horario de envio das mensagens , sms tem dispardo por volta das 10 hrs e watz por volta das 22hrs
grato
Magno Ramos
Entendi, eu aqui uso vinculado ao zabbix, mas é uma boa ter essas opções via script.
na verdade construi a função pra antender a um pedido aki nesse topico um tempo atras e como eu ja utilizei o telegram pra esse fim dei a ideia de utilizar o whatsapp tbm, aqui n utilizo hj em dia mas ja usei o telegram, como usava o netwatch tava me pertubando muito ai desativei
Infelizmente ao meu ver é uma falha o WhatsApp ainda não ter o sistema de bot como o Telegram.
Segue a minha contribuição para que usa Telegram e PushOver:
#Substituir o Telegram BOT ID por seu ID. EX: bot123123123:aaaaabbbbbcccccddddd
global TELEGRAMBOTID
#Substituir o Telegram BOT CHAT por seu CHAT EX: chat_id=-01020304
global TELEGRAMBOTCHAT
#Pushover User Key
global PUSHOVERUSERKEY
#Pushover API Token
global PUSHOVERAPITOKEN
Adicionei a opção de envio via mikrotik, pode ser utilizado para receber notificações de queda de link etc.
necessário ter instalado a versão 2.0.33 com patch 08/06/2024 07:03
utilização :
/tool fetch "http://IP-API/mikrotik/DDI+DDD+NUMERO/MENSAGEM"
Exemplo:
/tool fetch "http://192.168.3.250:8000/mikrotik/5511988888888/Mensagem de Teste"
OBS: somente mensagens diretas de texto, sem utilização de tags \n, ## ou {}
atualiza a API para a ultima atualização disponivel e utiliza o comando abaixo
/tool fetch "http://IP-API/mikrotik/DDI+DDD+NUMERO/MENSAGEM"
exemplo
/tool fetch "http://192.168.3.250:8000/mikrotik/5511988888888/Mensagem de Teste"
cd ~ && cd /var/api/Mwsm && pm2 delete all && pm2 kill && git reset --hard HEAD~1 && git pull "https://github.com/MKCodec/Mwsm.git" --rebase --autostash && npm install --silent && npm run start:mwsm