触发 MS Bot 主动向注册用户发送消息

Trigger MS Bot to proactively send msg to registered user

我设置了一个 Microsoft 机器人来捕获有关将其添加到联系人的用户的信息。当 Skype 用户发起对话时,我能够开始新的对话。

我在 RootDialog.cs:

中使用触发器
t = new Timer(new TimerCallback(timerEvent));
t.Change(5000, Timeout.Infinite);

这将在 5 毫秒后发起新对话。

虽然这可行,但这不是我想要实现的。

除了机器人 API 控制器,我的程序中还有另一个控制器 运行。

这个没有使用[BothAuthentication]标签的api收到来自其他系统的http post请求。

这些帖子包含我需要在 Skype 中发送给用户的信息。

尽管如此,我无法将与 Bot 连接器无关的 ApiController 信息传递到实际上可以向用户发送消息的 Bot 控制器。

我可以使用什么样的触发器来触发 bot 控制器中的操作,以将消息发送给我预先配置的用户?我可以有一个来自其他系统的请求列表并监听机器人控制器上的事件吗?如果是这样怎么办?我检查了 ObservableCollection 但总是与某些接口绑定相关联。

或者我可以将信息从一个控制器传递到另一个控制器吗?

非常感谢您的帮助。

你必须使用 Conversations.SendToConversationAsync。 Check this.