Vercel News

Chat SDK now supports reactions and ephemeral messages on Teams

8.5内容质量

TL;DR · AI 摘要

Chat SDK 的 Microsoft Teams 适配器新增反应和临时消息功能,提升机器人交互能力。

核心要点

  • 使用 thread.postEphemeral() 可发送仅目标用户可见的临时消息
  • 自定义令牌工厂支持无 Azure IMDS 环境的认证
  • emoji.check 可用于消息反应的添加与移除

结构提纲

按章节快速跳转。

  1. Teams 适配器新增反应和临时消息支持

  2. 展示如何通过 API 实现反应添加与临时消息发送

  3. 包含作者邮箱、令牌工厂等 5 项功能增强

  4. 提供 Teams 适配器文档链接和相关概念说明

  5. 感谢 onmax 对本次发布的贡献

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • Chat SDK Teams 适配器更新
    • 核心功能
      • 反应支持
      • 临时消息
    • 其他改进
      • 作者邮箱
      • 令牌工厂
      • DM状态
    • 资源
      • 文档链接

金句 / Highlights

值得收藏与分享的关键句。

#Chat SDK#Microsoft Teams#机器人开发#API
打开原文

Chat SDK 现在支持 Teams 上的反应和短暂消息 - Vercel

Chat SDK 的 Microsoft Teams 适配器现在通过与其他适配器相同的 API 支持反应和短暂消息。

机器人可以在 Teams 消息上添加和移除反应,并通过调用 thread.postEphemeral() 或 channel.postEphemeral() 发送仅目标用户可见的原生定向消息,例如权限提示。

lib/bot.ts

code
1
import
{
Chat
,
emoji
}
from
"chat"
;
2
import
{
createTeamsAdapter
}
from
"@chat-adapter/teams"
;
3
4
const
bot
=
new
Chat
(
{
5
userName
:
"mybot"
,
6
adapters
:
{
7
teams
:
createTeamsAdapter
(
)
,
8
}
,
9
}
)
;
10
11
bot
.
onSubscribedMessage
(
async
(
thread
,
message
)
=>
{
12
13
// 用反应确认,完成后清除
14
const
sent
=
await
thread
.
post
(
"Working on it..."
)
;
15
await
sent
.
addReaction
(
emoji
.
check
)
;
16
await
sent
.
removeReaction
(
emoji
.
check
)
;
17
18
// 仅消息作者可见
19
await
thread
.
postEphemeral
(
message
.
author
,
"Only you can see this"
,
{
20
fallbackToDM
:
true
,
21
}
)
;
22
}
)
;

此版本新增功能包括:

  • 作者邮箱:Teams 的入站消息现在包含作者的 Microsoft Graph 邮箱,用户主体名称作为备用方案
  • 自定义令牌工厂:在 TeamsAdapterConfig 中传入令牌函数,可提供自定义访问令牌,使无 Azure IMDS 的运行时机器人无需静态客户端密钥即可认证
  • 原生 DM 状态:进度消息现在在私信中显示为原生 Teams 状态
  • 会话路由:群组对话不再被错误识别为私信,因此始终能被正确处理
  • 提及转换:URL 中的邮箱地址、@handle 以及代码段中的提及不再被转换为 Teams 提及

阅读 Teams 适配器文档开始使用,或了解更多关于短暂消息和反应的信息。

特别感谢 onmax 对此版本的贡献。