通过 Teams 聊天机器人从外部进程向组织用户发送主动消息

INNVTV

我通过 Teams 在我的组织中安装了 Azure Bot。与机器人的交互运行正常。

我们有一个场景,我们需要从外部进程(在 Azure 中运行的 C# 应用程序)向我们的用户发送通知。

我尝试使用Bot Framework REST API创建与用户的对话,然后向他们发送此处概述的通知

此方案不起作用,因为我无法获取未使用全局 Bot Framework 租户的机器人的访问令牌。我们的 Bot 作为 SingleTenant BotType 安装在 Azure 租户上,因此出现以下错误:

 Application with identifier 'BOT-APP-ID' was not found in the directory 'Bot Framework'

我倾注了各种选择,包括 DirectLine 通道、BotConnector SDK 和 Power Automate - 但似乎没有什么适合我的需要。

有没有办法针对我们安装的 Bot 使用 Rest API 来创建对话和发送消息?这将是理想的,因为这样我就可以直接从触发它们的事件中启动这些通知。

吉塞诺希尔顿酒店

主动消息传递绝对是您要寻找的,但有一些重要的事情需要注意。这是一个示例https://github.com/pnp/teams-dev-samples/tree/main/samples/bot-proactive-messaging希望有用 - 我包括 C# 和 Node 版本以及一些进一步阅读的链接,这里是一个视频会议的链接,我在其中更多地讨论了这个概念:https ://www.youtube.com/watch?v=mM7-fYdcJhw&t=1398s 。

简而言之,请记住 Bot Framework 可以在许多情况下使用,Teams 只是其中之一。重要的是,与其他上下文不同,当你在 Teams 中时,没有“创建”与用户对话的概念。只有一次“对话”,而您基本上是在“继续”对话。结果,您想调用continueConversation. 在我上面链接的同一个示例中,这里是相关行在幕后,这确实是在调用一个 REST API,但这样包装起来更容易。

但是,如示例所示,由于您无法开始对话,只能继续对话,因此您需要确保您已经拥有对话上下文,这也可能意味着确保用户已将机器人安装到个人背景(实际上是开始对话的内容)。是示例中发生这种情况的地方。

如果您的用户已经安装了机器人,那么它只是存储对话上下文的一种情况,就像我在示例中显示的那样。如果没有,并且您想了解如何预安装机器人,请参阅以下问题:Proactively Install / Push Apps in Teams for Multiple Users

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

MS Teams 中的 Azure 聊天机器人

如何通过EWS获取Microsoft Teams聊天消息?

如何使用我的电报机器人通过用户名向某人发送消息

MS Teams 聊天机器人 - 无法访问应用程序。请重试

如何在 MS Teams 上将问答 BERT 模型部署为聊天机器人

使用Graph API在Microsoft Teams的机器人通道中以机器人的身份向用户发送消息

通过编辑现有消息添加机器人时,Microsoft-Teams 机器人是否会收到任何事件?

如何通过REST API在Teams通道内更新(编辑)Microsoft Teams消息(话题或回复)

机器人重启后,主动消息在MS Teams中不起作用

通过传入的Webhook向Microsoft Teams发送对较旧消息的答复

我可以自定义通过 Slack 的 AWS 聊天机器人集成接收的消息吗?

在 Microsoft Teams 中通过移动设备上的消息启动操作?

在 Microsoft 聊天机器人中通过 Direct-line API 发送 JWT 以对用户进行身份验证

Microsoft Teams:如何在全球范围内提供一对一聊天机器人?

Teams Messaging Extension 与操作命令、底层机器人和通过 Graph API 访问之间的关系

如何通过Microsoft graph API C#在Microsoft Teams中将消息发送到1:1聊天或群聊

主动消息聊天机器人的问题

无法通过REST Api Botframework向Facebook机器人发送消息

通过 Dialogflow 聊天机器人打开 Facebook Messenger 摄像头

如何使用 Microsoft Graph 从 Microsoft Teams 机器人发送消息?

MS Teams 示例未向侦听机器人应用程序发送消息

一次向所有用户部署1:1 Teams机器人

通过向通道发送文件信息,Microsoft Teams Bot文件卡信息已损坏

我如何让我的机器人通过在命令中输入他们的用户 ID 向任何用户发送消息?

使用Python的Microsoft Teams机器人

如何通过名称向机器人发送命令?

满足条件时通过Discord机器人发送消息

从SSIS发送Microsoft Teams聊天消息的方法

MS Teams Bot:来自BotBuilder-Samples的Teams对话机器人未经授权进行网络聊天测试