带有 Whatsapp 错误消息顺序的 Twilio Autopilot

问题描述

我正在使用 Twilio Autopilot + Functions 来构建聊天机器人。如果我使用 Whatsapp,如果我发送 URL,我的消息顺序就会出现问题。我认为这是因为 Whatsapp 正在处理 URL,这比下一条消息花费更多的时间。我试图建立延迟,但我发送的两条消息是在延迟之后以错误的顺序到达的。 知道如何分别发送两条消息并为 WA 处理 URL 留出时间吗? 这是我的代码

函数 1 响应:

responSEObject = {
      "actions": [
        {
          "say": `Please find information about ${shareLink}`
        },{
          "redirect": "task://anything_else"
        }
      ]
    };
return callback(null,responSEObject);

功能 2(通过 Autopilot 从功能 1 点重定向到此处)(task://anything_else)

exports.handler = function (context,event,callback) {

    let delayInMs = 5000;

    let respsoneObject = {
        "actions": [
            {
                "collect": {
                    "name": "anything_else","questions": [
                        {
                            "question": "Can I help you with anything else?","name": "need_help","type": "Twilio.YES_NO"
                        }
                    ],"on_complete": {
                        "redirect": "task://goodbye"
                    }
                }
            }
        ]
    };

    let timerUp = () => {
        return callback(null,respsoneObject);
    };

    setTimeout(timerUp,delayInMs);
};

我的问题是“我可以帮您做其他事情吗?”问题出现在共享更多信息的消息之前。不过我希望先有链接

我还尝试通过将 say 和 collect 添加到 action 数组来合并同一响应中的两条消息,结果相同。

感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...