首页 > 解决方案 > 用命令中的硬编码链接替换参数以播放音乐

问题描述

我在尝试使案例陈述起作用时遇到了麻烦,并且由于这是一个特定的问题,我找不到任何足够广泛的搜索词来获得任何良好的结果。

我试图让我的不和谐机器人通过在语音频道中播放特定的 youtube 视频来响应命令“倒计时”。

我以前从未在不和谐机器人中做过音乐或语音频道工作,所以我看了一个教程,但它展示了如何使用“播放”之类的命令,然后是一个 youtube 视频链接的参数。我希望该命令没有任何参数并在每次使用“倒计时”命令时播放特定的 youtube 视频。

这是我现在拥有的,在使用命令后需要一个参数。

case "countdown":
  if (!message.member.voiceChannel) {
    message.channel.sendMessage("You must be in a voice channel to initiate a countdown.");
    return;
  }
  if (!servers[message.guild.id]) servers[message.guild.id] = {
    queue: []
  };
  var server = servers[message.guild.id];

  server.queue.push(args[1]);

  if (!message.guild.voiceConnection) message.member.voiceChannel.join().then(function(connection) {
    play(connection, message);
  })
  break;

当我希望机器人播放任何所需的音乐时,这很有用,但我只想要一个与此命令关联的视频。任何帮助将不胜感激,谢谢。

标签: discord.js

解决方案


目前,您正在使用参数作为视频的 URL。而不是使用args[1]您可以只输入您的链接(如'https://www.youtube.com/watch?v=G1IbRujko-A')并忽略该参数。
请记住,如果您正在检查此命令之前的参数(例如“嘿,您需要此参数来执行命令!”),您应该忽略此参数,因为您不会使用任何参数。

希望这可以帮到你 :)


推荐阅读