3

有谁知道为什么当 Firefox 失焦或最小化时 addstream 事件不起作用?我正在使用 jssip 3.2 库。在 chrome 中,这不会发生,并且事件回调是在 chrome 被最小化或不需要有问题的选项卡的情况下执行的。即使Firefox中带有代码的选项卡具有焦点,也可以毫无问题地触发事件。我在一个自动应答呼叫的程序中工作。当 chrome 中有来电时,用户不得为它开始收听来电者的音频做任何事情。

我在firefox中启用了相应的权限(自动音频、麦克风等)

我尝试在 about:config 中尝试不同的设置但没有成功。我曾尝试尝试不同版本的 Firefox,但均未成功。

预先感谢您的帮助。

部分代码:

<!-- ... -->
<audio id="audio_remote" autoplay="autoplay"></audio>
  <!-- ... -->

  <script>
    var remoteAudio = document.getElementById("audio_remote");

    // ...

    var callOptions = {
      mediaConstraints: { audio: true, video: false },
      rtcOfferConstraints: {
        offerToReceiveAudio: 1,
        offerToReceiveVideo: 0,
        googIPv6: false,
      },
    };

    phone.on("newRTCSession", function (e) {
      var session = e.session;

      // ...

      if (session.direction === "incoming") {
        session.answer(callOptions);

        // this event is not fired in firefox non-focused or minimized 
        session.connection.addEventListener("addstream", function (e) {
          audio_remote.src = window.URL.createObjectURL(e.stream);
          audio_remote.play();
          console.log("addstream ok!");
        });
      }

      // ...
    });
  </script>
4

0 回答 0