首页 > 解决方案 > Rasa、Botfront 和 heroku:部署后前端不起作用

问题描述

我通过创建一个 docker 镜像,将其推送并发布到 Heroku 在线部署了我的 rasa 聊天机器人。现在我的机器人在 Heroku 上运行。我想通过我的网站与这个机器人交流。我已将我的机器人 url 添加到 Botfront 小部件的 socketurl。但是,当我发送消息时,我没有收到任何回复。有谁知道我错过了什么或做错了什么?

我的脚本内容是:


      <!-- chatbot -->
      <script>
        !(function () {
          let e = document.createElement("script"),
            t = document.head || document.getElementsByTagName("head")[0];
          (e.src = "{% static 'js/chatbot.js' %}"),
            (e.async = !0),
            (e.onload = () => {
              window.WebChat.default(
                {
                  customData: { language: "en" },
                  socketUrl: "https://app-name.herokuapp.com",//not real bot url
                  // add other props here
                  // initPayload: "/greet",
                  title: "Let's talk, we are online.",
                  subtitle: "Say hi to get started.",
                },
                null
              );
            }),
            t.insertBefore(e, t.firstChild);
        })();
      </script>

如果有人可以帮助我,我将不胜感激,被困了好几天!

标签: pythondockerherokurasa

解决方案


您是否添加了 SocketIO 配置?您应该在credentials.yml文件中添加以下内容(它将在您的 Docket 容器中,而不是在git存储库中)。

socketio:
  user_message_evt: user_uttered
  bot_message_evt: bot_uttered
  session_persistence: true # or false

您可以在网络频道的 RASA 文档中查看更多详细信息。


推荐阅读