python - 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>
如果有人可以帮助我,我将不胜感激,被困了好几天!
解决方案
您是否添加了 SocketIO 配置?您应该在credentials.yml
文件中添加以下内容(它将在您的 Docket 容器中,而不是在git
存储库中)。
socketio:
user_message_evt: user_uttered
bot_message_evt: bot_uttered
session_persistence: true # or false
您可以在网络频道的 RASA 文档中查看更多详细信息。
推荐阅读
- react-native - 项目内的 React Native 本机基础选择器未正确对齐
- docker - 通过在 docker-compose 中提供用户凭据,从私有仓库中提取 docker 镜像
- r - 获取第一个非 NA 值的索引
- xcode - 为什么不调用我的 UITextField 委托方法?
- jwt - 解码从授权码收到的 JWT 令牌
- java - 使用 foreach 迭代集合对象
- visual-studio-2017 - Visual Studio 2017 不签署程序集
- python - 如何在 Python/Linux 中更快地加载和重新采样 (MP3) 音频文件?
- python - 如何理解这个相等和赋值语句的逻辑?
- php - 如何从预订页面获取 ID 并在针对该 ID 提交表单后将其显示给管理员?