MGCPMessage Class Reference
An MGCP command or response.
More...
#include <yatemgcp.h>
List of all members.
Public Member Functions |
| MGCPMessage (MGCPEngine *engine, const char *name, const char *ep, const char *ver="MGCP 1.0") |
| MGCPMessage (MGCPTransaction *trans, unsigned int code, const char *comment=0) |
virtual | ~MGCPMessage () |
bool | valid () const |
const String & | name () const |
int | code () const |
const String & | version () const |
const String & | comment () const |
bool | isCommand () const |
bool | isResponse () const |
bool | isAck () const |
unsigned int | transactionId () const |
const String & | endpointId () const |
void | toString (String &dest) const |
Static Public Member Functions |
static bool | parse (MGCPEngine *engine, ObjList &dest, const unsigned char *buffer, unsigned int len, const char *sdpType="application/sdp") |
Public Attributes |
NamedList | params |
ObjList | sdp |
Protected Member Functions |
| MGCPMessage (MGCPEngine *engine, const char *name, int code, unsigned int transId, const char *epId, const char *ver) |
Friends |
class | MGCPTransaction |
Detailed Description
An MGCP command or response.
This class holds an MGCP message, either command or response, along with its parameters. The
Constructor & Destructor Documentation
Constructor. Construct an outgoing command message. A transaction id will be requested from the endpoint's engine. The message will be invalidated if failed to get a transaction id or the command name is unknown
- Parameters:
-
| engine | The engine sending this message |
| name | Command name |
| ep | The id of the endpoint issuing this command |
| ver | The protocol version to use |
Constructor. Construct an outgoing response message The message will be invalidated if failed to get a transaction id or the code is greater then 999
- Parameters:
-
| trans | The transaction to respond |
| code | The response code ranging from 0 to 999 |
| comment | Optional response comment |
MGCPMessage |
( |
MGCPEngine * |
engine, |
|
|
const char * |
name, |
|
|
int |
code, |
|
|
unsigned int |
transId, |
|
|
const char * |
epId, |
|
|
const char * |
ver | |
|
) |
| | [protected] |
Constructor. Used by the parser to construct an incoming message
- Parameters:
-
| engine | The engine receiving this message |
| name | Command name or response comment |
| code | The response code in the range 0 to 999 or -1 if the received message is a command |
| transId | The id of the transaction owning this message |
| epId | The id of the endpoint issuing this command |
| ver | The protocol version |
Member Function Documentation
int code |
( |
|
) |
const [inline] |
Get the response code if this is a response message
- Returns:
- The response code contained in this message
const String& comment |
( |
|
) |
const [inline] |
Get the comment from a response message
- Returns:
- The comment of this message
const String& endpointId |
( |
|
) |
const [inline] |
Get the message's endpoint id if this is a command
- Returns:
- The message's endpoint id if this is a command
bool isAck |
( |
|
) |
const [inline] |
Check if this message is a response ACK (code is between 0 and 99, including the margins)
- Returns:
- True if this message is a response ACK
bool isCommand |
( |
|
) |
const [inline] |
Check if this is a command (code is a negative value)
- Returns:
- True if this message is a command
bool isResponse |
( |
|
) |
const [inline] |
Check if this is a response message (code is greater then or equal to 100)
- Returns:
- True if this message is a response
const String& name |
( |
|
) |
const [inline] |
Get the command name or response code text representation of this message
- Returns:
- The command name or response text representation of this message
static bool parse |
( |
MGCPEngine * |
engine, |
|
|
ObjList & |
dest, |
|
|
const unsigned char * |
buffer, |
|
|
unsigned int |
len, |
|
|
const char * |
sdpType = "application/sdp" | |
|
) |
| | [static] |
Parse a received buffer according to RFC 3435. Command and protocol names are converted to upper case. The enpoint id is converted to lower case. Message parameter names are converted to lower case if the engine's flag is set. Message parameter values and SDP(s) are stored unchanged
- Parameters:
-
| engine | The receiving engine |
| dest | The list of received messages |
| buffer | The buffer to parse |
| len | The buffer length |
| sdpType | The MIME SDP content type if the message contains any SDP body |
- Returns:
- False on failure, true on success. If failed, the destination list may contain a response message to be sent
void toString |
( |
String & |
dest |
) |
const |
Convert this message to a string representation to be sent to the remote endpoint or printed to output
- Parameters:
-
unsigned int transactionId |
( |
|
) |
const [inline] |
Get the message's transaction id
- Returns:
- The message's transaction id
bool valid |
( |
|
) |
const [inline] |
Check if this is a valid message
- Returns:
- True if this is a valid message
const String& version |
( |
|
) |
const [inline] |
Get the protocol version of a command message
- Returns:
- The protocol version of this message
Member Data Documentation
Keep the message parameters
Keep the SDP(s) carried by this message as MimeSdpBody object(s)
The documentation for this class was generated from the following file: