YouTube搜索命令可提供选项,但不会播放

时间:2018-12-25 21:34:26

标签: node.js discord.js

我几乎已经用完了我的机器人的音乐功能,只是由于错误而停止,我无法确定原因。

该命令将为我提供可供选择的选项,但是在聊天中键入这些选项并不能解决问题。控制台没有显示任何错误。

使用的模块:

const search = require("yt-search");
const ytdl = require('ytdl-core');
const opus = require('node-opus');
const opusscript = require("opusscript");

我试图用console.log来确定原因,我唯一能找到的问题就是我的CommandFile is undefined。 但是我真的不明白为什么

play.js文件已链接,当在Visual Studio Code中单击它时,它将跳到该文件。

exports.run = async(client, message, args, ops) => {

  search(args.join(' '), function(err, res) {

    if (err) return message.channel.send("Sorry something went wrong");
    let videos = res.videos.slice(0, 10);
    let resp = '';

    for (var i in videos) {
      resp += `\n**[${parseInt(i)+1}]:** ${videos[i].title}\`\n`;
    }

    resp += `\nChoose a number between 1-${videos.length}\``;

    message.channel.send(resp);

    console.log(resp);

    const filter = m => !isNaN(m.content) && m.content < videos.length1 && m.content > 0;
    const collector = message.channel.createMessageCollector(filter);

    collector.videos = videos;

    console.log(videos);

    collector.once('collect', function(m) {

      let commandFile = require('./play.js');
      commandFile.run(client, message, [this.videos[parseInt(m.content) - 1].url], ops);
    });

    console.log(commandFile);
  });

}

应该发生的是,当提供列表时,您选择的号码将迫使机器人进入语音通道并播放歌曲。

0 个答案:

没有答案