首页 > 解决方案 > 如何在 Twilio Voice 通话中制作可自定义的消息

问题描述

我已经成功地用 twilio 进行了语音通话,如下所示:

  $call = $client->calls->create(
    $toNumber, $fromNumber,
    array("url" => "http://demo.twilio.com/docs/voice.xml")
  );

$toNumber当我尝试使用 TwiML 创建动态消息时,上面的代码将调用with twilio 演示消息:

$response = new TwiML();
$response->say('Votre otp est 2234', ['voice' => 'woman', 'language' => 'fr']);

$call = $client->calls->create(
    $toNumber, $fromNumber,
    $response
  );

我收到这样的错误:

[HTTP 400] 无法创建记录:需要 Url 参数。有关详细信息,请参阅http://www.twilio.com/docs/api/twiml

标签: twilio

解决方案


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

当您进行这样的呼叫时,您无法将 TwiML 发送到 Twilio。您需要发送一个 URL,Twilio 将在呼叫连接时向其发送 HTTP 请求(如在原始示例中)。因此,要修复您的代码,您应该将演示 URL 替换为您自己的 URL。

  $call = $client->calls->create(
    $toNumber, $fromNumber,
    array("url" => $YOUR_URL_HERE)
  );

该 URL 可以是您自己的应用程序,也可以是TwiML BinTwilio Function之类的东西。查看这篇文章,了解如何使用 TwiML 响应来自 Twilio 的请求

我注意到您也在为一次性密码构建一些东西。您可能有兴趣查看Authy API,该 API 可以通过调用、SMS 和应用程序实现和传递 OTP 代码


推荐阅读