#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:
Чтобы сохранить входные значения адаптивных карт в командах, вам необходимо выполнить следующее:
- Вставьте уникальный идентификатор в объект данных действия отправки
- Сохраните действие в состоянии бота, чтобы его можно было получить с помощью идентификатора
- Когда вы получаете входящее действие с идентификатором и входными значениями, измените адаптивную карточку в сохраненном действии, чтобы она содержала новые входные значения, а затем обновите действие в командах с помощью измененной адаптивной карточки
Сохранение входных значений адаптивных карточек — одна из основных функций моей будущей библиотеки карточек. Вы можете выразить свою поддержку на этой странице GitHub, если вам интересно.
Комментарии:
1. Я не уверен, что произошло, но я запускаю новый клиент Teams 1.3.00.24755, и я заметил, что адаптивные карты теперь сохраняют значения. Предполагая, что что-то изменилось в конце команд?
2. @SteveJohnson — Вы правы, команды, наконец, изменили поведение. Все те часы, которые я потратил на эту функцию библиотеки карт, были потрачены впустую. Ну что ж.