0

在编写了 REST api 和 TwiML 应用程序一段时间后,我一直在尝试在 REST api 中编写一个顺序拨号应用程序,但是在经历了很多错误和问题之后,我被难住了。我在 TwiML 中编写了一个顺序拨号应用程序,但在 REST 中编写相同的应用程序是地狱......

我一直在尝试在 REST api 中做的是创建这个程序,其中一个人 A 有一个人列表 BCDEFGHIJK,人 A 想向一个 twilio 号码发送短信,然后 Twilio 会使用 REST api 调用一个人列表一个,直到其中一个接起。过程是这样的:

    1) Person A text's Twilio number
    2) Twilio gathers its array of phone numbers of persons B C D E F G H I J K
    3) Twilio's REST api calls person B
    4) Person B does **NOT** pick up (busy or doesn't pick up so answering machine) so then REST api calls person C next
    5) Person C does **NOT** pick up (busy or doesn't pick up so answering machine) so then the REST api calls person D
    6) Person D **DOES** pick up and twilio **reads the SMS sent by person A and then hangs up**
    7) application ends, so person E F G H I J K are not called because one person picked up so **not everyone** had to be called

我试图在 REST api 中做到这一点,但经过数小时的尝试我已经放弃了......我唯一的问题是:这可能与REST api吗?如果是这样怎么办?

我已经能够制作一个应用程序,我在其中向 twilio 发送短信,twilio 使用 REST api 回调并读取我的短信,但顺序拨号是如此不同......

我曾尝试与 Twilio 工作人员交谈,但我无法找到一种方法来使顺序调用工作,因为我不知道还能做什么......我尝试过使用 StatusCallback 等等,但现在我出主意。

4

1 回答 1

4

是的,有可能。

以下是需要做的事情的大致轮廓:

短信脚本

这就是您将 Twilio 号码的 SMS 指向的内容。它应该获取Body参数并将其存储到数据库中(因为您需要以某种方式将其保存在多个请求中)。它还需要获取应该调用的号码列表(可能来自数据库或通用配置文件)。

存储正文后,SMS 脚本应该向列表中的第一个号码发起呼叫,其中“重拨脚本”为StatusCallback,“消息”脚本为Url

给 the和 the添加一个id参数(使用查询字符串应该没问题),这样那些脚本就可以识别应该播放的消息。StatusCallbackUrl

重拨脚本

这处理通过列表工作,它应该检查CallStatus呼叫是否被应答。如果是,那么只需退出。如果不是,它会遍历数字列表(同样,从数据库或通用配置文件中提取),直到它与To列表中的参数匹配。

一旦匹配成功,脚本应该启动对列表中下一个号码的调用,再次使用“重拨脚本”作为StatusCallback,并使用“消息”脚本将消息作为参数Url传递给两个脚本。id

消息脚本

这是 Twilio 在呼叫被应答时请求的脚本,它只是检查id参数,从数据库中提取消息并读取它。

请注意,不必使用数据库,您可以传递完整的消息而不是 id。您还可以将消息脚本替换为Twimlet

于 2011-09-09T14:30:04.440 回答