实例化Twilio.Call时报错:无法读取undefined的'info'属性,求正确方式
正确的Twilio.Call实例化方式
你不需要手动用new Twilio.Call()包装device.connect()的返回值——device.connect(params)本身就会返回一个Twilio Call实例,直接使用这个返回值即可。
你的错误根源在于重复实例化Call对象:Twilio.Call构造函数并不接受已有的Call实例作为参数,导致内部读取info属性时触发未定义错误。
修正后的代码
const device = new Device(token); const params = { params: { To: phone } }; // device.connect直接返回Call实例,无需额外包装 const call = device.connect(params); // 可直接调用Call实例的方法,比如监听通话事件 call.on('disconnect', () => { console.log('通话已结束'); });
补充说明
- 成功建立通话后,
device.connect()返回的call对象已具备Twilio.Call的所有方法与属性,无需二次实例化。 - 如需监听通话状态(连接中、接通、断开等),直接在返回的
call对象上绑定对应事件即可。
内容的提问来源于stack exchange,提问作者Piyush Bansal
相关产品推荐
相关产品推荐

