| Author |
Message |
Isaac
New member Username: Isaacw
Post Number: 1 Registered: 08-2006
| | Posted on Thursday, August 10, 2006 - 04:57 am: | |
Hello, We're trying to test WAP Push provisioning over-the-air (OTA) via SMS by using two Windows Mobile devices - one as a sender, the other as a receiver. When the receiving device receives the provisioning message (the message just adds a new browser Favorite, and the message is unsigned), the following "Confirmation" prompt appears: "From unidentified sender: This changes device settings. Caution: unauthenticated message. Accept?" When hitting 'Yes', the Browser Favourite is created properly. Question 1: what does 'unidentified sender' mean? When sending a regular text SMS message, the receiving phone can decipher the sender's phone number, e.g. +61410022305. When receiving a WAP Push message, shouldn't the receiver know the message comes from a particular phone number? Or does 'unidentified sender' means something else. To send the provisioning message, we're using a modified version of the WDP_SMS sample code to send the message (the original code can be found in the 'Windows CE' SDK, e.g. in 'C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Smartphone SDK\Samples\CPP\Win32\Cellcore\Wdp_sms') from the sending Windows Mobile device. Now, we've set up the WAP_ADDRESS's for the sender's number, and the receiver's number. Question 2: At present, the receiving device can only receive the provisioning message when the device is completely unlocked (we used 'unlock.xml' as attached here). We're trying to set up a Trusted Provisioning Server (TPS) and a Push Proxy Gateway (PPG) for the receiving device to accept messages from the sending device, as identified by a phone number. We tried doing this via 'WapTrustedGateway.xml' (as attached). However, the receiving device simply drops the incoming message without any prompt or messages. How do we set up the receiving device to only accept unsigned messages coming from the sending device by recognising the sender's phone number? Your help would be much appreciated. Thanks! Regards, Isaac
|
Frank Henningsen
New member Username: Fhx
Post Number: 2 Registered: 02-2008
| | Posted on Monday, February 11, 2008 - 03:48 pm: | |
Hi Issac, Regarding question 1: If you dont provide a Originating Name within the SMS message, then your device will reckonize the message as unidentified, unless you have provided a value for the X-WAP-Initiator-URI within the WSP header. Regarding question 2: Ive managed to obtain the TPS role by including the following parameters when i encode the provisioning xml: - Content type - Originating address: The OA is the SMSC address. - Push-Flag: The push-flag is defined in [WAPPUSHOTA ch 9.1.3]. If the push-flag is given the value 1, it is possible to obtain the TPS role - X-Wap-Initiator-Uri defines the originating initiator URI address of a WAP message. The X-Wap-Initiator-Uri is defined in [WAPPUSH ch. 5.2.2.3] The following template shows how a WAP push message should be encoded. /** * Create WSP PDU (WAP-230-WSP 8.2.1) */ [01] Transaction ID [06] PDU Type PDU Type (0x06 = push, WAP-230-WSP 8.2.4.1) <wsp-hdr-length> WSP Header length /** * Encode Content type. Content Type are registered at * http://www.wapforum.org/wina/wsp-content-type.htm */ [1f] Length-Quote. Length > 30 and necessary to quote. (WAP-230-WSP 8.4.2.2) [2d] Length: 0x2D = 45 (includes content type and security) [b6] WSP Content type (0x80 | 0x36 = B6) (application/vnd.wap.connectivity-wbxml) /*** * Encode security method (SEC) (WAP-183-PROVCONT 5.3) * 0x00 = NETWPIN * 0x01 = USERPIN * 0x02 = USERNETWPIN * 0x03 = USERPINMAC */ [91] SEC (0x80 | 0x11 = 0x91) (WAP-230-WSP Table 38) <security-method> The security method (NETWPIN, USERPIN, etc) [92] MAC (0x80 | 0x12 = 0x92) (WAP-230-WSP Table 38) <hmac-value> MAC value, always 40 bytes [00] EOF /** * Encode Push-Flag (WAP-189-PushOTA 9.1.3): * 0x01 = Initiator URI is authenticated * 0x02 = Content is trusted * 0x04 = Last push message * other = reserved for future use :-) */ [b4] Push-Flag token (0x80 | 0x34 = 0xB4) [81] Push-Flag value (0x80 | 0x01 = 0x81) : Initiator URI is authenticated /** * Encode X-WAP-Initiator-URI as ASCII/Hex (WAP-230-WSP Table 39) */ [b1] X-WAP-Initiator-URI <initiator-Uri> X-WAP-Initiator-URI value [00] EOF /** * (Optional) Encode X-WAP-APPLICATION-ID. Application-ID's are registered at * http://www.openmobilealliance.org/tech/omna/omna-push-app-id.htm */ [AF] X-WAP-APPLICATION-ID (0x80 | 0x2F = 0xAF) (WAP-230-WSP Table 39) [80] x-wap-application:* (0x80 | 0x00 = 0x80) ANY_APPLICATION <WSP Body> best regards Frank Henningsen (autodidactic WAP push expert) |
|