-
Guild login - Log in to the bot with your student email to give it access to committee privilages
-
Authentication - Allow users to enter their id to check their membership status and automatically give them the member role
-
Manual check - Allows committee members to check an id's membership status manually
-
Clone the repository:
git clone https://github.com/Kay607/AuthBot -
Navigate to the project directory:
cd Authbot -
Install the dependencies:
npm install -
Setup the
.envfile:Requires a discord bot token in the
.envfile or as an environment variable.
A client id is also required to run thenpm run deploycommand
An Ngrok token is also required to run the/guildlogincommand but is not required to run the bot or if/committee-credentialsis used insteadExample env file provided
.env.example -
Initialize the database:
npm run db:push -
Deploy commands:
Only required if new commands are added or if you are using a new bot user
npm run deploy
Run the bot using:
npm start
Use the /addserver command to add society information to the bot
/editserver can be used to edit this later
/deletserver can be used to remove a society from the bot
/test-id with an id to check if they are a member
/test-credentials to check if the bot currently has committee privilages
/auth allows users to verify themselves and get the member role
/guildlogin allows committee members to log in to the bot (must be repeated once per week)
/committee-credentials allows a committee member to enter their student email, password, and google one time password secret key to auto login once per week as an alternative to /guildlogin
Contributions are welcome! Please open an issue or submit a pull request for any improvements or features.
This project is licensed under the MIT License.