【问题标题】:tokbox moderating toggle off/on subscriber's video/audiotokbox moderating 关闭/打开订阅者的视频/音频
【发布时间】:2018-07-20 02:41:41
【问题描述】:

我希望能够打开/关闭会话中用户的音量。比如3人的小组面试,我应该可以在说话的时候降低一个人的声音。或者当有人发出嘶嘶声时,我应该能够缩短它并在必要时重新打开它。我查看了 Tokbox 的文档,只看到了 2 种调节方法。

(https://tokbox.com/developer/guides/moderation/js/)

首先是强制用户断开连接,

第二个是中断用户的广播(在这种情况下我无法将用户链接回广播)。

【问题讨论】:

  • Ans 究竟是什么问题?您尝试将此功能添加到的代码是什么?你这样做有什么问题?
  • 这是一个概念问题,@manik 回答了我的问题。感谢您的关注。

标签: video-streaming opentok tokbox


【解决方案1】:

这里是 TokBox 开发者宣传员。

主持人令牌不允许您将其他流静音,因为您可以通过调用 publishAudio(false) 停止发布音频或通过调用 subscribeToAudio(false) 停止订阅音频。

您可以将您的应用程序设计为发送signal,并使其在连接会话中收听特定信号的每个人都将停止发布他们的音频。您可以添加自定义逻辑,仅让部分参与者停止发布他们的音频。

假设您已连接到一个会话并且有一个对存储为sessionSession 对象的引用。您可以通过在session 对象上调用signal 方法来发送信号,如下所示:

session.signal(
  {
    data:'mutePublisher',
  },
  function(error) {
    if (error) {
      console.log("signal error ("
                   + error.name
                   + "): " + error.message);
    } else {
      console.log("signal sent.");
    }
  }
);

假设有其他参与者连接到同一会话并且也在发布音频。您可以像这样为signal 事件设置事件监听器:

session.on({
  signal: function (event) {
    if (event.data === 'mutePublisher') {
      // mute publisher
      publisher.publishAudio(false);
    }
  }

正如您在上面的代码中所见,任何监听 signal 事件并将 data 设置为 mutePublisher 的人都将停止发布他们的音频。您可以使用相同的方法为这些参与者发送另一个信号,以分别使用publisher.publishAudio(true)publisher.publishVideo(true) 开始发布音频或视频。

请记住,上面的示例会向会话中的每个人发送信号。要在会话中向specific client 发送信号,请调用Session 对象的signal() 方法并设置信号参数的to 属性。

【讨论】:

  • 完美答案!非常感谢
  • 我使用了一个适用于 publishVideo 的状态。当我切换状态时,它正在切换,但视频仍然存在。有什么问题?
  • 这对群呼有用吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-26
  • 1970-01-01
  • 2021-07-05
相关资源
最近更新 更多