【问题标题】:Loop playFile discord.js循环播放文件 discord.js
【发布时间】:2019-11-22 19:59:41
【问题描述】:

Typescript/JS/D.JS 的新手,希望让 Discord 机器人无限期地循环 playFile 方法。这是我到目前为止所得到的,但我认为问题在于它试图一次播放多次。

msgObject.member.voiceChannel.join()
    .then(connection => {
        function play(){
            const dispatcher = connection.playFile('./audio.wav');
        }
        while(msgObject.guild.me.speaking === false) {
            play();
        }
    })
    .catch(console.error);

想让它一遍又一遍地播放,直到我停止它。

【问题讨论】:

    标签: node.js typescript discord.js


    【解决方案1】:

    dispatcherStreamDispatcher 的实例。根据doc,有事件被触发。 所以,你可以添加结束监听器,

    const dispatcher = connection.playFile('./audio.wav');
    dispatcher.on('end', function(){
        //do some conditionals and SEEK it to 0   
    })
    

    【讨论】:

    • msgObject.member.voiceChannel.join() .then(connection => { const dispatcher = connection.playFile('../dist/atis.wav'); dispatcher.on('end' , function(){ const dispatcher = connection.playFile('../dist/atis.wav'); }) 之后再播放一次。希望让它永远循环播放。我错过了什么?
    • 嘿,当我这样做时,音频似乎明显滞后,有什么提示吗?
    • 你应该销毁当前的调度器。并创建一个新的调度器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    • 1970-01-01
    • 1970-01-01
    • 2015-08-15
    • 2021-09-09
    • 1970-01-01
    相关资源
    最近更新 更多