3.5 KiB
3.5 KiB
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.
/panelcommand 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
/setupwizard to guide initial panel and category configuration
Staff Tools & Notifications
Summary: Gives staff better visibility and control over tickets and workloads.
/addand/removeto manage who can see a ticket/transfer,/move,/topic,/stats,/search,/backup,/export/accountinfofor 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.
/tagcommand with predefined ticket tags and emojis/responsecommands 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
.envandconfig.js(messages, colors, timeouts, limits) - Dedicated Discord channels for transcripts, logs, security, automation, and Gmail polling
- Optional HTTP API under
/apiwith token-based auth - Healthcheck endpoint (
GET /) for Docker and load balancers