【问题标题】:conn.on('speaking') does not trigger for discord botconn.on('speaking') 不会触发不和谐机器人
【发布时间】:2020-02-12 19:47:21
【问题描述】:

我正在开发一个不和谐的小机器人。我试图让它做的一件事是加入一个语音频道并听那里说话的人,将音频写入文件。我认为我正在尝试的是前进的方向,但我一定做错了什么。 我有什么音频部分:

    else if(listening === true){
        const voiceChannel = client.channels.get("644587330673311788");
        log.info('listening = true');
        voiceChannel.join()
        .then(conn => {
            log.info('ready!');
            // create our voice receiver
            const receiver = conn.createReceiver();

            conn.on('speaking', (user, speaking) => {
                log.info("speaking conn up...");
                    if (speaking) {
                        log.info(`I'm listening to ${user}`);
                        //This is where the audiostream will be created/written to file
                    }
                });
            })
        .catch(console.log);
    }

这发生在client.on('message', message => { 内部,我可以看到机器人加入了正确的语音频道,然后它记录了“listening = true”,最后它记录了“准备好了!”之后什么都没有发生。

所以conn.on('speaking', (user, speaking) => { 部分肯定有问题。我尝试过的其中一件事是将speaking 换成guildMemberSpeaking,尽管这并没有什么区别。我很难找到解决方案,因为我找到的每个来源都使用这个conn.on('speaking'

任何帮助将不胜感激!

【问题讨论】:

  • 您可以尝试监听连接的debugwarnerror 事件并记录每个事件的输出。可能会帮助您缩小问题范围。

标签: javascript node.js discord.js chatbot


【解决方案1】:

在 github 上有一个未解决的问题:https://github.com/discordjs/discord.js/issues/3524

它已在 v12(尚未发布,仅在 github 上)和 11-5dev(v11 随每个补丁更新)上得到修复。

如果你想使用它,来自github:

npm install git+https://github.com/discordjs/discord.js#11.5-dev

【讨论】:

    猜你喜欢
    • 2021-08-06
    • 2018-03-20
    • 2021-01-06
    • 2020-07-03
    • 2020-09-23
    • 2021-10-30
    • 2021-08-05
    • 2021-05-27
    • 2021-07-15
    相关资源
    最近更新 更多