--- a/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h Thu Aug 19 10:28:14 2010 +0300
+++ b/phonesrv_plat/converged_call_provider_api/inc/mccpcallobserver.h Tue Aug 31 15:45:17 2010 +0300
@@ -33,28 +33,28 @@
class MCCPCallObserver
{
public:
- /** Call states */
- enum TCCPCallState
- {
- /** Indicates initial call state after call creation. Basic state. */
- ECCPStateIdle,
- /** Indicates that the MT call is ringing but not answered yet by the local user. Basic state.*/
- ECCPStateRinging,
- /** MO Call: the network notifies to the MS that the remote party is now ringing. Basic state.*/
- ECCPStateConnecting,
- /** Indicates that call is connected and active. Basic state.*/
- ECCPStateConnected,
- /** Indicates that call is disconnecting. Basic state.*/
- ECCPStateDisconnecting,
- /** Indicates that the call is connected but on hold. Basic state.*/
- ECCPStateHold,
+ /** Call states */
+ enum TCCPCallState
+ {
+ /** Indicates initial call state after call creation. Basic state. */
+ ECCPStateIdle,
+ /** Indicates that the MT call is ringing but not answered yet by the local user. Basic state.*/
+ ECCPStateRinging,
+ /** MO Call: the network notifies to the MS that the remote party is now ringing. Basic state.*/
+ ECCPStateConnecting,
+ /** Indicates that call is connected and active. Basic state.*/
+ ECCPStateConnected,
+ /** Indicates that call is disconnecting. Basic state.*/
+ ECCPStateDisconnecting,
+ /** Indicates that the call is connected but on hold. Basic state.*/
+ ECCPStateHold,
- /** Call is transfering. Optional state.*/
- ECCPStateTransferring,
- /** MO call is being forwarded at receiver end. Optional state. */
- ECCPStateForwarding,
- /** Call is queued locally. Optional state. */
- ECCPStateQueued,
+ /** Call is transfering. Optional state.*/
+ ECCPStateTransferring,
+ /** MO call is being forwarded at receiver end. Optional state. */
+ ECCPStateForwarding,
+ /** Call is queued locally. Optional state. */
+ ECCPStateQueued,
/** Indicates that the local user has answered the MT call but the network has not
acknowledged the call connection yet. Must be sent after MCCPCall::Answer method has been completed. */
@@ -62,189 +62,189 @@
/** Indicates that the call is dialing. Must be sent after MCCPCall::Dial method has been completed. */
ECCPStateDialling,
-
- };
+
+ };
- /** Describes the possible call events. */
- enum TCCPCallEvent
- {
- /** Call has been placed on hold as a result of a local action. */
- ECCPLocalHold,
- /** Call has been placed on hold by the remote connected party. */
- ECCPRemoteHold,
- /** Call has been resumed as a result of a local action. */
- ECCPLocalResume,
- /** Call has been resumed by the remote connected party. */
- ECCPRemoteResume,
- /** Outgoing call has been barred by the local party. */
- ECCPLocalBarred,
- /** Outgoing call has been barred by the remote party. */
- ECCPRemoteBarred,
- /** Call is waiting at the remote end. Obsolote, use supplementary service ESsCallWaiting */
- ECCPRemoteWaiting,
- /** Call has been terminated by the remote party. */
- ECCPRemoteTerminated,
- /** Call is in queue */
- ECCPQueued,
+ /** Describes the possible call events. */
+ enum TCCPCallEvent
+ {
+ /** Call has been placed on hold as a result of a local action. */
+ ECCPLocalHold,
+ /** Call has been placed on hold by the remote connected party. */
+ ECCPRemoteHold,
+ /** Call has been resumed as a result of a local action. */
+ ECCPLocalResume,
+ /** Call has been resumed by the remote connected party. */
+ ECCPRemoteResume,
+ /** Outgoing call has been barred by the local party. */
+ ECCPLocalBarred,
+ /** Outgoing call has been barred by the remote party. */
+ ECCPRemoteBarred,
+ /** Call is waiting at the remote end. Obsolote, use supplementary service ESsCallWaiting */
+ ECCPRemoteWaiting,
+ /** Call has been terminated by the remote party. */
+ ECCPRemoteTerminated,
+ /** Call is in queue */
+ ECCPQueued,
- /** VoIP specific */
- ECCCSPEarlyMediaStarted,
+ /** VoIP specific */
+ ECCCSPEarlyMediaStarted,
- /** Call is secure */
- ECCPSecureCall,
- /** Call is not secure */
- ECCPNotSecureCall,
-
- /** VoIP specific
- User has called with address containing "SIPS:" prefix. This event notifies that
- secure call signaling is not possible. **/
- ECCPNotSecureSessionWithSips,
+ /** Call is secure */
+ ECCPSecureCall,
+ /** Call is not secure */
+ ECCPNotSecureCall,
+
+ /** VoIP specific
+ User has called with address containing "SIPS:" prefix. This event notifies that
+ secure call signaling is not possible. **/
+ ECCPNotSecureSessionWithSips,
- /** Call has been added to remote conference call at remote end */
- ECCPRemoteConferenceCreate,
-
- ////////////////////////////
- // CS call specific events
- ///////////////////////////
-
- /** CS call specific event */
- ECCPCSDataPortLoaned,
- /** CS call specific event */
- ECCPCSDataPortRecovered,
+ /** Call has been added to remote conference call at remote end */
+ ECCPRemoteConferenceCreate,
+
+ ////////////////////////////
+ // CS call specific events
+ ///////////////////////////
+
+ /** CS call specific event */
+ ECCPCSDataPortLoaned,
+ /** CS call specific event */
+ ECCPCSDataPortRecovered,
- /** One or more of following information has been changed
+ /** One or more of following information has been changed
* - Remote party name
* - Remote party number/address
* - Call parameters ( ie. service id )
- */
- ECCPNotifyRemotePartyInfoChange,
+ */
+ ECCPNotifyRemotePartyInfoChange,
/** Call secure status cannot be determined */
ECCPSecureNotSpecified
- };
+ };
- /** Flags indicating all the possible call control capabilities. */
- enum TCCPCallControlCaps
- {
- /** Call supports data calls. */
- ECCPCapsData = 0x00000001,
- /** Call supports fax calls. */
- ECCPCapsFax = 0x00000002,
- /** Call supports voice calls. */
- ECCPCapsVoice = 0x00000004,
- /** The Dial request is currently a valid action. */
- ECCPCapsDial = 0x00000008,
- /** The Connect request is currently a valid action. */
- ECCPCapsConnect = 0x00000010,
- /** The Hang Up request is currently a valid action. */
- ECCPCapsHangUp = 0x00000020,
- /** The Answer request is currently a valid action. */
- ECCPCapsAnswer = 0x00000040,
- /** The Loan Data Port request is currently a valid action. */
- ECCPCapsLoanDataPort = 0x00000080,
- /** The Recover Data Port request is currently a valid action. */
- ECCPCapsRecoverDataPort= 0x00000100,
- /** Indicates that this call can be put on hold. This implies that the call is currently
- active and that there is no other held call. */
- ECCPCapsHold = 0x00000200,
- /** Indicates that this call can be resumed. This implies that the call is currently
- on hold and that there is no other active call. */
- ECCPCapsResume = 0x00000400,
- /** Indicates that this call's state can be swapped to the opposite state. This
- implies that this call is either active or held. There may be another call
- in the opposite state and if this is the case then both calls will be simultaneously
- swapped to their opposite state. */
- ECCPCapsSwap = 0x00000800,
- /** Indicates that this incoming call can be deflected to another destination.*/
- ECCPCapsDeflect = 0x00001000,
- /** Indicates that this call can be transferred to the remote party of another call.
- For this capability to be set there must be one active call and one held or
- dialing call.*/
- ECCPCapsTransfer = 0x00002000,
- /** Indicates that this call can be joined either to another single call to form
- a conference call or to an existing conference call.*/
- ECCPCapsJoin = 0x00004000,
- /** Indicates that this call (within a conference call) can go into One to One mode.
- This action would put the rest of the conference call on hold. */
- ECCPCapsOneToOne = 0x00008000,
- /** Indicates that the user can activate a CCBS request on this failed call set-up.*/
- ECCPCapsActivateCCBS = 0x00010000,
- /** Indicates that this call is part of an alternating call and the client can call
- SwitchAlternatingCall() on this call in order to switch it to its other mode.*/
- ECCPCapsSwitchAlternatingCall = 0x00020000,
- /** Indicates that this call can use/create a new bearer. This means that multiple
- calls (multicall) can be active at the same time using no more that 7 bearers
- simultaneously. The other option is to swap with an active call, therefore
- it becomes held and shares the same bearer.*/
- ECCPCapsMulticall = 0x00040000,
- /** Indicates that this call is an packet switched call */
- ECCPCapsPSCall = 0x00080000,
- /** Indicates that this call supports unattended transfer method and that this call
- is currently active */
- ECCPCapsUnattendedTransfer = 0x00100000,
- /** Indicates that a conference call can be created. */
- KCCPCapsCreate = 0x00200000
- };
+ /** Flags indicating all the possible call control capabilities. */
+ enum TCCPCallControlCaps
+ {
+ /** Call supports data calls. */
+ ECCPCapsData = 0x00000001,
+ /** Call supports fax calls. */
+ ECCPCapsFax = 0x00000002,
+ /** Call supports voice calls. */
+ ECCPCapsVoice = 0x00000004,
+ /** The Dial request is currently a valid action. */
+ ECCPCapsDial = 0x00000008,
+ /** The Connect request is currently a valid action. */
+ ECCPCapsConnect = 0x00000010,
+ /** The Hang Up request is currently a valid action. */
+ ECCPCapsHangUp = 0x00000020,
+ /** The Answer request is currently a valid action. */
+ ECCPCapsAnswer = 0x00000040,
+ /** The Loan Data Port request is currently a valid action. */
+ ECCPCapsLoanDataPort = 0x00000080,
+ /** The Recover Data Port request is currently a valid action. */
+ ECCPCapsRecoverDataPort= 0x00000100,
+ /** Indicates that this call can be put on hold. This implies that the call is currently
+ active and that there is no other held call. */
+ ECCPCapsHold = 0x00000200,
+ /** Indicates that this call can be resumed. This implies that the call is currently
+ on hold and that there is no other active call. */
+ ECCPCapsResume = 0x00000400,
+ /** Indicates that this call's state can be swapped to the opposite state. This
+ implies that this call is either active or held. There may be another call
+ in the opposite state and if this is the case then both calls will be simultaneously
+ swapped to their opposite state. */
+ ECCPCapsSwap = 0x00000800,
+ /** Indicates that this incoming call can be deflected to another destination.*/
+ ECCPCapsDeflect = 0x00001000,
+ /** Indicates that this call can be transferred to the remote party of another call.
+ For this capability to be set there must be one active call and one held or
+ dialing call.*/
+ ECCPCapsTransfer = 0x00002000,
+ /** Indicates that this call can be joined either to another single call to form
+ a conference call or to an existing conference call.*/
+ ECCPCapsJoin = 0x00004000,
+ /** Indicates that this call (within a conference call) can go into One to One mode.
+ This action would put the rest of the conference call on hold. */
+ ECCPCapsOneToOne = 0x00008000,
+ /** Indicates that the user can activate a CCBS request on this failed call set-up.*/
+ ECCPCapsActivateCCBS = 0x00010000,
+ /** Indicates that this call is part of an alternating call and the client can call
+ SwitchAlternatingCall() on this call in order to switch it to its other mode.*/
+ ECCPCapsSwitchAlternatingCall = 0x00020000,
+ /** Indicates that this call can use/create a new bearer. This means that multiple
+ calls (multicall) can be active at the same time using no more that 7 bearers
+ simultaneously. The other option is to swap with an active call, therefore
+ it becomes held and shares the same bearer.*/
+ ECCPCapsMulticall = 0x00040000,
+ /** Indicates that this call is an packet switched call */
+ ECCPCapsPSCall = 0x00080000,
+ /** Indicates that this call supports unattended transfer method and that this call
+ is currently active */
+ ECCPCapsUnattendedTransfer = 0x00100000,
+ /** Indicates that a conference call can be created. */
+ KCCPCapsCreate = 0x00200000
+ };
protected:
- /**
- * Protects the observer being deleted through the observer interface
- * @since S60 3.2
- */
- virtual inline ~MCCPCallObserver() {};
+ /**
+ * Protects the observer being deleted through the observer interface
+ * @since S60 3.2
+ */
+ virtual inline ~MCCPCallObserver() {};
public:
- /**
- * An error has occurred concerning a specific call.
- * @since S60 3.2
- * @param aError Error code.
- * @param aCall Pointer to used ccp call, can be NULL in emergency call
- * @return none
- */
- virtual void ErrorOccurred( const TCCPError aError, MCCPCall* aCall ) = 0;
+ /**
+ * An error has occurred concerning a specific call.
+ * @since S60 3.2
+ * @param aError Error code.
+ * @param aCall Pointer to used ccp call, can be NULL in emergency call
+ * @return none
+ */
+ virtual void ErrorOccurred( const TCCPError aError, MCCPCall* aCall ) = 0;
- /**
- * The state of the call has changed.
- * @since S60 3.2
- * @param aState Call state.
- * @param aCall Pointer to used ccp call, can be NULL in emergency call
- * @return none
- */
- virtual void CallStateChanged( const MCCPCallObserver::TCCPCallState aState,
- MCCPCall* aCall) = 0;
+ /**
+ * The state of the call has changed.
+ * @since S60 3.2
+ * @param aState Call state.
+ * @param aCall Pointer to used ccp call, can be NULL in emergency call
+ * @return none
+ */
+ virtual void CallStateChanged( const MCCPCallObserver::TCCPCallState aState,
+ MCCPCall* aCall) = 0;
- /**
- * The state of the call has changed with inband tone, meaning network is playing
- * the tone relating to the state.
- * @since S60 3.2
- * @param aState Call state.
- * @param aCall Pointer to used ccp call, can be NULL in emergency call
- * @return none
- */
- virtual void CallStateChangedWithInband( const MCCPCallObserver::TCCPCallState aState,
- MCCPCall* aCall ) = 0;
+ /**
+ * The state of the call has changed with inband tone, meaning network is playing
+ * the tone relating to the state.
+ * @since S60 3.2
+ * @param aState Call state.
+ * @param aCall Pointer to used ccp call, can be NULL in emergency call
+ * @return none
+ */
+ virtual void CallStateChangedWithInband( const MCCPCallObserver::TCCPCallState aState,
+ MCCPCall* aCall ) = 0;
- /**
- * An event has occurred concerning a specific call.
- * @since S60 3.2
- * @param aEvent Occurred event.
- * @param aCall Pointer to used ccp call, can be NULL in emergency call
- * @return none
- */
- virtual void CallEventOccurred( const MCCPCallObserver::TCCPCallEvent aEvent,
- MCCPCall* aCall ) = 0;
+ /**
+ * An event has occurred concerning a specific call.
+ * @since S60 3.2
+ * @param aEvent Occurred event.
+ * @param aCall Pointer to used ccp call, can be NULL in emergency call
+ * @return none
+ */
+ virtual void CallEventOccurred( const MCCPCallObserver::TCCPCallEvent aEvent,
+ MCCPCall* aCall ) = 0;
- /**
- * Notifies changed call capabilities.
- * @since S60 3.2
- * @param aCapsFlags New capabilities for the call
- * @param aCall Pointer to used ccp call, can be NULL in emergency call
- * @return none
- */
- virtual void CallCapsChanged( const TUint32 aCapsFlags,
- MCCPCall* aCall ) = 0;
+ /**
+ * Notifies changed call capabilities.
+ * @since S60 3.2
+ * @param aCapsFlags New capabilities for the call
+ * @param aCall Pointer to used ccp call, can be NULL in emergency call
+ * @return none
+ */
+ virtual void CallCapsChanged( const TUint32 aCapsFlags,
+ MCCPCall* aCall ) = 0;
};
#endif // MCCPCALLOBSERVER_H