Skip to main content

Flag Reaction Translations

React with a country flag emoji (🇪🇸 🇫🇷 🇯🇵, etc.) on any message to translate it into that language. This classic method is optional and highly configurable.

For a cleaner, private experience, see the Translate context menu (ephemeral — only you see the result).


How it works​

sequenceDiagram
participant U as User
participant D as Discord
participant H as HephBot
participant E as Translation Engine

U->>D: Adds flag reaction to message
D->>H: reaction event
H->>H: Map flag to language
H->>E: Translate message content
E-->>H: Translated text
H->>D: Post per delivery mode
Note over H,D: Optional: remove user's flag reaction
  1. A user adds a supported flag emoji reaction
  2. HephBot maps the flag to a target language
  3. Message content (and optionally embeds) is translated
  4. The translation is delivered based on your server's delivery mode
  5. The bot may remove the user's flag reaction and auto-delete the translation after a delay

Supported content​

  • Standard message text
  • Embed descriptions and fields (when embed translation is enabled)
  • Slash-command bot messages (optional — off by default)
  • Multi-flag sessions: multiple flags on one message can combine into one translation thread

Delivery modes​

Configure under Dashboard → Customization → Flag reactions.

ModeBehaviorBest for
Reply (default)Bot replies under the original message; may auto-delete after a timeoutBusy channels where translations should fade
ThreadOpens a thread on the message with the translationKeeping the main channel clean while preserving context
ReplaceBot posts a combined message (replaces inline display)Compact layouts

Auto-delete delay​

For Reply mode, set how many seconds before the bot removes its translation (default often 30s). Set to 0 or disable auto-delete to keep translations permanently.

Keep reaction​

Choose whether the user's flag reaction stays on the message or is removed after translation.


Format modes​

ModeOutput
Default languageTranslation plus original text with a standard label
Custom templateYour template using {translated}, {original}, {original_label}
Translation onlyTranslated text without showing the original

Custom templates support text or embed display modes.


Disabling flag reactions​

Per channel​

/ignore channel:#announcements set_ignored:true

Or: Dashboard → Ignored Channels

Server-wide​

Disable the flag reaction feature flag in dashboard customization if you want only context-menu and slash translations.


Permissions​

  • Bot needs Add Reactions to sync reactions in mirrored setups
  • Bot needs Send Messages / Send Messages in Threads for delivery
  • Manage Messages if using replace mode or cleanup behaviors

Troubleshooting​

Reaction does nothing​

  • Channel may be on the ignored list (see Blocking Translations)
  • Flag emoji may not map to a supported language
  • Check Dashboard → Error Logs

Translations clutter the channel​

  • Switch delivery to Thread or promote the Translate context menu
  • Enable auto-delete with a short delay
  • Use /ignore on announcement channels

Wrong language​

  • Verify the flag maps to the intended language code
  • User's /language preference does not change flag targets — flags always mean the flag's language

Screenshot & video placeholders​

Recommended captures for a future visual update:

  1. Flag reaction on a message → bot reply appearing below
  2. Dashboard Customization panel with delivery and format dropdowns
  3. Thread delivery mode showing a translation thread
Videos

Short screen recordings (10–20 seconds) of each delivery mode would help users compare Reply, Thread, and Replace quickly.