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

时间:2018-11-08 09:52:35

标签: twilio twiml twilio-twiml

我有一个来自来话呼叫的Twilio自动驾驶仪任务,该任务执行问候,然后问一个问题,然后重定向到名为“ 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>

不幸的是,我没有听到此回应,而是得到了标准的“发生错误”语音消息。

我尝试了几种不同的版本,甚至调用了托管在我自己的公共Web服务器上的xml文件,也遇到了同样的问题。还尝试了拨号动词,仍然看到此问题。

在看到类似Twilio autopilot doesnt say what it is supposed to say

的类似帖子之后,我觉得可能已经错过了一些配置

非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

当我将TwiML Bin与具有示例的Task关联时,我能够使TwiML Bin与类似的JSON一起使用。

例如,有一个呼叫打入您的Autopilot助手,并最初触发 hello_world 的Assistant Initiation Task,您在其中使用侦听操作修改了预定义的JSON。

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

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

答案 1 :(得分:0)

对于相同的任务,我使用相同的JSON来完成任务。 但是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的“友好名称”)。 twiMLbin中有一个按钮可以直接将其粘贴粘贴。

对我来说有效。否则,请提供更多元素

-您是否有与自动驾驶任务相关的查询?如果您的任务没有任何查询,则该模型将拒绝构建(您可以在“自然语言路由器” /选项卡“构建模型”屏幕中进行检查。)

-您确定没有触发您想到的任务的冲突查询(通常是简短查询,它们“吸血”了其他意图)。为此,请提供自动驾驶助手的查询日志(查询任务)。

nb:我确认philnash所说的:您应该真正尝试拨打电话。我还通过Twilio模拟器体验了一些“毛病”。