当我在某个对话框中时,我正在尝试从机器人向客户端发送事件活动,但是我无法使其正常工作...我可以查看任何建议或代码示例吗?
我也已经尝试建立一个反向通道,它可以工作,但就我所知,它仅在消息控制器中在机器人端起作用。
编辑*
很抱歉,由于没有提供任何详细信息,我上周很着急。
因此,我正在制作一个可以为用户填写“报告”的机器人,该机器人会提出问题,然后用户给出答案。对于第一个问题,当我在第一个对话框中(即在根对话框之后)时,我必须在我的角度应用程序中调用一个函数,该函数将检查用户输入,如果帐户存在,则将“ Account”对象返回给bot ,如果没有,则返回null ...(而且我知道只制作一个API并直接连接到机器人会更容易,但是我必须使用angular)
我正在像这样使用反向频道:
botConnection.activity$
.filter( activity => {
// tslint:disable-next-line:max-line-length
return (activity.type === 'message' && activity.from['id'] === 'VisitReportV3' && activity.text === 'Please select an account...') ||
(activity.type === 'message' && activity.from['id'] === 'user' && this.accountFlag)
})
.subscribe(activity => {
if (activity.from['id'] === 'VisitReportV3' && activity.text === 'Please select an account...') {
console.log('"account" received');
this.accountFlag = true;
postAccountInfo();
} else if (activity.from['id'] === 'user' && this.accountFlag) {
console.log('"account" flag recieved');
this.accountFlag = false;
}
});
这可能是完全错误的,但是我不知道该怎么办。
tl; dr:
因此,简而言之,我需要检查我是否在第一个对话框中(或询问我该帐户的对话框中),然后我是否在等待下一个用户输入并调用angular函数来检查输入并查看是否有任何匹配的帐户,如果它们确实将序列化的对象返回给bot进行更多处理,则不返回null。我希望这可以解释更多内容。