【问题标题】:In MS Team Adaptive Card, how do I specify the server it post to?在 MS Team Adaptive Card 中,我如何指定它发布到的服务器?
【发布时间】:2021-07-29 03:14:10
【问题描述】:

我正在尝试使用我的自适应卡中的 Action.Submit 来访问我的 Google Cloud 功能。我在哪里指定将提交的内容发送到哪里?我这样做的原因是由于时间限制,我想跳过构建完整的聊天服务器。

自适应卡片示例,没有指定帖子 URL 的属性:

{
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "type": "AdaptiveCard",
  "version": "1.0",
  "body": [
    {
      "type": "TextBlock",
      "text": "Present a form and submit it back to the originator"
    },
    {
      "type": "Input.Text",
      "id": "firstName",
      "placeholder": "What is your first name?"
    },
    {
      "type": "Input.Text",
      "id": "lastName",
      "placeholder": "What is your last name?"
    }
  ],
  "actions": [
    {
      "type": "Action.Submit",
      "title": "Action.Submit",
      "data": {
        "x": 13
      }
    }
  ]
}

【问题讨论】:

  • 自适应卡在哪里?它是在与您的 Teams 应用程序聊天中吗?谈话的范围是什么?自适应卡是如何到达那里的?可以发链接和截图吗?
  • 你还在做这个吗?
  • 是的,我无法发布详细信息,但客户希望能够将我们的 MS Team 作为前端,而不必使用 Microsoft 服务器,所以我想知道是否可以直接从在 MS Team 中连接到任意服务器,那么在 Google 中设置一个简单的 REST 端点就很容易了。
  • 我想帮忙,但我不明白你在做什么,所以我需要更多信息。你愿意回答我的问题吗?
  • 是的,当然

标签: json server google-cloud-functions microsoft-teams adaptive-cards


【解决方案1】:

自适应卡不是专门为机器人服务开发的。 因此,与他们合作需要一些技巧,如果您尝试发送包含您需要知道的自适应卡输入的请求:

  • 当用户点击提交按钮时,自适应卡片会代表用户向bot发送一条消息活动处理程序,该消息包含一个JSON对象(您可以通过在 bot onMessage 函数中添加此行来查看此对象。

console.log(context.activity)

  • 您可以使用以下方法从此消息中获取数据:

context.activity.value.firstName(获取自适应卡发送的名字)

  • 现在您可以使用Axios 将您的请求发送到我喜欢的服务器。

【讨论】:

    猜你喜欢
    • 2020-12-10
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-28
    • 1970-01-01
    • 2012-06-21
    相关资源
    最近更新 更多