Alexa会话保持打开状态,不会提示用户。为什么认证反馈失败?

时间:2019-04-05 09:12:27

标签: node.js amazon alexa alexa-skills-kit alexa-app

Amazon告知“提交的认证过程失败”。

如果我在语音和语音提示中重复同样的文字

.speak(speechOutput)
.reprompt(speechOutput)
After the skill completes a task, the session remains open with no prompt to the user. The skill must close the session after fulfilling requests if it does not prompt the user for any input.

Steps To Reproduce:
User: "Alexa, öffne blick analytics"
Skill: "Blick Analytics gestartet. Du bist nicht authentifiziert. Nenne die Parole!"
User: "XXX"
Skill: "Parole richtig, du bist authentifiziert."
User: "wieviele besucher hatten wir gestern"
Skill: "Gestern hatten wir X Millionen Nutzer. Juhuu, das ist X Prozent über dem Tagesziel." and the session remains open.

Please ensure that the session only remains open when the user is prompted for input.

如果我删除repromt函数,它将失败并

The skill prompts users for an input then immediately closes the session. Make sure the session remains open anytime users are prompted for inputs.

Steps To Reproduce:
User: "Alexa, starte blick analytics"
Skill: "Blick Analytics gestartet. Los gehts."
User: "zahlen gestern"
Skill: "Wir hatten X Millionen Seitenaufrufe. Das ist X Prozent vom Tagesziel entfernt mit dem wir Nummer 1 werden. Sag WEITER für mehr."
And the session gets closed.

使会话保持打开状态的正确输出是什么?

1 个答案:

答案 0 :(得分:0)

实际上,答案与代码无关,但与您返回的文本无关。

您必须在保持会话打开的任何时间与用户进行通信。

两者都有

.speak(speechOutputForSpeak)
.reprompt(speechOutputForRepromt)

无论是相同的文字还是更好的文字,我认为都是不同的文字。

.speak()的输出必须以类似以下内容结尾。 “您还有其它问题么?”告诉用户会话保持打开状态

我在repromot()中仅使用了“更多问题?”

示例Alexa会做什么:

User: "How many users yesterday?"
Skill: "We had X Million users. Do you have more questions?" 
User: "How many pageviews yesterday?"
Skill: "We had X Million pageviews. Do you have more questions" 
Repromt Skill: "More questions?" 
User: "Female share yesterday?"
Skill: "... Do you have more questions?" 
Repromt Skill: "More questions?" 
User: No Interaction after Repromt
Closing the skill