我正在尝试构建一个alexa自定义技能。我正面临一个问题,即我试图从用户那里得到是/否的回答,问题是技能问用户。
Alexa: Would you like to know the rules of the game?
User: <Can respond either Yes or No>
根据用户响应,我想执行特定操作。
这是我的意图架构:
{
"intents": [
{
"intent": "AMAZON.StopIntent"
},
{
"intent": "AMAZON.CancelIntent"
},
{
"intent": "AMAZON.HelpIntent"
},
{
"intent": "StartGame"
},
{
"intent": "GetRules"
}
]
}
以下是我的示例话语:
StartGame Begin the game
StartGame Start the game
GetRules What are the rules
GetRules Get the rules
GetRules Tell me the rules
GetRules Tell me the rules again
技能问用户的问题如下:
Welcome to the game. Would you like me to tell you the rules?
每当我说&#34;是&#34;时,StartGame意图就是被触发的内容。 (&#34; No&#34;)的情况也是如此。 Alexa总是选择StartGame作为意图。调用&#34; GetRules&#34;的最佳方式是什么?意图。我希望用户只说“是/否”而不是说“#34;获取规则&#34;。
如果已经回复/需要更多信息,请告诉我。
答案 0 :(得分:5)
您需要使用AMAZON.YesIntent和AMAZON.NoIntent。
你可以在这里阅读:
答案 1 :(得分:0)
请在交互模型中添加以下代码。
{
"name": "AMAZON.NoIntent",
"samples": []
},
{
"name": "AMAZON.YesIntent",
"samples": []
}
并在lambda中提供是/否的业务逻辑。
'AMAZON.YesIntent': function () {
//business code
},
'AMAZON.NoIntent': function () {
//business code
}