Bot de discord para registrar asistencia directamente a google sheets
Requisitos: Node.js, discord.js
git clone https://github.com/raespinoza4/bot-asistencia-discord.git
cd bot-asistencia-discord
npm install discord.js
- Guia para obtener credenciales OAuth2 de google. Seguir los pasos hasta el numero 5, guardar google-credentials.json en carpeta bot-discord-asistencia
- Crear una planilla en google sheets y dar permisos de escritura al email que se encuentra en google-credentials.json
- Guia para crear un "bot application" en la web de Discord seguir los pasos y copiar el token obtenido
- Crear archivo .env con las siguientes variables:
TOKEN=discordToken (paso 3)
PREFIX=$
Nota: Puedes elegir el prefix que tu prefieras para utilizar los comandos del bot ^^
- Invitar al bot a tu servidor
- Completar spreadsheetId y range en funcion gswriteassistanceAlumno ubicada en archivo main.js (linea 29) con la información de la planilla a utilizar, ejemplo:
const appendOptions = {
spreadsheetId: '13Rx5uOgIuobFpT_nfopaIZFZ0Iz9',
range: 'Asistencia-Alumnos!A1',
valueInputOption: 'USER_ENTERED',
resource: { values: data},
};
Nota: El spreadsheetId lo puedes encontrar en el link de tu planilla entre el "/d/" y "/edit", para mas info: Click aqui
-
Reemplazar la id del rol que va a utilizar en el comando $asistencia en main.js , de lo contrario quitar el "if (message.member.roles.cache.has(alumno_role_id))"
-
Finalmente ejecutar
node .
- Enjoy 🎉
- $asistencia : Escribe [Usuario, Dia, nDia, Mes, Hora] en la planilla configurada.
- $ping: Comando de test, bot responde "Pong!"
- $borrar: Comando para borrar facilmente mensajes, forma de uso: "$borrar 5" -> Borra los ultimos 5 mensajes del canal.
Hecho con 💙 por Rodrigo Espinoza 🦊 @raespinoza4 inicialmente para el ramo "Introduccion a la programación" (IIC1103) en PUC.
Agradecimientos especiales a la guia https://discordjs.guide/ !