我正在使用Twilio客户端Javascript SDK,并希望将传入 call 连接到MediaStream。
目前,我的Twilio客户仅接受这样的来电:
Twilio.Device.incoming(function (conn) {
conn.accept();
});
下面的代码段显示了如何从浏览器获取麦克风并将其用作媒体流:
navigator.getUserMedia({
audio: true
}, (stream) => {
this._log('Microphone connected.');
return this.connectMediaStream(stream).then(resolve);
}, (error) => {
});
connectMediaStream(stream) {
return new Promise((resolve, reject) => {
const isMediaStream = Object.prototype.toString.call(stream) === '[object MediaStream]';
if (!isMediaStream) {
const error = new TypeError('Argument must be a `MediaStream` object.')
现在,我不想使用麦克风,而是要使用来电连接。我该如何实现?
最佳答案
我无法编辑第一个答案,因此我将在此处添加:
在1.3中,您可以访问:
本地流的
connection.mediaStream.stream
和connection.mediaStream._remoteStream
从1.4.14(我写的是最新版本)开始,现在有更方便(并有文档证明)的getter方法:
connection.getLocalStream()
connection.getRemoteStream()
请注意,您在这些流上执行的任何修改它们的操作都将与该调用进行交互(可能会产生负面影响),除非您确定自己知道自己在做什么,否则应避免这样做。 :)
关于javascript - 我可以将Twilio设备与Java中的MediaStream连接吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42774037/