|
Yate
|
An MGCP command or response. More...
#include <yatemgcp.h>
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 |
Public Member Functions inherited from RefObject | |
| RefObject () | |
| virtual | ~RefObject () |
| virtual void * | getObject (const String &name) const |
| virtual bool | alive () const |
| bool | ref () |
| bool | deref () |
| int | refcount () const |
| virtual void | destruct () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual const String & | toString () const |
| virtual const String & | traceId () const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Static Public Member Functions | |
| static bool | parse (MGCPEngine *engine, ObjList &dest, const unsigned char *buffer, unsigned int len, const char *sdpType="application/sdp") |
Static Public Member Functions inherited from RefObject | |
| static bool | alive (const RefObject *obj) |
| static bool | efficientIncDec () |
Static Public Member Functions inherited from GenObject | |
| static void * | getObject (const String &name, const GenObject *obj) |
| static bool | getObjCounting () |
| static void | setObjCounting (bool enable) |
| static NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
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) | |
Protected Member Functions inherited from RefObject | |
| virtual void | zeroRefs () |
| bool | resurrect () |
| virtual void | destroyed () |
Friends | |
| class | MGCPTransaction |
An MGCP command or response.
This class holds an MGCP message, either command or response, along with its parameters. The
| MGCPMessage | ( | MGCPEngine * | engine, |
| const char * | name, | ||
| const char * | ep, | ||
| const char * | ver = "MGCP 1.0" ) |
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
| engine | The engine sending this message |
| name | Command name |
| ep | The id of the endpoint issuing this command |
| ver | The protocol version to use |
References name().
Referenced by MGCPMessage().
| MGCPMessage | ( | MGCPTransaction * | trans, |
| unsigned int | code, | ||
| const char * | comment = 0 ) |
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
| trans | The transaction to respond |
| code | The response code ranging from 0 to 999 |
| comment | Optional response comment |
|
virtual |
Destructor
|
protected |
Constructor. Used by the parser to construct an incoming message
| 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 |
References code(), MGCPMessage(), name(), and params.
|
inline |
Get the response code if this is a response message
Referenced by isAck(), isCommand(), isResponse(), MGCPMessage(), and MGCPMessage().
|
inline |
Get the comment from a response message
Referenced by MGCPMessage().
|
inline |
Get the message's endpoint id if this is a command
|
inline |
Check if this message is a response ACK (code is between 0 and 99, including the margins)
References code().
|
inline |
Check if this is a command (code is a negative value)
References code().
|
inline |
Check if this is a response message (code is greater then or equal to 100)
References code().
|
inline |
Get the command name or response code text representation of this message
Referenced by MGCPMessage(), and MGCPMessage().
|
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
| 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 |
| void toString | ( | String & | dest | ) | const |
Convert this message to a string representation to be sent to the remote endpoint or printed to output
| dest | Destination string |
|
inline |
Get the message's transaction id
|
inline |
Check if this is a valid message
|
inline |
Get the protocol version of a command message
| NamedList params |
Keep the message parameters
Referenced by MGCPMessage().
| ObjList sdp |
Keep the SDP(s) carried by this message as MimeSdpBody object(s)