问题标签 [botpress]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
228 浏览

reactjs - Botpress - 自定义组件访问会话变量

我正在使用 Botpress 来实现自定义聊天机器人解决方案。我有一个文件上传自定义组件,它必须接受文件并将其发送到我的服务器,并带有身份验证标头。我的自定义组件需要有一个 accessToken 才能调用上传 API。此令牌在聊天机器人流程中可用作会话变量。

我发现我可以通过使用操作将会话变量值从流传递到我的自定义组件。这就是我所做的:

  1. 创建了动作、内容类型和自定义组件。
  2. 将操作添加到我的流程以呈现自定义组件。
  3. 将令牌从操作传递给组件。
  4. 自定义组件将传递的数据视为未定义。如果我 console.log "this.props" 我根本看不到传递的数据。

行动:

内容类型:

文件上传 - 自定义组件

0 投票
1 回答
110 浏览

javascript - Botpress Converse API:数据库中混杂的事件顺序(事件表)

此问题仅存在于 Converse API 中,使用 Webchat 时它可以正常工作。

检查数据库时,“createdOn”中的时间戳对于按顺序发送的消息完全相同,这就是顺序混淆的原因,例如:

  • 要求用户输入
  • 渲染用户输入后应显示的消息
  • 并且仅在之后呈现用户输入

奇怪的是,在查看数据库时,列中的createdOn属性与event列中的时间戳不同createdOn,实际上是用于对事件进行排序:

活动专栏

CreatedOn 列

有什么办法可以防止这种情况发生吗?

0 投票
1 回答
100 浏览

javascript - 未捕获的 ReferenceError:未定义 BlueprintJsCore Botpress

我已将此(问题)修复应用到我退出的Botpress12.7.2现在当我从管理屏幕单击任何机器人时,我在控制台中收到以下图像错误说

在此处输入图像描述

未捕获的 ReferenceError: BlueprintJsCore 未定义在 Object.../ui-shared/dist/index.js (index.js:1) at r (index.js:1) at Module.../ui-shared/dist/index.js ( index.js:20) 在 r (index.js:1) 在 Object. (index.js:20) at r (index.js:1) at index.js:1 at Object.../ui-shared/dist/index.js (index.js:1) at webpack_require (bootstrap:78) at对象…/src/web/components/Content/CreateOrEditModal.tsx (CreateOrEditModal.tsx:19) 在 webpack_require (bootstrap:78) 在 Object…/node_modules/ts-loader/index.js!./src/web/components/对象的 webpack_require (bootstrap:78) 中的 Content/Select/Widget.tsx (Widget.tsx:81)。(Widget.tsx-exposed:1) 在 Object.../node_modules/expose-loader/index.js?BotpressContentPicker!./src/web/components/Content/Select/Widget.tsx-exposed (web.1aee3449296a502015eb.js?bace44a3ccc1637faed8 :140013) 在 webpack_require (bootstrap:78)

在终端中,加载时出现以下错误

无法完成 NLU 模型的训练 { generateMessage: false, name: 'AssertionError [ERR_ASSERTION]', code: 'ERR_ASSERTION', 实际: false, 预期: true, operator: '==' }

几秒钟后,它显示以下错误消息;

2021 年 4 月 16 日 17:25:36.018 启动器未处理拒绝 [错误,没有提供者可以成功地为 lang “en”完成请求 “/vectorize”] 堆栈跟踪错误:没有提供者可以成功地为 lang “en”完成请求 “/vectorize” ”在 RemoteLanguageProvider.queryProvider (F:\Naveed\tacbot\out\binaries\modules.cache\module__8318a8352dadf4a5611c84f04ea076b260f5e87cbfa58bfed45fc58cdf085ec6\dist\backend\language\language-provider.js:341:11) 04/13:6/202:04 启动未处理的拒绝 [错误,没有提供程序可以成功地为语言“ar”完成请求“/vectorize”] 堆栈跟踪错误:没有提供程序可以成功地为 RemoteLanguageProvider.queryProvider 的语言“ar”完成请求“/vectorize”(F:\Naveed\ tacbot\out\二进制文件\模块。cache\module__8318a8352dadf4a5611c84f04ea076b260f5e87cbfa58bfed45fc58cdf085ec6\dist\backend\language\language-provider.js:341:11) 2021 年 4 月 16 日 17:25:37.502 启动器未处理的拒绝 [错误,没有提供程序可以成功地为“/vectorenize”请求”] 堆栈跟踪错误:在 RemoteLanguageProvider.queryProvider (F:\Naveed\tacbot\out\binaries\modules.cache\module__8318a8352dadf4a5611c84f04ea076b260f5e87cbfa58bfed45fc58cdf085ec6\dist\backend\language\language\language -provider.js:341:11)\Naveed\tacbot\out\binaries\modules.cache\module__8318a8352dadf4a5611c84f04ea076b260f5e87cbfa58bfed45fc58cdf085ec6\dist\backend\language\language-provider.js:341:11)\Naveed\tacbot\out\binaries\modules.cache\module__8318a8352dadf4a5611c84f04ea076b260f5e87cbfa58bfed45fc58cdf085ec6\dist\backend\language\language-provider.js:341:11)

