如何创建一个可以在没有任何用户输入的情况下发送聊天消息的天蓝色聊天机器人

时间:2018-01-19 10:53:49

标签: bots botframework azure-bot-service microsoft-skype-bot

我之前尝试过开发天蓝色机器人。目前我正在试图找出是否有任何方法可以设置一个机器人,可以持续监控某些内容,并在没有用户发起聊天的情况下向特定用户发送消息。

例如,机器人监视系统并发现错误并向用户发送聊天消息(在这种情况下Bot启动聊天)。我做了一些研究,但还没有找到任何方法来实现这一目标。

提前致谢,

DM

1 个答案:

答案 0 :(得分:1)

此概念在Bot框架中称为主动消息传递。 C#中有一些示例:https://github.com/Microsoft/BotBuilder-Samples/tree/master/CSharp/core-proactiveMessages和node.js:https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/core-proactiveMessages

需要注意的是,不同的频道对何时可以向用户发送主动消息有不同的限制。例如,在Facebook上,您有一个24小时的窗口,从用户发送机器人的时间开始。 24小时后,如果用户没有向机器人发送消息,则不允许主动消息通过。

可在此文档中找到更多信息:https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-proactive-messages

修改

您还可以使用主动模板在Azure中创建功能Bot ,它将创建一个具有 BasicProactiveEchoDialog.csx 的机器人如何将 CloudQueueMessage 排入 CloudStorageAccount 。该模板还将创建由添加到队列触发的 Azure功能。触发该功能后,它会将排队的消息发送给频道上的用户。