我想在我的应用中播放Twilio录音媒体文件/ URL,我在nodejs中使用twilio-node包。
let response = new VoiceResponse();
response.dial({
callerId: process.env.TWILIO_NUMBER,
record: true
}, req.body.number);
res.type('text/xml');
res.send(response.toString());
我使用上面的示例启用了录制,并且可以正常工作,但是面临的挑战是通过提供调用SID或通过API录制SID来获取媒体文件,我没有找到任何示例来提取录制的SID或录制的媒体通过提供呼叫SID来保存文件。
let client = twilio(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN)
let callLogData = await client.calls(callSid).fetch().then(data => { return data })
我可以使用上面的示例获取呼叫日志,我尝试了Twilio文档中提到的多种方法,但是我认为该软件包与文档不兼容。我没有使用可编程的声音,而是使用Twilio直接拨打人的电话。
答案 0 :(得分:2)
步骤1:
将按照以下说明进行{strong> “获取给定呼叫的所有录音” ({>
// Download the helper library from https://www.twilio.com/docs/node/install
// Your Account Sid and Auth Token from twilio.com/console
// DANGER! This is insecure. See http://twil.io/secure
const accountSid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
const authToken = 'your_auth_token';
const client = require('twilio')(accountSid, authToken);
client.recordings
.list({callSid: 'CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', limit: 20})
.then(recordings => recordings.forEach(r => console.log(r.sid)));
第2步:
一旦有了记录ID(在上一步中为r.sid),您就可以例如 获取.mp3 以进行带有GET请求的记录
GET /2010-04-01/Accounts/ACXXXXX.../Recordings/RE557ce644e5ab84fa21cc21112e22c485.mp3
注意:
获取录音的mp3的完整URL如下所示:
https://api.twilio.com/2010-04-01/Accounts/ACXXXXX.../Recordings/RE557ce644e5ab84fa21cc21112e22c485.mp3