Twilio 自动驾驶切换操作不适用于 Twiml Bin

Twilio autopilot handoff action is not working with Twiml Bin

我有一个来自来电的 Twilio 自动驾驶任务,它执行问候然后问一个问题,然后重定向到一个名为 'callnumber' 的新任务。这一切都很好。

'callnumber' 任务看起来像这样

{
    "actions": [
        {
            "handoff": {
                "channel": "voice",
                "uri": "https://handler.twilio.com/twiml/TWIMLBINID"
            }
        }
    ]
}

TWIMLBINID 实际上具有来自 Twiml Bin 的正确 ID。

这是垃圾箱中的 Twiml 内容:

<Response>
    <Say>I will put you in contact with our customer care specialist.</Say>
</Response>

很遗憾,我没有听到这个回复,而是收到标准的 'an error has occurred' 语音消息。

我已经尝试了几个不同的版本,甚至调用了一个托管在我自己的 public 网络服务器上的 xml 文件并看到了同样的问题。还尝试了拨号动词,但仍然看到这个问题。

我觉得我可能错过了一些配置,在看到类似的帖子后:

非常感谢任何帮助!

当我将 TwiML Bin 与具有示例的任务相关联时,我能够使它与类似的 JSON 一起工作。

因此,例如,您的 Autopilot 助手收到一个呼叫,最初会触发 hello_world 的助手启动任务,您在其中修改了预定义的 JSON 用听动作。

{
    "actions": [
        {
            "say": "How can I help you today?"
        },
        {
            "listen": true
        }
    ]
}

然后您响应,以便执行与您的交接 JSON/TwiML Bin 关联的任务(基于您提供的示例)。如果你尝试直接调用切换任务,它会失败。

我有相同的 JSON 任务 "actions" - 看起来很完美。 但 TwiMLbin 有 2 个小差异: 1)不要忘记将 xml 标签放在 TwiLbin 中: 应该是:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Say>For this question, I will put you in contact ...</Say>
</Response>

2)我不明白你的twiMLbin怎么会有这样的超链接。通常语法是 https://handler.twilio.com/twiml/******SID****** 并且SID不能选择,我的有34个字符。 (不要使用 twiMLbin 的 "friendly name")。你在 twiMLbin 中有一个按钮可以直接复制粘贴它。

对我来说很管用。否则请提供更多元素

-您有与自动驾驶任务相关的问题吗?如果您的任务没有任何查询,模型将拒绝构建(您可以在屏幕 "natural language router" / 选项卡 "build models" 中查看)。

-您确定没有冲突的查询会触发您认为的任务之外的另一项任务(通常是短查询,它们 "vampirize" 其他意图)。为此,请提供您的自动驾驶助手的查询日志(查询与任务)。

nb:我确认 philnash 所说的:您真的应该尝试使用 phone 调用。我还使用 Twilio 模拟器体验了一些 "glitches"。