14 * Description: |
14 * Description: |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 |
18 |
19 #ifndef MUSENGOUTSESSIONOBSERVER_H |
19 #ifndef MUSHENGOUTSESSIONOBSERVER_H |
20 #define MUSENGOUTSESSIONOBSERVER_H |
20 #define MUSHENGOUTSESSIONOBSERVER_H |
21 |
21 |
22 // INCLUDES |
22 // INCLUDES |
23 #include <badesca.h> |
23 #include "musengsessionobserver.h" |
24 |
|
25 // FORWARD DECLARATIONS |
|
26 class MMusEngAsyncRetryObserver; |
|
27 |
24 |
28 // CLASS DECLARATION |
25 // CLASS DECLARATION |
29 |
26 |
30 /** |
27 /** |
31 * An interface to be implemented by users of Multimedia Sharing Engine if they |
28 * An interface to be implemented by users of Multimedia Sharing Engine if they |
32 * wish to receive feedback from outsent INVITE. All the callback functions |
29 * wish to receive feedback from outsent INVITE. All the callback functions |
33 * represent an answer from network to sent INVITE. |
30 * represent an answer from network to sent INVITE. |
|
31 * |
|
32 * This observer is set using CMusEngSession::SetSessionObserver function. |
|
33 * |
|
34 * @lib musengine.lib |
|
35 * @since S60 v3.2 |
34 */ |
36 */ |
35 class MMusEngOutSessionObserver |
37 class MMusEngOutSessionObserver : public MMusEngSessionObserver |
36 { |
38 { |
37 public: |
39 public: |
38 |
40 |
39 /** |
|
40 * Indicates that preconditions for sending invitation cannot be met. |
|
41 */ |
|
42 virtual void UnableToSendInvitation() = 0; |
|
43 |
|
44 /** |
|
45 * Indicates that no response received to invitation |
|
46 */ |
|
47 virtual void NoResponseReceivedToInvitation() = 0; |
|
48 |
|
49 /** |
41 /** |
50 * Indicates that MT has rejected session. ( e.g. 603 DECLINE ). |
42 * Indicates that MT has rejected session. ( e.g. 603 DECLINE ) |
|
43 * @since S60 v3.2 |
51 */ |
44 */ |
52 virtual void SessionRejected() = 0; |
45 virtual void SessionRejected() = 0; |
53 |
46 |
54 /** |
47 /** |
55 * The following functions represent a specific reason in answer |
48 * The following functions represent a specific reason in answer |
56 * to sent INVITE. |
49 * to sent INVITE. |
|
50 * @since S60 v3.2 |
57 */ |
51 */ |
58 |
52 |
59 virtual void SessionBadRequest() = 0; // 400 |
53 virtual void SessionBadRequest() = 0; // 400 |
60 virtual void SessionUnauthorized() = 0; // 401 |
54 virtual void SessionUnauthorized() = 0; // 401 |
61 virtual void SessionPaymentRequired() = 0; // 402 |
55 virtual void SessionPaymentRequired() = 0; // 402 |
62 virtual void SessionRecipientNotFound() = 0; // 404 |
56 virtual void SessionRecipientNotFound() = 0; // 404 |
63 virtual void SessionProxyAuthenticationRequired() = 0; // 407 |
57 virtual void SessionProxyAuthenticationRequired() = 0; // 407 |
64 virtual void SessionRequestTimeOut() = 0; // 408 |
58 virtual void SessionRequestTimeOut() = 0; // 408 |
65 virtual void SessionUnsupportedMediaType() = 0; // 415 |
59 virtual void SessionUnsupportedMediaType() = 0; // 415 |
66 virtual void SessionBusyHere() = 0; // 486 |
|
67 virtual void SessionRequestCancelled() = 0; // 487 |
60 virtual void SessionRequestCancelled() = 0; // 487 |
68 virtual void SessionTemporarilyNotAvailable() = 0; // 480 |
61 |
69 |
62 |
70 /** |
|
71 * Indicates possibility to retry session. Recipient proposal is given |
|
72 * but implementation can query user for new recipient address. |
|
73 * Retry address should be filled to aRetryAddress on return. |
|
74 * @return ETrue if retry should be made |
|
75 */ |
|
76 virtual TBool RetrySessionSync( const TDesC& aRecipientProposal, |
|
77 TDes& aRetryAddress ) = 0; |
|
78 |
|
79 /** |
|
80 * Indicates that retry with given address is proceeding. |
|
81 */ |
|
82 virtual void RetryProceeding() = 0; |
|
83 |
|
84 /** |
|
85 * Indicates that there's multiple suitable recipient addresses. |
|
86 * Client can choose what to use. |
|
87 * @param aAddressArray, list of suitable recipient addresses |
|
88 * @param aRecipientAddress, on return should contain recipient |
|
89 * address to be used |
|
90 * @return ETrue if recipient was selected, otherwise EFalse |
|
91 */ |
|
92 virtual TBool SelectRecipientL( CDesCArray& aAddressArray, |
|
93 TDes& aRecipientAddress ) = 0; |
|
94 }; |
63 }; |
95 |
64 |
96 #endif |
65 #endif |