问题标签 [web-chat]

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 回答
506 浏览

c# - 如何获取 ChatBot 中 AdaptiveCard 控件更改的值?

我在我的 Microsoft ChatBot 中使用 AdaptiveCard 输入控件。谁能给我提示如何获取自适应控件的 TextInput 或 ChoiceSet 的更改属性或事件。例如,在选择 ChoiceSet 时,我想在 TextInput 控件中填充一些值?

0 投票
1 回答
479 浏览

html - 如何创建一个侧窗口或 iframe 来显示由网络聊天在一个网页中收集的数据?

我正在通过 Microsoft bot 框架构建一个聊天机器人,最近将其部署为网页上的网络聊天。在我的网页中,必须有一个侧边框,其中显示从机器人收集和计算的数据。

谁能帮我创建这个?现在,我不知道如何创建这个窗口/框/iframe。

我的聊天机器人与用户协商。我想在一种信息框中显示用户数据,例如可用于协商的项目。它应该能够在聊天期间发生事件后刷新它。到目前为止,我在网页的 html 代码中实现了网络聊天,正如 Microsoft docs for web chat 所描述的那样。

0 投票
1 回答
2037 浏览

botframework - 如何基于使用 OAuthCard 登录的用户在 BotFramework-WebChat 中动态设置用户头像

我使用 Microsoft Bot Framework V4 开发了一个聊天机器人,并使用 BotFramework-WebChat 为用户提供使用 DirectLine 令牌从网站聊天,

我可以通过分配静态公共图像 URL 来设置机器人头像和用户头像。问题是我想使用以下步骤在 WebChat 中动态设置用户头像

  1. OAuthCard 登录后使用 Microsoft 图形 API 获取用户图标
  2. 动态设置 Webchat styleSetOptions 中的登录用户图像。

我已经按照提供的示例完成了为机器人设置机器人框架服务器和网络聊天的演示

机器人服务器 == https://github.com/Microsoft/BotBuilder-Samples

网络聊天 == https://github.com/Microsoft/BotFramework-WebChat

但是没有关于如何在用户登录后设置用户图像的适当示例或文档。使用已签名的用户对象。

可任何一点上正确的方向就如何实现。

提前致谢

0 投票
1 回答
100 浏览

c# - Bot Framework - 找到机器人回答的问题以及用户对按钮做出反应的方法?

在 webchat 示例的示例 9(可在此处获得)中,我们为用户提供了对答案做出反应的能力,是否正确地找到了用户所询问的问题,哪个机器人已回答并且用户已做出反应。

目前,我正在做的事情是,当用户做出反应时,我将点 activityId 和 replytoId 发送给我的机器人,然后从我的成绩单表中,我从 id activityid 和 replytoid 的活动中获取文本并获取问题和答案,是我的方法正确,或者我们有任何简化的解决方案

还有没有办法在用户响应后隐藏反应按钮?

谢谢

0 投票
1 回答
1740 浏览

reactjs - React App:如何将变量传递给其他文件并在那里读取它的值

我正在构建来自 Github/Webchat 的示例 16,以构建带有网络聊天界面的网页。

https://github.com/microsoft/BotFramework-WebChat/tree/master/samples/16.customization-selectable-activity

react 应用程序包含不同的 .js 文件来构建网站(Webchat.js、Instuctor.js、App.js、Index.js),我无法提供文件Inspector.js与我在 file 中收集的数据Webchat.js。我找不到正确的代码来从 fileWebchat.js中的文件读取变量的值Inspector.js

我想构建一个网页,左侧有一个正在运行的聊天机器人(BotFrameWork),旁边有一个正在运行的表格,其中显示了聊天机器人收集的数据。

我尝试了以下答案

node.js 如何从一个文件中获取一个变量到另一个文件

但不起作用。我试图获取 Webchat 的状态,但只给出undefined.

示例:(webchat.js)我从机器人获取数据(例如 [link] How to create a side window or iframe,以显示由 Web-Chat 在一个网页中收集的数据?)并将其保存在状态变量中'测试'。

(instructor.js) 我想在新数据进入时更新的标签中显示该数据。我现在如何访问在另一个文件中创建的“测试”的值?

什么不起作用:在 instuctor.js 中:

var test2 = 要求 ('./webchat'); Console.log(test2.state.test) //这就是我想象它的工作方式-> undefined with require 我只得到一个具有“名称”变量“Webchat”的对象,我可以使用它:控制台.log(test2.default.name);

0 投票
1 回答
835 浏览

botframework - 使用 BotFramework 的 WebChat 自动完成

