Discord bot 看起来好像在播放声音,但没有声音发出

问题描述

我正在实现一个使用 ytld-core 库播放音乐的 discord 机器人,但我遇到了一个问题,即我的机器人连接到我所在的频道但不播放声音,尽管我没有控制台上的错误。我的操作系统上安装了 ffmpeg,也安装了 opusscript。

这是我的代码

const ytdl = require('ytdl-core');

const PREFIX = "!";

let vol = 5;

let dispatcher;

let servers = {};

module.exports = (client,message) => {

    let args = message.content.substring(PREFIX.length).split(" ");

    let args2 = message.content.slice(PREFIX.length).trim().split(/ +/g);

    console.log(args2);

    switch(args[0]){

        case 'play':

            play(args2[1],message);

            break;

    }
       
}

let play = (url,message) => {

    
    if(!servers[message.guild.id]) servers[message.guild.id] = {
        queue: []
    }

    let server = servers[message.guild.id];

    server.queue.push(url);

    message.member.voice.channel.join()
        .then(connection => {

            server.dispatcher = connection.play(ytdl(server.queue[0],{filter: "audioonly"}));

            server.queue.shift();

            server.dispatcher.on("end",function() {
                if(server.queue[0]) play(connection,message);
                else connection.disconnect();
            });

        }).catch(console.error);
    

    console.log(server.dispatcher);



}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...