问题标签 [azure-bot-service]

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 投票
1 回答
316 浏览

bots - Microsoft Bot 框架 - 开发环境

我开始学习 Microsoft bot 并遇到不同的环境来构建和测试。我试图了解所有环境的确切目的。

下载 Bot 模板后,可以在我们的本地计算机上使用 c# 或 Node.js 使用 Visual Studio 开发机器人。此外,它可以在我们的本地开发机器上使用 Bot Emulator 进行测试。到目前为止我很清楚。

在一篇文章中,我可以看到可以使用https://dev.botframework.com/bots构建机器人。我们什么时候应该去这种环境?

此外,可以在 Azure (portal.Azure.com) 中启用机器人服务。它与之前的 dev.botframework 有何不同。

有人可以澄清吗?

0 投票
0 回答
1539 浏览

node.js - 如何在 Azure 机器人服务中启用 websocket?

如何在 Azure 机器人服务中启用 websocket 选项?应用程序服务应用程序设置中有一个 websocket 选项可用,但在机器人服务中缺少它。

我正在运行一个带有示例模板并添加了 websocket 的 nodejs 机器人。

这是客户端代码

这在本地模拟器中运行良好,但是当我尝试连接天蓝色服务器时收到 503 响应代码

我也尝试使用端口 8080,然后出现连接超时错误。

0 投票
0 回答
90 浏览

c# - 我在哪里放置 Microsoft Bot 服务的根对话框

在创建机器人服务方面,我是一个完整的 N00b。我已经使用基本模板生成了我的机器人。在模板代码中,run.csx 文件以

方法。有很多人指向PizzaBot以供参考,但我不知道首先调用什么代码来启动对话流。我从哪里开始对话链?我要替换这个逻辑吗

或完全不同的地方。只是想弄清楚在哪里创建根对话框来启动进程,我看到的所有示例都没有 run.csx,我不知道服务是如何启动的。

0 投票
1 回答
151 浏览

c# - LUIS 代码在通道(iframe)中工作,但在模拟器中失败

当我将以下代码同步到我的 Git 项目并在我的 Azure Bot 实例通道上对其进行测试时,我的以下代码运行良好:

但是当我在模拟器上运行它时,我得到“对不起,我的机器人代码有问题”。出现以下错误:

执行函数时发生 ScriptHost 错误异常:Functions.messages。Microsoft.Bot.Builder:值不能为空。参数名称:模型ID。

最重要的是,我收到警告:

找不到程序集“Microsoft.Bot.Builder.resources,版本=3.9.0.0,Culture=en-US,PublicKeyToken=31bf3856ad364e35”。您是否缺少私有程序集文件?

如何让它在我的模拟器上工作?在将它推送到我的实例之前,我宁愿先在本地测试它的工作。

0 投票
1 回答
109 浏览

c# - BOTS 框架,Null 属性无法加密

突然间,我的 BOT 今天开始因这个异常而失败:

无法加密 Null 属性。如果您希望对其进行加密,请为该属性指定一个默认值。

尝试设置对话数据时发生错误,这是堆栈跟踪:

由于我没有更改代码并且今天早上使用它没问题,我不太确定会发生什么。任何帮助,将不胜感激。

更新:

1) 在 dev.botframework.com 上使用模拟器或测试网络聊天客户端时,我看不到此错误,仅在使用 Teams 时 2) 大多数逻辑存在于我的 LUIS 对话框和其他特定对话框中意图:

BaseTrade 模型:

0 投票
1 回答
512 浏览

node.js - Bot 在本地工作,但在 Bot Service 上无响应

我已经设置了一个通过 VSTS 进行持续集成的机器人。该机器人在应用服务计划上运行(我最近才发现消费计划机器人作为函数运行。)我在云端有一个在消费上工作的机器人,但这限制了我的扩展能力。

对于这个机器人,我做了一个 Prompt 机器人的干净部署 - 但试图在云中运行它会产生一个对话框错误。所以我注释掉了 Prompt 代码,把它变成了一个 echo bot。在本地仍然运行良好,但服务没有响应。尝试登录 Kudu 控制台并运行手动 npm install 但没有帮助。尝试在 kudu 中手动运行机器人会导致错误请求错误。

节点版本 6.11.2。文件树包括 Bot Service 在初始部署时提供的所有文件,包括 iisnode 和 web.config。

这是我的 app.js 和 package.json。是否有其他人遇到本地有效的机器人在云部署时没有响应的问题?有什么我没试过的技巧吗?

更新:通过 Azure 日志流发现此错误,但不知道如何修复它。错误:对“ https://state.botframework.com/v3/botstate/webchat/conversations/(snip) ”的请求失败:[500] Request._callback 处的内部服务器错误

包.json:

0 投票
1 回答
44 浏览

c# - Azure Bot 服务代码更新,继续开发

我们已经在 c# 中使用 LUIS 建立了一个机器人服务几个月,现在我们希望使用 VSTS 继续开发。我们已经在 VSTS 中设置了项目并毫无问题地提交了源代码。并且 bot 服务配置了 VSTS 并且能够成功部署而不会出现错误。但我们发现机器人仍在使用示例代码逻辑运行,并且代码仍然是构建选项卡中的示例代码。让机器人服务替换旧的示例代码有什么解决方案吗?

0 投票
1 回答
66 浏览

node.js - 将语言环境 index.json 拆分为单独的文件?

我正在扩展一个有效的 Azure 机器人服务原型(在应用服务计划上),它在 ./locale/en/index.json 中包含其所有提示。是否可以将其拆分为多个文件并以编程方式确定我们在运行时检查哪个文件的提示?这会导致重大的意外性能影响吗?

示例:如果我对“什么是苹果”和“什么是橙子”有不同的响应,则在单独的文件(apple.json 和 orange.json)中将两者定义为 fruitDefinition 提示。

代替:

这将使我对代码更加通用,每次都提取相同的提示名称(“prompt_define”)并且只是改变我从中获取它的文件。

我当然可以继续转储 index.json 中的所有内容,但提示命名空间已经有点混乱了,我想将其扩展到广泛的实体集。

谢谢!

0 投票
0 回答
93 浏览

bots - 使用语言理解智能服务模板创建机器人时的问题

输入App ID和密码后,我选择了语言理解智能服务模板并点击创建按钮,它显示加载页面,然后永远卡在这一步。

有人可以告诉为什么会这样吗?

谢谢,杰克

0 投票
0 回答
128 浏览

node.js - 使用“路由”中间件拦截用户意图

我正在尝试拦截要发送到我的分析服务器的消息。

我希望向它发送一些数据,例如:messages, intent, resulted dialog.

我尝试以这种方式使用routing中间件universalBot

bot.on('routing',(session)=>{ console.log(session.intent); console.log(session); })

但似乎意图是undefined,我设法看到它的唯一方法是通过triggerAction=>onFindAction函数。

我可以使用这种方法,但它似乎是一个 hack,有没有用中间件拦截意图数据的好方法?

我正在使用 Node.js SDKbotbuilder-apiai