?? smssendrecv.h
字號(hào):
// SMSSendRecv.h
//
// Copyright (c) 2003 Symbian Ltd. All rights reserved.
//
// CSMSSender - Send SMS Asynchronously via SMSProt.prt
// CSMSReceiver - Recieve SMS Asynchronously via SMSProt.prt
#ifndef __SMSSENDRECV_H_
#define __SMSSENDRECV_H_
#include <e32base.h>
#include <e32math.h>
#include <es_sock.h>
#include <gsmumsg.h>
#include <gsmubuf.h>
#include <gsmuset.h>
#include <smsuaddr.h>
#include <smsustrm.h>
#include <f32file.h>
#include "SMSDatagramService.h"
// Forward Declarations
class CSMSSender;
class CSMSReceiver;
const TInt KMaxSMSSize = 300; // Max SMS size
const TInt KMaxAddressSize = 20; //Max Telephone Number size
class CSMSSender : public CBase
/**
@internalComponent
Comments : Responsible for opening SMS socket and sending SMS datagrams.
*/
{
public:
static CSMSSender* NewL();
static CSMSSender* NewLC();
~CSMSSender();
void SendSMSL(const TDesC8& aText, const TDesC8& aAddress, TRequestStatus& aStatus);
protected:
CSMSSender(){};
void CreateSMSMessageL(const TDesC8& aText, const TDesC8& aAddress);
void ConstructL();
private:
/** Connection to Socket Server*/
RSocketServ iSocketServer;
/** Socket over which SMS will be sent*/
RSocket iSocket;
/** Connection to File server required by CSMSMessage API*/
RFs iFs;
/** parameter to RSocket::Ioctl()*/
TPckgBuf<TUint> iBuf;
};
class CSMSReceiver : public CActive
/**
@internalComponent
Comments : Active object responsible for opening SMS socket and receiving SMS datagrams.
*/
{
public:
enum TReceiveStatus
{
EIdle, EListening, EAcknowledging
};
public:
static CSMSReceiver* NewL();
static CSMSReceiver* NewLC();
~CSMSReceiver();
TInt ListenForSMSL(const TDesC8& aPattern, CDatagram* aDatagram);
void ListenForSMSL(const TDesC8& aPattern, CDatagram* aDatagram, TRequestStatus& aStatus);
//Implemented functions from CActive
void DoCancel();
void RunL();
protected:
CSMSReceiver();
void ConstructL();
void SetupSocketsL(const TDesC8& aPattern);
void ExtractMessageL();
private:
/** Connection to Socket Server*/
RSocketServ iSocketServer;
/** Socket over which SMS will be sent*/
RSocket iSocket;
/** Connection to File server required by CSMSMessage API*/
RFs iFs;
/** parameter to RSocket::Ioctl()*/
CSmsMessage* iSmsMsg;
TPckgBuf<TUint> iBuf;
/** Current state transition*/
TReceiveStatus iReceiveStatus;
/** TRequestStatus to be completed upon Receive*/
TRequestStatus* iClientStatus;
/** Datagram to be populated*/
CDatagram* iDatagram;
};
#endif
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -