问题
is it possible to log the question asked by user that triggers that unhandled intent.
What I plan to do. When the user says an utterance that alexa does not understand it fires the unhandled intent. Here I want to ask user to repeat the statement and store it in the database for future reference.
This would require me to create an intent expecting a slot which can accept a statement. (i.e slot values will not be predefined). Is the possible with alexa? In this case what should be slot type?
I am using the alexa-sdk library.
回答1:
Amazon alexa will not provide any log information as of now because of security reasons
Amazon Alexa will not call your backend service , if no intent where matched and Amazon echo device will reply back with "Im not able to understand, please try again later" or it try to match existing intent your created already
Because i facing same issue for a long time, basically i need to improve customer experience who using my skill. i tried explored as much as possible
回答2:
Not Directly, I am assuming that you are interested in the capturing the failed query in a text format. Assuming that you have your coded your intent's as per your requirements, in the exception scenario where there is no intent match it should go to a default/fallback intent. In that intent use the below intent and Slot Type.
"intent": "RawText"
"slots":[{
"name":"Text",
"type":"AMAZON.LITERAL"
}]
You can capture the query as Raw Text in your Lambda/WebService Hope this is what you wanted
PS: I haven't used it in Prod, Also I read that Amazon has a plan to deprecate Literal so not sure how long they will support it
来源:https://stackoverflow.com/questions/41887220/log-the-utterenances-that-are-not-handled-by-amazon-alexa