Each interpretation represent how the NLU engine understand user's query then performing the corresponding fulfillment.
{
"domain" : "entertainment",
"intent" : "music",
"score" : 4.15378032316986,
"displayText" : "Playing coldplay",
"speechText" : "Playing coldplay",
"hints" : [],
"debug" : {},
"status" : 200,
"reason" : "",
"fulfillment" : {...}
}
domain
Identify the specific domain for this particular interpretation. Could be "entertainment",
"navigation", "communication", "generic" and several others.
intent
The intent represent the interpretation between what user says and what actions should be taken
by the software or product.
score
A number to indicate the relative confidence score when compared to other interpretations.
speechText
Text string that client can use to call the text to speech service.
displayText
The text string that client can use to display on the GUI.
debug
TBD, the engine debug information stays here.
hints
TBD, possible reprompt to tell users what they can say to finish this task flow.
status
Indicate the status of the fulfilling this specific interpretation. Check the reason field
if status is above 200.
reason
The detailed description about why this interpretation is failed to fulfill.
This is the one of the final results after parsing NLU's response, calling service providers and aggregating their results.
The client can directly use the results for actions, the action could be rendering the results on the GUI, generating the speech response to the users, or using the weblink and deeplink to start streaming the third party contents.
-Documentation for fulfillment
400:
We didn't try to fulfill the interpretation because we knew it would fail
{
"status": 400,
"reason": "invalid latitude and longitude"
}
503:
We tried to fulfill the interpretation, but it failed.
{
"status": 503,
"reason": error.message
}