views:

572

answers:

2

I'm trying to send an OMA Email Notification(EMN) 1.0 WAP-Push, to a mobile device in order to make it fetch the newest emails for a given mailbox.

My problem is that nothing happens when the mobile receives the SMS. I tested with an Nokia E71, which ought to have the specification implemented according to Nokia's own technical specs. On the device i have set up an IMAP email account for the email adresss '[email protected]'.

I read somewhere that it was also necessary to set 'Email Notifications' to 'auto-update' in the 'automatic retrieval' menu.

So with the setup explained, here's what I tried to send:

The header:

UDH=WDP+WSP
WDP=0605040B8423F0
06 - Length of WDP in octets
05 - information element identifier, application port addressing scheme, 16-bit address
04 - information element length in octets
0B84 - Destination port (2948)
23F0 - Source port (9200)

WSP=250603030A09
25 - transaction id (connectionless WSP)
06 - PDU Type: Push
03 - Length of headers in octets
030A - Content-type: application/vnd.wap.emn+wbxml
09 - Application-id: x-wap-application:emn.ua

The body:

030D6A008507036D795F656D61696C40676D61696C2E636F6D0005C30620090504121501
03 - WBXML version 1.3
0D - EMN 1.0 public identifier
6A - Encoding UTF-8
00 - String table length = 0
85 - <EMN>-tag with attributes
07 - Mailbox=mailat: (Attribute)
03 - Inline string follows
6D795F656D61696C40676D61696C2E636F6D - '[email protected]' 
00 - End of string
05 - Timestamp (Attribute)
C3 - Opaque data follows
06 - data is 6 octets long
200905041215 - 20090504T12:15:00Z
01 - </EMN>

I know this is a very specific question and might be difficult to answer, but I hope somebody is capable of pointing out what I'm doing wrong...

A: 

Have you tried monitoring the message using Wireshark to verify whether it is correctly formatted?

Also::

Your destination port value is inconsistent - have you made a typo or a mistake?

0B84 - Destination port (2984)

Things to think about

1) Have you got the byte ordering correct? E.g. should your Source Port of 0x23f0 (9200) be formatted as 23f0 or as f023

2) Should the WDP length indicator include the length byte itself making the correct length 07 octets?

3) Should the WSP have a length field?

Regards

Howard May
Hi Howard, and thank you for your reply:Destination port 2984 is unfortunately a typo, should be 2948 - the Hex representation is correct.I don't Wireshark is gonna help me much here, but maybe I should try and check the log on my SMS GW to see what it sends out is actually what i invoked it with. 1) Ain't hexadecimal numbers not always interpreted with leftmost char as the most significant?2) The length octet is standardized, and always 1 octet long, and should not be included in the length3) WSP does have a length, but only for the optional headers and I have included that...
takete.dk
A: 

takete.dk, Had you constructed and sent the EMN notification successfully? I have trouble now.