Bot Case Listener Cog

The Bot Case Listener cog monitors messages from other moderation bots (Sisyphus and Circle) and automatically stores their moderation case data in Vör’s database for unified case management.

Features

Bot Integration

  • Sisyphus Support: Scrapes moderation cases from Sisyphus bot
  • Circle Support: Integrates with Circle moderation bot
  • Automatic Detection: Identifies case embed messages
  • Data Extraction: Parses case details, users, actions, reasons

Case Storage

  • Unified Database: Stores cases from all integrated bots
  • Case Numbering: Maintains consistent case numbering
  • Complete Records: Stores all case metadata
  • Historical Data: Preserves moderation history

Server Filtering

  • Server Whitelist: Only monitors specified servers
  • Channel Monitoring: Watches designated channels
  • Bot ID Verification: Confirms messages from correct bots
  • Duplicate Prevention: Avoids storing duplicate cases

Configuration

  • Enabled Servers: List of server IDs to monitor
  • Bot IDs: IDs of moderation bots to scrape
  • Log Settings: Control logging verbosity

Technical Details

Message Parsing

  • Embed Analysis: Extracts data from Discord embeds
  • Field Mapping: Maps bot-specific fields to standard format
  • Error Handling: Graceful handling of malformed messages
  • Timestamp Processing: Converts timestamps to database format

Database Integration

  • Table Structure: Dedicated tables for each bot type
  • Relationship Linking: Connects related cases
  • Data Validation: Ensures data integrity
  • Backup Support: Includes in regular database backups

Integration

Works with:

  • Moderation: Unified case viewing and management
  • Reports: Enhanced user history
  • Audit Logs: Complete moderation audit trails

Best Practices

  1. Server Selection: Only enable on servers using integrated bots
  2. Permission Setup: Ensure bot can read target channels
  3. Data Verification: Regularly audit scraped data accuracy
  4. Backup Strategy: Include scraped data in backups

Troubleshooting

  • Missing Cases: Check channel permissions
  • Parsing Errors: Verify bot message format hasn’t changed
  • Duplicate Cases: Review duplicate detection logic
  • Performance: Monitor database insertion performance