【问题标题】:Drop the first call and dial again using Twilio PHP for ringless voicemail使用 Twilio PHP 挂断第一个呼叫并再次拨打无响铃语音邮件
【发布时间】:2017-10-02 21:38:08
【问题描述】:

我阅读了以下Twilio PHP API docs并成功

我继续阅读有关无响铃语音邮件stackoverflow 的信息,它基于拨打一个号码,然后立即再次从同一号码拨打该号码,然后挂断第一个电话,这会将第二个电话直接发送到语音邮件

如何在下面的 try catch 中做到这一点:

try {
    // Initiate a new outbound call
    $call = $client->account->calls->create(
        // Step 4: Change the 'To' number below to whatever number you'd like 
        // to call.
        "+15558675309",

        // Step 5: Change the 'From' number below to be a valid Twilio number 
        // that you've purchased or verified with Twilio.
        "+15017250604",

        // Step 6: Set the URL Twilio will request when the call is answered.
        array("url" => "http://demo.twilio.com/welcome/voice/")
    );
    echo "Started call: " . $call->sid;
} catch (Exception $e) {
    echo "Error: " . $e->getMessage();
}

我试图抛出一个异常 - throw new Exception('something');

我已经尝试添加 goto secondCall;在 $call->sid 之后;其次是 secondCall:再次使用 try catch

【问题讨论】:

    标签: twilio-php voicemail


    【解决方案1】:

    我不相信这会一直奏效,而且您显然会面临其中一个电话接通然后立即挂断的风险,这对您呼叫的任何人来说都会很烦人。

    无论如何,这将是我的方法。

    发起第一次调用并指定StatusCallbackEvent 在调用为initiated 时触发(您也可以选择在ringing 上触发另一个)。将此 POST 发送到服务器上的第二个呼叫处理脚本。

    配置该脚本以终止第一个呼叫并在收到回叫后启动第二个呼叫,以说明第一个呼叫已启动,或者当第一个呼叫响铃时,如果您不在乎惹恼您试图打扰的人打电话。

    如果您使用发起的回调,您可能需要尝试超时,因为呼叫建立时间可能会有很大差异,但我不知道网络如何决定何时路由到语音邮件,所以您可能不会。

    【讨论】:

    • 如何终止第一次通话?你能分享一个例子吗?提前致谢
    • 您阅读说明了吗?都在里面……twilio.com/docs/api/voice/…
    • 感谢您的链接,我尝试了“已取消”和“已完成”这两种方法终止了通话,但我无法再次通话 - 尝试 {$call = $client ->calls("CA9fa06d049c89efb3dc6a2b907f212754")->update(array("status" => "canceled"));echo $call->direction. “呼叫号码:”。 $call->sid; - 当我尝试使用振铃或排队状态时,响应为无效状态
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-20
    相关资源
    最近更新 更多