#include <CpPeerCall.h>


Public Types | |
| enum | callDialingMode { UNKNOWN = 0, ADD_PARTY, BLIND_TRANSFER } |
Public Types inherited from CpCall | |
| enum | eventType { CONNECTION_STATE = 0, TERMINAL_CONNECTION_STATE, CALL_STATE } |
| enum | metaEventState { METAEVENT_START = 0, METAEVENT_INPROGRESS, METAEVENT_END } |
| enum | callTypes { CP_NORMAL_CALL, CP_TRANSFER_CONTROLLER_ORIGINAL_CALL, CP_TRANSFER_CONTROLLER_TARGET_CALL, CP_TRANSFEREE_ORIGINAL_CALL, CP_TRANSFEREE_TARGET_CALL, CP_TRANSFER_TARGET_TARGET_CALL } |
| enum | handleWillingness { CP_WILL_NOT_HANDLE = 0, CP_MAY_HANDLE, CP_DEFINITELY_WILL_HANDLE } |
Public Member Functions | |
| CpPeerCall (UtlBoolean isEarlyMediaFor180Enabled=TRUE, CpCallManager *callManger=NULL, CpMediaInterface *callMediaInterface=NULL, int callIndex=-1, const char *callId=NULL, SipUserAgent *sipUA=NULL, int sipSessionReinviteTimer=0, const char *defaultCallExtension=NULL, int holdType=CallManager::NEAR_END_HOLD, int offeringDelayMilliSeconds=Connection::IMMEDIATE, int availableBehavior=Connection::RING, const char *forwardUnconditionalUrl=NULL, int busyBehavior=Connection::BUSY, const char *forwardOnBusyUrl=NULL, int forwardOnNoAnswerMilliSeconds=-1, const char *forwardOnNoAnswerUrl=NULL, int ringingExpireSeconds=CP_MAXIMUM_RINGING_EXPIRE_SECONDS) | |
| virtual | ~CpPeerCall () |
| param: callManager - the call processing task manager param: sipUA - SIP user agent task param: defaultCallExtension - the local user name/phone extension param: holdType - NEAR_SIDE_HOLD hold is handled in the media layer to mute the media in both directions, FAR_SIDE_HOLD hold is handled at the call control protocol layer param: offeringDelayMilliSeconds - the period of time that the call stays in offering before proceeding to the next state (i.e. ALERTING). A value of -1 indicates a delay of forever. Typically the user or an application acting on behalf of the user will take the call out of offering by accepting or regjecting the call. param: availableBehavior - defines the behavior of incoming calls after the offering delay times out and the phone (and resources) is available to take a call. This must be set to one of the lineAvailableBehaviors enumerations. param: forwardUnconditionalUrl - the URL to which the call is unconditionaly forwarded. This argument is ignored if availableBehavior is not set to FORWARD_UNCONDITIONAL param: busyBehavior - defines the behavior of incoming calls after the offering delay times out and the phone (and resources) are busy. This must be set to one of the lineBusyBehaviors enumerations. param: forwardOnBusyUrl - the URL to which the call is forwarded when the phone is busy. This argument is ignored if busyBehavior is not set to FORWARD_ON_BUSY param: forwardOnNoAnswerMilliSeconds - after a call rings (RING, RING_SILENT or FAKE_RING) for this period of time, forward the call to the URL in forwardOnNoAnswerUrl. A value of -1 indicates never. param: forwardOnNoAnswerUrl - the URL to which the call is fowarded on no answer after ringing. More... | |
| virtual void | inFocus (int talking=1) |
| virtual void | outOfFocus () |
| Connection * | addParty (const char *partyAddress, const char *callController, const char *originalCallConnectionAddress, const char *pNewCallId, SIPX_CONTACT_ID contactId=0, const void *pDisplay=NULL, const void *pSecurity=NULL, const char *locationHeader=NULL, const int bandWidth=AUDIO_CODEC_BW_DEFAULT, UtlBoolean bOnHold=false, const char *originalCallId=NULL, SIPX_TRANSPORT_DATA *pTransport=NULL, const RTP_TRANSPORT rtpTransportOptions=RTP_TRANSPORT_UDP) |
| OsStatus | fireSipXMediaEvent (SIPX_MEDIA_EVENT event, SIPX_MEDIA_CAUSE cause, SIPX_MEDIA_TYPE type, void *pEventData=NULL, UtlBoolean fireIfNoConnection=FALSE) |
| virtual void | printCall () |
| virtual void | getLocalAddress (char *address, int len) |
| virtual void | getLocalTerminalId (char *terminal, int len) |
| void | hangUp (const char *callId, const char *toTag, const char *fromTag) |
| UtlBoolean | getConnectionState (const char *callId, const char *toTag, const char *fromTag, int &state, UtlBoolean strictCompare) |
| virtual UtlBoolean | hasCallId (const char *callId) |
| virtual enum handleWillingness | willHandleMessage (const OsMsg &eventMessage) |
| virtual UtlBoolean | isQueued () |
| virtual UtlBoolean | isLocalTerminal (const char *terminalId) |
| UtlBoolean | isConnection (const char *callId, const char *toTag, const char *fromTag) |
| virtual UtlBoolean | canDisconnectConnection (Connection *pConnection) |
| UtlBoolean | isConnectionLocallyInitiatedRemoteHold (const char *callId, const char *toTag, const char *fromTag) |
Public Member Functions inherited from CpCall | |
| CpCall (CpCallManager *manager=NULL, CpMediaInterface *callMediaInterface=NULL, int callIndex=-1, const char *callId=NULL, int holdType=CallManager::NEAR_END_HOLD) | |
| virtual | ~CpCall () |
| void | setDropState (UtlBoolean state) |
| void | postMetaEvent (int state, int remoteIsCallee=-1) |
| void | postTaoListenerMessage (int responseCode, UtlString responseText, int eventId, int type, int cause=PtEvent::CAUSE_NORMAL, int remoteIsCallee=1, UtlString remoteAddress="", int isRemote=0, UtlString targetCallId=OsUtil::NULL_OS_STRING) |
| void | setCallState (int responseCode, UtlString responseText, int state, int cause=PtEvent::CAUSE_NORMAL) |
| virtual void | sendFlowgraphMessage (OsMsg &flowgraphMessage) |
| virtual void | localHold () |
| virtual void | hangUp (UtlString callId, int metaEventId) |
| virtual void | getCallId (UtlString &callId) |
| virtual void | setCallId (const char *callId) |
| void | setLocalConnectionState (int newState) |
| int | getLocalConnectionState () |
| int | getCallIndex () |
| int | getCallState () |
| void | enableDtmf () |
| virtual void | startMetaEvent (int metaEventId, int metaEventType, int numCalls, const char *metaEventCallIds[], int remoteIsCallee=-1) |
| virtual void | setMetaEvent (int metaEventId, int metaEventType, int numCalls, const char *metaEventCallIds[]) |
| void | getMetaEvent (int &metaEventId, int &metaEventType, int &numCalls, const UtlString *metaEventCallIds[]) const |
| virtual void | stopMetaEvent (int remoteIsCallee=-1) |
| void | setCallType (int callType) |
| int | getCallType () const |
| void | setTargetCallId (const char *targetCallId) |
| void | getTargetCallId (UtlString &targetCallId) const |
| void | setOriginalCallId (const char *targetCallId) |
| void | getOriginalCallId (UtlString &targetCallId) const |
| int | getLocalConnectionState (int state) |
| virtual UtlBoolean | isCallIdSet () |
| virtual UtlBoolean | isLocalHeld () |
| virtual UtlBoolean | isInFocus () const |
Static Public Member Functions | |
| static UtlBoolean | shouldCreateCall (SipUserAgent &sipUa, OsMsg &message, SdpCodecList &codecFactory) |
Static Public Member Functions inherited from CpCall | |
| static int | getCallTrackingListCount () |
| static void | getStateString (int state, UtlString *stateLabel) |
Protected Member Functions | |
| virtual UtlBoolean | handleCallMessage (OsMsg &eventMessage) |
| virtual UtlBoolean | handleMiNotificationMessage (MiNotification ¬ification) |
| UtlBoolean | handleRenegotiateCodecsConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleRenegotiateCodecsAllConnections (OsMsg *pEventMessage) |
| UtlBoolean | handleSilentRemoteHold (OsMsg *pEventMessage) |
| UtlBoolean | handleGetCodecCPULimit (OsMsg &eventMessage) |
| UtlBoolean | handleSetCodecCPULimit (OsMsg &eventMessage) |
| UtlBoolean | handleGetCodecCPUCost (OsMsg &eventMessage) |
| UtlBoolean | handleSetMicGain (OsMsg &eventMessage) |
| UtlBoolean | handleDialString (OsMsg *pEventMessage) |
| UtlBoolean | handleDequeueCall (OsMsg *pEventMessage) |
| UtlBoolean | handleTransfer (OsMsg *pEventMessage) |
| UtlBoolean | handleTransferAddress (OsMsg *pEventMessage) |
| UtlBoolean | handleTransferConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleTransfereeConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleSipMessage (OsMsg *pEventMessage) |
| UtlBoolean | handleDropConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleForceDropConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleGetAddresses (OsMsg *pEventMessage) |
| UtlBoolean | handleAcceptConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleRejectConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleRedirectConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleHoldTermConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleHoldAllTermConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleUnholdTermConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleTransferConnectionStatus (OsMsg *pEventMessage) |
| UtlBoolean | handleTransfereeConnectionStatus (OsMsg *pEventMessage) |
| UtlBoolean | handleGetNumConnections (OsMsg *pEventMessage) |
| UtlBoolean | handleGetConnections (OsMsg *pEventMessage) |
| UtlBoolean | handleGetSession (OsMsg *pEventMessage) |
| UtlBoolean | handleGetCallState (OsMsg *pEventMessage) |
| UtlBoolean | handleGetConnectionState (OsMsg *pEventMessage) |
| UtlBoolean | handleGetNextCseq (OsMsg *pEventMessage) |
| UtlBoolean | handleGetTerminalConnectionState (OsMsg *pEventMessage) |
| UtlBoolean | handleIsLocalTerminalConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleCancelTimer (OsMsg *pEventMessage) |
| UtlBoolean | handleOfferingExpired (OsMsg *pEventMessage) |
| UtlBoolean | handleRingingExpired (OsMsg *pEventMessage) |
| UtlBoolean | handleUnholdAllTermConnections (OsMsg *pEventMessage) |
| UtlBoolean | handleUnholdLocalTermConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleHoldLocalTermConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleGetLocalContacts (OsMsg *pEventMessage) |
| UtlBoolean | handleSendInfo (OsMsg *pEventMessage) |
| UtlBoolean | handleGetInviteHeaderValue (OsMsg *pEventMessage) |
| UtlBoolean | handleGetMediaConnectionId (OsMsg *pEventMessage) |
| UtlBoolean | handleLimitCodecs (OsMsg *pEventMessage) |
| UtlBoolean | handleLimitCodecPreferences (OsMsg *pEventMessage) |
| UtlBoolean | handleGetMediaEnergyLevels (OsMsg *pEventMessage) |
| UtlBoolean | handleGetCallMediaEnergyLevels (OsMsg *pEventMessage) |
| UtlBoolean | handleGetMediaRtpSourceIDs (OsMsg *pEventMessage) |
| UtlBoolean | handleGetCanAddParty (OsMsg *pEventMessage) |
| UtlBoolean | handleSplitConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleJoinConnection (OsMsg *pEventMessage) |
| UtlBoolean | handleSetMediaPassThrough (const OsMsg &eventMessage) |
| UtlBoolean | handleTransferOtherPartyHold (OsMsg *pEventMessage) |
| UtlBoolean | handleTransferOtherPartyJoin (OsMsg *pEventMessage) |
| UtlBoolean | handleTransferOtherPartyUnhold (OsMsg *pEventMessage) |
| UtlBoolean | handleGetUserAgent (OsMsg *pEventMessage) |
| virtual UtlBoolean | getConnectionState (const char *remoteAddress, int &state) |
| virtual UtlBoolean | getTermConnectionState (const char *address, const char *terminal, int &state) |
| virtual void | onHook () |
| virtual void | offHook (const void *hWnd=NULL) |
| Connection * | findHandlingConnection (OsMsg &eventMessage) |
| Connection * | findHandlingConnection (UtlString &remoteAddress) |
| Connection * | findHandlingConnection (const char *callId, const char *toTag, const char *fromTag, UtlBoolean strictCompare) |
| void | addConnection (Connection *connection) |
| void | removeConnection (Connection *connection) |
| Connection * | findQueuedConnection () |
| UtlBoolean | isConnectionLive (int *localConnectionState=NULL) |
| void | dropIfDead () |
| void | dropDeadConnections () |
| void | handleGetTermConnections (OsMsg *pEventMessage) |
| void | handleSetOutboundLine (OsMsg *pEventMessage) |
| void | getLocalContactAddresses (SIPX_CONTACT_ADDRESS contacts[], size_t nMaxContacts, size_t &nActualContacts) |
Protected Member Functions inherited from CpCall | |
| virtual UtlBoolean | handleMessage (OsMsg &eventMessage) |
| void | addHistoryEvent (const char *messageLogString) |
| void | addHistoryEvent (const int msgSubType, const CpMultiStringMessage *multiStringMessage) |
Private Member Functions | |
| CpPeerCall (const CpPeerCall &rCpPeerCall) | |
| CpPeerCall & | operator= (const CpPeerCall &rhs) |
| UtlBoolean | checkForTag (UtlString &address) |
Private Attributes | |
| int | offeringDelay |
| int | lineAvailableBehavior |
| UtlString | forwardUnconditional |
| int | lineBusyBehavior |
| UtlString | forwardOnBusy |
| int | noAnswerTimeout |
| UtlString | forwardOnNoAnswer |
| SipUserAgent * | sipUserAgent |
| int | mSipSessionReinviteTimer |
| UtlDList | mConnections |
| OsRWMutex | mConnectionMutex |
| int | mDialMode |
| UtlString | mLocalAddress |
| UtlString | mLocalTerminalId |
| UtlBoolean | mIsEarlyMediaFor180 |
| UtlBoolean | mbRequestedDrop |
| SIPXTACK_SECURITY_ATTRIBUTES * | mpSecurity |
| SIPX_CALLSTATE_EVENT | eLastMajor |
| SIPX_CALLSTATE_CAUSE | eLastMinor |
| MediaStreamPassThroughData * | mpPassThroughData |
Additional Inherited Members | |
Protected Attributes inherited from CpCall | |
| CpCallManager * | mpManager |
| UtlString | mCallId |
| volatile UtlBoolean | mCallInFocus |
| UtlBoolean | mRemoteDtmf |
| UtlBoolean | mDtmfEnabled |
| OsRWMutex | mCallIdMutex |
| CpMediaInterface * | mpMediaInterface |
| int | mCallIndex |
| int | mCallState |
| int | mHoldType |
| int | mLocalConnectionState |
| int | mLocalTermConnectionState |
| UtlBoolean | mLocalHeld |
| OsMsgDispatcher | mMediaMsgDispatcher |
| UtlBoolean | mDropping |
| int | mMetaEventId |
| int | mMetaEventType |
| int | mNumMetaEventCalls |
| UtlString * | mpMetaEventCallIds |
| int | mMessageEventCount |
| UtlString | mCallHistory [CP_CALL_HISTORY_LENGTH] |
| enum callDialingMode |
| CpPeerCall | ( | UtlBoolean | isEarlyMediaFor180Enabled = TRUE, |
| CpCallManager * | callManger = NULL, |
||
| CpMediaInterface * | callMediaInterface = NULL, |
||
| int | callIndex = -1, |
||
| const char * | callId = NULL, |
||
| SipUserAgent * | sipUA = NULL, |
||
| int | sipSessionReinviteTimer = 0, |
||
| const char * | defaultCallExtension = NULL, |
||
| int | holdType = CallManager::NEAR_END_HOLD, |
||
| int | offeringDelayMilliSeconds = Connection::IMMEDIATE, |
||
| int | availableBehavior = Connection::RING, |
||
| const char * | forwardUnconditionalUrl = NULL, |
||
| int | busyBehavior = Connection::BUSY, |
||
| const char * | forwardOnBusyUrl = NULL, |
||
| int | forwardOnNoAnswerMilliSeconds = -1, |
||
| const char * | forwardOnNoAnswerUrl = NULL, |
||
| int | ringingExpireSeconds = CP_MAXIMUM_RINGING_EXPIRE_SECONDS |
||
| ) |
|
virtual |
param: callManager - the call processing task manager param: sipUA - SIP user agent task param: defaultCallExtension - the local user name/phone extension param: holdType - NEAR_SIDE_HOLD hold is handled in the media layer to mute the media in both directions, FAR_SIDE_HOLD hold is handled at the call control protocol layer param: offeringDelayMilliSeconds - the period of time that the call stays in offering before proceeding to the next state (i.e. ALERTING). A value of -1 indicates a delay of forever. Typically the user or an application acting on behalf of the user will take the call out of offering by accepting or regjecting the call. param: availableBehavior - defines the behavior of incoming calls after the offering delay times out and the phone (and resources) is available to take a call. This must be set to one of the lineAvailableBehaviors enumerations. param: forwardUnconditionalUrl - the URL to which the call is unconditionaly forwarded. This argument is ignored if availableBehavior is not set to FORWARD_UNCONDITIONAL param: busyBehavior - defines the behavior of incoming calls after the offering delay times out and the phone (and resources) are busy. This must be set to one of the lineBusyBehaviors enumerations. param: forwardOnBusyUrl - the URL to which the call is forwarded when the phone is busy. This argument is ignored if busyBehavior is not set to FORWARD_ON_BUSY param: forwardOnNoAnswerMilliSeconds - after a call rings (RING, RING_SILENT or FAKE_RING) for this period of time, forward the call to the URL in forwardOnNoAnswerUrl. A value of -1 indicates never. param: forwardOnNoAnswerUrl - the URL to which the call is fowarded on no answer after ringing.
|
private |
|
protected |
| Connection * addParty | ( | const char * | partyAddress, |
| const char * | callController, | ||
| const char * | originalCallConnectionAddress, | ||
| const char * | pNewCallId, | ||
| SIPX_CONTACT_ID | contactId = 0, |
||
| const void * | pDisplay = NULL, |
||
| const void * | pSecurity = NULL, |
||
| const char * | locationHeader = NULL, |
||
| const int | bandWidth = AUDIO_CODEC_BW_DEFAULT, |
||
| UtlBoolean | bOnHold = false, |
||
| const char * | originalCallId = NULL, |
||
| SIPX_TRANSPORT_DATA * | pTransport = NULL, |
||
| const RTP_TRANSPORT | rtpTransportOptions = RTP_TRANSPORT_UDP |
||
| ) |
|
virtual |
Implements CpCall.
|
private |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
| OsStatus fireSipXMediaEvent | ( | SIPX_MEDIA_EVENT | event, |
| SIPX_MEDIA_CAUSE | cause, | ||
| SIPX_MEDIA_TYPE | type, | ||
| void * | pEventData = NULL, |
||
| UtlBoolean | fireIfNoConnection = FALSE |
||
| ) |
| UtlBoolean getConnectionState | ( | const char * | callId, |
| const char * | toTag, | ||
| const char * | fromTag, | ||
| int & | state, | ||
| UtlBoolean | strictCompare | ||
| ) |
|
protectedvirtual |
Implements CpCall.
|
virtual |
Reimplemented from CpCall.
|
protected |
|
virtual |
Reimplemented from CpCall.
|
protectedvirtual |
Implements CpCall.
|
protected |
|
protectedvirtual |
Implements CpCall.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
SIPXTAPI: TBD
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protectedvirtual |
Implements CpCall.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
SIPXTAPI: TBD
|
protected |
|
protected |
SIPXTAPI: TBD
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
| void hangUp | ( | const char * | callId, |
| const char * | toTag, | ||
| const char * | fromTag | ||
| ) |
|
virtual |
Implements CpCall.
|
virtual |
Reimplemented from CpCall.
| UtlBoolean isConnection | ( | const char * | callId, |
| const char * | toTag, | ||
| const char * | fromTag | ||
| ) |
|
protected |
| UtlBoolean isConnectionLocallyInitiatedRemoteHold | ( | const char * | callId, |
| const char * | toTag, | ||
| const char * | fromTag | ||
| ) |
|
virtual |
|
virtual |
Reimplemented from CpCall.
|
protectedvirtual |
|
protectedvirtual |
Implements CpCall.
|
private |
|
virtual |
Reimplemented from CpCall.
|
virtual |
Reimplemented from CpCall.
|
protected |
|
static |
|
virtual |
Implements CpCall.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |