You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何不回复斜杠命令(slash-command)即可发送公开消息?

解决方案

核心逻辑:Discord 斜杠命令交互默认会在interaction.reply()返回的消息上方展示命令调用提示,要隐藏该提示同时发送非临时公开消息,只需先完成交互响应避免超时报错,再通过频道对象独立发送公开消息即可,无需把目标内容作为斜杠命令的回复返回。

具体实现步骤(以discord.js v14为例,其他SDK逻辑一致)

  • 第一步:先完成交互响应,避免3秒超时报错,二选一即可:
    • 无耗时逻辑直接响应空临时回复
      await interaction.reply({ content: '\u200B', ephemeral: true });
      
    • 有耗时逻辑先延迟响应临时回复
      await interaction.deferReply({ ephemeral: true });
      // 此处放置你的业务处理逻辑
      
  • 第二步:通过交互绑定的频道对象发送目标公开消息,该消息完全独立于斜杠命令交互,不会附带任何命令调用提示
    await interaction.channel.send('你需要发送的公开消息内容');
    

验证说明

  • 该方案完全符合Discord交互规则,不会触发任何超时或格式报错
  • 最终发送的公开消息归属于机器人账号,所有频道成员可见,无斜杠命令调用痕迹
  • 可正常读取interaction对象内的用户入参、调用者信息等内容用于消息组装

内容的提问来源于stack exchange,提问作者BlockNoir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:36:09