Recognizer GET-RESULT
The GET-RESULT method, sent from the client to the server while the recognizer is in the recognized state, retrieves the result of a completed recognition in NLSML format. It lets a client ask for the result again under different constraints—for example a different confidence threshold—without re-running recognition: the media server re-computes the result from the retained recognition data according to the constraints supplied in the GET-RESULT request.
This is useful when the client wants more detail than the original result returned, or wants to re-evaluate the same utterance against a relaxed or tightened threshold.
MRCPv1 example
The client re-requests the result with a confidence threshold of 90; the server returns the NLSML result:
| C->S: GET-RESULT 543257 MRCP/1.0 Confidence-Threshold:90 S->C: MRCP/1.0 543257 200 COMPLETE Content-Type:application/x-nlsml Content-Length:276 <?xml version="1.0"?> <result grammar="session:request1@form-level.store"> <interpretation> <instance name="Person"> <Person> <Name>Andre Roy</Name> </Person> </instance> <input>may I speak to Andre Roy</input> </interpretation> </result> |
MRCPv2 example
The same request in MRCPv2, with the Channel-Identifier header and the 0.0–1.0 confidence range:
| C->S: MRCP/2.0 ... GET-RESULT 543257 Channel-Identifier:32AECB23433801@speechrecog Confidence-Threshold:0.9 S->C: MRCP/2.0 ... 543257 200 COMPLETE Channel-Identifier:32AECB23433801@speechrecog Content-Type:application/nlsml+xml Content-Length:... <?xml version="1.0"?> <result grammar="session:request1@form-level.store"> <interpretation> <instance name="Person"> <ex:Person> <ex:Name>Andre Roy</ex:Name> </ex:Person> </instance> <input>may I speak to Andre Roy</input> </interpretation> </result> |
