我如何在 !!userinfo 命令中显示服务器中的语音时间和服务器中发送的消息?
How would I show voice hours in server and messages sent in server in my !!userinfo command?
我正在尝试制作我的 userinfo 命令,您可以在其中为任何用户执行此命令,并在服务器中显示语音时间和在服务器中发送的消息
这是我的 !!userinfo 命令
const Discord = module.require("discord.js");
module.exports.run = async (bot, message, args) => {
let member = message.mentions.members.first() || message.member,
user = member.user;
let embed = new Discord.RichEmbed()
.setAuthor(message.author.username)
.setDescription("Users Info")
.setColor("#9B59B6")
.addField("Full Username:", `${message.author.username}${message.author.discriminator}`)
.addField("ID:", message.author.id)
.addField("Created at:", message.author.createdAt)
.addField("Status:", `${user.presence.status}`)
.addField("Game:", `${user.presence.game}`)
.addField("Roles", member.roles.map(r => `${r}`).join('|'), true);
message.channel.send(embed);
}
module.exports.help = {
name: "userinfo"
}
如何显示通话时间和发送的消息?我必须使用 SQL 来记录吗?
您需要 record/save 是的,可以使用 SQL 或某些本地 JSON 文件。对于语音时间,您需要收听 voiceStateUpdate event 并在用户加入和离开语音频道时保存。然后,您将计算这些时间范围之间的时间,并将其添加到该用户的语音总时长中。
对于消息,您只需收听 message event 并每次为该特定用户增加一个计数器。
我正在尝试制作我的 userinfo 命令,您可以在其中为任何用户执行此命令,并在服务器中显示语音时间和在服务器中发送的消息 这是我的 !!userinfo 命令
const Discord = module.require("discord.js");
module.exports.run = async (bot, message, args) => {
let member = message.mentions.members.first() || message.member,
user = member.user;
let embed = new Discord.RichEmbed()
.setAuthor(message.author.username)
.setDescription("Users Info")
.setColor("#9B59B6")
.addField("Full Username:", `${message.author.username}${message.author.discriminator}`)
.addField("ID:", message.author.id)
.addField("Created at:", message.author.createdAt)
.addField("Status:", `${user.presence.status}`)
.addField("Game:", `${user.presence.game}`)
.addField("Roles", member.roles.map(r => `${r}`).join('|'), true);
message.channel.send(embed);
}
module.exports.help = {
name: "userinfo"
}
如何显示通话时间和发送的消息?我必须使用 SQL 来记录吗?
您需要 record/save 是的,可以使用 SQL 或某些本地 JSON 文件。对于语音时间,您需要收听 voiceStateUpdate event 并在用户加入和离开语音频道时保存。然后,您将计算这些时间范围之间的时间,并将其添加到该用户的语音总时长中。
对于消息,您只需收听 message event 并每次为该特定用户增加一个计数器。