Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 频道中的人时计数_Javascript_Discord.js - Fatal编程技术网

Javascript 频道中的人时计数

Javascript 频道中的人时计数,javascript,discord.js,Javascript,Discord.js,我的代码不计算一个人在语音频道的时间。 这是我的discord服务器,运行js和sqlite。我试过的都是那个密码 module.exports.run = async(bot, message, args) => { bot.on('voiceStateUpdate', (oldMember, newMember) => { let newUserChannel = newMember.voiceChannel; let oldUserChannel = old

我的代码不计算一个人在语音频道的时间。
这是我的discord服务器,运行js和sqlite。我试过的都是那个密码

module.exports.run = async(bot, message, args) => {
  bot.on('voiceStateUpdate', (oldMember, newMember) => {
    let newUserChannel = newMember.voiceChannel;
    let oldUserChannel = oldMember.voiceChannel;

    if (oldUserChannel === undefined && newUserChannel !== undefined) {
      let totalSeconds = (newUserChannel.uptime / 1000);
      let days = Math.floor(totalSeconds / 86400);
      let hours = Math.floor(totalSeconds / 3600);
      totalSeconds %= 3600;
      let minutes = Math.floor(totalSeconds / 60);
      let seconds = totalSeconds % 60;
      let uptime = `${days} days, ${hours} hours, ${minutes} minutes and ${seconds} seconds`;
      console.log(uptime);
      console.log("hi");
    } else if (newUserChannel === undefined) {
      console.log("bye");
    }
  });
}

我希望它能计算每个用户在语音频道上的时间,并将其发送到数据库。

不幸的是,
.uptime
不是
.voiceChannel
的属性

在浏览了一段时间的文档之后,我看不到一种方法来查看它们在一个频道中已经呆了多长时间

我的解决方案是存储他们加入频道的时间,然后从他们离开的时间中减去

希望我能帮忙

资料来源: