C#-使用Alexa.net-我可以从代码中调用意图吗?
作者:互联网
我正在尝试使用alexa.net构建测验游戏.但是,我遇到了潜在的问题.
每当用户回答了一个问题并且评估了答案后,我都想立即提出另一个问题.
目前,用户必须手动请求另一个问题.我想发生的事情是,处理问题的意图会不断地自我调用,直到用户积极选择结束游戏为止.
那有可能吗?如果是这样,有人可以指出正确的方向,甚至可以写一个简短的hello-world风格的例子吗?
解决方法:
假设您想创建一个数学问答游戏,其中Alexa会问您随机的数学问题,并且您必须提供正确的答案.游戏必须继续进行,直到用户明确要求退出为止.
创建一个当用户说出答案时触发的AnswerIntent.我们的答案是数字,因此请使用AMAZON.NUMBER插槽创建此意图,以便您捕获所说的数字. (根据问题的答案选择您的位置).
AnswerIntent的样本话语:
{number}
the answer is {number}
is it {number}
{number} -> AMAZON.NUMBER slot
因此,每次用户说出您的问题的答案时,您都会在后端收到一个POST请求,其中触发了意图(在本例中为AnswerIntent),插槽及其值.然后:
>验证答案.
>更新分数(如果您的所有用例都有分数)
>生成下一个问题.
>提供下一个问题的答案.
只有在与用户互动时,您才会在后端收到一个请求.因此,请确保当用户说出答案时,您的回答中有下一个要问的问题.这样,用户可以继续回答问题而无需明确地提出问题.
互动示例:
User : Alexa, open math quiz
Alexa: Welcome to math quiz. Here is your first question.
What is the sum of five and four.
[you will receive the launch request and your response has the first question]
User : Nine
[you will receive AnswerIntent request, with number slot having value 9.
Validate the answer and generate the next question]
Alexa: Correct!. Here is your next question.
What is the product of ten and five.
User : Twenty.
Alexa: Wrong, the right answer is fifty.
here is your next question.
What is sum of two and six.
User : Stop
[AMAZON.StopIntent is triggered and you can now end the game.]
Alexa: Bye.
使用sessionAttributes可以存储有关问题或其答案的一些信息,以便在收到用户响应时可以在后端轻松验证它.
标签:alexa,alexa-skills-kit,alexa-skill,alexa-voice-service,c 来源: https://codeday.me/bug/20191024/1924015.html