我的应用程序内置在 reactjs 中。twilio 视频 javascript sdk 有很多“操作方法”,但对于使用 reactjs 构建的人来说却很少。
我的问题是这样的:我已经成功实现了我的用户对房间的构建和订阅。这是过程:
用户 1 登陆用户 2 的个人资料,并决定拨打电话。他按下“通话”按钮。
服务器在数据库中创建一个调用,用他的信息联系 Twilio,并向他返回一个 twilio 令牌。
然后他连接到房间,将他的本地音频和视频轨道发布到它,并等待被邀请者
用户 2 的浏览器通过来自 firebase 消息的推送通知收到呼叫。该消息中的服务器向他发送了一个 Twilio 令牌,以及有关呼叫和房间的信息。他的浏览器打开了“来电”页面。
假设他回答,他开始发布自己的本地音频和视频轨道,并连接到房间。
另一个参与者的视频和音频轨道附加到一对指向 dom 上特定 div 的 react refs。
视频通话正在进行中。
这一切运作良好。但是,我的问题是此时如何访问实际的房间对象?具体来说,我想根据用户的输入静音音频和视频轨道。Twilio 库中有启用和禁用方法,但如何进入轨道?我在网上找到的房间创建和设置模板在初始设置后不会产生可以修改的对象。我从 let room = Video.connect... 得到的只是一个承诺。如果我再次使用 Video.connect 方法,这似乎有点矫枉过正——当我已经有一个房间在进行中时,为什么还要用我的令牌再次联系 Twilio——并且在我尝试时似乎不起作用。
任何帮助,将不胜感激!