如何获取聊天机器人中自适应卡控件更改的值?



我正在使用Microsoft ChatBot中的AdaptiveCard输入控件。任何人都可以给我提示如何获取自适应控件的文本输入或选择集的更改属性或事件。例如,在选择选择集时,我想在文本输入控件中填充一些值?

//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
},

Web Chat 不提供此类功能。我可以想到一些解决方法。

选项 1:使用多张卡

您可以发送一张允许用户选择国家/地区的卡片,然后在将该选择发送到机器人后,在下一轮,机器人可以发送另一张卡片,其中包含填充了国家/地区代码的文本输入。

选项

2:在选项集中指明国家/地区代码

您可以让用户手动输入国家/地区代码。你只需要确保你的机器人告诉他们他们需要这样做,你可以指示与每个选项关联的国家/地区代码,可能在选择集本身中。

选项 3:在机器人端自动预置国家/地区代码

虽然 Web Chat v4 非常可自定义,但机器人的可自定义性更高,因为你可以编写所需的任何代码。像这样的专用功能最好在机器人本身中处理,因为你对客户端应用程序只有这么多控制权。如果明确表示用户不需要包含国家/地区代码,则机器人只需根据所选国家/地区将国家/地区代码添加到电话号码即可。您甚至可以使机器人足够智能,以便在添加国家/地区代码之前检测国家/地区代码是否已经存在。

最新更新