所以我有一个“说”命令,它不会回复用户,而只是“说”用户输入的任何内容。但我的机器人似乎希望回复用户,我认为在这种情况下这是不必要的。有没有一种方法可以结束交互,而不会让机器人超时并说发生了错误?我知道 deferReply 存在,但这只会使机器人显示“机器人正在思考...”消息。我只是不想发送任何回复。这是相关代码:
async execute(interaction) {
await interaction.channel.send(interaction.options.getString("string"));
}
Run Code Online (Sandbox Code Playgroud)
编辑:我相信最接近的方法是发送一条消息,然后立即删除它:
async execute(interaction) {
await interaction.reply({
content: `.`,
});
await interaction.deleteReply();
await interaction.channel.send(interaction.options.getString("string"));
},
Run Code Online (Sandbox Code Playgroud)
Discord 确实应该添加默默结束交互的功能,例如:
await interaction.noReply();
Run Code Online (Sandbox Code Playgroud)