Skip to content

/discordinbox

Script-provided

Registered by discord. Start it with /lua run discord — that single script boots the whole Discord integration and registers both /discord (outbound) and /discordinbox (this page, inbound).

Syntax

/discordinbox status|on|off|clear

Description

Report or control the inbound command relay: an external bot process writes authorized Discord commands to config/discord/inbox.jsonl, and this tails that file and runs each one through eq2.cmd.

Subcommands

Subcommand What
status (default) Print enabled state, the inbox file path, the current allow_commands list, the read offset/last sequence number, and the ran/refused/bad counters.
on / off Enable or disable running relayed commands; persisted to config/discord/discord.lua. Enabling prints a warning if allow_commands is empty, since that configuration refuses every command.
clear Skip the read position to the end of the inbox file, dropping any backlog without running it.

Safety

Disabled by default, allowlisted, defense in depth

  • inbox_enabled defaults to false — no relayed command runs until you /discordinbox on.
  • Every relayed command must match a prefix in allow_commands (case insensitive); an empty list refuses everything. The shipped default is { "/" }, i.e. any slash command — tighten this in config/discord/discord.lua before opening it up.
  • The relay bot itself is expected to gate by Discord user/role before it ever writes a line — the in-game allowlist is a second layer, not the only one.
  • On first run the module skips whatever is already sitting in inbox.jsonl, so turning this on never replays an old backlog.

Examples

/lua run discord
/discordinbox status
/discordinbox on
/discordinbox clear

See also

  • /discord — outbound loot announcer, same script.
  • Helper Libraries — the Discord module layout, including discord.inbox and discord.config.