Microsoft Bot Framework用于构建智能聊天机器人并将它们一次部署到多个消息传递平台或通道。这包括利用各种Bot Builder SDK功能,创建各种类型的机器人以及使用Bot目录或Azure Bot服务。
我正在尝试使用 Microsoft BotFramework-WebChat 中的 useScrollTo 挂钩。 但我收到以下错误:- 该钩子只能用在 的后代组件上 我正在尝试使用 Microsoft BotFramework-WebChat 中的 useScrollTo 挂钩。 但是我收到以下错误:- This hook can only be used on a component that is a descendant of <Composer> 我在函数组件内调用它,该组件又在下调用 ReactDOM.render( <React.StrictMode> <-- the function component --> <React.StrictMode> ) 提前致谢 我们来看看useScrollTo()钩子的源码: import { useCallback } from 'react'; import ScrollPosition from '../types/ScrollPosition'; import useWebChatUIContext from './internal/useWebChatUIContext'; export default function useScrollTo(): ( position: ScrollPosition, scrollToOptions: { behavior?: 'auto' | 'smooth' } ) => void { const { scrollToCallbacksRef } = useWebChatUIContext(); return useCallback( (...args) => scrollToCallbacksRef.current.forEach(callback => callback(...args)), [scrollToCallbacksRef] ); } 和useWebChatUIContext()钩: import { useContext } from 'react'; import WebChatUIContext from './WebChatUIContext'; export default function useWebChatUIContext() { const context = useContext(WebChatUIContext); if (!context) { throw new Error('This hook can only be used on a component that is a descendant of <Composer>'); } return context; } 错误是从useWebChatUIContext()钩子抛出的,useScrollTo()钩子需要来自scrollToCallbacksRef的WebChatUIContext,所以你必须在React函数组件中使用useScrollTo()钩子,并且它必须是的后代组件<Composer/> <Composer/>组件渲染<ComposerCore/>和<ComposerCore/>组件渲染<WebChatUIContext.Provider/>。 看看这个测试用例: const RunFunction = ({ fn }) => { fn(); return false; }; // ... const renderWithFunction = fn => new Promise(resolve => ReactDOM.render( <Composer directLine={directLine} scrollToEndButtonMiddleware={scrollToEndButtonMiddleware} store={store}> <BasicWebChat /> <RunFunction fn={() => resolve(fn && fn())} key={Date.now() + ''} /> </Composer>, document.getElementById('webchat') ) ); // ... await renderWithFunction(() => useScrollTo()({ scrollTop: 300 })); useScrollTo()钩子在RunFunction组件中调用,它是<Composer/>的子组件
Teams Bot SDK - 渠道帐户 ID 是否会更改?
当用户安装我的 Teams 应用程序时,我会将他们的频道帐户 ID 存储在数据库中。 稍后,我将使用同一个 ID 来获取对话参考并向他们发送主动消息。这项工作正确...
Bot Framework Composer 中数组属性的显示不一致:直接输出与串联输出
我不知道这是怎么突然冒出来的。 我通过 =turn.activity.text 获取用户的响应 我将 **array ** 属性设置为 user.inputData [ { “角色”:“用户”, “共...
Microsoft Teams 将 URL 重定向到线程或组对话
我一直在使用下一个 URL 将任何用户重定向到与我们的 MS Teams 应用程序的私人聊天: https://teams.microsoft.com/l/chat/0/0?users=28:b9cc7986-dd56-4b57-ab7d-9c4e5288b775 与 b9cc7986-dd56-
如何在botframework网络通道中捕获user_country/city?
我想在网络聊天频道上运行的 azure botframework 聊天机器人的应用程序见解中捕获最终用户位置(国家/城市)。应用程序洞察工具已就位第 v 页...
我正在开发 Microsoft Teams 选项卡应用程序。基本功能之一是通过日历仪表板展示会议。我有兴趣利用相同的日历仪表板续...
我目前正在开发 Microsoft Teams Tab 应用程序。基本功能之一是通过日历仪表板展示会议。我有兴趣使用相同的 Calendar Dash...
使用 Node.js 在 Azure Bot Framework 中进行响应之前键入指示器消失
我目前正在使用 Node.js 中的 Azure Bot 框架开发聊天机器人。我面临的问题与打字指示器行为有关。当用户开始输入并按 Enter 时,会出现输入
我正在处理一项业务需求,涉及使用 Bot Framework 更新或删除发送到 Microsoft Teams 的主动消息的能力。更新或删除可能会在很久之后发生...
我们构建了一个自定义机器人服务应用程序,它利用 BotFramework 提供的 REST 端点以及一些图形 API 调用。 Graph API 记录了发送活动源的能力
Azure 机器学习端点 LLM 实时推理(流式传输)以更新 Bot 框架
我开发了一个利用 Azure 机器学习端点的应用程序。该端点的输出包括由大型语言模型 (LLM) 生成的答案,该答案通过
显示应用程序列表并要求用户选择一个以在 Microsoft Bot Framework 中显示更多详细信息
我正在使用 Microsoft Bot Framework 进行聊天机器人开发。要求是,当用户提供帐号和出生日期等详细信息时,聊天机器人应向她显示
在 Bot Framework Emulator 中多次从一个对话框移动到另一个对话框时出现错误“已超出读取器的 MaxDepth 64”
多次从一个对话框移动到另一个对话框甚至在同一对话框中循环时会出现此问题。在同一个对话框中循环 9 次并包含许多提示后。出现错误...
我需要向天蓝色的机器人添加简单的身份验证。我的客户想要 .1 限制现有 AD 用户使用内部聊天机器人(在 Azure 中运行的 NodeJS 中的机器人框架 V4)。 .2 明白...
Bot Framework Composer 项目已经死了吗?
如果您是该项目的维护者,那么您能否告知我们是否所有未解决的问题都会得到解决?我没有看到任何合并拉取请求或任何未解决的问题修复...
我正在尝试使用下面的模板在 Microsoft Bot Composer 中显示自适应卡,以显示具有一列的表格。 > 要了解更多自适应卡格式,请阅读以下文档: > http...
使用 Bot Framework 作曲家的 Alexa 机器人
我正在尝试使用 Bot 框架编写器创建 Alexa 机器人,该机器人最终将托管到 Azure 机器人服务上。有什么办法可以让设备 ID 和会话属性等属性...
使用 docker 的容器化 python 应用程序无法正确运行
在本地运行以下 app.py 时,我有一个团队聊天网络服务器运行得非常好。但是当我尝试使用 docker 将其容器化时,它没有正确运行 Web 服务器。停在