27 * MCCECallObserver is used for errors, statuses, notifications etc |
27 * MCCECallObserver is used for errors, statuses, notifications etc |
28 * |
28 * |
29 * @since S60 3.2 |
29 * @since S60 3.2 |
30 */ |
30 */ |
31 class MCCETransferInterface |
31 class MCCETransferInterface |
32 { |
32 { |
33 protected: |
33 protected: |
34 |
34 |
35 /** |
35 /** |
36 * Protected destructor. Object cannot be deleted from client. |
36 * Protected destructor. Object cannot be deleted from client. |
37 * @since S60 3.2 |
37 * @since S60 3.2 |
38 */ |
38 */ |
39 virtual ~MCCETransferInterface() {}; |
39 virtual ~MCCETransferInterface() {}; |
40 |
40 |
41 public: |
41 public: |
42 |
42 |
43 /** |
43 /** |
44 * Attended transfer to given address. |
44 * Attended transfer to given address. |
45 * Actual result like status, events and errors come via MCCECallObserver class. |
45 * Actual result like status, events and errors come via MCCECallObserver class. |
46 * Afterwards both calls will be disconnected from CCE side. |
46 * Afterwards both calls will be disconnected from CCE side. |
47 * @param aTransferTarget Transfer target address. Always takes active call, address is not used |
47 * @param aTransferTarget Transfer target address. Always takes active call, address is not used |
48 * at the moment! |
48 * at the moment! |
49 * @return KErrArgument transfer address was illegal. |
49 * @return KErrArgument transfer address was illegal. |
50 * @return KErrNotFound existing active call was not found with given address. |
50 * @return KErrNotFound existing active call was not found with given address. |
51 * @return KErrNotReady if this call is not on-hold state and the other in connected state |
51 * @return KErrNotReady if this call is not on-hold state and the other in connected state |
52 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
52 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
53 * @pre Two calls exist. This call is in state MCCECallObserver::ECCEStateHold and the other in |
53 * @pre Two calls exist. This call is in state MCCECallObserver::ECCEStateHold and the other in |
54 * MCCECallObserver::ECCEStateConnected |
54 * MCCECallObserver::ECCEStateConnected |
55 * @since S60 3.2 |
55 * @since S60 3.2 |
56 */ |
56 */ |
57 virtual TInt AttendedTransfer( const TDesC& aTransferTarget ) = 0; |
57 virtual TInt AttendedTransfer( const TDesC& aTransferTarget ) = 0; |
58 |
58 |
59 /** |
59 /** |
60 * Unattended transfer to given address. Call is requested to be transferred to given address. |
60 * Unattended transfer to given address. Call is requested to be transferred to given address. |
61 * Afterwards call will be disconnected from CCE side. If transfer fails a new incoming call |
61 * Afterwards call will be disconnected from CCE side. If transfer fails a new incoming call |
62 * will be received to reconnect to recipient. Reconnected call is initiated from recipient end. |
62 * will be received to reconnect to recipient. Reconnected call is initiated from recipient end. |
63 * Actual result like status, events and errors come via MCCECallObserver class. |
63 * Actual result like status, events and errors come via MCCECallObserver class. |
64 * This is not used for CS. |
64 * This is not used for CS. |
65 * @since S60 3.2 |
65 * @since S60 3.2 |
66 * @param aTransferTarget Address of the target |
66 * @param aTransferTarget Address of the target |
67 * @return KErrNone if request was started succesfully. |
67 * @return KErrNone if request was started succesfully. |
68 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
68 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
69 * @return KErrNotReady if call is not in connected or on-hold state. |
69 * @return KErrNotReady if call is not in connected or on-hold state. |
70 * @return KErrArgument transfer address was illegal. |
70 * @return KErrArgument transfer address was illegal. |
71 * @pre Call state is MCCECallObserver::ECCPStateConnected or MCCECallObserver::ECCEStateHold |
71 * @pre Call state is MCCECallObserver::ECCPStateConnected or MCCECallObserver::ECCEStateHold |
72 */ |
72 */ |
73 virtual TInt UnattendedTransfer( const TDesC& aTransferTarget ) = 0; |
73 virtual TInt UnattendedTransfer( const TDesC& aTransferTarget ) = 0; |
74 |
74 |
75 /** |
75 /** |
76 * Accept incoming unattended transfer request from the call remote party. |
76 * Accept incoming unattended transfer request from the call remote party. |
77 * @since Series 60 3.2 |
77 * @since Series 60 3.2 |
78 * @param aAccept Boolean value is transfer accepted or not. |
78 * @param aAccept Boolean value is transfer accepted or not. |
79 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
79 * @return KErrNotSupported Current plug-in does not support transfer functionality. |
80 * @return KErrNone if request was started succesfully. |
80 * @return KErrNone if request was started succesfully. |
81 * @return KErrNotReady if call is not in transferring state. |
81 * @return KErrNotReady if call is not in transferring state. |
82 * @pre Call state is MCCECallObserver::ECCEStateTransferring |
82 * @pre Call state is MCCECallObserver::ECCEStateTransferring |
83 */ |
83 */ |
84 virtual TInt AcceptTransfer( const TBool aAccept ) = 0; |
84 virtual TInt AcceptTransfer( const TBool aAccept ) = 0; |
85 |
85 |
86 /** |
86 /** |
87 * NOTE: Will be removed! MCCECallObserver::HandleTransfer contains remote party already. |
87 * NOTE: Will be removed! MCCECallObserver::HandleTransfer contains remote party already. |
88 * CCE will map the recipient in openNewCallL to pre-existing one |
88 * CCE will map the recipient in openNewCallL to pre-existing one |
89 * CCECallCall::EventOccurred(ECCERemoteTransferring). |
89 * CCECallCall::EventOccurred(ECCERemoteTransferring). |
90 * The new recipient of the call can be fetched via this method. |
90 * The new recipient of the call can be fetched via this method. |
91 * @since Series 60 3.2 |
91 * @since Series 60 3.2 |
92 * @param none |
92 * @param none |
93 * @return New recipient for the call after transfer |
93 * @return New recipient for the call after transfer |
94 */ |
94 */ |
95 virtual const TDesC& TransferTarget() const = 0; |
95 virtual const TDesC& TransferTarget() const = 0; |
96 |
96 |
97 }; |
97 }; |
98 |
98 |
99 #endif // MCCETRANSFERINTERFACE_H |
99 #endif // MCCETRANSFERINTERFACE_H |
100 |
100 |