- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当用户使用新的 Discord 斜杠命令之一时,我试图从我们的 Discord 机器人向用户发送 DM。
代码如下。 Discord 文档说`interaction.member 应该是一个 Discord GuildMember,但是,下面的代码给了我以下错误:
类型错误:interaction.member.send 不是函数
我可以从数据字段调用其他本地函数,但一直无法弄清楚如何回复用户。我假设我做错了什么(根据错误),但我无法从斜杠命令回调中找出用于 DM 用户的食谱。
client.ws.on("INTERACTION_CREATE", async (interaction) => {
const command = interaction.data.name.toLowerCase();
const args = interaction.data.options;
if (command == "testing") {
client.api.interactions(interaction.id, interaction.token).callback.post({
data: {
type: 2,
data: interaction.member.send("hello").catch(console.error),
},
});
}
});
编辑:在 Jakye 的帮助下的最终解决方案。请注意,我必须使用“fetch”而不是“get”,因为 get 一直返回未定义的用户。
if (command == 'testing') {
client.users.fetch(interaction.member.user.id)
.then(user => user.send("hello").catch(console.error))
.catch(console.error);
client.api.interactions(interaction.id, interaction.token).callback.post({
data: {
type: 2,
}
});
}
最佳答案
交互数据直接来自 Discord 的 API,因此 interaction.member
将是一个对象。
member: {
user: {
username: 'Username',
public_flags: 0,
id: '0',
discriminator: '0000',
avatar: ''
},
roles: [],
premium_since: null,
permissions: '0',
pending: false,
nick: null,
mute: false,
joined_at: '2020-12-26T19:10:54.943000+00:00',
is_pending: false,
deaf: false
}
您必须手动获取该成员,方法是从缓存中获取它或从 API 中获取它。
const user = client.users.cache.get(interaction.member.user.id);
user.send("Hello").catch(console.error);
client.ws.on("INTERACTION_CREATE", async interaction => {
const guild = client.guilds.cache.get(interaction.guild_id);
const user = client.users.cache.get(interaction.member.user.id);
user.send(`hello, you used the ${interaction.data.name.toLowerCase()} command in ${guild.name}`).catch(console.error);
});
关于javascript - discord.js 发送 DM 以响应用户的斜杠命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65459079/
通过反复试验,我发现GetPixel函数接受两个参数,一个用于 X,一个用于 Y,即使用于一维图像。在 1D 图像上,第二个索引必须设置为零。 image list := [3]: {1,2,3} l
除了 Funambol 或实现 OMA DM 的库之外,您是否知道任何 OMA DM 服务器的开源实现? 最佳答案 您可能想尝试一下OMA-DM simulator由 Koneki(Eclipse 开
我想计算给定ROI的曲线下面积,如附图,我想得到13到30的绿色曲线下面积,能否通过DM脚本实现这个功能? 以前从未做过类似的事情,任何建议谢谢! 最佳答案 如果图像是标签“A”,那么您可以简单地执行
我有两个模型:论坛应用程序中的帖子和图像,其中帖子使用 dm-is-tree 以父子格式排列。到目前为止,图像是 Post 模型的一部分。由于 Post 模型变得笨拙,我需要增加更多深度来标记图像,我
全部:我想构造一个函数。返回值的类型可能有两种可能:数字或字符串。起初,我以为可以使用重载函数(参见代码)。但这个函数必须有不同类型的输入。所以下面的代码会出错。有没有可行且简单的方法来解决这个问题?
要在 SAS 中打开表,我们可以使用 DM“VT {tablename}”命令。 关闭可视窗口的等效命令是什么??? 最佳答案 嗯...这个命令将关闭可视化窗口(用你的数据替换 {libref.dat
我正在尝试抓取我的 Instagram DM(直接消息)。但是,我不知道如何自动向下滚动该列以获取向我发送消息的其他用户名。我试过了 this ,以及滚动代码listed here . 但是,两者都不
我对 Blueprint 和 Spring DM 有点困惑: 据我认为的真实情况: Spring DM 是 Spring Source 定义的框架 Blueprint 是 OSGi 联盟定义的框架 B
是否有任何程序或任何控制台脚本可以监听麦克风输入,并且当噪音超过 db 中的某个阈值时,会播放音频文件? 最佳答案 需要考虑的一件事是,当使用 sox(例如使用 rec)录制时,sox 会输出一个文本
我正在尝试为我的机器人创建一个 VA 培训部分,它应该向我发送他们要求的培训类型。但是我碰壁了,不知道从这里该往哪里走。 我在网上寻找解决方案,但没有找到适合我的解决方案 if (cmd === `$
我开始研究 osgi 的主要目的是完成我面前的任务。基本上我将能够分发基于 Web 的应用程序并单独构建整个 Web 应用程序的特定功能,这样我就可以在 A 部署具有功能 a、b、c 的 Web 应用
vbs调用插件报:ActiveX部件不能创建对象,代码:800A01AD 报错如下图: 解决方法需要两步: 第一步改注册表: HKEY_CLASSES_ROOT\VBSFile\S
我正在寻找一个非常基本的配置示例。我有一个wap设置文件,我只想使用它来配置设备。 我正在寻找具有此功能的示例的API? 最佳答案 尝试S60 Platform: OMA Client Provisi
例如,当有人私信我的机器人时,它会说“你好”或“你为什么要私信机器人......?”我用这段代码试过了: @client.event async def on_message(message: dis
为了在SI图像中进行漂移校正,如下图所示: 我写代码: number max_shift=5 image src := GetFrontImage() number sx, sy, sz src.Ge
试图让我的机器人回复私信“这是一个私信”,但没有成功,这是我的代码: @client.event async def on_message(message): if message.guild
试图让我的机器人回复私信“这是一个私信”,但没有成功,这是我的代码: @client.event async def on_message(message): if message.guild
我需要等待一段时间才能关闭 OSGI 上下文。(给一些时间来完成当前正在运行的任务)。我在 extenderProperties bean 中遇到了 shutdown.wait.time 属性。 谁能
我在向特定人员发送 PM 时遇到了一些问题。我知道如何向消息的作者发送 DM。但是,我希望尝试将 DM 直接发送给特定的人。 async run(message, args) { if (ar
按照 Heroku 网站上的说明,我安装了 Postgress.app,安装了 pg gem,安装了 data_mapper,一切都很顺利。最后,尝试安装 dm-sqlite-adapter 并得到这
我是一名优秀的程序员,十分优秀!