CSmsPDU Class Reference

class CSmsPDU : public CBase

A generic interface to a GSM SMS PDU.

The class can be used on its own to encode GSM SMS PDUs. It is also the base class for the six real implementations of GSM SMS PDUs. The derived classes are built up from the elements defined in gsmuelem.h according to the ETSI GSM 03.40. All the SMS elements have generic encode and decode functions so that each PDU type knows how to encode and decode itself into a TGsmSms.

CSmsPDU and derived classes provide a human readable interface to a GSM SMS PDU, for example setting the destination address on a SUBMIT (CSmsSubmit). All the factory functions for CSmsPDUs are provided in the base class.

Inherits from

Public Member Functions
IMPORT_C TSmsDataCodingScheme::TSmsAlphabetAlphabet()
IMPORT_C TBoolApplicationPortAddressing(TInt &, TInt &, TBool *)
IMPORT_C TSmsDataCodingScheme::TSmsDCSBits7To4Bits7To4()
IMPORT_C TBoolClass(TSmsDataCodingScheme::TSmsClass &)
IMPORT_C TIntConcatenatedMessagePDUIndex()
IMPORT_C TIntConcatenatedMessageReference()
IMPORT_C TBoolDataCodingSchemePresent()
voidDecodeL(TGsmuLex8 &)
IMPORT_C CSmsPDU *DuplicateL()
IMPORT_C voidEncodeMessagePDUL(TGsmSms &)
voidEncodeMessagePDUL(TGsmSms &, const TEncodeParams *)
IMPORT_C voidExternalizeL(RWriteStream &)
IMPORT_C TSmsDataCodingScheme::TSmsIndicationStateIndicationState()
IMPORT_C TSmsDataCodingScheme::TSmsIndicationTypeIndicationType()
IMPORT_C TSmsEncodingNationalLanguageEncoding()
IMPORT_C CSmsPDU *NewL(RReadStream &, CCnvCharacterSetConverter &, RFs &)
IMPORT_C CSmsPDU *NewL(const TGsmSms &, CCnvCharacterSetConverter &, RFs &, TBool, TBool)
IMPORT_C CSmsPDU *NewL(TSmsPDUType, CCnvCharacterSetConverter &, RFs &, TBool)
IMPORT_C TIntNumConcatenatedMessagePDUs()
IMPORT_C TSmsProtocolIdentifier::TSmsPIDTypePIDType()
IMPORT_C voidParsedServiceCenterAddress(TGsmSmsTelNumber &)
IMPORT_C voidParsedToFromAddress(TGsmSmsTelNumber &)
IMPORT_C TBoolProtocolIdentifierPresent()
IMPORT_C TPtrCServiceCenterAddress()
IMPORT_C voidSetAlphabet(TSmsDataCodingScheme::TSmsAlphabet)
IMPORT_C voidSetApplicationPortAddressingL(TBool, TInt, TInt, TBool)
IMPORT_C voidSetBits7To4(TSmsDataCodingScheme::TSmsDCSBits7To4)
IMPORT_C voidSetClass(TBool, TSmsDataCodingScheme::TSmsClass)
IMPORT_C voidSetConcatenatedMessagePDUIndex(TInt)
IMPORT_C voidSetConcatenatedMessageReference(TInt)
IMPORT_C voidSetDataCodingSchemePresent(TBool)
IMPORT_C voidSetIndicationState(TSmsDataCodingScheme::TSmsIndicationState)
IMPORT_C voidSetIndicationType(TSmsDataCodingScheme::TSmsIndicationType)
IMPORT_C voidSetNationalLanguageEncodingL(TSmsEncoding)
IMPORT_C voidSetNumConcatenatedMessagePDUs(TInt)
IMPORT_C voidSetPIDType(TSmsProtocolIdentifier::TSmsPIDType)
IMPORT_C voidSetParsedServiceCenterAddressL(const TGsmSmsTelNumber &)
IMPORT_C voidSetParsedToFromAddressL(const TGsmSmsTelNumber &)
IMPORT_C voidSetProtocolIdentifierPresent(TBool)
IMPORT_C voidSetServiceCenterAddressL(const TDesC &)
IMPORT_C voidSetShortMessageType(TSmsProtocolIdentifier::TSmsShortMessageType)
IMPORT_C voidSetTelematicDeviceIndicator(TSmsProtocolIdentifier::TSmsTelematicDeviceIndicator)
IMPORT_C voidSetTelematicDeviceType(TSmsProtocolIdentifier::TSmsTelematicDeviceType)
IMPORT_C voidSetTextCompressed(TBool)
IMPORT_C voidSetTextConcatenatedL(TBool, TBool)
IMPORT_C voidSetToFromAddressL(const TDesC &)
IMPORT_C voidSetUserDataPresent(TBool)
IMPORT_C TSmsProtocolIdentifier::TSmsShortMessageTypeShortMessageType()
IMPORT_C TSmsProtocolIdentifier::TSmsTelematicDeviceIndicatorTelematicDeviceIndicator()
IMPORT_C TSmsProtocolIdentifier::TSmsTelematicDeviceTypeTelematicDeviceType()
IMPORT_C TBoolTextCompressed()
IMPORT_C TBoolTextConcatenated(TBool *)
IMPORT_C TPtrCToFromAddress()
TSmsPDUType Type()
voidUpdateConcatenationDataL(TInt, TInt, TInt)
voidUpdateEmailHeaderDataL(TInt &)
TBool UpdateSMSCCtrlParameterL(const TUint8)
TBool UpdateTPSRRL(TSmsFirstOctet)
IMPORT_C CSmsUserData &UserData()
IMPORT_C const CSmsUserData &UserData()
IMPORT_C TBoolUserDataPresent()
Protected Member Functions
CSmsPDU(TSmsPDUType)
voidConstructL(CCnvCharacterSetConverter &, RFs &)
const TSmsDataCodingScheme *DataCodingScheme()
TUint8 *EncodeL(TUint8 *)
TUint8 *EncodeL(TUint8 *, const TEncodeParams *)
voidExternalizeMessagePDUL(RWriteStream &)
voidInternalizeMessagePDUL(RReadStream &)
const TSmsParameterIndicator *ParameterIndicator()
const TSmsProtocolIdentifier *ProtocolIdentifier()
const CSmsAddress *ToFromAddressPtr()
const CSmsUserData *UserDataPtr()
Private Member Functions
TBool DoApplicationPortAddressing(TInt &, TInt &, TInt &, TBool *)
voidDoSetApplicationPortAddressingL(TInt, TInt, TBool)
voidDoSetTextConcatenatedL(TBool)
TBool DoTextConcatenated(TInt &, TBool *)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Public Member Enumerations
enumTSmsPDUType {
ESmsDeliver = 0, ESmsDeliverReport = 1, ESmsSubmit = 2, ESmsSubmitReport = 3, ESmsStatusReport = 4, ESmsCommand = 5
}
Protected Attributes
CSmsAddress *iServiceCenterAddress
Private Attributes
const TSmsPDUTypeiSmsPDUType

