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
- A user adds a supported flag emoji reaction
- HephBot maps the flag to a target language
- Message content (and optionally embeds) is translated
- The translation is delivered based on your server's delivery mode
- 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.
| Mode | Behavior | Best for |
|---|---|---|
| Reply (default) | Bot replies under the original message; may auto-delete after a timeout | Busy channels where translations should fade |
| Thread | Opens a thread on the message with the translation | Keeping the main channel clean while preserving context |
| Replace | Bot 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​
| Mode | Output |
|---|---|
| Default language | Translation plus original text with a standard label |
| Custom template | Your template using {translated}, {original}, {original_label} |
| Translation only | Translated 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
/ignoreon announcement channels
Wrong language​
- Verify the flag maps to the intended language code
- User's
/languagepreference does not change flag targets — flags always mean the flag's language
Screenshot & video placeholders​
Recommended captures for a future visual update:
- Flag reaction on a message → bot reply appearing below
- Dashboard Customization panel with delivery and format dropdowns
- Thread delivery mode showing a translation thread
Short screen recordings (10–20 seconds) of each delivery mode would help users compare Reply, Thread, and Replace quickly.