Botframework 理解活动的名称
我有一个聊天机器人,它试图模仿反向通道的例子 一切基本上都是正确的,只是我很难理解下面的代码到底应该如何工作Botframework 理解活动的名称,botframework,direct-line-botframework,Botframework,Direct Line Botframework,我有一个聊天机器人,它试图模仿反向通道的例子 一切基本上都是正确的,只是我很难理解下面的代码到底应该如何工作 botConnection.activity$ .filter(function (activity) { console.log("show me the activity name passed" + activity.name); return activity.type === 'event' && activity.name
botConnection.activity$
.filter(function (activity) {
console.log("show me the activity name passed" + activity.name);
return activity.type === 'event' && activity.name === 'changeBackground';
})
.subscribe(function (activity) {
changeBackgroundColor(activity.value);
});
我假设我需要在我的机器人中命名一些东西,也许是changeBackground?activity.type不应该是“消息”而不是“事件”吗
当我执行console.log以显示activity.name时,我传递的每条消息都是“未定义的”。我应该在哪里设置活动的名称,以便启动更改背景?一个
活动
是一个通用信封,其中消息
(用户和机器人之间发送的文本和/或附件)是最常见的类型。如果您希望客户端和bot以不可见的方式向用户交换信息,则可以使用事件
类型。按照惯例,它们将被客户机忽略,例如
按照编写方式,示例代码记录从bot发送到客户端的每个活动。字段名称
适用于事件
类型的活动,但不适用于消息
,这就是为什么它显示为未定义
在本例中,changeBackground
是一个客户端函数的名称,每当bot发送类型为event
的活动时,该函数都会执行某些操作
您现在缺少的是(服务器)bot代码,它实际发送该事件。请参见Ryan Volum's,以了解这方面的示例