Twilio:开始会议并拨出

时间:2018-11-07 21:38:41

标签: c# twilio

我继承了一个Web应用程序,该Web应用程序当前在C#和JavaScript中使用TwilioRestClient。我需要能够保留整个通话记录以及通话期间进行的所有转接。

对于呼入电话,我们立即启动会议并通过所有转接保持同一会议-这样可以使录音保持在一起并且运行良好。

对于出站呼叫,现有逻辑首先呼叫该号码,呼叫者和呼叫接收者讲话,然后可能需要执行转接。转移过程将接收者放入会议中,然后呼叫者发起对第三个号码的呼叫,最后所有三个都加入会议。这将通过3种不同的录音为通话创建3条支路。

如何召开会议并立即拨出所需的号码?可以使用单个Twiml响应来完成此操作,还是在会议开始后使用statusCallback事件来执行拨出操作?

1 个答案:

答案 0 :(得分:0)

这里是Twilio开发人员的传播者。

对于呼出电话,您可以为拨号程序返回会议的TwiML,然后再拨打另一个呼出电话,也将答录器插入会议。

您可以使用REST API中的会议参与者资源来执行此操作。使用一个REST API调用,您可以add a new participant to a conference。您可以进行此API调用,然后在同一请求中返回Conference TwiML。

在C#中看起来像这样:

    const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
    const string authToken = "your_auth_token";

    TwilioClient.Init(accountSid, authToken);

    var participant = ParticipantResource.Create(
        from: new Twilio.Types.PhoneNumber("+15017122661"),
        to: new Twilio.Types.PhoneNumber("+15017122661"),
        pathConferenceSid: CONFERENCE_FRIENDLY_NAME
    );

您可以使用友好名称(您在TwiML中的<Conference>标记之间放置的名称)来引用会议。