Constructor & Destructor Documentation

CSmsPDU(TSmsPDUType)

CSmsPDU(TSmsPDUTypeaSmsPDUType)[protected]

Parameters

TSmsPDUType aSmsPDUType

Member Functions Documentation

Alphabet()

IMPORT_C TSmsDataCodingScheme::TSmsAlphabetAlphabet()const

Gets the alphabet encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

ApplicationPortAddressing(TInt &, TInt &, TBool *)

IMPORT_C TBoolApplicationPortAddressing(TInt &aDestination,
TInt &aOriginator,
TBool *aIs16Bit = NULL
)const

Gets application port addressing information in the user data.

capability
None

Parameters

TInt & aDestinationThe destination port address
TInt & aOriginatorThe originating port address
TBool * aIs16Bit = NULLSet to true if the addressing is 16 bit. Default is null.

Bits7To4()

IMPORT_C TSmsDataCodingScheme::TSmsDCSBits7To4Bits7To4()const

Gets bits 7 to 4 on the data coding scheme.

The value of bits 7 to 4 effects the meaning of the lower order bits.

The function panics if the data coding scheme is not present.

capability
None

Class(TSmsDataCodingScheme::TSmsClass &)

IMPORT_C TBoolClass(TSmsDataCodingScheme::TSmsClass &aClass)const

Gets the GSM SMS PDU class in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TSmsDataCodingScheme::TSmsClass & aClassSms class 0 - 3 encoded in the data coding scheme

ConcatenatedMessagePDUIndex()