我想在我的 BotFramework 的 WebChat 上自动完成,我可以使用flexdatalist在标签上实现此功能<input>,但是如何更改 SendBox 的属性?

下面是 flexdatalist 如何工作的示例:

结果在这里

开发团队目前正在开发一个“自动完成框”(来源:Github),可以在 Github上跟踪进度

0 投票
1 回答
3725 浏览

c# - [BotFrameWork]:如何在使用V4开发的C# Webchat bot中同时有文本提示和选择提示?

我正在使用 SDK V4 中的 C# 创建一个 WebChatBot,其中包含多个具有瀑布步骤的对话框类。在成功验证后我重定向 int 的一个 dialogClass 中

第 1 步:我在 PromptOptions 中使用 PromptText、Choices 和 RetryPrompt 为用户提供一组 ChoicePrompt。我想要做或实现的是,如果用户输入或键入除了选项以外的任何内容,它应该接受文本并回复适当的消息。我不是在谈论重试提示文本,而是在下面的示例中试图解释的内容:

1. 第 1步:为用户提供选择提示类型的 PomptOptions,例如返回

现在,如果用户输入了上面不存在的内容,让我们说四个

目前它显示重试提示的文本

我想要实现的是使用此 4 并显示自定义消息这不是一个有效选项如果我在重定向到此对话框之前输入用于身份验证的登录 ID 我应该说一条自定义消息说您已经登录这是您的选项,其中再次显示 1、2、3 选项如果我输入另一个登录 ID,我应该显示一条自定义消息,这不是您用来登录的用户 ID,并且应该再次显示提示选项

现在,如果我输入与显示的选项同义的任何内容,例如:1,那么它应该进入下一步,即

STEP#2并执行相关功能。

如果还有其他内容,则应显示重试提示文本,并应再次显示提示选项

第 2 步:如果选择的选项匹配,将执行所需的操作

如果您看到它似乎同时有文本提示和选择提示(显示提示选项),或者两者应该并行工作?

现在,如果可以使用 C# 中的瀑布在 V4 中完成,任何人都可以详细说明一步一步的指南或方式如何实现这一目标吗?

还是无法实现这是不正确的期望?

语言:C# SDK:V4 所有 Nuget 包和机器人模拟器都是最新的

请让我逐步或尽可能详细地告诉我,因为我是编码新手,也是在 Bot 中,我需要详细了解它。

没有得到任何东西如何在 V4 C# 中实现它?

不适用,因为我现在不知道该怎么做。

预期结果:作为 PromptOptions 的一部分显示的 ChoiceOptions 应与提供的文本输入一起使用,并基于提供的文本输入 dsiplay 自定义消息,如果输入不正确,或者如果它是同义词或在 STEP# 中选择了给定选项,则再次显示选项1 然后在 STEP#2 中执行相关的过程。

实际结果:不适用

0 投票
1 回答
265 浏览

botframework - 无法从 IE 11 中的网络聊天将参数传递给机器人

我有开始对话的网络聊天代码。它在 Chrome 中运行良好,但在 IE 11 中不起作用。在机器人端,我想在 bot.on('conversationUpdate') 中从客户端读取一些初始数据。我应该在哪里以及如何将我的用户 ID 传递给机器人?

当前客户的代码:

bot.on('conversationUpdate') 中的机器人代码:

在 IE 11 的情况下,bot 无法读取 user.id,而上述代码在 Chrome 中运行良好。

0 投票
1 回答
686 浏览

reactjs - 自动完成:如何用您自己的 react-select 元素替换 Webchat 的输入字段

我有一个 React 应用程序,我想用我自己的选择元素替换网络聊天的输入栏(我正在使用 react-select)。

这是网络聊天下的选择元素:伊姆古尔

编辑感谢@tdurnford,这是我的实现:

网络聊天.js

改进的SendBox.js

可以在Github上找到

结果:伊姆古尔 如果您有任何问题,请随时问我:)

0 投票
1 回答
282 浏览

botframework - 如何在具有最小化功能的网站上添加现有机器人

添加了 BotFramework v3 Nodejs SDK 频道:MS 团队、Cortana 和 WebChat

我们希望从托管在企业网络中的网站访问或集成现有的生产机器人。在做了一些研究后,我发现 BotFramework-WebChat有一些集成方式,从最简单到最难。我正在寻找特定示例,我希望能够将机器人聊天窗口放置在网页的右下角,并且用户应该能够在不需要时最小化机器人窗口。

回购页面上提到的方式只是将网络聊天框放在页面上,但无法将其最小化。

回购页面上提到的方式只是将网络聊天框放在页面上,但无法将其最小化。