【问题标题】:using music in discord.js not working probably在 discord.js 中使用音乐可能不起作用
【发布时间】:2020-12-12 09:11:58
【问题描述】:

我用discord.js 制作了一个不和谐机器人并将其托管在Github Actions

在 youtube 上播放音轨时:

Queue.connection.play(ytdl(song.SongURL))

我听说您正在听到一台坏了的收音机并发出奇怪的噪音。有人可以帮忙吗?

【问题讨论】:

  • “在 GitHub Actions 上托管”是什么意思? GitHub Actions 不是托管服务。

标签: javascript node.js discord discord.js


【解决方案1】:

我想这是 Github Actions 的问题。

我对平台并不完全熟悉,但可能是动作在完全播放歌曲并离开语音频道之前就退出了。

也许正在发生的事情是连接机器人,尝试播放文件,然后您为歌曲“结束”离开频道或停止播放而拥有的任何事件侦听器永远不会执行,异步调用也不会执行播放歌曲?

这只是一个猜测,但请先尝试在本地托管并以这种方式运行。

【讨论】:

  • 当我在本地托管它时,遇到了同样的问题你能不能给我一个托管平台来尝试..
  • 你有完整的代码示例我可以快速看一下吗?只需尽可能少的代码即可重现问题。
  • 让 serverQueue = queue.get(guild.id); if(!song){ serverQueue.voiceChannel.leave(); queue.delete(guild.id);返回; } const dispatcher = serverQueue.connection.play(ytdl(song.url)).on('end', () => { serverQueue.songs.shift(); playSong(guild, serverQueue.songs[0]); } ) .on('error', () => { console.log(error)}) dispatcher.setVolumeLogarithmic(75); a代码的一部分
  • 我能想到的一些事情。首先歌曲 URL 是否正确,并且 ytdl 的响应是否按预期返回?其次,再次确保代码在退出之前完全执行。我怀疑 github 操作会过早退出代码,而不是等待执行任何操作。尝试将控制台日志放在代码的每个部分并检查哪些运行。没有更大的代码示例很难提供更多帮助。理想情况下,我需要一些我可以复制、添加我自己的 API 密钥并运行的东西。最小的东西可以重现错误,所以我可以正确检查。
猜你喜欢
  • 2020-09-23
  • 2021-09-18
  • 1970-01-01
  • 2021-07-25
  • 2022-07-09
  • 2021-05-04
  • 1970-01-01
  • 1970-01-01
  • 2020-09-30
相关资源
最近更新 更多