IMPORT_C TIntConcatenatedMessagePDUIndex()const

Gets the index of the PDU within the Concatenated Message.

The function panics if the PDU is not concatenated.

capability
None

ConcatenatedMessageReference()

IMPORT_C TIntConcatenatedMessageReference()const

Gets the reference contained in the Concatenation Information Element.

capability
None

ConstructL(CCnvCharacterSetConverter &, RFs &)

voidConstructL(CCnvCharacterSetConverter &aCharacterSetConverter,
RFs &aFs
)[protected, pure virtual]

Parameters

CCnvCharacterSetConverter & aCharacterSetConverter
RFs & aFs

DataCodingScheme()

const TSmsDataCodingScheme *DataCodingScheme()const [protected, virtual]

DataCodingSchemePresent()

IMPORT_C TBoolDataCodingSchemePresent()const

Tests if data coding scheme is present.

Panics if PDU type is unsupported.

capability
None

DecodeL(TGsmuLex8 &)

voidDecodeL(TGsmuLex8 &aPdu)[pure virtual]

Parameters

TGsmuLex8 & aPdu

DoApplicationPortAddressing(TInt &, TInt &, TInt &, TBool *)

TBool DoApplicationPortAddressing(TInt &aIndex,
TInt &aDestination,
TInt &aOriginator,
TBool *aIs16Bit
)const [private]

Parameters

TInt & aIndex
TInt & aDestination
TInt & aOriginator
TBool * aIs16Bit

DoSetApplicationPortAddressingL(TInt, TInt, TBool)

voidDoSetApplicationPortAddressingL(TIntaDestination,
TIntaOriginator,
TBoolaIs16Bit
)[private]

Parameters

TInt aDestination
TInt aOriginator
TBool aIs16Bit

DoSetTextConcatenatedL(TBool)

voidDoSetTextConcatenatedL(TBoolaIs16Bit)[private]

Parameters

TBool aIs16Bit

DoTextConcatenated(TInt &, TBool *)

TBool DoTextConcatenated(TInt &aIndex,
TBool *aIs16Bit
)const [private]

Parameters

TInt & aIndex
TBool * aIs16Bit

DuplicateL()

IMPORT_C CSmsPDU *DuplicateL()const

Allocates and constructs a CSmsPDU as a copy of another CSmsPDU.

capability
None

EncodeL(TUint8 *)

TUint8 *EncodeL(TUint8 *aPtr)const [protected, pure virtual]

Parameters

TUint8 * aPtr

EncodeL(TUint8 *, const TEncodeParams *)

TUint8 *EncodeL(TUint8 *aPtr,
const TEncodeParams *aEncodeParams
)const [protected, pure virtual]

Parameters

TUint8 * aPtr
const TEncodeParams * aEncodeParams

EncodeMessagePDUL(TGsmSms &)

IMPORT_C voidEncodeMessagePDUL(TGsmSms &aGsmSms)const

Encodes a TGsmSms for the given type of CSmsPDU.

capability
None

Parameters

TGsmSms & aGsmSmsOn return, encoded GSM SMS PDU

EncodeMessagePDUL(TGsmSms &, const TEncodeParams *)

voidEncodeMessagePDUL(TGsmSms &aGsmSms,
const TEncodeParams *aEncodeParams
)const

Parameters

TGsmSms & aGsmSms
const TEncodeParams * aEncodeParams

ExternalizeL(RWriteStream &)

IMPORT_C voidExternalizeL(RWriteStream &aStream)const

Externalises the object.

capability
None

Parameters

RWriteStream & aStreamStream to write to

ExternalizeMessagePDUL(RWriteStream &)

voidExternalizeMessagePDUL(RWriteStream &aStream)const [protected, pure virtual]

Parameters

RWriteStream & aStream

IndicationState()

IMPORT_C TSmsDataCodingScheme::TSmsIndicationStateIndicationState()const

Gets the Indication State encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

IndicationType()

IMPORT_C TSmsDataCodingScheme::TSmsIndicationTypeIndicationType()const

Gets the Indication Type encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

InternalizeMessagePDUL(RReadStream &)

voidInternalizeMessagePDUL(RReadStream &aStream)[protected, pure virtual]

Parameters

RReadStream & aStream

NationalLanguageEncoding()

