GithubHelp home page GithubHelp logo

ertprs / ifpbbot Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 5.0 723 KB

Servidor para chatbot com Dialogflow integrado ao WhatsApp e Telegram

Home Page: https://ifpbpicuibot.herokuapp.com/

JavaScript 93.48% CSS 1.43% HTML 5.09%

ifpbbot's Introduction

Logo

IFPB Picuí ChatBot

Faz a integração do Dialogflow com o WhatsApp e Telegram


🌐 Site

Você pode acessar o chatbot diretamente pelo site:

Clique aqui para acessar


⬇ Download

git clone https://github.com/josejefferson/ifpbbot.git
cd ifpbbot

🔧 Instalação

Se você possui o navegador Chrome instalado em seu computador, você pode definir a variável de ambiente PUPPETEER_SKIP_DOWNLOAD como qualquer valor para não fazer o download do Chromium automaticamente

npm install

🔧 Configuração

❌ Desabilitar uma plataforma

Caso você queira desativar alguma plataforma, como o WhatsApp ou Telegram, você deve definir a variável de ambiente DISABLE_WHATSAPP, DISABLE_TELEGRAM, DISABLE_GOOGLE_SHEETS, DISABLE_WEBHOOK, DISABLE_SCHEDULER ou DISABLE_SITE como 1


1. Configuração do Dialogflow

  • Defina a variável de ambiente PROJECT_ID com o ID do seu projeto no Dialogflow
  • Defina a variável de ambiente GCLOUD_CREDENTIALS com as credenciais em formato de JSON do seu projeto (tutorial aqui)

2. Configuração do WhatsApp

  • Execute o servidor e ao aparecer o QR Code escaneie utilizando a função Aparelhos conectados do seu app
  • Logo após, um arquivo whatsapp_auth.json será gerado na raiz.

Se você NÃO estiver usando o WhatsApp Business, defina a variável de ambiente WHATSAPP_LISTS=1 para ativar as listas do WhatsApp, pois o WhatsApp Business não suporta

Configurar números permitidos (opcional)

Caso você queira, você pode restringir o acesso do robô a determinados contatos. Para isso, coloque-os na variável de ambiente WHATSAPP_ALLOWED_NUMBERS os números separados por vírgula, exemplo: [email protected],[email protected] (onde d é o DDD do número e o x são os dígitos do número sem o 9)


3. Configuração do Telegram

  • Crie seu bot no @BotFather e coloque o token na variável de ambiente TELEGRAM_BOT_TOKEN

Configurar Webhook

  • Coloque o URL do seu servidor Webhook na variável TELEGRAM_WEBHOOK_URL

4. Configuração do Planilhas Google

Se você não quiser usar o Planilhas Google, use a variável DISABLE_GOOGLE_SHEETS e pule esta etapa

  • Instruções disponíveis em breve

5. Configuração do Webhook

Se você não quiser usar o webhook, use a variável DISABLE_WEBHOOK e pule esta etapa

  • Defina a variável MONGO_DB com o link do seu banco de dados MongoDB

🚀 Executar

Para iniciar o servidor, basta executar o comando:

npm start

Caso precise ver as respostas do Dialogflow, execute no modo dev:

npm run dev

Se quiser executar apenas o servidor do WhatsApp, execute:

npm run whatsapp

Ou se quiser apenas o servidor do Telegram:

npm run telegram

Ou apenas a integração com Planilhas Google:

npm run googleSheets

Para executar apenas o servidor webhook:

npm run webhook

Ou para apenas o site:

npm run site

Desenvolvido por Jefferson Dantas

ifpbbot's People

Contributors

josejefferson avatar dependabot[bot] avatar

Stargazers

Oleg Ozimok avatar

Watchers

 avatar

Forkers

vagner3101 prhr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.