#c# #botframework #textinput #adaptive-cards #web-chat
#c# #botframework #ввод текста #адаптивные карточки #веб-чат
Вопрос:
Я использую элемент управления вводом AdaptiveCard в своем чат-боте Microsoft. Может ли кто-нибудь дать мне подсказки, как получить свойство изменения или событие TextInput или ChoiceSet адаптивного управления. Например, при выборе ChoiceSet я хочу заполнить некоторое значение в элементе управления TextInput?
//new TextBlock() { Text = "Country" },
new ChoiceSet()
{
Id = "Country",
Speak = "<s>Please enter your country.</s>",
IsMultiSelect = false,
Style = ChoiceInputStyle.Compact,
Separation= SeparationStyle.Default,
Choices = choices,
Value = "country"
},
new TextInput()
{
Id = "Mobile",
Speak = "<s>Please enter your mobile with country code.</s>",
Placeholder = " (country code)(Your Phone Number)",
Style = TextInputStyle.Tel,
IsRequired = true
},
Комментарии:
1. Это невозможно в каждом канале, если вы не создаете свой собственный клиент прямой линии. Какой канал вы используете?
2. Я использую чат-бота Microsoft на веб-сайте. означает, что мы используем канал веб-чата.
3. Пожалуйста, используйте пакет AdaptiveCards 1.1.2 NuGet, а не Microsoft. Адаптивные карточки .
Ответ №1:
Веб-чат не предлагает такого рода функциональность. Я могу придумать несколько обходных путей.
Вариант 1: использовать несколько карт
Вы можете отправить одну карточку, которая позволяет пользователю выбрать страну, а затем, как только этот выбор будет отправлен боту, на следующем ходу бот может отправить другую карточку с введенным текстом с введенным кодом страны.
Вариант 2: Укажите код страны в наборе выбора
Вы могли бы попросить пользователя ввести код страны вручную. Вам просто нужно убедиться, что ваш бот сообщает им, что им нужно это сделать, и вы могли бы указать, какой код страны связан с каждым выбором, возможно, в самом наборе выбора.
Вариант 3: Автоматически добавляйте код страны на стороне бота
В то время как Web Chat v4 очень настраиваем, ваш бот еще более настраиваем, потому что вы можете писать любой код, который захотите. Специализированная функциональность, подобная этой, лучше всего обрабатывается в самом боте, потому что у вас есть только такой контроль над клиентскими приложениями. Если вы дадите понять, что пользователю не нужно указывать код страны, ваш бот может просто добавить код страны к номеру телефона на основе выбранной страны. Вы даже можете сделать бота достаточно умным, чтобы определить, есть ли код страны, прежде чем он добавит его.
Комментарии:
1. Спасибо Кайлу за вашу помощь.