Команды MS: адаптивные карты

#c# #botframework #microsoft-teams #adaptive-cards

#c# #ботфреймворк #microsoft-команды #адаптивные карты

Вопрос:

У меня есть чат-бот, разработанный в Microsoft Bot framework, который использует адаптивную карту (версия v1.2) для получения информации от пользователей.

введите описание изображения здесь

Я заполняю данные формы, а затем нажимаю кнопку отправки. Я могу успешно извлечь значения, но адаптивная карта сбрасывается до значений по умолчанию (становится пустой формой).

Это странное поведение происходит только в командах MS.

Любое решение для поддержания обновленной формы с помощью пользовательских данных или это ожидаемое поведение?

Комментарии:

1. Я протестировал эту библиотеку адаптивных карт 1.2.4, она работает

2. Хорошо, я попробую 1.2.4

3. В этом обмене есть две вещи, которые меня смущают. В своем вопросе вы говорите, что «Это странное поведение происходит только в последних версиях MS Teams. Раньше это работало «. Затем Trinetra говорит: «Я протестировал эту адаптивную dll cards 1.2.4, она работает». Если «рабочий» означает, что адаптивные карточки не сбрасываются при отправке в командах, то оба этих утверждения являются ложными. Адаптивные карты всегда имели поведение сброса при отправке в командах. Сохранение входных значений не «работало» раньше и не «работает» сейчас. Мне очень любопытно увидеть эти условия, при которых команды адаптивных карт ввода не сбрасывались.

4. Я также очень уверен, что видел, как это ведет себя так, как говорит Кайл — он всегда «сбрасывает» «форму» на пустую

5. @KyleDelaney, я согласен, я передавал объект data для отображения полей ввода после его отправки, поэтому я смог увидеть адаптивную карточку (сохраняя предоставленные данные).).

Ответ №1:

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

  1. Вставьте уникальный идентификатор в объект данных действия отправки
  2. Сохраните действие в состоянии бота, чтобы его можно было получить с помощью идентификатора
  3. Когда вы получаете входящее действие с идентификатором и входными значениями, измените адаптивную карточку в сохраненном действии, чтобы она содержала новые входные значения, а затем обновите действие в командах с помощью измененной адаптивной карточки

Сохранение входных значений адаптивных карточек — одна из основных функций моей будущей библиотеки карточек. Вы можете выразить свою поддержку на этой странице GitHub, если вам интересно.

Комментарии:

1. Я не уверен, что произошло, но я запускаю новый клиент Teams 1.3.00.24755, и я заметил, что адаптивные карты теперь сохраняют значения. Предполагая, что что-то изменилось в конце команд?

2. @SteveJohnson — Вы правы, команды, наконец, изменили поведение. Все те часы, которые я потратил на эту функцию библиотеки карт, были потрачены впустую. Ну что ж.