重现步骤:

  1. 克隆botpress版本 12.7.2
  2. go this fix cannot create content when in a modal #3175
  3. 转到 Files changed 选项卡,其中显示 13 个文件
  4. 根据每个文件中的曲目手动添加/删除对项目的更改
0 投票
1 回答
76 浏览

javascript - Postgresql 列存在,但获取关系列不存在

我有一个名为messages 的表,其中有一个名为replyDate 的列。event.state.session.lastMessages 包含一个 javascript 对象列表,如下所示: [ { eventId: '14337275205243615', incomingPreview: 'bonjour', replyConfidence: 1, replySource: 'dialogManager', replyDate: '2021-05-04T16:40:07.242Z', replyPreview: '#!builtin_single-choice-mrFFU_' } ]

我想在我的数据库中保存值replyDate,但我收到错误:

0 投票
1 回答
89 浏览

typescript - 未处理的拒绝 [TypeError,无法读取未定义的属性“拆分”]

下面给出的错误导致 BotPress v12.21.1 服务器崩溃。它没有提供有关该错误的任何其他详细信息。我在 BotPress v12.14.1 中遇到了同样的错误,但它并没有使服务器崩溃。

BotPress 服务器重新启动两次后,我收到此错误。

如果我删除使用Knex模块的代码,此错误将得到解决。

如果我关闭sendUsageStats也可以解决。

但是,两者都是业务需求的一部分,我不能同时使用这两种解决方法。请帮我解决这个问题。

0 投票
0 回答
20 浏览

botpress - 在botpress中重新打开模拟器后无法再次输入

描述错误 在我关闭并打开模拟器后,我无法在文本字段中输入,文本字段被禁用。只有在我重置对话后,我才能再次输入

重现行为的重现步骤:

打开 botpress 创建一个聊天机器人并训练它 点击模拟器并提出问题或开始对话 关闭模拟器 重新打开模拟器 我们应该能够在模拟器中输入的预期行为

关闭模拟器前的截图 https://user-images.githubusercontent.com/81952773/126098506-1a6825d6-3ef0-4e97-a645-6d67d06ca263.png

重新打开模拟器后 https://user-images.githubusercontent.com/81952773/126098624-e3221088-357c-4eae-8387-090e96598e9e.png

环境(请填写以下信息):

操作系统:windows 浏览器:chrome 浏览器版本:91.0.4472.124 Botpress 版本:12.22.0 NodeJS:12

0 投票
1 回答
88 浏览

heroku - 创建后如何在 Heroku 平台托管 Botpress 聊天机器人?

我的 Botpress 聊天机器人已准备好部署。我已经浏览了 Botpress 官方网站上提供的关于如何在 Heroku 平台上部署它的文档,但无法弄清楚其中的大部分内容。有人可以帮我吗?

0 投票
1 回答
59 浏览

apache - Apache 模块 mod_proxy_wstunnel 不工作

我有一个运行在http://XXX.XXX.XXX.XXX:3000的网站,它运行 [Botpress][1] 为了让它通过 HTTPS 运行,我做了一个 Apache 反向代理配置: 我的文件如下所示:

现在,如果我转到https://botpress.mywebsite.com,我会看到 Botstrap 管理界面正常工作,但是当我登录时,我在浏览器的控制台中看到一个错误,显示:

Firefox 无法在 wss://botpress.mywebsite.com/socket.io/?visitorId=_GUWkjNu-VH9XpE3DpO76PxD&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9....&transport=websocket 建立与服务器的连接。web.100.....94b.js:2:6616130 在页面加载时被中断。

我的 ProxyPass 和 ProxyPassReverse for socket.io 的配置文件有问题吗?

谢谢。[1]:https ://botpress.com/

0 投票
0 回答
33 浏览

azure-cognitive-search - 我想将确保认知搜索连接到 botpress,但没有找到任何与之相关的适当文档

我想将 azure 认知功能用作通过 botpress.com 构建的聊天机器人的搜索工具。但我不确定如何连接这两个服务,在 botpress 中有一个调用 api 功能,但我不明白如何使用它

我看到了一些关于使用微软聊天机器人框架将认知集成到微软团队的教程。我也在寻找一个类似的解决方案,如何将认知搜索连接到我的聊天机器人。

我是 api 和 .NET 的初学者,所以如果有人可以提供一些详细的 ans 或文档。谢谢

0 投票
0 回答
36 浏览

botpress - 如何使用botpress中的插槽验证使用输入的电话号码?

我正在试验 botpress 插槽。有一个名为 slot 的新选项将验证用户输入。但是我无法找到可以验证用户输入的资源。

机器人必须使用插槽功能或任何其他不使用外部 API 的情况下将使用输入验证为电话号码?

这可能吗 ?

例如:

如果用户输入有效的电话号码,流程将继续。否则,如果用户输入无效的电话号码,流程将要求重新输入有效的电话号码。

我尝试了多种方法,但没有找到合适的文档/教程。