PondoBot

The (unofficial) bot of Ponderosa High School

View on GitHub

PondoBot

a simple bot for Ponderosa High School hub discord servers invite me

Dont forget to read my Privacy Policy And follow my Terms Of Use

Features

random Presences whenever the bot starts some Commands

commands

a * after the sub-command indicates it requires authorization authorized users are users with MANAGE_GUILD in the server they are in or are on a special list here

help

sends a ephermral (hidden from other users) embed containg command names and help text

reload*

a command used by any whitelisted user

classroom

command for linking email and classroom with the bot

students

command that involves student data current has 3 sub Commands

config*

command that configures variables for your server

Fallback Mode

sometimes accidents happen and when those accidents are severe enough the bot enters fallback mode in fallback mode a few things happen

  1. running /reload (or any sub-command) reloads the bot no matter permissions
  2. all commands except /reload will return a message noting that the bot is in fallback mode and the current bot logs will be attached

Contribuiting

adding a command

commands are .js files placed in /commands a example command has been provided here as you can see the module has to export a dictionary containg values these values are as follows:

FAQ

can I run this bot for my school?

A: yes you just need to set the correct values in unifiedConfig.json a empty json looks like

{
	"DISCORD_TOKEN": "discord bot token to run the bot",
	"DISCORD_CLIENT": "your discord client id",
	"EMAIL_SUFFIX": "the part after the @ schools email ex: @eduhsd.k12.ca.us",
	"SERVICE": "optional systemd service for /reload bot method: service",
	"GoogleOAuth": "google OAuth2 desktop credentials json here"
}

then after those are set just run node guildCommands.js note: if you want to deploy to specific servers with the above command you need to specify it in the module.exports.guildIds of the command then node globalCommands.js