|
|
This class holds all data needded to manage an IAX full frame
enum ControlType { Hangup = 0x01, Ringing = 0x03, Answer = 0x04, Busy = 0x05, Congestion = 0x08, FlashHook = 0x09, Option = 0x0b, KeyRadio = 0x0c, UnkeyRadio = 0x0d, Progressing = 0x0e, Proceeding = 0x0f, Hold = 0x10, Unhold = 0x11, VidUpdate = 0x12, SrcUpdate = 0x14, StopSounds = 0xff, } | ControlType |
IAX frame subclass enumeration types for frames of type Control
IAXFullFrame (Type type, u_int32_t subclass, u_int16_t sCallNo, u_int16_t dCallNo,
unsigned char oSeqNo, unsigned char iSeqNo,
u_int32_t tStamp, bool retrans,
const unsigned char* buf, unsigned int len, bool mark = false)
| IAXFullFrame |
Constructor. Constructs an incoming full frame
Parameters:
type | Frame type |
subclass | Frame subclass |
sCallNo | Source (remote) call number |
dCallNo | Destination (local) call number |
oSeqNo | Outgoing sequence number |
iSeqNo | Incoming (expected) sequence number |
tStamp | Frame timestamp |
retrans | Retransmission flag |
buf | IE buffer |
len | IE buffer length |
mark | Mark flag |
IAXFullFrame (Type type, u_int32_t subclass, u_int16_t sCallNo, u_int16_t dCallNo,
unsigned char oSeqNo, unsigned char iSeqNo,
u_int32_t tStamp,
const unsigned char* buf = 0, unsigned int len = 0, bool mark = false)
| IAXFullFrame |
Constructor. Constructs an outgoing full frame
Parameters:
type | Frame type |
subclass | Frame subclass |
sCallNo | Source (remote) call number |
dCallNo | Destination (local) call number |
oSeqNo | Outgoing sequence number |
iSeqNo | Incoming (expected) sequence number |
tStamp | Frame timestamp |
buf | IE buffer |
len | IE buffer length |
mark | Mark flag |
IAXFullFrame (Type type, u_int32_t subclass, u_int16_t sCallNo, u_int16_t dCallNo,
unsigned char oSeqNo, unsigned char iSeqNo,
u_int32_t tStamp, IAXIEList* ieList, u_int16_t maxlen, bool mark = false)
| IAXFullFrame |
Constructor. Constructs an outgoing full frame
Parameters:
type | Frame type |
subclass | Frame subclass |
sCallNo | Source (remote) call number |
dCallNo | Destination (local) call number |
oSeqNo | Outgoing sequence number |
iSeqNo | Incoming (expected) sequence number |
tStamp | Frame timestamp |
ieList | List of frame IEs |
maxlen | Max frame data length |
mark | Mark flag |
~IAXFullFrame ()
| ~IAXFullFrame |
[virtual]
Destructor
inline u_int16_t destCallNo ()
| destCallNo |
[const]
Get the destination call number
Returns: The destination call number
inline unsigned char oSeqNo ()
| oSeqNo |
[const]
Get the outgoing sequence number
Returns: The outgoing sequence number
inline unsigned char iSeqNo ()
| iSeqNo |
[const]
Get the incoming sequence number
Returns: The incoming sequence number
inline u_int32_t subclass ()
| subclass |
[const]
Get the subclass of this frame
Returns: The subclass of this frame
inline bool isAuthReq ()
| isAuthReq |
[const]
Check if this frame is used to request authentication
Returns: True if this frame is used to request authentication (like RegReq or RegAuth)
inline bool isInval ()
| isInval |
[const]
Check if this frame is an INVAL one
Returns: True if this frame is INVAL
IAXFullFrame* fullFrame ()
| fullFrame |
[virtual]
Get a pointer to this frame if it is a full frame
Returns: A pointer to this frame
Reimplemented from IAXFrame.
void updateBuffer (u_int16_t maxlen)
| updateBuffer |
Rebuild frame buffer from the list of IEs
Parameters:
maxlen | Max frame data length |
inline IAXIEList* ieList ()
| ieList |
Retrieve the IE list
Returns: IAXIEList pointer or NULL
bool updateIEList (bool incoming)
| updateIEList |
Update IE list from buffer if not already done
Parameters:
incoming | True if this is an incoming frame |
Returns: True if the list is valid
IAXIEList* removeIEList (bool delObj = true)
| removeIEList |
Remove the IE list
Parameters:
delObj | True to delete it |
Returns: IAXIEList pointer or NULL if requested to delete it or already NULL
void toString (String& dest, const SocketAddr& local, const SocketAddr& remote,
bool incoming)
| toString |
Fill a string with this frame
Parameters:
dest | The string to fill |
local | The local address |
remote | The remote address |
incoming | True if it is an incoming frame |
Reimplemented from GenObject.
inline const char* controlTypeText (int type)
| controlTypeText |
[static]
Get the string associated with the given IAX control type
Parameters:
type | The requested control type |
Returns: The text if type is valid or 0
void destroyed ()
| destroyed |
[protected virtual]
Destroyed notification. Clear data
Reimplemented from RefObject.
Generated by: paulc on bussard on Sun Oct 20 21:06:06 2013, using kdoc 2.0a54. |