TEXT_PROVIDER_SPECIFIC_DATA
A version of this page is also available for
4/8/2010
This structure is used for provider-specific data for use with SmsSendMessage and 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_CLASS enumeration.
- 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_OPTION enumeration.
- 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_UNKNOWN if psReplaceOption is 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_TYPE enumeration.
- smsaCallBack
Callback number. Applies only to CDMA IS637. For more information refer to SMS_ADDRESS.
Remarks
Message option constants for the dwMessageOptions parameter.
Constant | Description |
---|---|
PS_MESSAGE_OPTION_NONE |
Specifies that no options are being used. |
PS_MESSAGE_OPTION_REPLYPATH |
Before sending, set the TP_REPLY_PATH parameter. 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_REQUEST parameter 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 dwProtocolID parameter.
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 dwExtParamProt parameter.
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
Reference
Short Message Service Structures
PROVIDER_SPECIFIC_MESSAGE_CLASS
PROVIDER_SPECIFIC_REPLACE_OPTION
SmsSendMessage
SmsReadMessage