botframework - 如何添加一个可以关闭网络聊天页面的按钮?
问题描述
我正在使用网络聊天 V3 和机器人框架 V3。是否可以向用户发送一个可以关闭网络聊天页面的按钮?
解决方案
我不相信这在 Web Chat v3 中是可能的;但是,在 Web Chat v4 中,您可以使用卡片操作中间件来更改操作的默认行为。然后,您可以从机器人发送带有按钮的卡片以关闭窗口。
网络聊天 v4
const cardActionMiddleware = () => next => card => {
const { cardAction: { value }} = card;
if (value === 'close') {
window.close();
}
next(card);
}
window.WebChat.renderWebChat({
cardActionMiddleware,
directLine
}, document.getElementById('webchat'));
机器人框架 SDK v4(节点)
const card = CardFactory.heroCard(
'Close Window',
null,
CardFactory.actions([
{
type: 'imBack',
title: 'close',
value: 'Close'
}])
);
await context.sendActivity({ attachments: [card] });
请注意,Web Chat v3 当前处于日落状态,不再受支持,但 Web Chat v4 与 v3 机器人兼容。查看迁移文档以了解更多详细信息。
希望这可以帮助!
推荐阅读
- kubernetes - 如何在 GCE 之上的自制 Kubernetes 集群上启用 Volume & LoadBalancer。
- java - Gretty、Spring MVC 和热部署
- google-assistant-sdk - 缺少 Google 助理语音
- python - 将嵌套字典写入 csv
- php - Laravel 符号链接()
- python-3.x - 如何使用 Asyncio 使此代码非阻塞?
- sql - SQL Server 基于连接的计算列
- javascript - JavaScript - 如何在帖子中发送混合内容类型?
- php - 从 PHP 7.0 切换到 7.2 后未定义的常量
- excel - 如何将以下内容放在同一个单元格中:=K179+J179 和