我需要帮助。我有代理和客户的情况。如果代理进行外拨呼叫并且客户端应答,则我的系统上有一个按钮,该按钮应将代理和客户端重定向到会议。下面的代码是我的函数,它拨打代理输入的号码。
function dialCall(num)
{
params = {"phoneNumber": num, "record":"record-from-answer", "callStatus":"call", "callerId": callerId, "caller":agent_id};
conn = Twilio.Device.connect(params);
initializeStatus('Busy');
isDialCall = true;
return conn;
}
所以问题是可以同时将来电者和被叫者安排到会议中吗?
答案 0 :(得分:2)
绝对有可能这样做。 在上面提到的代码中,Twilio.Device.connect(params)会调用与您帐户中TwiML App相关联的语音网址。
通过执行以下两项操作,此语音网址可以执行在同一会议中拨打主叫方和主叫方的功能
<Dial><Conference>
下面列出了示例代码(nodejs)
app.get("/handleOutgoingAsConference",function(i_Req,o_Res)
{
var ivrTwilRes = new twilio.TwimlResponse();
var agentNum=i_Req.query.phoneNumber;
/*read other params here */
ivrTwilRes.dial(
function(node) {
node.conference('Conference_Caller_Callee', { beep:'false' , endConferenceOnExit:'true'})
}
);
var restClient = new twilio.RestClient(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN);
restClient.calls.create(
{
url: "/justDialIntoConference",
to: agentNum,
from: "+yourCallerId",
method: "GET",
},
function(err, call)
{
if(err)
{
console.log(err.message);
}
}
);
o_Res.set('Content-Type','text/xml');
o_Res.send(ivrTwilRes.toString());
});
app.get("/justDialIntoConference",function(i_Req,o_Res)
{
var ivrTwilRes = new twilio.TwimlResponse();
ivrTwilRes.dial(
function(node) {
node.conference('Conference_Caller_Callee', { beep:'false' , endConferenceOnExit:'true'})
}
);
o_Res.set('Content-Type','text/xml');
o_Res.send(ivrTwilRes.toString());
});
你可以结合上面两个功能,为了简单起见,我把它分开了。
希望有所帮助