Files
broccolini-bot/FEATURES.md
indifferentketchup 8636cca52e test
2026-04-07 01:56:01 -05:00

3.5 KiB
Raw Blame History

Broccolini Bot Feature Overview

Broccolini Bot is a Discord support bot that turns Gmail emails and Discord messages into trackable support tickets stored in MongoDB.


Email & Discord Ticketing

Summary: Connects Gmail and Discord so each support conversation becomes a ticket channel or thread.

  • Email → Discord ticket channels or threads (with overflow categories)
  • Discord-only tickets created from panels or context menus
  • Full Gmail reply threading for email-sourced tickets
  • Ticket transcripts saved to a Discord channel and optionally emailed on close

Ticket Workflow & Management

Summary: Provides a structured workflow for creating, handling, and closing tickets.

  • Claim / unclaim with claimer emojis in channel names
  • Priority levels (low / normal / medium / high) with emojis
  • Escalation and de-escalation between tiered support categories
  • Close confirmation, force-close, and automatic transcript generation
  • Auto-close, inactivity reminders, and auto-unclaim (configurable)
  • Per-ticket limits and global ticket limits to prevent abuse

Discord UI: Panels, Buttons & Modals

Summary: Uses rich Discord components so users and staff interact with tickets through buttons and forms.

  • /panel command to post “Open ticket” panels
  • Ticket creation via modal (email, game, description fields)
  • Ticket action row with Close, Claim, Escalate, and De-escalate buttons
  • Thread-style or category-channel tickets, or panels that offer both
  • /setup wizard to guide initial panel and category configuration

Staff Tools & Notifications

Summary: Gives staff better visibility and control over tickets and workloads.

  • /add and /remove to manage who can see a ticket
  • /transfer, /move, /topic, /stats, /search, /backup, /export
  • /accountinfo for account lookups by email or Discord user
  • Per-staff notification channels with reply alerts and unclaimed digests
  • Optional DM reply alerts via /notifydm
  • Optional private staff-only threads attached to ticket channels

Tags, Saved Responses & Variables

Summary: Speeds up replies and keeps tickets categorized.

  • /tag command with predefined ticket tags and emojis
  • /response commands to create, edit, send, delete, and list saved replies
  • Template variables (ticket, staff, server, date/time, hours, etc.) in responses
  • Tag usage and response usage tracked in MongoDB

Automation, Patterns & Surge Detection

Summary: Monitors ticket volume and chat activity to warn staff about problems early.

  • Background jobs for auto-close, reminders, and auto-unclaim
  • Pattern detection for repeat users, games, tags, escalations, and stale tickets
  • Surge detection for high ticket volume, backlogs, and no-staff situations
  • Chat alerts for busy channels or messages without staff replies

Settings UI, Logging, API & Configuration

Summary: Provides a web UI plus environment-based configuration and optional integrations.

  • Optional Broccolini settings web UI (settings-site/) to edit Discord channels, categories, Gmail credentials, ticket behavior, surge alerts, pattern thresholds, appearance, and advanced options without touching .env
  • All behavior still backed by .env and config.js (messages, colors, timeouts, limits)
  • Dedicated Discord channels for transcripts, logs, security, automation, and Gmail polling
  • Optional HTTP API under /api with token-based auth
  • Healthcheck endpoint (GET /) for Docker and load balancers