Dan*_*nov 11 bots send node.js discord.js
我没有实现一些非常简单的事情。我无法向特定频道发送消息。我浏览了有关堆栈溢出的文档和类似线程。
client.channels.get().send()
不起作用。它不是一个函数。我也不认为它是官方文档中 Channel 类的方法,但到目前为止我发现的每个线程都告诉我使用它。
我设法让机器人通过监听消息然后使用来回复消息,message.reply()
但我不想要那样。我希望我的机器人在特定频道中说些什么client.on('ready')
我错过了什么?
Gil*_*sch 24
你没有提供任何你已经测试过的代码,所以我会给你准备好的事件的代码!
client.on('ready', client => {
client.channels.get('CHANNEL ID').send('Hello here!');
})
Run Code Online (Sandbox Code Playgroud)
请注意您的频道 ID 是一个字符串。
让我知道它是否有效,谢谢!
2020 年 6 月 13 日编辑:
Discord.js 更新cache
在 get 方法之前需要频道成员。
如果您的模块是旧的,则上述方法仍然有效。我最近的解决方案可以按如下方式更改发送行。
client.channels.cache.get('CHANNEL ID').send('Hello here!')
Run Code Online (Sandbox Code Playgroud)
小智 7
对于 v12 来说,它将是以下内容:
client.on('messageCreate', message => {
client.channels.cache.get('CHANNEL ID').send('Hello here!');
})
Run Code Online (Sandbox Code Playgroud)
编辑:我将其更改为记录消息。