启动服务器时如何在 discord.js 中调用 client.on(..) 函数
Posted
技术标签:
【中文标题】启动服务器时如何在 discord.js 中调用 client.on(..) 函数【英文标题】:How to invoke client.on(..) function in discord.js when I start my server 【发布时间】:2021-07-27 03:53:08 【问题描述】:目标:每当我启动服务器时,如何在 client.on("message", message =>...) 函数中使用任何给定字符串发出事件。 一种解决方法是在集成了此机器人的通道上键入“测试”,然后侦听在上述方法中发出的函数。
在一个不和谐的机器人上工作,想知道如何使用如下命令调用 client.on(..) 函数调用:
client.on("message", "test");
我使用 npm start 运行的 server.js 文件如下:
client.once("ready", () =>
//some code
);
client.login(discord_token); // starts the bot up
client.on("message", message => // runs whenever a message is sent
//message.content
var textMessage = message.content;
textMessage = textMessage.toLowerCase();
if (textMessage === "test".toLocaleLowerCase())
//some code
编辑:代码运行时出现以下错误
UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_TYPE]: The "listener" argument must be of type function. Received type string ('test')
at checkListener (events.js:111:11)
【问题讨论】:
您的代码不起作用吗?因为你的代码在我看来很好。 您能否更具体地说明您想要发出哪个事件+您想要传递什么信息?你的目标是什么? 【参考方案1】:您可以在client.on("ready")
中发送消息,以便它尽快发送您的命令。例如:
client.once("ready", () =>
// vv id of the channel you want to test in
client.channels.fetch("id").then(channel =>
channel.send("your message here")
)
)
【讨论】:
谢谢你,这完全符合我的要求!要获得频道 ID,我必须: 在不和谐中进入开发人员模式。右键单击服务器>频道以获取“频道”ID 没问题!如果这是您问题的答案,您能否通过点击答案旁边的复选标记 (✓) 将其标记为答案。谢谢!以上是关于启动服务器时如何在 discord.js 中调用 client.on(..) 函数的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 discord.js 调用 SubCommand 的选项? (v13)
如何从 discord.js 中的 JSON 对象中检索消息作为对象?
如何在 index.js [机器人的启动文件] 中创建一个 discord.js 命令,该命令在发送包含“hi”的消息时删除该消息
使用 Discord.js,如何在触发 webhook 时触发机器人?