我有话语
“ {my_slot}是什么”
“ my_slot”具有Java,Oracle,PHP之类的值
假设用户问一个问题“什么是js”(不在我的广告位值中),则在上述情况中触发了Alexa的defaultfallback。
如何获取用户提供的短信/广告位值?
答案 0 :(得分:0)
插槽值样本将被视为训练数据。因此,不在列表中的值也将返回给您。
创建自定义广告位类型时,需要了解的关键概念是 这是Alexa NLP(自然语言)的训练数据 处理中)。您提供的值不是严格的枚举或数组 限制了用户可以说的话。这有两个含义
1)不在您的广告位值中的单词和短语会被传递给您,
2)您的代码需要执行所需的任何验证(如果有的话) 说不明。
如果您的交互模型设计正确,那么当用户说“什么是js”时,将触发该意图,并且将插槽值“ js”传递给您。然后,您应该验证广告位值并以适当的响应进行回复。
如果没有针对用户话语的适当意图映射,则会触发 AMAZON.FallbackIntent
。
如果您的话语“什么是js”正在触发 $.ajax({
type: 'POST',
url: '@URL.Action("Comments","Controller")',
contentType: 'application/json;charset=utf-8',
dataType: 'json',
data: {},
success: function (data) {
var events = new Object();
events = $.map(data.d, function (item, i) {
for (var j = 0; j < data.d.length; j++) {
var event = new Object();
var startDate = Date.parse(item.WhenHappens )
event.start = startDate;
event.title = item.Title;
event.backgroundColor = "#c6458c";
event.description = item.Description;
return event;
}
})
callCalender(events);
},
error:function(e){
}
});
,请更新/更改您的交互模型,以使其正确映射到关联的意图和广告位。然后在您的后端中验证“ js”。