class IAXFullFrame

This class holds an IAX full frame. More...

Full nameTelEngine::IAXFullFrame
Definition#include <libs/yiax/yateiax.h>
InheritsTelEngine::IAXFrame [public ]
Inherited byIAXFrameOut
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Public Static Methods

Protected Methods


Detailed Description

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:
typeFrame type
subclassFrame subclass
sCallNoSource (remote) call number
dCallNoDestination (local) call number
oSeqNoOutgoing sequence number
iSeqNoIncoming (expected) sequence number
tStampFrame timestamp
retransRetransmission flag
bufIE buffer
lenIE buffer length
markMark 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:
typeFrame type
subclassFrame subclass
sCallNoSource (remote) call number
dCallNoDestination (local) call number
oSeqNoOutgoing sequence number
iSeqNoIncoming (expected) sequence number
tStampFrame timestamp
bufIE buffer
lenIE buffer length
markMark 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:
typeFrame type
subclassFrame subclass
sCallNoSource (remote) call number
dCallNoDestination (local) call number
oSeqNoOutgoing sequence number
iSeqNoIncoming (expected) sequence number
tStampFrame timestamp
ieListList of frame IEs
maxlenMax frame data length
markMark 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:
maxlenMax 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:
incomingTrue if this is an incoming frame

Returns: True if the list is valid

IAXIEList*  removeIEList (bool delObj = true)

removeIEList

Remove the IE list

Parameters:
delObjTrue 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:
destThe string to fill
localThe local address
remoteThe remote address
incomingTrue 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:
typeThe 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.