php - 如果在 Twilio 中未接听号码,如何录制语音邮件?

标签 php twilio twilio-api twilio-php

我在一个 PHP 项目中使用 Twilio,目前我可以使用它的 API 调用电话和发送短信,如下所示:

        $client = new \Services_Twilio($AccountSid, $AuthToken);
        try {
            // Initiate a new outbound call
            $call = $client->account->calls->create(
                "<From Number>",
                $input['phone'],
                array("url" => "http://demo.twilio.com/welcome/voice/")
            );
            //echo "Started call: " . $call->sid;
            \Session::flash("success","Calling to ". $input['phone'] ."");
        }

但是现在客户想要在没有接听电话的情况下发送语音消息。

最佳答案

Twilio 开发人员布道者在这里。

这就是它的工作原理。当有人调用您的 Twilio 号码时,Twilio 将调用 HTTP request, a webhook , 到您在 number admin in your Twilio console 中设置的 URL为您的电话号码。

该 URL 需要响应一些 TwiML ,这只是一些 XML 标记,用于告诉 Twilio 如何处理该调用。

听起来,在您的情况下,您想调用自己的号码,并在一段时间后接收消息而不是继续响铃。为此,您将需要两个端点。第一个应该进行拨号,第二个是我们将调用重定向到语音邮件后重定向的位置。

所以,第一个端点 TwiML 应该看起来有点像这样,使用 <Dial> 转接调用:

<Response>
  <Dial timeout="30" action="/voicemail.php">
    <Number>YOUR_PHONE_NUMBER</Number>
  </Dial>
</Response>

我们使用 timeout attribute设置您希望电话响铃的时间。您可以将其设置在 5 到 600 秒之间。 action属性是我们在超时完成后将调用定向到的端点。然后,该端点将读取调用者一条消息,告诉他们使用 <Say> 留言。对于文本到语音,然后 <Record> 消息。
<Response>
  <Say voice="alice">Your call could not be answered at the moment. Please leave a message.</Say>
  <Record action="/hangup.php"/>
</Response>

我在 <Record> 中添加了一项额外操作挂断电话的标签。看起来像这样:
<Response>
  <Hangup/>
</Response>
<Record> 还可以使用其他属性。 .最重要的是, recordingStatusCallback attribute获取一个 URL,当有新录音时,您的应用程序将在该 URL 上收到通知。

如需更深入地了解此内容,请查看 guide on recording phone calls in PHP .

让我知道这是否有帮助。

关于php - 如果在 Twilio 中未接听号码,如何录制语音邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44530431/

相关文章:

php - 从 PHP worker 到 Python 线程

php - 插入枚举数据类型列的查询.. 从选定的复选框中获取值

javascript - 尝试将 Twilio 与 Meteor 一起使用,ReferenceError : Twilio is not defined

azure - 从 Azure Functions v2 配置 Twilio SMS

php - 包含双引号值的输入字段

php - 如何使用 MySQL PHP 以正确的方式执行多级菜单?

c# - Dial 方法中的 Twilio 操作不起作用,C#

php - Twilio 可编程语音通话 android

Twilio 出站调用 - 关键数字

ios - 特威利奥 : Sort Channel based on last message time