Skip to content

Latest commit

 

History

409 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GrinMax Tracking System

GrinMax Tracking System is a comprehensive Discord bot designed to streamline server management through automated tools for tracking, deal monitoring, and ticket management. Built with the Pycord/Ezcord library, GrinMax integrates with the DHL API to provide shipment tracking and offers additional capabilities tailored for server activity management and partner collaborations.

Key features include real-time shipment updates, automated deal tracking, customizable statistics, and a full ticketing system with inactivity detection to support effective oversight of all server interactions.

Features

  • Track DHL shipments with real-time updates.
  • Start, delete, and list tracking numbers via commands.
  • Detect and save new deals posted in the server.
  • Display guild deal stats across various time periods via slash commands.
  • Whole custom ticket system to manage deals and partners.
  • Manage partners and their deal channels with ease.
  • Last but not least, detection and handling for inactive tickets.

Setup

  1. Clone the repository:

    git clone https://github.com/plesioo/GrinMaxTracking-Bot.git
    cd GrinMaxTracking-Bot
  2. Install dependencies:

    pip install -r requirements.txt
  3. Set up environment variables. Create a .env file and add your credentials:

    DISCORD_TOKEN=your_discord_bot_token
    MONGO_DB_CLIENT=your_mongo_db_connection_string
    DHL_API_KEY=your_dhl_api_key
    
  4. Set up the config.py file:

     ERROR_WEBHOOK_URL=your_error_webhook_url
     DEALS_CHANNEL_ID=your_deals_channel_id
     ADMIN_CHANNEL_ID=your_admin_channel_id
     TRANSCRIPTS_CHANNEL_ID=your_transcripts_channel_id
     PARTNER_CATEGORY_ID=your_partner_category_id
     PROD_GUILD_ID=your_guild_id
     DEAL_TICKETS_CATEGORY_ID=your_deal_tickets_category_id
     SUPPORT_TICKETS_CATEGORY_ID=your_support_tickets_category_id
     ADMIN_ROLE_ID=your_admin_role_id
    

Here is an explanation of what everything does:

Variable Description
your_errror_webhook_url The webhook where all errors that occur during the usage of the system are sent.
your_deals_channel_id The ID of the channel where your deals are posted.
your_admin_channel_id The ID of the channel where your admins send deals to be posted.
your_transcripts_channel_id The ID of the channel where all ticket transcripts are sent.
your_partner_category_id The ID of the category where all partner channel to post deal webhooks are created.
your_guild_id The ID of your guild and the bot is used in.
your_deal_tickets_category_id The ID of the category where all deal tickets from other bots (e.g. Ticket Tool) are created.
your_support_tickets_category_id The ID of the category where all support tickets from other bots (e.g. Ticket Tool) are created.
your_admin_role_id The ID of the role that is used to determine if a user is an admin.

Slash Commands

Tracking DHL Shipments:

  • /track start <tracking_number>: Start tracking a DHL shipment.
  • /track delete <tracking_number>: Remove a tracking number from active tracking.
  • /track list channel: List all active tracking numbers in the current channel.

Viewing Deal Stats

Use the /stats [period] command to display key statistics for your guild, such as deal activity, which can be shared with partners.

Available Time Periods:

  • Today
  • This Week
  • This Month
  • Past 3 Months
  • Past 6 Months
  • This Year
  • All Time
  • Custom

Managing Deal Posts

  • /oos: Marks an active deal as out of stock, visually updating the deal post.
  • /activate: Marks an out-of-stock deal as active, visually updating the deal post.

Managing Partners

  • /partner add <partner_name> [<deal_channel>]: Add a new partner to the system. This will create a new deal channel in the partner category or use the specified channel.

Additional Information

Inactivity Detection

  • Working Hours: Monday to Saturday, from 7 AM to 10 PM. (Sundays are excluded).
  • 12-Hour Inactivity Reminder: If there is no activity on a ticket for 12 working hours, a reminder will be automatically sent in the ticket channel.
  • 24-Hour Inactivity Closure: After 24 working hours of inactivity, the ticket will be closed. Admins are notified, and support controls are available (only if the ticket was created by this bot).

Contact

If you have any issues or questions, you can send me a DM on Discord. Username: plesioo

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages