--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserverplugins/ctsydispatchlayer/exportinc/mltsydispatchsmsinterface.h Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,436 @@
+// 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 Sms related features.
+//
+
+
+
+
+/**
+ @file
+ @internalAll
+*/
+
+
+#ifndef MLTSYDISPATCHSMSINTERFACE_H_
+#define MLTSYDISPATCHSMSINTERFACE_H_
+
+#include <ctsy/ltsy/mltsydispatchinterface.h>
+#include <etelmm.h>
+
+namespace DispatcherSim
+ {
+
+ /**
+ * This namespace contains all types relating to the Sim dispatcher.
+ */
+
+ /** SMS parameters */
+ struct TSmsParameters
+ {
+ /*
+ * LocationNumber
+ */
+ TUint8 iLocationNumber;
+
+ /*
+ * Parameter Indicator
+ */
+ TUint8 iParameterIndicator;
+
+ /*
+ * ProtocolId
+ */
+ TUint8 iProtocolId;
+
+ /*
+ * Data Coding Scheme
+ */
+ TUint8 iDataCodingScheme;
+
+ /*
+ * Validity Period
+ */
+ TUint8 iValidityPeriod;
+
+ /*
+ * MobileSc TON
+ */
+ RMobilePhone::TMobileTON iMobileScTON;
+
+ /*
+ * MobileSc NPI
+ */
+ RMobilePhone::TMobileNPI iMobileScNPI;
+
+ /*
+ * Mobile De TON
+ */
+ RMobilePhone::TMobileTON iMobileDeTON;
+
+ /*
+ * Mobile De NPI
+ */
+ RMobilePhone::TMobileNPI iMobileDeNPI;
+
+ /*
+ * Alpha Tag Present
+ */
+ TBool iAlphaTagPresent;
+ };
+ }
+
+class MLtsyDispatchSmsSendSatSms : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsSendSatSmsApiId = KDispatchSmsFuncUnitId + 1;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMmTsySmsSendSatMessage
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsSendSatSmsComp()
+ *
+ * Implementation of this interface should handle a request to send a SMS message initiated from a client
+ * side RSat::SendMessageNoLogging() call.
+ *
+ * @param aDestination The mobile telephone number.
+ * @param aSmsTpdu The SMS TPDU.
+ * @param aDataFormat The SMS data format.
+ * @param aGsmServiceCentre The service centre number.
+ * @param aMore This indicates whether the client is going to send another SMS immediately
+ after this one.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendSatSmsReqL( const TDesC8& aSmsTpdu,
+ RMobileSmsMessaging::TMobileSmsDataFormat aDataFormat,
+ const RMobilePhone::TMobileAddress& aGsmServiceCentre,
+ TBool aMoreMessages
+ ) = 0;
+
+ }; // class MLtsyDispatchSmsSendSatSms
+
+
+
+class MLtsyDispatchSmsGetSmsStoreInfo : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsGetSmsStoreInfoApiId = KDispatchSmsFuncUnitId + 2;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingGetMessageStoreInfo
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsGetSmsStoreInfoComp()
+ *
+ * Implementation of this interface should retrieve the current Sms store information.
+ *
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see RMobileSmsMessaging::GetMessageStoreInfo
+ */
+ virtual TInt HandleGetSmsStoreInfoReqL() = 0;
+
+ }; // class MLtsyDispatchSmsGetSmsStoreInfo
+
+
+
+class MLtsyDispatchSmsGetSmspList : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsGetSmspListApiId = KDispatchSmsFuncUnitId + 3;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingGetSmspListPhase1
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsGetSmspListComp()
+ *
+ * Implementation of this interface should request to read the SMS parameter list from the SIM's SMSP store.
+ *
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see CMobilePhoneSmspList()
+ * @see CRetrieveMobilePhoneSmspList()
+ */
+ virtual TInt HandleGetSmspListReqL() = 0;
+
+ }; // class MLtsyDispatchSmsGetSmspList
+
+
+
+class MLtsyDispatchSmsNackSmsStored : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsNackSmsStoredApiId = KDispatchSmsFuncUnitId + 4;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingNackSmsStored
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsNackSmsStoredComp()
+ *
+ * Implementation of this interface should accept this negative acknowledgment: when the client receives an unstored SMS,
+ * it will use this member function to return a negative acknowledgment if it fails to decode and/or store that SMS.
+ * This TPDU will contain the TP error cause that prevents the client from acknowledging the SMS.
+ * The client should also provide the RP error cause by placing it in the aRpCause parameter.
+ *
+ * @param aTpdu Holds the TPDU defined for a SMS-DELIVER-REPORT (for RP-ERROR) in GSM 03.40.
+ * @param aRpCause Contain one of the MS related extended error codes.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see RMobileSmsMessaging::NackSmsStored()
+ */
+ virtual TInt HandleNackSmsStoredReqL(const TDesC8& aTpdu, TInt aRpCause) = 0;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingNackSmsStored
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsNackSmsStoredComp()
+ *
+ * Implementation of this interface should accept this negative acknowledgment: when the client receives an unstored SMS,
+ * it will use this member function to return a negative acknowledgment if it fails to decode and/or store that SMS.
+ * The client should also provide the RP error cause by placing it in the aRpCause parameter.
+ *
+ * @param aRpCause Contain one of the MS related extended error codes.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see RMobileSmsMessaging::NackSmsStored()
+ */
+ virtual TInt HandleNackSmsStoredReqL(TInt aRpCause) = 0;
+
+ }; // class MLtsyDispatchSmsNackSmsStored
+
+
+
+class MLtsyDispatchSmsAckSmsStored : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsAckSmsStoredApiId = KDispatchSmsFuncUnitId + 5;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingAckSmsStored
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsAckSmsStoredComp()
+ *
+ * Implementation of this interface should accept the acknowledgment: when the client receives an unstored SMS,
+ * it will trigger this function to return a positive acknowledgment if it manages to successfully decode and store that SMS.
+ * If the client wishes to send a SMS-DELIVER-REPORT in response to the received SMS-DELIVER ,
+ * then the aTpdu parameter will be used to hold the TPDU defined for a SMS-DELIVER-REPORT (for RP-ACK) in GSM 03.40.
+ *
+ *
+ * @param aTpdu Holds the TPDU defined for a SMS-DELIVER-REPORT (for RP-ACK) in GSM 03.40.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see RMobileSmsMessaging::AckSmsStored()
+ */
+ virtual TInt HandleAckSmsStoredReqL(const TDesC8& aTpdu) = 0;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingAckSmsStored
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsAckSmsStoredComp()
+ *
+ * Implementation of this interface should accept the acknowledgment: when the client receives an unstored SMS,
+ * it will trigger this function to return a positive acknowledgment if it manages to successfully decode and store that SMS.
+ *
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ *
+ * @see RMobileSmsMessaging::AckSmsStored()
+ */
+ virtual TInt HandleAckSmsStoredReqL() = 0;
+
+ }; // class MLtsyDispatchSmsAckSmsStored
+
+
+
+class MLtsyDispatchSmsResumeSmsReception : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsResumeSmsReceptionApiId = KDispatchSmsFuncUnitId + 6;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingResumeSmsReception
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsResumeSmsReceptionComp()
+ *
+ * Implementation of this interface should allow a client to resume sms reception
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleResumeSmsReceptionReqL() = 0;
+
+ }; // class MLtsyDispatchSmsResumeSmsReception
+
+
+class MLtsyDispatchSmsSendSmsMessage : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsSendSmsMessageApiId = KDispatchSmsFuncUnitId + 7;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingSendMessage
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsSendSmsMessageComp()
+ *
+ * Implementation of this interface should allow a client to send a SMS message
+ *
+ * @param aDestination The mobile telephone number.
+ * @param aSmsTpdu The SMS TPDU.
+ * @param aDataFormat The SMS data format.
+ * @param aGsmServiceCentre The service centre number.
+ * @param aMore This indicates whether the client is going to send another SMS immediately
+ * after this one.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendSmsMessageReqL( const RMobilePhone::TMobileAddress& aDestination,
+ const TDesC8& aSmsTpdu,
+ RMobileSmsMessaging::TMobileSmsDataFormat aDataFormat,
+ const RMobilePhone::TMobileAddress& aGsmServiceCentre,
+ TBool aMoreMessages
+ ) = 0;
+
+
+ }; // class MLtsyDispatchSmsSendSmsMessage
+
+
+class MLtsyDispatchSmsSendSmsMessageNoFdnCheck : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsSendSmsMessageNoFdnCheckApiId = KDispatchSmsFuncUnitId + 8;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingSendMessageNoFdnCheck
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsSendSmsMessageNoFdnCheckComp()
+ *
+ * Implementation of this interface should allow a client to send a SMS message
+ *
+ *
+ * @param aDestination The mobile telephone number.
+ * @param aSmsTpdu The SMS TPDU.
+ * @param aDataFormat The SMS data format.
+ * @param aGsmServiceCentre The service centre number.
+ * @param aMore This indicates whether the client is going to send another SMS immediately
+ after this one.
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSendSmsMessageNoFdnCheckReqL( const RMobilePhone::TMobileAddress& aDestination,
+ const TDesC8& aSmsTpdu,
+ RMobileSmsMessaging::TMobileSmsDataFormat aDataFormat,
+ const RMobilePhone::TMobileAddress& aGsmServiceCentre,
+ TBool aMoreMessages
+ ) = 0;
+
+ }; // class MLtsyDispatchSmsSendSmsMessageNoFdnCheck
+
+
+class MLtsyDispatchSmsSetMoSmsBearer : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsSetMoSmsBearerApiId = KDispatchSmsFuncUnitId + 9;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingSetMoSmsBearer
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsSetMoSmsBearerComp()
+ *
+ * Implementation of this interface should allow client to set SMS bearer
+ *
+ * @param aBearer The SMS bearer.
+ *
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleSetMoSmsBearerReqL(RMobileSmsMessaging::TMobileSmsBearer aBearer) = 0;
+
+ }; // class MLtsyDispatchSmsSetMoSmsBearer
+
+
+
+class MLtsyDispatchSmsStoreSmspListEntry : public MLtsyDispatchInterface
+ {
+public:
+
+ static const TInt KLtsyDispatchSmsStoreSmspListEntryApiId = KDispatchSmsFuncUnitId + 10;
+
+ /**
+ * The CTSY Dispatcher shall invoke this function on receiving the EMobileSmsMessagingStoreSmspList
+ * request from the CTSY.
+ *
+ * It is a request call that is completed by invoking
+ * CCtsyDispatcherCallback::CallbackSmsStoreSmspListComp()
+ *
+ * Implementation of this interface should handle the request to store a SMSP entry
+ * in the SIM's SMSP file
+ *
+ * @param aSmspEntry Defines a set of SMS parameters
+ *
+ * @return KErrNone on success, otherwise another error code indicating the
+ * failure.
+ */
+ virtual TInt HandleStoreSmspListEntryReqL(const RMobileSmsMessaging::TMobileSmspEntryV1& aSmspEntry) = 0;
+
+ }; // class MLtsyDispatchSmsStoreSmspList
+
+
+#endif /*MLTSYDISPATCHSMSINTERFACE_H_*/