Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure is used for provider-specific data for use with SmsSendMessageand SmsReadMessage. The text provider is the most basic Short Message Service (SMS) protocol type. The content of the message is simply a text string. Note that Phase 2 fragmentation and reassembly, according to GSM specification 3.40, "Digital cellular telecommunications system (Phase 2+); Technical realization of the Short Message Service (SMS)," are supported.

Syntax

typedef struct text_provider_specific_data_tag {
	DWORD 
dwMessageOptions;
	PROVIDER_SPECIFIC_MESSAGE_CLASS 
psMessageClass;
	PROVIDER_SPECIFIC_REPLACE_OPTION 
psReplaceOption;
	DWORD 
dwHeaderDataSize;
	BYTE 
pbHeaderData[SMS_DATAGRAM_SIZE];
	BOOL 
fMessageContainsEMSHeaders;
	DWORD 
dwProtocolID;
	DWORD 
dwExtParams;
	TEXT_PROVIDER_SPECIFIC_PRIORITY_TYPE 
tpsPriority;
	SMS_ADDRESS 
smsaCallBack;
} TEXT_PROVIDER_SPECIFIC_DATA;

Members

dwMessageOptions

Indicates various text message options. For a list of possible options, see the Message option constants table in Remarks.

psMessageClass

Text Short Message Service (SMS) messages with the appropriate flag can replace previously received notifications with a similar flag and originating address. For possible values, see the PROVIDER_SPECIFIC_MESSAGE_CLASSenumeration.

psReplaceOption

Text SMS messages with the appropriate flag can replace previously received notifications with a similar flag and originating address. For possible values, see the PROVIDER_SPECIFIC_REPLACE_OPTIONenumeration.

dwHeaderDataSize

The size of the header. For multi-part messages, this is the size of each segment's header.

pbHeaderData[SMS_DATAGRAM_SIZE]

The information contained in the header. For multi-part messages, only the header from the first segment is returned. The size must be zero for ordinary text messages.

fMessageContainsEMSHeaders

Flag that indicates that at least one segment of this message contains EMS headers. Only set this flag if the EMS handler is installed. This flag only applicable on incoming messages.

dwProtocolID

The Protocol Identifier (PID) of an incoming message, or the desired PID of an outgoing message. This applies to GSM only. Set to SMS_MSGPROTOCOL_UNKNOWNif psReplaceOptionis not PSRO_NONE. For the complete set of possible PID constants, see the Protocol Identifier (PID) constants table in Remarks.

dwExtParams

Bit field of valid additional structure parameters. Possible values are listed in the following table.

Constant Value

TEXTPSEXTPARM_NONE

0x00000000

TEXTPSEXTPARM_CALLBACK

0x00000001

TEXTPSEXTPARM_PRIORITY

0x00000002

TEXTPSEXTPARM_ALL

0x00000003

tpsPriority

Priority indicator. Applies only to CDMA IS637. For the set of possible values, see the TEXT_PROVIDER_SPECIFIC_PRIORITY_TYPEenumeration.

smsaCallBack

Callback number. Applies only to CDMA IS637. For more information refer to SMS_ADDRESS.

Remarks

Message option constants for the dwMessageOptionsparameter.

Constant Description

PS_MESSAGE_OPTION_NONE

Specifies that no options are being used.

PS_MESSAGE_OPTION_REPLYPATH

Before sending, set the TP_REPLY_PATHparameter. For more information, see "GSM specification 03.40 (Annex D)" at this Web site .

PS_MESSAGE_OPTION_STATUSREPORT

Before sending, set the TP_STATUS_REPORT_REQUESTparameter to request a status report for the outgoing message. For more information, see "GSM specification 03.40 (Annex D)" at this Web site .

PS_MESSAGE_OPTION_DISCARD

Before sending, set the TP_DCS(Data Coding Scheme)parameter to request that the discard bit be set for the outgoing message. This option will be ignored when sending. This option is only used for message waiting indication. It is only meaningful when receiving. The discard bit indicates that the device can discard the contents of the message, and only present the message indicator in the UI. For more information, see "GSM specification 03.40 (Annex D)" at this Web site .

Protocol Identifier (PID) constants for the dwProtocolIDparameter.

Constant Value

SMS_MSGPROTOCOL_UNKNOWN

0x00000000

SMS_MSGPROTOCOL_SMETOSME

0x00000001

SMS_MSGPROTOCOL_IMPLICIT

0x00000002

SMS_MSGPROTOCOL_TELEX

0x00000003

SMS_MSGPROTOCOL_TELEFAX_GROUP3

0x00000004

SMS_MSGPROTOCOL_TELEFAX_GROUP4

0x00000005

SMS_MSGPROTOCOL_VOICEPHONE

0x00000006

SMS_MSGPROTOCOL_ERMES

0x00000007

SMS_MSGPROTOCOL_PAGING

0x00000008

SMS_MSGPROTOCOL_VIDEOTEX

0x00000009

SMS_MSGPROTOCOL_TELETEX

0x0000000a

SMS_MSGPROTOCOL_TELETEX_PSPDN

0x0000000b

SMS_MSGPROTOCOL_TELETEX_CSPDN

0x0000000c

SMS_MSGPROTOCOL_TELETEX_PSTN

0x0000000d

SMS_MSGPROTOCOL_TELETEX_ISDN

0x0000000e

SMS_MSGPROTOCOL_UCI

0x0000000f

SMS_MSGPROTOCOL_MSGHANDLING

0x00000010

SMS_MSGPROTOCOL_X400

0x00000011

SMS_MSGPROTOCOL_EMAIL

0x00000012

SMS_MSGPROTOCOL_SCSPECIFIC1

0x00000013

SMS_MSGPROTOCOL_SCSPECIFIC2

0x00000014

SMS_MSGPROTOCOL_SCSPECIFIC3

0x00000015

SMS_MSGPROTOCOL_SCSPECIFIC4

0x00000016

SMS_MSGPROTOCOL_SCSPECIFIC5

0x00000017

SMS_MSGPROTOCOL_SCSPECIFIC6

0x00000018

SMS_MSGPROTOCOL_SCSPECIFIC7

0x00000019

SMS_MSGPROTOCOL_GSMSTATION

0x0000001a

SMS_MSGPROTOCOL_SM_TYPE0

0x0000001b

SMS_MSGPROTOCOL_RSM_TYPE1

0x0000001c

SMS_MSGPROTOCOL_RSM_TYPE2

0x0000001d

SMS_MSGPROTOCOL_RSM_TYPE3

0x0000001e

SMS_MSGPROTOCOL_RSM_TYPE4

0x0000001f

SMS_MSGPROTOCOL_RSM_TYPE5

0x00000020

SMS_MSGPROTOCOL_RSM_TYPE6

0x00000021

SMS_MSGPROTOCOL_RSM_TYPE7

0x00000022

SMS_MSGPROTOCOL_RETURNCALL

0x00000023

SMS_MSGPROTOCOL_ME_DOWNLOAD

0x00000024

SMS_MSGPROTOCOL_DEPERSONALIZATION

0x00000025

SMS_MSGPROTOCOL_SIM_DOWNLOAD

0x00000026

Bitfield values for the dwExtParamProtparameter.

Constant Value

TEXTPSEXTPARM_NONE

0x00000000

TEXTPSEXTPARM_CALLBACK

0x00000001

TEXTPSEXTPARM_PRIORITY

0x00000002

TEXTPSEXTPARM_ALL

0x00000003

Requirements

Header sms.h
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Pocket PC 2002 and later, Smartphone 2002 and later

See Also