telephonyserverplugins/ctsydispatchlayer/exportinc/mltsydispatchsupplementaryservicesinterface.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserverplugins/ctsydispatchlayer/exportinc/mltsydispatchsupplementaryservicesinterface.h Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,410 @@
+// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// This file contains all the interfaces classes that can be implemented by
+// the Licensee LTSY relating to SupplementaryServices related features.
+//
+
+
+
+
+/**
+ @file
+ @internalAll
+*/
+
+
+#ifndef MLTSYDISPATCHSUPPLEMENTARYSERVICESINTERFACE_H_
+#define MLTSYDISPATCHSUPPLEMENTARYSERVICESINTERFACE_H_
+
+#include <ctsy/ltsy/mltsydispatchinterface.h>
+#include <etelmm.h>
+
+
+class MLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheck : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheckApiId = KDispatchSupplementaryServicesFuncUnitId + 1;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSendNetworkServiceRequestNoFdnCheck
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestNoFdnCheckComp()
+ *
+ * Implementation of this interface should send the request to the network without FDN check.
+ *
+ *
+ * @param aRequest The supplementary services string that was entered by the user and need to be send to the network.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendNetworkServiceRequestNoFdnCheckReqL(const TDesC& aRequest) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheck
+
+
+
+class MLtsyDispatchSupplementaryServicesGetCallWaitingStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesGetCallWaitingStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 2;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneGetWaitingStatusPhase1
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallWaitingStatusComp()
+ *
+ * Implementation of this interface should get the call waiting list.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleGetCallWaitingStatusReqL() = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesGetCallWaitingStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSendNetworkServiceRequest : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSendNetworkServiceRequestApiId = KDispatchSupplementaryServicesFuncUnitId + 3;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSendNetworkServiceRequest
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestComp()
+ *
+ * Implementation of this interface should send the request to the network after FDN check.
+ *
+ *
+ * @param aRequest The supplementary services string that was entered by the user and need to be send to the network.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendNetworkServiceRequestReqL(const TDesC& aRequest) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSendNetworkServiceRequest
+
+
+
+class MLtsyDispatchSupplementaryServicesGetCallBarringStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesGetCallBarringStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 4;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneGetBarringStatusPhase1
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallBarringStatusComp()
+ *
+ * Implementation of this interface should get the call barring list.
+ *
+ *
+ * @param aCondition The barring conditions to interrogate.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleGetCallBarringStatusReqL(RMobilePhone::TMobilePhoneCBCondition aCondition) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesGetCallBarringStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSetCallBarringStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSetCallBarringStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 5;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSetCallBarringStatus
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallBarringStatusComp()
+ *
+ * Implementation of this interface should set the call barring status for a call barring condition.
+ *
+ *
+ * @param aCondition The call barring condition to set.
+ * @param aAction The call barring action.
+ * @param aGroup The call barring service group.
+ * @param aPassword The password of the call barring service.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSetCallBarringStatusReqL(RMobilePhone::TMobilePhoneCBCondition aCondition,
+ RMobilePhone::TMobilePhoneServiceAction aAction,
+ RMobilePhone::TMobileService aGroup,
+ const TDesC& aPassword) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSetCallBarringStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSetCallForwardingStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSetCallForwardingStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 6;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSetCallForwardingStatus
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallForwardingStatusComp()
+ *
+ * Implementation of this interface should sets a new call forwarding status and/or registered
+ * information for the call forwarding condition.
+ *
+ *
+ * @param aCondition The condition of the new call forwarding setting.
+ * @param aServiceGroup The basic service group to apply the CF status change to.
+ * @param aAction The action to take.
+ * @param aNumber The forwarding number.
+ * @param aTimeout The time out when aCondition is ECallForwardingNoReply.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSetCallForwardingStatusReqL(RMobilePhone::TMobilePhoneCFCondition aCondition,
+ RMobilePhone::TMobileService aServiceGroup,
+ RMobilePhone::TMobilePhoneServiceAction aAction,
+ const TDesC& aNumber,
+ TInt aTimeout) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSetCallForwardingStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSetCallWaitingStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSetCallWaitingStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 7;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSetCallWaitingStatus
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallWaitingStatusComp()
+ *
+ * Implementation of this interface should set the call waiting status.
+ *
+ *
+ * @param aServiceGroup The service group to change.
+ * @param aAction The action to do with that service group.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSetCallWaitingStatusReqL(RMobilePhone::TMobileService aServiceGroup, RMobilePhone::TMobilePhoneServiceAction aAction) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSetCallWaitingStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSetSsPassword : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSetSsPasswordApiId = KDispatchSupplementaryServicesFuncUnitId + 8;
+
+ enum TServiceType
+ {
+ EAllSupplementaryServices = 0,
+ ECallBarring = 330
+ };
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneSetSSPassword
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSetSsPasswordComp()
+ *
+ * Implementation of this interface should set the password of the call barring or common Supplementary Services password.
+ *
+ *
+ * @param aOldPassword The old password.
+ * @param aNewPassword The new password.
+ * @param aService The service.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSetSsPasswordReqL(const TDesC& aOldPassword,
+ const TDesC& aNewPassword,
+ TServiceType aService) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSetSsPassword
+
+
+
+class MLtsyDispatchSupplementaryServicesGetCallForwardingStatus : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesGetCallForwardingStatusApiId = KDispatchSupplementaryServicesFuncUnitId + 9;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobilePhoneGetCallForwardingStatusPhase1
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallForwardingStatusComp()
+ *
+ * Implementation of this interface should get the call forwarding list.
+ *
+ * @param aCondition The call forwarding condition.
+ * @param aService The service group.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleGetCallForwardingStatusReqL(RMobilePhone::TMobilePhoneCFCondition aCondition,
+ RMobilePhone::TMobileService aService) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesGetCallForwardingStatus
+
+
+
+class MLtsyDispatchSupplementaryServicesSendUssdMessage : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSendUssdMessageApiId = KDispatchSupplementaryServicesFuncUnitId + 10;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileUssdMessagingSendMessage
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageComp()
+ *
+ * Implementation of this interface should send an USSD message to the network.
+ *
+ *
+ * @param aData The actual data to send in the message.
+ * @param aDcs The data coding scheme of the message.
+ * @param aFormat The message format.
+ * @param aType The message type (RMobileUssdMessaging::EUssdMORequest, RMobileUssdMessaging::EUssdMOReply
+ * or RMobileUssdMessaging::EUssdMOAcknowledgement).
+ *
+ * @return KErrNone on success, KErrGsmSSUssdBusy if the latest USSD session was not yet released,
+ * otherwise another error code indicating the failure.
+ */
+ virtual TInt HandleSendUssdMessageReqL(const TDesC8& aData, TUint8 aDcs,
+ RMobileUssdMessaging::TMobileUssdDataFormat aFormat, RMobileUssdMessaging::TMobileUssdMessageType aType) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSendUssdMessage
+
+
+class MLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheck : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheckApiId = KDispatchSupplementaryServicesFuncUnitId + 11;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileUssdMessagingSendMessageNoFdnCheck
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageNoFdnCheckComp()
+ *
+ * Implementation of this interface should send an USSD message to the network without initially checking FDN lsit.
+ *
+ *
+ * @param aData The actual data to send in the message.
+ * @param aDcs The data coding scheme of the message.
+ * @param aFormat The message format.
+ * @param aType The message type (RMobileUssdMessaging::EUssdMORequest, RMobileUssdMessaging::EUssdMOReply
+ * or RMobileUssdMessaging::EUssdMOAcknowledgement).
+ *
+ * @return KErrNone on success, KErrGsmSSUssdBusy if the latest USSD session was not yet released,
+ * otherwise another error code indicating the failure.
+ */
+ virtual TInt HandleSendUssdMessageNoFdnCheckReqL(const TDesC8& aData, TUint8 aDcs,
+ RMobileUssdMessaging::TMobileUssdDataFormat aFormat, RMobileUssdMessaging::TMobileUssdMessageType aType) = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheck
+
+
+class MLtsyDispatchSupplementaryServicesSendUssdRelease : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesSendUssdReleaseApiId = KDispatchSupplementaryServicesFuncUnitId + 12;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileUssdMessagingSendRelease
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdReleaseComp()
+ *
+ * Implementation of this interface should send a USSD release message to the network.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendUssdReleaseReqL() = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesSendUssdRelease
+
+
+
+class MLtsyDispatchSupplementaryServicesClearBlacklist : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSupplementaryServicesClearBlacklistApiId = KDispatchSupplementaryServicesFuncUnitId + 13;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the ECustomClearCallBlackListIPC
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSupplementaryServicesClearBlacklistComp()
+ *
+ * Implementation of this interface should clear the blacklist.
+ *
+ *
+ * @return KErrNone on success, otherwise another error code indicating the failure.
+ */
+ virtual TInt HandleClearBlacklistReqL() = 0;
+
+ }; // class MLtsyDispatchSupplementaryServicesClearBlacklist
+
+
+#endif /*MLTSYDISPATCHSUPPLEMENTARYSERVICESINTERFACE_H_*/