IMPORT_C TSmsEncodingNationalLanguageEncoding()const

NewL(RReadStream &, CCnvCharacterSetConverter &, RFs &)

IMPORT_C CSmsPDU *NewL(RReadStream &aStream,
CCnvCharacterSetConverter &aCharacterSetConverter,
RFs &aFs
)[static]

Restores a CSmsPDU from a stream where the object has bean previously persisted.

The type is determined from the first byte in the stream.

capability
None

Parameters

RReadStream & aStreamStream from which to restore this CSmsPDU
CCnvCharacterSetConverter & aCharacterSetConverterCharacter converter utility, required for encoding and decoding this PDU
RFs & aFsFile system handle, required for encoding and decoding this PDU

NewL(const TGsmSms &, CCnvCharacterSetConverter &, RFs &, TBool, TBool)

IMPORT_C CSmsPDU *NewL(const TGsmSms &aGsmSms,
CCnvCharacterSetConverter &aCharacterSetConverter,
RFs &aFs,
TBoolaIsRPError = EFalse,
TBoolaIsMobileTerminated = ETrue
)[static]

Allocates and constructs a CSmsPDU from a TGsmSms.

The type of SMS to construct is determined from the first octet in aGsmSms and whether the SMS is mobile terminated.

capability
None

Parameters

const TGsmSms & aGsmSmsEncoded (raw) GSM SMS PDU
CCnvCharacterSetConverter & aCharacterSetConverterCharacter converter utility, required for encoding and decoding this PDU
RFs & aFsFile system handle, required for encoding and decoding this PDU
TBool aIsRPError = EFalseTrue if the PDU is part of an RP Error. This is used only for SUBMIT REPORT (CSmsSubmitReport) and DELIVER REPORT (CSmsDeliverReport), as the format of these PDUs differs depending on whether the PDU is part of an RP Ack or RP Error.
TBool aIsMobileTerminated = ETrueUsed to determine (with the first octet in aGsmSms) the TSmsPDUType

NewL(TSmsPDUType, CCnvCharacterSetConverter &, RFs &, TBool)

IMPORT_C CSmsPDU *NewL(TSmsPDUTypeaType,
CCnvCharacterSetConverter &aCharacterSetConverter,
RFs &aFs,
TBoolaIsRPError = EFalse
)[static]

Allocates and constructs a CSmsPDU, with the type specified by a TSmsPDUType.

capability
None

Parameters

TSmsPDUType aTypeThe PDU type to construct
CCnvCharacterSetConverter & aCharacterSetConverterCharacter converter utility, required for encoding and decoding this PDU
RFs & aFsFile system handle, required for encoding and decoding this PDU
TBool aIsRPError = EFalseTrue if the PDU is part of an RP Error. This is used only for SUBMIT REPORT (CSmsSubmitReport) and DELIVER REPORT (CSmsDeliverReport), as the format of these PDUs differs depending on whether the PDU is part of an RP Ack or RP Error.

NumConcatenatedMessagePDUs()

IMPORT_C TIntNumConcatenatedMessagePDUs()const

Gets the number of PDU's in a Concatenated Message.

The function panics if the PDU is not concatenated.

capability
None

PIDType()

IMPORT_C TSmsProtocolIdentifier::TSmsPIDTypePIDType()const

Gets key bits 7 and 6 of the PID field.

capability
None

ParameterIndicator()

const TSmsParameterIndicator *ParameterIndicator()const [protected, virtual]

ParsedServiceCenterAddress(TGsmSmsTelNumber &)

IMPORT_C voidParsedServiceCenterAddress(TGsmSmsTelNumber &aParsedAddress)const

Gets the service center address in a TGsmSmsTelNumber object.

A prepended '+', spaces and aphabetic characters are removed.

capability
None

Parameters

TGsmSmsTelNumber & aParsedAddressService center address

ParsedToFromAddress(TGsmSmsTelNumber &)

IMPORT_C voidParsedToFromAddress(TGsmSmsTelNumber &aParsedAddress)const

Gets the "to from" in a TGsmSmsTelNumber object.

A prepended '+', spaces and aphabetic characters are removed.

capability
None

Parameters

TGsmSmsTelNumber & aParsedAddressThe destination or sender address

ProtocolIdentifier()

const TSmsProtocolIdentifier *ProtocolIdentifier()const [protected, virtual]

ProtocolIdentifierPresent()

IMPORT_C TBoolProtocolIdentifierPresent()const

Tests if Protocol Identifier is present.

It panics if the PDU type is unsupported.

capability
None

ServiceCenterAddress()

IMPORT_C TPtrCServiceCenterAddress()const

Gets the service center address.

It is assumed that the address is Unicode, and can contain spaces and alphabetic characters.

capability
None

SetAlphabet(TSmsDataCodingScheme::TSmsAlphabet)

IMPORT_C voidSetAlphabet(TSmsDataCodingScheme::TSmsAlphabetaAlphabet)

Sets the alphabet encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TSmsDataCodingScheme::TSmsAlphabet aAlphabetAlphabet

SetApplicationPortAddressingL(TBool, TInt, TInt, TBool)

IMPORT_C voidSetApplicationPortAddressingL(TBoolaAddressing,
TIntaDestination,
TIntaOriginator,
TBoolaIs16Bit = EFalse
)

Sets application port addressing information in the user data.

capability
None

Parameters

TBool aAddressingIf true, set application port addressing in the PDU. If false, removes addressing if it's already set
TInt aDestinationThe destination port address to set in the PDU
TInt aOriginatorThe originating port address to set in the PDU
TBool aIs16Bit = EFalseTrue if the addresses are 16 bit, false if 8 bit

SetBits7To4(TSmsDataCodingScheme::TSmsDCSBits7To4)

IMPORT_C voidSetBits7To4(TSmsDataCodingScheme::TSmsDCSBits7To4aBits7To4)

Sets key bits 7 to 4 of the data coding scheme.

This is designed to be used for message waiting indication, as it is not needed for the normal type of data coding scheme where the alphabet and class are defined in the lower order bits.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TSmsDataCodingScheme::TSmsDCSBits7To4 aBits7To4Bits 7 to 4

SetClass(TBool, TSmsDataCodingScheme::TSmsClass)

IMPORT_C voidSetClass(TBoolaClassDefined,
TSmsDataCodingScheme::TSmsClassaClass
)

Sets the GSM SMS PDU class in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TBool aClassDefinedTrue if SMS class is defined, else false
TSmsDataCodingScheme::TSmsClass aClassSms class 0 - 3 encoded in the data coding scheme

SetConcatenatedMessagePDUIndex(TInt)

IMPORT_C voidSetConcatenatedMessagePDUIndex(TIntaIndex)

Sets the index of the PDU within the Concatenated Message.

The function panics if the PDU is not concatenated or aIndex is out of range.

capability
None

Parameters

TInt aIndexIndex of the PDU within the Concatenated Message

SetConcatenatedMessageReference(TInt)

IMPORT_C voidSetConcatenatedMessageReference(TIntaReference)

Sets the reference contained in the Concatenation Information Element.

The function panics if aReference is out of range for the message type.

capability
None

Parameters

TInt aReferenceValue to set the Concatenated Message Reference.

SetDataCodingSchemePresent(TBool)

IMPORT_C voidSetDataCodingSchemePresent(TBoolaPresent)

Sets if data coding scheme is present.

capability
None

Parameters

TBool aPresentTrue if data coding scheme is present

SetIndicationState(TSmsDataCodingScheme::TSmsIndicationState)

IMPORT_C voidSetIndicationState(TSmsDataCodingScheme::TSmsIndicationStateaState)

Sets the Indication State encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TSmsDataCodingScheme::TSmsIndicationState aStateIndication State

SetIndicationType(TSmsDataCodingScheme::TSmsIndicationType)

IMPORT_C voidSetIndicationType(TSmsDataCodingScheme::TSmsIndicationTypeaType)

Sets the Indication Type encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TSmsDataCodingScheme::TSmsIndicationType aTypeIndication Type

SetNationalLanguageEncodingL(TSmsEncoding)

IMPORT_C voidSetNationalLanguageEncodingL(TSmsEncodingaEncoding)

Parameters

TSmsEncoding aEncoding

SetNumConcatenatedMessagePDUs(TInt)

IMPORT_C voidSetNumConcatenatedMessagePDUs(TIntaNum)

Sets the number of PDU's in a Concatenated Message.

The function panics if the PDU is not concatenated or if aNum is out of range.

capability
None

Parameters

TInt aNumNumber of PDU's in a Concatenated Message

SetPIDType(TSmsProtocolIdentifier::TSmsPIDType)

IMPORT_C voidSetPIDType(TSmsProtocolIdentifier::TSmsPIDTypeaSmsPIDType)

Sets key bits 7 and 6 of the PID field.

capability
None

Parameters

TSmsProtocolIdentifier::TSmsPIDType aSmsPIDTypeBits 7 and 6 of the PID field

SetParsedServiceCenterAddressL(const TGsmSmsTelNumber &)

IMPORT_C voidSetParsedServiceCenterAddressL(const TGsmSmsTelNumber &aParsedAddress)

Sets the service center address through a TGsmSmsTelNumber object.

These functions panic for a DELIVER REPORT (CSmsDeliverReport) or a SUBMIT REPORT (CSmsSubmitReport).

capability
None

Parameters

const TGsmSmsTelNumber & aParsedAddressService center address

SetParsedToFromAddressL(const TGsmSmsTelNumber &)

IMPORT_C voidSetParsedToFromAddressL(const TGsmSmsTelNumber &aParsedAddress)

Sets the "to from" with a TGsmSmsTelNumber object.

capability
None

Parameters

const TGsmSmsTelNumber & aParsedAddressThe destination or sender address

SetProtocolIdentifierPresent(TBool)

IMPORT_C voidSetProtocolIdentifierPresent(TBoolaPresent)

Sets if Protocol Identifier is present.

It panics if the PDU type is unsupported.

capability
None

Parameters

TBool aPresentTrue if Protocol Identifier is present

SetServiceCenterAddressL(const TDesC &)

IMPORT_C voidSetServiceCenterAddressL(const TDesC &aAddress)

Sets the service center address.

A prepended '+' is used to indicate an international number.

capability
None

Parameters

const TDesC & aAddressService center address

SetShortMessageType(TSmsProtocolIdentifier::TSmsShortMessageType)

IMPORT_C voidSetShortMessageType(TSmsProtocolIdentifier::TSmsShortMessageTypeaShortMessageType)

Sets the Short Message Type in the PID field.

capability
None

Parameters

TSmsProtocolIdentifier::TSmsShortMessageType aShortMessageTypeShort Message Type

SetTelematicDeviceIndicator(TSmsProtocolIdentifier::TSmsTelematicDeviceIndicator)

IMPORT_C voidSetTelematicDeviceIndicator(TSmsProtocolIdentifier::TSmsTelematicDeviceIndicatoraIndicator)

Sets the Telematic device indicator from the PID field.

capability
None

Parameters

TSmsProtocolIdentifier::TSmsTelematicDeviceIndicator aIndicatorTelematic device indicator

SetTelematicDeviceType(TSmsProtocolIdentifier::TSmsTelematicDeviceType)

IMPORT_C voidSetTelematicDeviceType(TSmsProtocolIdentifier::TSmsTelematicDeviceTypeaDeviceType)

Sets the Telematic device type in the PID field.

capability
None

Parameters

TSmsProtocolIdentifier::TSmsTelematicDeviceType aDeviceTypeTelematic device type

SetTextCompressed(TBool)

IMPORT_C voidSetTextCompressed(TBoolaCompressed)

Set to encode Text Compressed in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

Parameters

TBool aCompressedTrue to encode Text Compressed

SetTextConcatenatedL(TBool, TBool)

IMPORT_C voidSetTextConcatenatedL(TBoolaConcatenated,
TBoolaIs16Bit = EFalse
)

Sets whether the PDU is part of a concatenated message or not.

It is a leaving function as it is inserting an information element into the user data.

capability
None

Parameters

TBool aConcatenatedTrue if message is concatenated
TBool aIs16Bit = EFalseTrue if type of Concatenation Information Element is 16 bit

SetToFromAddressL(const TDesC &)

IMPORT_C voidSetToFromAddressL(const TDesC &aAddress)

Sets the "to from" address.

The function panics for a DELIVER REPORT (CSmsDeliverReport) or a SUBMIT REPORT (CSmsSubmitReport).

A prepended '+' is used to indicate an international number.

capability
None

Parameters

const TDesC & aAddressThe destination or sender address

SetUserDataPresent(TBool)

IMPORT_C voidSetUserDataPresent(TBoolaPresent)

