我试图为我的机器人发出ping命令,这是我的代码
client.on('message', message => {
if (message.content === '+ping') {
message.channel.send(`?Latency is ${m.createdTimestamp - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
}
});
但是我最终遇到以下错误
C:\Users\ujjwa\Desktop\All Disc\Test all\index.js:236
message.channel.send(`?Latency is ${m.createdTimestamp - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
^
ReferenceError: m is not defined
at Client.<anonymous> (C:\Users\lol\Desktop\All Disc\Test all\index.js:236:42)
at Client.emit (events.js:327:22)
at MessageCreateAction.handle (C:\Users\lol\Desktop\All Disc\Test all\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
at Object.module.exports [as MESSAGE_CREATE] (C:\Users\lol\Desktop\All Disc\Test all\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
at WebSocketManager.handlePacket (C:\Users\lol\Desktop\All Disc\Test all\node_modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
at WebSocketShard.onPacket (C:\Users\lol\Desktop\All Disc\Test all\node_modules\discord.js\src\client\websocket\WebSocketShard.js:436:22)
at WebSocketShard.onMessage (C:\Users\lol\Desktop\All Disc\Test all\node_modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
at WebSocket.onMessage (C:\Users\lol\Desktop\All Disc\Test all\node_modules\ws\lib\event-target.js:125:16)
at WebSocket.emit (events.js:315:20)
at Receiver.receiverOnMessage (C:\Users\lol\Desktop\All Disc\Test all\node_modules\ws\lib\websocket.js:797:20)
你能帮我吗?
答案 0 :(得分:3)
您需要使用Date.now() - message.createdTimestamp
来获得延迟。
client.on('message', message => {
if (message.content === '+ping') {
message.channel.send(`?Latency is ${Date.now() - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
}
});
答案 1 :(得分:0)
我用了这个
module.exports = {
name: "ping",
description: "Pinging the bot",
execute(client, message) {
message.channel.send(`?Latency is ${Date.now() - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
}
}
};
使用Date.now()-message.createdTimestamp
答案 2 :(得分:0)
我使用它作为我的 Ping 命令(抱歉,如果我犯了任何错误,我在过去 2 天内刚刚学习了 JavaScript)
module.exports={
name:'ping',
description: "Command ini digunakan untuk Ping",
execute(message, args){
message.channel.send(`?Latency is ${Date.now() - message.createdTimestamp}ms`);
}
};
答案 3 :(得分:0)
你需要使用 .then() 来获得 m:
client.on('message', message => {
if (message.content === '+ping') {
message.channel.send('pinging').then(m => {
m.edit(`?Latency is ${m.createdTimestamp - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
});
}
});
答案 4 :(得分:0)
你需要做的
client.on('message', message => {
if (message.content === '+ping') {
message.channel.send(`?Latency is ${Date.now() - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
}
});
答案 5 :(得分:-1)
client.on('message', message => {
if (message.content === prefix + 'ping') {
message.channel.send('Loading data').then (async (msg) =>{
msg.delete()
message.channel.send(`?Latency is ${msg.createdTimestamp - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`);
})
}
});
答案 6 :(得分:-1)
我使用的代码现在是日期,并且消息创建了时间戳和api ping。
module.exports = {
name: "ping",
category: "info",
description: "Get bot ping :/",
usage: "ping",
run: (client, message) => {
message.channel.send(`**:ping_pong:Latency is ${Date.now() - message.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms.:ping_pong:**`);
}
}
答案 7 :(得分:-1)
对我来说,这似乎对我有用!
module.exports = {
name: 'ping',
discription: 'discription',
execute(message, args) {
message.channel.send(`? | Latency is: **${Date.now() - message.createdTimestamp}ms.**`);
},
};