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

Teams Bot Adaptive Card的action.Submit在Bot Emulator正常但Teams返回undefined

Teams Bot 自适应卡片 Submit 动作跨端异常解决方案

该问题的核心原因为 Teams 平台与 Bot Emulator 对 Adaptive Card 提交动作的载荷解析规则存在差异,和 Adaptive Card 版本无直接关联,可按以下步骤排查修复:

  • 强制添加 Teams 专属的 msteams 载荷节点
    Bot Emulator 无特殊字段要求,但 Teams 要求 Submit 动作的自定义参数必须包裹在 msteams 节点下才会被正常透传,标准结构示例如下:
    {
      "type": "Action.Submit",
      "title": "提交",
      "data": {
        "msteams": {
          "type": "messageBack",
          "text": "submit_trigger"
        },
        // 自定义业务参数区
        "order_id": "123456",
        "op_type": "confirm"
      }
    }
    
  • 调整后端取值逻辑
    Teams 端的提交载荷会统一挂载在 activity.value 字段下,不要按照 Bot Emulator 的习惯从 activity.text 中取值,优先判断 activity.value 是否存在再做解析。
  • 检查输入控件配置
    若卡片中使用了 Input.Text、Input.ChoiceSet 等输入类控件,必须为每个控件配置唯一的 id 属性,未设置 id 的控件值不会被带入提交载荷。
  • 校验应用权限配置
    确认 Teams 应用 manifest 中已为 Bot 开启 sendMessage、receiveMessage 基础权限,权限缺失会直接拦截提交动作的载荷传递。

排查过程中可在后端打印完整的 activity 对象,确认载荷的完整返回结构,快速定位取值路径问题。

内容的提问来源于stack exchange,提问作者T-Rex

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 06:54:04