Sets or unsets the User Data Header Indicator.

It panics if PDU type is unsupported.

capability
None

Parameters

TBool aPresentTrue to set the User Data Header Indicator

ShortMessageType()

IMPORT_C TSmsProtocolIdentifier::TSmsShortMessageTypeShortMessageType()const

Gets the Short Message Type in the PID field.

capability
None

TelematicDeviceIndicator()

IMPORT_C TSmsProtocolIdentifier::TSmsTelematicDeviceIndicatorTelematicDeviceIndicator()const

Gets the Telematic device indicator from the PID field.

capability
None

TelematicDeviceType()

IMPORT_C TSmsProtocolIdentifier::TSmsTelematicDeviceTypeTelematicDeviceType()const

Gets the Telematic device type in the PID field.

capability
None

TextCompressed()

IMPORT_C TBoolTextCompressed()const

True if Text Compressed is encoded in the data coding scheme.

The function panics if the data coding scheme is not present.

capability
None

TextConcatenated(TBool *)

IMPORT_C TBoolTextConcatenated(TBool *aIs16Bit = NULL)const

Tests if the PDU is part of a concatenated message.

capability
None

Parameters

TBool * aIs16Bit = NULLContent is set true if Concatenation Information Element is 16-bit. Default is null.

ToFromAddress()

IMPORT_C TPtrCToFromAddress()const

Gets the "to from" address.

This address is the original (sender's) address for a DELIVER (CSmsDeliver), the destination address for a SUBMIT (CSmsSubmit), the recipient (sender's) address for a STATUS REPORT (CSmsStatusReport) and the destination address for a COMMAND (CSmsCommand).

The function panics for a DELIVER REPORT (CSmsDeliverReport) or a SUBMIT REPORT (CSmsSubmitReport).

It is assumed that the address is Unicode, and can contain spaces and alphabetic characters.

capability
None

ToFromAddressPtr()

const CSmsAddress *ToFromAddressPtr()const [protected, virtual]

Type()

TSmsPDUType Type()const [inline]

UpdateConcatenationDataL(TInt, TInt, TInt)

voidUpdateConcatenationDataL(TIntaRef,
TIntaPduIndex,
TIntaMaxPdu
)

Updates the three pieces of concatenation data (reference number, pdu index and max pdu number) in this PDU.

Parameters

TInt aRefReference number.
TInt aPduIndexCurrent PDU number.
TInt aMaxPduTotal PDU number.

UpdateEmailHeaderDataL(TInt &)

voidUpdateEmailHeaderDataL(TInt &aEmailOverallHeaderLength)

Updates the email header data in this PDU.

Parameters

TInt & aEmailOverallHeaderLengthLength of the email header.

UpdateSMSCCtrlParameterL(const TUint8)

TBool UpdateSMSCCtrlParameterL(const TUint8aOctet)

Updates the SMSC control parameter in this PDU.

Parameters

const TUint8 aOctetValue to store in the SMSC control parameter.

UpdateTPSRRL(TSmsFirstOctet)

TBool UpdateTPSRRL(TSmsFirstOctetaSmsReportRequest)

Updates the TPSRRL control parameter in this PDU.

Parameters

TSmsFirstOctet aSmsReportRequestStatus Report Request setting.

UserData()

IMPORT_C CSmsUserData &UserData()

Gets User Data (non-const).

capability
None

UserData()

IMPORT_C const CSmsUserData &UserData()const

Gets User Data (const).

capability
None

UserDataPresent()

IMPORT_C TBoolUserDataPresent()const

Tests if the User Data Header Indicator is set.

It panics if PDU type is unsupported.

capability
None

UserDataPtr()

const CSmsUserData *UserDataPtr()const [protected, virtual]

Member Enumerations Documentation

Enum TSmsPDUType

Flags for the 6 basic PDU types in GSM SMS messaging.

Enumerators

ESmsDeliver = 0
ESmsDeliverReport = 1
ESmsSubmit = 2
ESmsSubmitReport = 3
ESmsStatusReport = 4
ESmsCommand = 5

Member Data Documentation

CSmsAddress * iServiceCenterAddress

CSmsAddress *iServiceCenterAddress[protected]

const TSmsPDUType iSmsPDUType

const TSmsPDUTypeiSmsPDUType[private]