kaualandi / bot-whatsapp

o Bruce pode fazer figurinhas, auxiliar em grupos, converter moedas e outros

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Olá, bem vindo! 👋

Versão Licença: APACHE 2.0 npm version node-version made-with-node

Esse bot de whatsapp foi criado para respostas a comandos, caso queira um para atendimento ao cliente (com fluxo de conversa), veja o repo.

Instalando bot

git clone https://github.com/kaualandi/bot-whatsapp.git
cd bot-whatsapp
npm install

Variáveis de ambiente

Você precisará de um arquivo .env parecido com esse:

USING=PRODUCTION ENVIRONMENT VARIABLES
MAINTENANCE_MODE=false
BASEURL_BOTINFORS=http://localhost:3200

TOKEN_CONSULTAS=
BASE_URL_CONSULTAS=

ffmpegPath=/usr/bin/ffmpeg

Basta agora preencher os dados:

  • USING: é figurativo, apenas se mostrará qual variável está sendo usada, no caso de ter duas.
  • MAINTENANCE_MODE: é um flag que indica se o bot está em modo de manutenção, se true ele responderá avisando seu estado e não fará mais nada.
  • BASEURL_BOTINFORS: se você não alterar o script server do package.json será por padrão http://localhost:3004. É essencial para o funcionamento do bot.
  • ffmpegPath: Diretório do ffmpeg, para baixar músicas com o comando !yt. Caso não tenha, veja como baixar aqui.

Os demais são dados do cliente, sendo assim não são necessários preencher.

Server

Eu disse acima da BASEURL_BOTINFORS, pois bem, aqui vamos configura-lo.

cd server

Precisamos de um arquivo para armazenar todas as informações

touch db.json

Agora abra esse arquivo em seu editor de textos e cole o objeto abaixo

{
  "authorizations": []
}

Ambiente de Desenvolvimento

Caso não tenha o json-server globalmente, o instale.

npm install -g json-server

Se estiver no ambiente de desenvolvimento, é só rodar o npm run server ou npm run server:w, caso queira no modo watch.

Dessa forma, caso queria alterar a porta, você encontrará no arquivo package.json em scripts, busque por server e server:w altere a porta que fica após a flag --port.

Ambiente de Produção

Acredito que você não queria que o server fique ocupando uma instância do terminal. Devemos então prepará-lo para o PM2.

Não ensinarei aqui como configurar o PM2. Mas se quiser, você pode ver o guia para isso.

Se ainda não estiver, entre na pasta do servidor

cd server
npm install

Você pode alterar a porta do server acessando a linha 5 da index.js da pasta server.

Inicie o server com o PM2:

pm2 start index.js --name wabot-server

Execução do Bot

Se você não tiver todas as variáveis de ambiente preenchidas, precisará rever em que parte elas são requeridas e preencher com outra coisa. Sugiro ver os arquivos fetch.js e steps.js.

Volte para a pasta raíz do bot:

cd ..
npm start

Escaneie o QR Code como se estivesse conectando ao whatsapp web e mande um !menu para o número que usou para escanear.

Não se esqueça de verificar se o multidevices (Multiplos Dispositivos) está ativado em seu whatsapp.

Se quiser usar o pm2, execute:

pm2 start index.js --name wabot-bot

Autor

👤 Kauã Landi

🤝 Contribuição

Contribuições, problemas e solicitações de recursos são bem-vindos!
Sinta-se à vontade para verificar a página de problemas. Você também pode dar uma olhada na página de contribuição.

🥰 Mostre seu apoio

Dê uma ⭐️ se este projeto te ajudou!

About

o Bruce pode fazer figurinhas, auxiliar em grupos, converter moedas e outros

License:Apache License 2.0


Languages

Language:TypeScript 100.0%