Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1169

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176
8000 GitHub - pesu-dev/discord_bot
Nothing Special   »   [go: up one dir, main page]

Skip to content

pesu-dev/discord_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PESU Discord Bot

License Contributors Issues Project Board

A powerful community management bot designed specifically for the PESU Discord Server. This bot provides essential moderation tools, anonymous messaging capabilities, user linking systems, and various utility commands to enhance the Discord experience for PESU students.

The bot is built with security and privacy in mind, ensuring safe and effective community management while maintaining user confidentiality.

Warning

The bot is hosted on a free tier AWS server with limited hardware. Users may experience lag during peak usage times.

πŸš€ Quick Start

For Users

The bot is currently deployed and active in the PESU Discord Server. Use slash commands to interact with the bot:

  • Type / in any channel to see available commands
  • Use /help for detailed command documentation
  • Contact moderators for support with bot-related issues

For Developers

  1. Check our project board for current work
  2. Read the contribution guidelines
  3. Set up your development environment
  4. Create a branch: (discord-username)/feature-description
  5. Submit a PR to the dev branch

For detailed development setup and contribution instructions, see our Contributing Guide.

πŸ—οΈ Bot Architecture

Project Structure

β”œβ”€β”€ application.py          # Main application entry point (loads cogs, sets presence)
β”œβ”€β”€ bot.py                  # Discord bot subclass with MongoDB attributes
β”œβ”€β”€ faq.json                # FAQ responses data
β”œβ”€β”€ requirements.txt        # Python dependencies (for non-uv users)
β”œβ”€β”€ pyproject.toml          # Project metadata and tooling config
β”œβ”€β”€ uv.lock                 # uv lockfile
β”œβ”€β”€ Dockerfile              # Container image definition
β”œβ”€β”€ docker-compose.yml      # Local compose for services
β”œβ”€β”€ LICENSE                 # Project license
β”œβ”€β”€ README.md               # This file
β”œβ”€β”€ cogs/                   # Bot functionality modules (Discord.py cogs)
β”‚   β”œβ”€β”€ events/             # Event handlers
β”‚   β”‚   └── general.py      # General event handling (member joins, etc.)
β”‚   └── interactions/       # Command interactions
β”‚       └── slash/          # Slash commands implementation
β”‚           β”œβ”€β”€ anon.py     # Anonymous messaging system
β”‚           β”œβ”€β”€ help.py     # Help and command documentation
β”‚           β”œβ”€β”€ link.py     # User linking and verification
β”‚           β”œβ”€β”€ mod.py      # Moderation commands
β”‚           └── utils.py    # Utility commands (ping, uptime, etc.)
└── utils/                  # Shared utilities and configuration helpers
    β”œβ”€β”€ config.py           # Guild/role/channel IDs and access helpers
    └── general.py          # General helper functions

Cogs System

The bot uses Discord.py's cogs system to organize functionality into modular components:

  • Events Cogs: Handle Discord events such as member joins, message events, and server updates
  • Slash Command Cogs: Implement modern Discord slash commands for user interactions
  • Utility Functions: Shared helper functions used across different cogs

Database Collections

The bot maintains several MongoDB collections:

  • link: Stores Discord-PESU account links
  • student: Student linking data
  • anonban: Anonymous messaging ban records
  • mute: Server mute records

Configuration

The bot's behavior is controlled primarily through environment variables and code-based configuration:

Refer to our Contributing Guide for environment setup and the list of variables: .github/CONTRIBUTING.md. An example file is provided at .env.example.

utils/config.py

Holds guild-specific role and channel ID mappings and exposes helpers like get_role/get_channel.

faq.json

Stores frequently asked questions and their responses for quick access.

🀝 Contributing to PESU Discord Bot

Made with ❀️ by

Contributors

Powered by contrib.rocks

We welcome contributions from the PESU community! Whether you're fixing bugs, adding new features, or improving documentation, your help is appreciated.

πŸ‘‰ Read our detailed Contributing Guide for complete setup instructions and development workflow.

πŸ” Security and Privacy

  • No Credential Storage: The bot does not store Discord or PESU passwords
  • Secure Database: All data is stored securely in MongoDB with proper access controls
  • Role-based Access: Commands are restricted based on user permissions and server roles

πŸ“Š Project Status

  • Active Development: The bot is actively maintained and updated
  • Community Driven: Features are developed based on community needs
  • Production Ready: Currently deployed and serving the PESU Discord community

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


For questions, support, or feature requests, please visit our project board or join the discussion on the PESU Discord server.

About

No description or website provided.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 11

0