Envio de mensagem via Whatsapp 100% Gratuito

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.

12358224465?profile=RESIZE_710xDownload e Instalação

Para adicionar comentários, você deve ser membro de MK-AUTH.

Join MK-AUTH

Enviar-me um email quando as pessoas responderem –

Respostas

            • Sim, está habilitado, assim como no usuário dentro do MK aurh está marcado a opção, ele informa que o link foi feito com sucesso porém acontece esse erro

              • faz o seguinte, abre o arquivo mwsm.js pelo winscp e uma linha acima de function testJSON(text) coloca esse codigo

                delay(0).then(async function() {
                const TESTE = await MkAuth("LOGIN-DO-CLIENTE","NUMERO-DO-TITULO");
                console.log(TESTE);
                });

                salva e fica de olho no console no que é retornado, obrigatoriamente tem q retornar um json com status e metodos de pagamento

                o caminho para o arquivo é ( var - api - mwsm )

                 

                outra dica é habilitar as opções 1 por 1 e ir testando pra ver se alguma especifica esta quebrando o codigo mas com esse script acima vc vai ver se a api esta retornando os dados corretamente

              • acabei de atualizar, utiliza esse comando pra atualizar sem perder o banco de dados ( se ja estiver na 2.0.18 )
                wget https://raw.githubusercontent.com/MKCodec/Mwsm/main/mwsm.js -O /var/api/Mwsm/mwsm.js

                em seguida vai em settings > API > MkAuth Link ( desabilita e habilita ), se conseguir conectar então o problema tbm n é no endpoint, antes o app considerava a conexão da api apenas com um retorno positivo da autenticação por client e secret e não considerava a permissão do acesso endpoint titulos, nessa atualização vai realizar um teste completo antes de considerar a configuração com a api correta, caso consiga se manter conectado faz a sugestão que dei anteriormente pra gente tentar entender onde esta o erro

                https://raw.githubusercontent.com/MKCodec/Mwsm/main/mwsm.js
            • 12491013276?profile=RESIZE_930x

              Certo? lembrando que a endpint esta ativo no usuario do mkauth

              • estou trabalhando numa tratativa de erros pra gente tentar descobrir oq pode estar ocorrendo

              • Faz um Update
                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

                Reconfigura a API e tenta disparar uma mensagem no simulador, antes todos os erros eram tratados como se nenhum modulo tivesse sido selecionado, agora vai especificar se a API esta recusando a conexão ( acesso não é HTTPS ou o enmdpoint não foi configurado ), se a requisição é invalida ( login ou titulo pesquisado não foram encontrados "erro no dado inserido em uid ou find" ) ou se realmente não foi selecionado nenhum modulo ( se insistir nesse erro mesmo estando selecionado sugiro reiniciar o linux onde o app esta inserido ou clicar no botão reset no canto superior direito "esse com setas circulares")

                 

                detalhe: aqui utilizo ultima versão do mkauth

  •  Interessante, eu fiz um bot com a API do mkauth faz um tempo, eu tinha ate postado que ia compartilhar ele aqui mas nao tive tempo de postar no github.

    Ele tem varias coisas como prompt de comandos tipo: quando uma pessoa pergunta alguma coisa ele responde se tiver no regex de comandos.

    Seria interessante voce organizar o bot colocando as funcoes de comandos separo do core do bot criando uma pasta so para isso porque depois vai ficar ruim manter o sistema

    do bot, vai ficar arquivos gigantes kkk, me envia seu numero no privado que qualquer coisa eu te mostro meu sistema de bot, vai facilitar a vida.

     

    Sobre questao de bloquear o numero, seria melhor nao enviar varias mensagens separadas, o pix poderia ser separado mas so isso, a API do whatsapp nao

    gosta de ver varias requests quase ao mesmo tempo..

    • interessante, expressão regular complica, manjo nada, ainda n entendi a logica de construção daquilo, nodejs tambem é novidade, tou apanhando bastante com isso de codigo assincrono, promisse, etc, pense num bagulho complicado, quando a logica do php funciona é de boa, quando n a solução é os foruns gringos

      ainda n adcionei interação entre o bot e usuario, por enquanto a tratativa é so envio das cobranças, na questão das mensagens o usuario que vai definir se o envio é por balão ## ou quebra de linha \n de acordo com a tag q utilizar como tambem pode controlar o tempo de disparo entre os baloes, vai caber a cada usuario montar sua tatica de disparos

  • Um exemplo do meu comando de Pix, quando a pessoa paga o MP envia o webhook para o bot e ele da baixa no pagamento.

    no caso isso era so um teste, agora da para fazer pela APi do MKauth com as novas rotas, pega o pix direto do gateway.

    no caso o comando so funciona com o devOnly, um sistema desses tem que ter varias validacoes, protecao, caso contrario vai

    dar B.O

     

    import { Command } from '../../core/index.js'
    import { MercadoPagoConfig, Payment } from 'mercadopago'

    const client = new MercadoPagoConfig({ sandbox: true, accessToken: 'token', options: { timeout: 5000 }});
    const payment = new Payment(client)

    export class PixRegex extends Command
    {
      constructor ()
      {
        super('pix', {
          category: 'categoria',
          hidden: true,
          regex: /^pix$/i,
          ownerOnly: true,
          devOnly: true
        })
      }

      async run ({ api, event }, {}) {
        let body = {
          description: 'title',
          payment_method_id: 'pix',
          transaction_amount: parseFloat(1),
          issuer_id: 63,
          payer: { // quem vai pagar
            email: 'email@gmail.com',
            first_name: "mix",
            identification: {
              type: 'CPF',
              number: '0000000'
            }
          },
          external_reference: '',
        }
        await payment.create({ body }).then(b => {
          const bod = b?.point_of_interaction?.transaction_data?.qr_code
          console.log(bod)
          return api.sendText(event.from, bod)
      }).catch(console.log);
      }
    }
     
This reply was deleted.