How to dispatch push message£¿

How to dispatch push message£¿ SearchSearch
Author Message
kevin
Posted on Wednesday, September 17, 2003 - 08:01 am:   

hi,
I know that phone can dispatch push message
to various application in terms of
applicationId or content-type.
If this push message is dispatched to mms client,I can find the content-type( 61 70 70 6C 69 63 61 74 69 6F
6E 2F 76 6E 64 2E 77 61 70 2E
6D 6D 73 2D 6D 65 73 73 61 67
65 00 application/vnd.wap.mms-message).otherwise, I dont
find content-type or applicationId.
For encoding format, what is the diffrence among mms push, wap push and syncml message?
how to distinguish push message is SI or SL?

thanks in advance.









Bryce Norwood - NowSMS Support
Posted on Thursday, September 18, 2003 - 06:10 pm:   

Push messages can be distinguished based upon either their "Content-type" header or their "X-Wap-application-id" header.

Of course, in WSP the Content-type header is not encoded as a separate header, there is a field in the PDU in which the Content-type is specified, rather than it being specified as a WSP header.

The "X-Wap-Application-id" header is not used so much because it was introduced later in the specification releases, so it is not as widely implemented. So, you'll find the "Content-type" being used for the device to figure out how to handle the push internally.

For SI and SL messages, you will definitely find the content type, as this is a required field in the push PDU. It is just that normally these content types are normally encoded using their binary values instead of as text strings. (Application/vnd.wap.mms-message could also be encoded using a well-known binary value, but it usually isn't because some MMS clients were either developed before the well-known binary value was officially defined, or because some MMS clients were developed without the developers checking to see if there was a well-known binary value.) You can find the content-type codes at http://www.wapforum.org/wina.

-bn

kevin
Posted on Friday, September 19, 2003 - 05:12 am:   

thanks. I have a question.

I have find that the content type of SL is 0x30, but I get the following SL message from nowsms: UDH=0605040B8423F0;
Data=7B0601B002066A008509037761702E736F68752E636F6D000601.
could you tell me where is '30'?
additionaly, wap-si-spec tell whether it is '8
Bryce Norwood - NowSMS Support
Posted on Thursday, September 25, 2003 - 03:29 am:   

You're looking at a connection-less push request.

7B is the TID (WSP specification, section 8.2.1)
06 is the WSP PDU type (defined same section as above, value 06 can be found in WSP specification Table 34)

Push PDU data follows, format defined in WSP specfication, section 8.2.4.1.

01 is HeadersLen

B0 is content type, which immediately follows HeadersLen (HeadersLen is a uintvar, so if for some reason the header was longer than 127 bytes, HeadersLen would be encoded with multiple octets).

Content type encoding is defined in WSP Specification, Section 8.4.2.24. In this case, it is a constrained media encoding where SL content type (0x30) is or'd with 0x80 to produce the value 0xB0. See section 8.4.1.2 about encoding of field values where it specifies that if the value of a field is between 128 (0x80) and 255 (0xFF), then the field value contains an encoded 7-bit value. Taking the lower 7-bits, you get your content type of 0x30.

-bn