【问题标题】:Send a message to channel if a user switches voice channel如果用户切换语音频道,则向频道发送消息
【发布时间】:2019-01-12 05:34:25
【问题描述】:

我尝试过这种方式,但是机器人给了我一个错误:

let newUserChannel = newMember.voiceChannel 
                               ^ 
TypeError: Cannot read property 'voiceChannel' of undefined
bot.on('voiceStateUpdate', (oldMember, newMember) => {
  let newUserChannel = newMember.voiceChannel
  let oldUserChannel = oldMember.voiceChannel


  if(oldUserChannel === undefined && newUserChannel !== undefined) {

    bot.sendMessage({
           to: "475330828466126848",
           message: "User went form Channel" + oldUserChannel + "to the new" 
           + newUserChannel + "Channel"
    });

  }
})

它不起作用。

我的目标是在我为此创建的单个文本通道中记录所有语音通道切换。


var Discord = require('discord.js');
var logger = require("winston");
var auth = require("./auth.json");
// Configure logger settings
logger.remove(logger.transports.Console);
logger.add(new logger.transports.Console, {
colorize: true});
logger.level = "debug";

// Initialize Discord Bot
var bot = new Discord.Client({
token: auth.token,
autorun: true
});

bot.on("ready", function (evt) {
logger.info("Connected");
logger.info("Logged in as: ");
logger.info(bot.username + " – (" + bot.id + ")");
});

bot.on('voiceStateUpdate', (oldMember, newMember) => {
  let newUserChannel = newMember.voiceChannel
  let oldUserChannel = oldMember.voiceChannel


  if(!oldUserChannel && newUserChannel) {

    bot.channels.get('475330828466126848').send("User went form Channel" + oldUserChannel.name + "to the new" 
           + newUserChannel.name + "Channel");

  }
});

【问题讨论】:

标签: discord discord.io


【解决方案1】:

bot.sendMessage 已弃用。

试试这个:

    bot.on('voiceStateUpdate', (oldMember, newMember) => {
  let newUserChannel = newMember.voiceChannel
  let oldUserChannel = oldMember.voiceChannel


  if(!oldUserChannel && newUserChannel) {

    bot.channels.get('475330828466126848').send("User went form Channel" + oldUserChannel.name + "to the new" 
           + newUserChannel.name + "Channel");

  }
})

请在下次指定您的错误。 我使用.send 属性将您的消息发送到此频道。

【讨论】:

  • 嘿,伙计;)谢谢回答。这里还是同样的错误: let newUserChannel = newMember.voiceChannel ^ TypeError: Cannot read property 'voiceChannel' of undefined
  • 您目前使用的是什么版本的 discord.js?
  • 我在哪里看到的?我想我还没有准备好所有包含...这里我的包含 var Discord = require("discord.io"); var 记录器 = 要求(“温斯顿”); var auth = require("./auth.json");
  • 您将此问题标记为“discord.js”,但您使用的是“discord.io”。这是一个主要区别,如果您不告诉我们,我们将无法帮助您
  • 我提交了带有标签修复的编辑,以便它将显示在正确的类别中。如果您对 discord.js 有其他疑问,请记住使用正确的标签 ;)
猜你喜欢
  • 2021-02-28
  • 1970-01-01
  • 1970-01-01
  • 2021-03-24
  • 2020-04-07
  • 1970-01-01
  • 2021-08-27
  • 1970-01-01
  • 2018-12-09
相关资源
最近更新 更多