如何使用 Twilio API 创建转发来电的 Twilio 函数(或任何其他 Twilio 内置服务)?

How to use Twilio API to create a Twilio Function (or any other Twilio built-in service) that forwards incoming calls?

在我的应用中,用户会看到一个 Twilio 数字列表。

我只是想让用户能够为每个号码指定一个“转接号码”,我的应用程序会调用 Twilio API 来正确设置它。

我明白我可以给每个Twilio号一个webhook,这returnsTwiML可以方便转发。

但是因为呼叫转移是一个非常基本的功能(应用程序不需要配置除此之外的任何东西),我在想,Twilio 必须为我内置一些东西,这样我就不必主持了这样的 webhook 仅用于呼叫转移?

所以我查看了文档并发现:

  1. TwiML bins:直接托管在 Twilio 中的 TwiML 片段 – 但只能由控制台创建,不能 API,对我的场景没用。

  2. Twilio Studio:基本上是他们的 IVR 构建器。似乎有 API 访问权限。但是我只需要基本的转发并且对呼叫流程等的使用为零,所以这似乎完全过分了?

  3. Twilio 函数:这似乎是我想要的。 Twilio 托管函数不需要自托管 webhook。它甚至在控制台中具有用于呼叫转移的内置模板。但是我如何通过 API 以编程方式创建和更新这些,以便我可以传递要转发的号码?从我在运行时 API 中看到的情况来看,函数可以 created/updated 只有基本的 name/sid 属性,所以它们本质上是空函数?我确实看到了 FunctionVersionContent API 但它似乎是只读的?

我现在迷路了。在 Twilio 中是否有一个 API 我可以调用以在 Twilio 号码上设置基本的呼叫转移,这一切都在 Twilio 方面处理,基本上任何 phone 服务的客户都提供的功能?

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

有多种方法可以使用 Twilio API 转发调用! API 的优点在于您可以根据自己的意愿自定义解决方案。我建议查看 setting up call forwarding that references Studio, TwiML Bins, Webhooks, and Functions, this docs page on call forwarding with Studio, this blog post on call forwarding with Studio.

您也可以通过 Twilio Serverless Toolkit 更新 Twilio 函数!让我知道这是否有帮助!

从 Twilio 支持中找出答案。这可以通过使用 TwiML 容器或 Twilio 函数的查询参数来完成。

即使 TwilML bin 不能 created/edited 和 API,每个 bin 都有一个 URL 可以用作 webhook。所以像这样定义一个 bin:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Dial>{{forwardTo}}</Dial>
</Response>

然后更新 VoiceUrl 以使用 https://url.to.bin?forwardTo=e164number

只有在与 TwiML bin 相同的帐户中提供数字时,这才有效。如果号码是在子账户中提供的,我们可以改用 public Twilio 函数。