MRCP response messages
An MRCP response message consists of a Response line followed by the message header section and an optional message body containing data specific to the method.
response-line = mrcp-version SP message-length SP request-id SP status-code SP request-state CRLF
The mrcp-version field specifies the MRCP protocol version that is being used by the client:
mrcp-version = "MRCP" "/" 1*DIGIT "." 1*DIGIT
MRCP Versions supported by the LumenVox Media Server are: MRCP/1.0 and MRCP/2.0
The message-length field describes the length of the message (in bytes), including the start-line:
message-length = 1*19DIGIT
The request-id field is a unique identifier associated with each request. Clients should assign incremental numbers to each unique request, and the Media Server will use this request-id when responding to requests. In the response message, this value indicates which specific request the response relates to.
request-id = 1*10DIGIT
The status-code field is a 3-digit code representing the success or failure or other status of the request.
status-code = 3DIGIT
The request-state field indicates if the action initiated by the request is PENDING, IN-PROGRESS or COMPLETE. The COMPLETE status means that the Request was processed to completion and that there will be no more events or other messages from that resource to the client with that request-id. The PENDING status means that the request has been placed on a queue and will be processed in first-in-first-out order. The IN-PROGRESS status means that the request is being processed and is not yet complete. A PENDING or IN-PROGRESS status indicates that further Event messages may be delivered with that request-id.
request-state = "COMPLETE" / "IN-PROGRESS" / "PENDING"
Status Codes
The status codes are classified under the Success (2XX) codes, Client Failure (4XX) codes, and Server Failure (5XX).
Success Codes
Code | Meaning |
200 | Success |
201 | Success with some optional header fields ignored |
Client Failure 4xx Codes
Code | Meaning |
401 | Method not allowed |
402 | Method not valid in this state |
403 | Unsupported header field |
404 | Illegal value for header field. This is the error for a syntax violation. |
405 | Resource not allocated for this session or does not exist |
406 | Mandatory Header Field Missing |
407 | Method or Operation Failed (e.g., Grammar compilation failed in the recognizer. Detailed cause codes might be available through a resource specific header.) |
408 | Unrecognized or unsupported message entity |
409 | Unsupported Header Field Value. This is a value that is syntactically legal but exceeds the implementation's capabilities or expectations. |
410 | Non-Monotonic or Out of order sequence number in request. |
411-420 | Reserved for future assignment |
Server Failure 5xx Codes
Code | Meaning |
501 | Server Internal Error |
502 | Protocol Version not supported |
503 | Reserved for future assignment |
504 | Message too large |