Twilio自动驾驶机器人-从whatsapp接收当前位置

时间:2020-04-30 14:48:50

标签: twilio twilio-api twilio-twiml twilio-programmable-chat

我正在创建一个whatsapp对话机器人。我正在尝试通过whatsapp接受位置。

为此,我在自动驾驶项目中创建了带有静态生成动作的任务。

{
    "actions": [
        {
            "collect": {
                "name": "collect_info",
                "questions": [
                    {
                        "question": "Please upload your location details?",
                        "name": "location_data"
                    }
                ],
                "on_complete": {
                    "redirect": "path-to-fn/locate"
                }
            }
        }
    ]
}

重定向路径指向一个nodejs函数,我在其中派生这样的值-

const location = memory.twilio.collected_data.collect_info.answers.location_data.answer;

问题是,当我提供当前位置时,在whatsapp上,机器人在这种情况下未给出任何响应。看来,“收集”不接受输入(whatsapp中的当前位置)。但是,如果我提供任何其他输入(如文本或图像),则照常调用重定向'fn'。

我想知道,我们如何在自动驾驶仪静态任务中提取位置?

请注意,通过Twiml,我找到了一种接受位置信息的方法[https://www.twilio.com/blog/glorious-food],但是自动驾驶仪的任务/操作方式不起作用。

编辑。 也将Debug结果粘贴到此处- 出现错误-11200 每当我上传自己的位置信息时,似乎Twilio都会将带有“纬度和经度”参数的请求转发给机器人。但是漫游器会响应“缺少/无效参数”错误。

{
    "code": 20001,
    "status": 400,
    "message": "Missing/Invalid Parameters"
}

是吗,twilio autpilot目前不支持位置?如果是,有人可以建议采用其他任何方法来实现这一点。 我想知道,我们如何在自动驾驶仪静态任务中提取位置?

1 个答案:

答案 0 :(得分:0)

我也刚刚遇到了这个问题,我的猜测是twilio autopilot还不支持位置共享,我还检查了一下,whatsapp确实没有在发布请求的Body字段中发布任何内容,这可能是autopilot的原因无法解码要运行的任务。您可以在其中找到解决方案或至少可以解决的地方