Автоматизация питания — использование переменных в адаптивных картах

#microsoft-teams #power-automate

Вопрос:

Я пытаюсь построить поток, который работает в командах, выполняющих следующее:

  • Пользователь публикует новое сообщение на канале
  • Поток считывает сообщение и собирает некоторые переменные (идентификатор пользователя, сообщение и т. Д.).
  • Бот потока публикует адаптивную карту, чтобы собрать больше информации от пользователя.

Я могу вставлять переменные из более высокого уровня потока в адаптивную карту, но мне трудно использовать их с условиями «$when» в карте. Вот JSON:

 {
  "type": "AdaptiveCard",
  "data": {
    "postContainsLink": "@{variables('postContainsLink')}",
    "testNum": "@{variables('testNum')}",
    "otherTestNum": "100"
  },
  "body": [
    {
      "type": "TextBlock",
      "size": "Medium",
      "weight": "Bolder",
      "text": "@{variables('messageBody')}",
      "$when": "${postContainsLink == true}"
    },
    {
      "type": "TextBlock",
      "size": "Medium",
      "weight": "Bolder",
      "text": "If you're seeing this text block, something went wrong. Bummer.",
      "$when": "${testNum < 100}"
    },
    {
      "type": "TextBlock",
      "size": "Medium",
      "weight": "Bolder",
      "text": "If you're seeing this text block, something else went wrong. Bummer.",
      "$when": "${otherTestNum < 50}"
    }
  ],
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "version": "1.2"
}
 

Ни одно из значений «$when» не препятствует появлению каких-либо из этих текстовых блоков. Но первый из них способен успешно отображать тело сообщения.

Как я могу использовать переменные для отображения или скрытия текстовых блоков в адаптивной карточке?

Ответ №1:

не могли бы вы, пожалуйста, попробовать этот образец. В нем объясняется, как скрыть/отобразить текстовые блоки.