Discord bot com nodejs e integração com Cloud Firestore.
O projeto foi desenvolvido utilizando as seguintes tecnologias e APIs:
- node.js
- discord.js
- dotenv
- express
- firebase
- https
- twitch api
Instalação de dependencias | Configuração do ambiente local
Cria em algum lugar do seu pc, uma pasta para criarmos uma copia do repositório, dentro dela abra o cmd ou powershell e digite os comandos abaixo:
git clone https://github.com/AlanWehrliLC/Discord-Bot.git
cd Discord-Bot
npm install
Para configurar o ambiente de desenvolvimento, você precisa criar um arquivo
.env
na raiz do projeto, e adicionar os seguintes parametros nele:
"Discord Token"
TOKEN_DISCORD=ODI3MTc4MTY1ODE0MDM0NDUy.YGXPsg.B0jXsYqvDrrDyEM3-M3AoOVDlg4
"Firebase, Web App"
API_KEY=AIzaSyCozaY1NrykIPviRU-p4tUse78UYwoDdP4
AUTH_DOMAIN=new-test-bot-36d16.firebaseapp.com
PROJECT_ID=new-test-bot-36d16
STORAGE_BUCKET=new-test-bot-36d16.appspot.com
MESSAGING_SENDER_ID=183164803302
APP_ID=1:183164803302:web:aa63fbca0e7ffac54f0327
MEASUREMENT_ID=G-T2WRKGBES4
"Aplicativo Twitch"
CLIENT_ID_TWITCH_APPLICATION=29fbug62p4u54a5e2349p1ou7fv2di
"Essas variaveis de ambiente são meramente ilustrativas..."
A seguir mostrarei como e onde pegar essas variaveis de ambiente:
TOKEN DISCORD | Firebase, Web App | Cloud Firestore, Firestore Database | Aplicativo Twitch
Entre no site de desenvolvedor do Discord Developers e crie um novo aplicativo, em BOT copie o TOKEN:
Entre no site do Firebase, crie um projeto, e adicione um aplicativo web:
Não se esqueça de criar um banco de dados:
Entre no site da Twitch Devs, em Console, crie um aplicativo:
Depois de ter definido as variaveis de ambiente, abra o cmd ou powershell e digite o comando abaixo:
"Ou no próprio VS Code abra um novo terminal"
npm run start
Para colocar o bot seu Discord, é necessário pegar o ID do bot, criado junto com o aplicativo do Discord e unir com o link abaixo:
Coloque o ID no lugar do IDDISCORD
` https://discord.com/api/oauth2/authorize?client_id=IDDISCORD&scope=bot&permissions=1 `
Nessa URL contem as permições necessárias, que você pode dar ao Bot, que fica no fim da URL "permissions=", o número após ele, são as permições (Exemplo: Administrador = 8, etc). Veja como adquirir o ID do Bot e as permições abaixo: A URL ficara assim:
https://discord.com/api/oauth2/authorize?client_id=827178165814034452&scope=bot&permissions=8
Para colocar em produção existe varios serviços de cloud, como glitch, replit, discloudbot, entre outros...
Eu estou utilizando o Google Cloud, mais especificamente o serviço Cloud Run...
Para o Bot funcionar 24 horas por dia, é necessário uma monitoração contínua, como uptimerobot...
Eu utilizo outro serviço da Google Cloud, que se chama, Monitoring, mais especificamente na parte de "Verificações de tempo de atividade".