You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Microsoft Teams个人应用中复用OOTB Praise原生功能?

在Microsoft Teams个人应用中复用原生Praise功能的可行方法

方法1:通过Teams深度链接(Deep Link)唤起原生Praise界面

这是最直接的实现方式,无需复杂开发,只需在个人应用中添加触发按钮,点击后调用Teams深度链接打开原生Praise功能。

  • 深度链接格式:
    https://teams.microsoft.com/l/entity/81fef3a6-72aa-4648-a763-de824aeafb7d/praise?context={"recipientUserId":"<目标用户ID>","teamId":"<团队ID>"}
    
  • 参数说明:
    • recipientUserId:可选,指定要表扬的用户ID,填写后打开界面会自动填充该用户;不填则打开通用表扬界面,由用户自主选择接收人。
    • teamId:可选,若需在特定团队内发起表扬,填写对应团队ID;个人应用中无需关联团队时可省略。
  • 集成方式:
    在前端代码中使用Teams JS SDK的executeDeepLink方法调用该链接,实现应用内唤起:
    microsoftTeams.executeDeepLink('https://teams.microsoft.com/l/entity/81fef3a6-72aa-4648-a763-de824aeafb7d/praise?context={"recipientUserId":"12345678-1234-1234-1234-1234567890ab"}');
    

方法2:使用Microsoft Graph API自定义实现Praise功能

如果需要完全自定义界面和业务流程,可通过Graph API直接调用Praise相关接口,实现与原生功能一致的逻辑。

  • 核心API操作:
    • 创建表扬:POST /teams/{team-id}/praises
      请求体示例:
      {
        "recipient": {
          "user": {
            "id": "<目标用户ID>"
          }
        },
        "message": "感谢你在项目中的出色贡献!",
        "praiseTemplateId": "<表扬模板ID>"
      }
      
    • 获取表扬记录:GET /teams/{team-id}/praises
  • 权限要求:
    需要为应用申请TeamworkPraise.ReadWrite.All(应用权限)或TeamworkPraise.ReadWrite(委派权限),并完成用户授权流程。
  • 优势:
    可完全控制UI展示、数据处理逻辑,适配个人应用的专属场景。

方法3:通过Task Module嵌入原生Praise界面(可选)

若希望在个人应用的弹窗内展示原生Praise功能,可将深度链接嵌入Task Module:

microsoftTeams.tasks.startTask({
  title: "发送表扬",
  url: "https://teams.microsoft.com/l/entity/81fef3a6-72aa-4648-a763-de824aeafb7d/praise?context={}",
  height: 500,
  width: 600
});

注意事项

  • 深度链接方式无需额外权限,只要用户账号拥有Praise功能的访问权限即可使用。
  • 使用Graph API时,需确保应用已在Azure AD中完成注册,并正确配置权限范围。
  • 所有操作需在Teams客户端环境中运行,确保已正确初始化Teams JS SDK。

内容的提问来源于stack exchange,提问作者Sigar Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 12:45:36