Skip to content

Discord Bot — Triggers UPDATED ​

Triggers are message-driven rules you configure from the dashboard (Dashboard → Discord → <server> → Triggers). When a message in a tracked channel matches your rule, the bot fires the action you picked — such as sending a reply in chat, direct messaging the member, running a custom command, or deleting the triggering message.

Triggers are managed per server (Discord guild). They are evaluated in order against every message in channels the bot can see; the first matching trigger whose permission and cooldown checks pass will fire.

When should it run? ​

On Discord, triggers listen for chat messages:

When should it run?Trigger ConditionConfiguration / Match Value
A message is sent in chatWhen a member sends a message in a visible channel that matches your patternChoose a match type and enter a match value

Discord event sources

Stream events (such as stream uptime, stream category changes, and stream start/end) are designed for streaming platforms (Twitch & Kick) and do not apply to Discord servers.

Match types ​

Match typeMatches when...
Exact matchthe whole message equals your value
Containsthe message contains your value
Word matchthe value appears as a whole standalone word (word-boundary)
Starts withthe message starts with your value
Ends withthe message ends with your value
Commandthe trimmed message starts with ! followed by your command name (e.g., value rules matches !rules and !rules general)
Regexa regular expression pattern matches the message

Case sensitivity & regex ​

  • By default, text matching (Exact match, Contains, Word match, Starts with, Ends with, Command) is case-insensitive. Toggle "Case sensitive" on to make the comparison literal.
  • Regex matching: Regex patterns match exactly as written (case-sensitive by default). Because lowercasing regular expression patterns would corrupt character classes (such as [A-Z]) and escape sequences (such as \S), regex triggers are always evaluated verbatim and the case-sensitive checkbox is locked on. To make a regex pattern case-insensitive, prefix it with (?i) (e.g. (?i)hello).

Permissions ​

PermissionWho fires it
EveryoneAny guild member
SubscriberServer boosters, mods, admins, and the guild owner
VIPUsers with the VIP role, mods, admins, and the guild owner
ModeratorMods, admins, and the guild owner
BroadcasterOnly the guild owner (server creator)

Response actions ​

Response actionEffect
Reply in chatPost the response text in the same channel
Send DMDM the response text to the triggering user
Run commandExecute a custom command by name (the response text is the command name, with the ! prefix stripped if present)
Delete messageDelete the triggering message (requires Manage Messages permission)

Moderation & Stream actions on Discord

The Increment counter, Timeout user, Ban user, and stream metadata actions (Update Stream Category, Update Stream Tags, Update Stream Title, Tags & Category) from the shared trigger engine are designed for streaming platforms or reserved. On Discord, to moderate a member beyond message deletion, use Discord's native moderation tools or bot moderation commands.

The Delete message action requires the bot to have the Manage Messages permission on the channel.

Variables ​

Use these placeholders in the response text — they are substituted when the trigger fires:

  • {user} / {user.name} / {user_name} — the triggering member's display name
  • {channel} — the channel name where the message was sent
  • {message} — the full triggering message content

Cooldown ​

Set a per-user cooldown in seconds. Set to 0 to disable. The cooldown key is (trigger, user, channel), so two members can fire the same trigger in parallel without blocking each other beyond their own cooldown.

Examples ​

Below are practical configuration examples for the supported response actions on Discord:

A message is sent in chat ​

Response ActionMatch Type & ValueAdditional SettingsBehavior / Example Response Text
Reply in chatContains: rules—Response text: Please check out our server rules in #rules-and-info! (Directs members asking about rules)
Send DMCommand: onboardWho can trigger: EveryoneResponse text: Welcome to the server {user}! Here is your onboarding checklist: https://discord.gg/guide (Sends private guide)
Run commandExact match: !help—Response text: guide (Executes the !guide command via !trigger.run: guide)
Delete messageRegex: (?i)discord\.gg\/(?!myvanity)—Response text: @{user} Unauthorized Discord invite links are not permitted. (Deletes invite link and posts warning)

Caching ​

Trigger lists are cached per channel for 30 seconds; dashboard edits invalidate the cache immediately, so saves propagate to the bot without waiting for the TTL.

Cross-platform ​

A trigger configured for a shared channel applies to every platform the channel is registered for. The same trigger can therefore match chat messages on Twitch, Kick, and Discord from one dashboard entry.