Anders Lindh kirjoittaa maanantaina, 8. heinäkuuta 2002, kello 13:52:Hi,
>
> I've been struggling with the PPG and m-notification-ind messages, but
> haven't been able to get the handset to react to the indication. There's
> probably something I'm missing, so I'd appreciate if someone could lend
> their eyes and check through the used material. The notification is
> received by the handset, but apparently silently ignored. No fetch is
> occuring at http://www.flyerone.com/.
>
>
> I submit this to the PPG:
>
> Headers:
> content-type: multipart/related; boundary=wFwKoCsDInFRxqmburDFMeqxu;
> type="application/xml"
> x-wap-application-id: x-wap-application:mms.ui

This should be x-wap-application:mms.ua

> connection: keep-alive
> content-length: 656
>
> content:
> 2002-07-08 13:28:34 [14] DEBUG:   data: 0d 0a 2d 2d 4b 62 66 66
> ..--Kbff
> 2002-07-08 13:28:34 [14] DEBUG:   data: 51 73 46 51 69 5a 4f 6f
> QsFQiZOo
> 2002-07-08 13:28:34 [14] DEBUG:   data: 66 6c 56 43 57 75 4a 46
> flVCWuJF
> 2002-07-08 13:28:34 [14] DEBUG:   data: 65 63 46 76 52 0d 0a 43
> ecFvR..C
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6f 6e 74 65 6e 74 2d 74
> ontent-t
> 2002-07-08 13:28:34 [14] DEBUG:   data: 79 70 65 3a 20 61 70 70   ype:
> app
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6c 69 63 61 74 69 6f 6e
> lication
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2f 78 6d 6c 0d 0a 3c 3f
> /xml..<?
> 2002-07-08 13:28:34 [14] DEBUG:   data: 78 6d 6c 20 76 65 72 73   xml
> vers
> 2002-07-08 13:28:34 [14] DEBUG:   data: 69 6f 6e 3d 22 31 2e 30
> ion="1.0
> 2002-07-08 13:28:34 [14] DEBUG:   data: 22 20 65 6e 63 6f 64 69   "
> encodi
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6e 67 3d 22 49 53 4f 2d
> ng="ISO-
> 2002-07-08 13:28:34 [14] DEBUG:   data: 38 38 35 39 2d 31 22 3f
> 8859-1"?
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3e 0d 0a 3c 70 61 70 3e
>> ..<pap>
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3c 70 75 73 68 2d 6d 65
> <push-me
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 73 61 67 65 20 70 75   ssage
> pu
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 68 2d 69 64 3d 22 31
> sh-id="1
> 2002-07-08 13:28:34 [14] DEBUG:   data: 32 33 34 40 66 6c 79 65
> 234@flye
> 2002-07-08 13:28:34 [14] DEBUG:   data: 72 6f 6e 65 2e 63 6f 6d
> rone.com
> 2002-07-08 13:28:34 [14] DEBUG:   data: 22 20 64 65 6c 69 76 65   "
> delive
> 2002-07-08 13:28:34 [14] DEBUG:   data: 72 2d 62 65 66 6f 72 65
> r-before
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2d 74 69 6d 65 73 74 61
> -timesta
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6d 70 3d 22 32 30 30 32
> mp="2002
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2d 30 37 2d 30 38 54 31
> -07-08T1
> 2002-07-08 13:28:34 [14] DEBUG:   data: 30 3a 33 33 3a 33 32 5a
> 0:33:32Z
> 2002-07-08 13:28:34 [14] DEBUG:   data: 22 20 64 65 6c 69 76 65   "
> delive
> 2002-07-08 13:28:34 [14] DEBUG:   data: 72 2d 61 66 74 65 72 2d
> r-after-
> 2002-07-08 13:28:34 [14] DEBUG:   data: 74 69 6d 65 73 74 61 6d
> timestam
> 2002-07-08 13:28:34 [14] DEBUG:   data: 70 3d 22 32 30 30 32 2d
> p="2002-
> 2002-07-08 13:28:34 [14] DEBUG:   data: 30 37 2d 30 38 54 31 30
> 07-08T10
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3a 32 38 3a 33 32 5a 22
> :28:32Z"
> 2002-07-08 13:28:34 [14] DEBUG:   data: 20 73 6f 75 72 63 65 2d
> source-
> 2002-07-08 13:28:34 [14] DEBUG:   data: 72 65 66 65 72 65 6e 63
> referenc
> 2002-07-08 13:28:34 [14] DEBUG:   data: 65 3d 22 46 6c 79 65 72
> e="Flyer
> 2002-07-08 13:28:34 [14] DEBUG:   data: 4f 6e 65 20 4c 74 64 22   One
> Ltd"
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3e 3c 61 64 64 72 65 73
>> <addres
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 20 61 64 64 72 65 73   s
> addres
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 2d 76 61 6c 75 65 3d
> s-value=
> 2002-07-08 13:28:34 [14] DEBUG:   data: 22 57 41 50 50 55 53 48
> "WAPPUSH
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3d 2b 33 35 38 34 30 35
> =+358405
> 2002-07-08 13:28:34 [14] DEBUG:   data: 31 33 34 32 36 35 2f 54
> 134265/T
> 2002-07-08 13:28:34 [14] DEBUG:   data: 59 50 45 3d 50 4c 4d 4e
> YPE=PLMN
> 2002-07-08 13:28:34 [14] DEBUG:   data: 40 66 6c 79 65 72 6f 6e
> @flyeron
> 2002-07-08 13:28:34 [14] DEBUG:   data: 65 2e 63 6f 6d 22 20 2f   e.com"
> /
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3e 3c 71 75 61 6c 69 74
>> <qualit
> 2002-07-08 13:28:34 [14] DEBUG:   data: 79 2d 6f 66 2d 73 65 72
> y-of-ser
> 2002-07-08 13:28:34 [14] DEBUG:   data: 76 69 63 65 20 70 72 69   vice
> pri
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6f 72 69 74 79 3d 22 6d
> ority="m
> 2002-07-08 13:28:34 [14] DEBUG:   data: 65 64 69 75 6d 22 20 2f   edium"
> /
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3e 3c 2f 70 75 73 68 2d
>> </push-
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6d 65 73 73 61 67 65 3e
> message>
> 2002-07-08 13:28:34 [14] DEBUG:   data: 3c 2f 70 61 70 3e 0d 0a
> </pap>..
> 2002-07-08 13:28:34 [14] DEBUG:   data: 0d 0a 2d 2d 4b 62 66 66
> ..--Kbff
> 2002-07-08 13:28:34 [14] DEBUG:   data: 51 73 46 51 69 5a 4f 6f
> QsFQiZOo
> 2002-07-08 13:28:34 [14] DEBUG:   data: 66 6c 56 43 57 75 4a 46
> flVCWuJF
> 2002-07-08 13:28:34 [14] DEBUG:   data: 65 63 46 76 52 0d 0a 43
> ecFvR..C
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6f 6e 74 65 6e 74 2d 74
> ontent-t
> 2002-07-08 13:28:34 [14] DEBUG:   data: 79 70 65 3a 20 61 70 70   ype:
> app
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6c 69 63 61 74 69 6f 6e
> lication
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2f 76 6e 64 2e 77 61 70
> /vnd.wap
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2e 6d 6d 73 2d 6d 65 73
> .mms-mes
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 61 67 65 0d 0a 43 6f
> sage..Co
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6e 74 65 6e 74 2d 74 72
> ntent-tr
> 2002-07-08 13:28:34 [14] DEBUG:   data: 61 6e 73 66 65 72 2d 65
> ansfer-e
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6e 63 6f 64 69 6e 67 3a
> ncoding:
> 2002-07-08 13:28:34 [14] DEBUG:   data: 20 62 61 73 65 36 34 0d
> base64.
> 2002-07-08 13:28:34 [14] DEBUG:   data: 0a 50 7a 38 2f 4d 54 49
> .Pz8/MTI
> 2002-07-08 13:28:34 [14] DEBUG:   data: 7a 4e 45 42 6d 62 48 6c
> zNEBmbHl
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6c 63 6d 39 75 5a 53 35
> lcm9uZS5
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6a 62 32 30 41 50 35 41
> jb20AP5A
> 2002-07-08 13:28:34 [14] DEBUG:   data: 2f 50 7a 38 45 41 41 41
> /Pz8EAAA
> 2002-07-08 13:28:34 [14] DEBUG:   data: 41 5a 44 38 47 50 77 51
> AZD8GPwQ
> 2002-07-08 13:28:34 [14] DEBUG:   data: 39 4b 57 70 38 50 32 68
> 9KWp8P2h
> 2002-07-08 13:28:34 [14] DEBUG:   data: 30 64 48 41 36 4c 79 39
> 0dHA6Ly9
> 2002-07-08 13:28:34 [14] DEBUG:   data: 33 64 33 63 75 5a 6d 78
> 3d3cuZmx
> 2002-07-08 13:28:34 [14] DEBUG:   data: 35 5a 58 4a 76 0d 0a 62
> 5ZXJv..b
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6d 55 75 59 32 39 74 4c
> mUuY29tL
> 2002-07-08 13:28:34 [14] DEBUG:   data: 77 41 2f 76 67 3d 3d 0d
> wA/vg==.
> 2002-07-08 13:28:34 [14] DEBUG:   data: 0a 2d 2d 4b 62 66 66 51
> .--KbffQ
> 2002-07-08 13:28:34 [14] DEBUG:   data: 73 46 51 69 5a 4f 6f 66
> sFQiZOof
> 2002-07-08 13:28:34 [14] DEBUG:   data: 6c 56 43 57 75 4a 46 65
> lVCWuJFe
> 2002-07-08 13:28:34 [14] DEBUG:   data: 63 46 76 52 2d 2d 0d 0a
> cFvR--..
>
> The content part is a base64 encoded representation of the
> m-notification-ind message, here's a dump and description (hex):

Transfer encoding should be 8bit. This is defined in 3GPP, message 
forwarding
between MMSCs part ! (So did not notice it before.)

>
> 8c 82
> // message type (m-notification-ind)
> 98 31 32 33 34 40 66 6c 79 65 72 6f 6e 65 2e 63 6f 6d 0       //
> push-id ("[EMAIL PROTECTED]")
> 8d 90

OK to me.

> // mms-version (1.0)
> 8a 82
> // message class ("Informational")

I think message class should more urgent. like 80 (personal). Phone may 
hide less urgent ones somewhere.

> 8e 4 0 0 0 64
> // size (100)

OK, but zeros are unneeded here. Phone may actually drop a message 
containing
needless zeros

> 88 6 80 4 3d 29 6c a0
> // expiry, absolute, same as deliver-before-timestamp

OK.

> 83 68 74 74 70 3a 2f 2f 77 77 77 2e 66 6c 79 65 72 6f 6e 65 2e 63 6f 6d
> 2f 0 // content-location, "http://www.flyerone.com/";

OK (expect of course that end-of-string should be 00)

> 84 be
> // content-type, application/vnd.wap.mms-message

This part content type, so it belongs here.
Following MMS headers are mandatory in the push content:
Message-Type
Transaction-Id
MMS-Version
Message-Class
Expiry
Content-Location

So transaction id is missing here. This is a text string, so for test 
purposes there is no
need to be too clever. MMSC sets this, so you can pick value you like.

>
> The OTA message sent to the hanset looks like this (dumped using the
> http smsc):
>
> 2002-07-08 13:28:34 [20] DEBUG:   data: 47 45 54 20 2f 63 62 2f   GET
> /cb/
> 2002-07-08 13:28:34 [20] DEBUG:   data: 64 65 62 75 67 3f 75 73
> debug?us
> 2002-07-08 13:28:34 [20] DEBUG:   data: 65 72 3d 66 6f 6f 26 70
> er=foo&p
> 2002-07-08 13:28:34 [20] DEBUG:   data: 61 73 73 3d 62 61 72 26
> ass=bar&
> 2002-07-08 13:28:34 [20] DEBUG:   data: 74 6f 3d 30 30 33 35 38
> to=00358
> 2002-07-08 13:28:34 [20] DEBUG:   data: 34 30 35 31 33 34 32 36
> 40513426
> 2002-07-08 13:28:34 [20] DEBUG:   data: 35 26 74 65 78 74 3d 25
> 5&text=%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 30 30 25 30 36 2e 25 42
> 00%06.%B
> 2002-07-08 13:28:34 [20] DEBUG:   data: 45 25 39 36 25 37 46 25
> E%96%7F%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 30 30 25 41 39 25 37 46
> 00%A9%7F
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 30 30 25 41 46 25 38
> %00%AF%8
> 2002-07-08 13:28:34 [20] DEBUG:   data: 30 43 6f 6e 74 65 6e 74
> 0Content
> 2002-07-08 13:28:34 [20] DEBUG:   data: 2d 54 72 61 6e 73 66 65
> -Transfe
> 2002-07-08 13:28:34 [20] DEBUG:   data: 72 2d 45 6e 63 6f 64 69
> r-Encodi
> 2002-07-08 13:28:34 [20] DEBUG:   data: 6e 67 25 30 30 62 69 6e
> ng%00bin
> 2002-07-08 13:28:34 [20] DEBUG:   data: 61 72 79 25 30 30 25 38
> ary%00%8
> 2002-07-08 13:28:34 [20] DEBUG:   data: 44 25 43 33 25 42 34 25
> D%C3%B4%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 38 30 25 33 46 25 33 46
> 80%3F%3F
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 33 46 31 32 33 34 25
> %3F1234%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 34 30 66 6c 79 65 72 6f
> 40flyero
> 2002-07-08 13:28:34 [20] DEBUG:   data: 6e 65 2e 63 6f 6d 25 30
> ne.com%0
> 2002-07-08 13:28:34 [20] DEBUG:   data: 30 25 33 46 25 39 30 25
> 0%3F%90%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 33 46 25 33 46 25 33 46
> 3F%3F%3F
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 30 34 25 30 30 25 30
> %04%00%0
> 2002-07-08 13:28:34 [20] DEBUG:   data: 30 25 30 30 64 25 33 46
> 0%00d%3F
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 30 36 25 33 46 25 30
> %06%3F%0
> 2002-07-08 13:28:34 [20] DEBUG:   data: 34 25 33 44 29 6a 25 37
> 4%3D)j%7
> 2002-07-08 13:28:34 [20] DEBUG:   data: 43 25 33 46 68 74 74 70
> C%3Fhttp
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 33 41 25 32 46 25 32
> %3A%2F%2
> 2002-07-08 13:28:34 [20] DEBUG:   data: 46 77 77 77 2e 66 6c 79
> Fwww.fly
> 2002-07-08 13:28:34 [20] DEBUG:   data: 65 72 6f 6e 65 2e 63 6f
> erone.co
> 2002-07-08 13:28:34 [20] DEBUG:   data: 6d 25 32 46 25 30 30 25
> m%2F%00%
> 2002-07-08 13:28:34 [20] DEBUG:   data: 33 46 25 42 45 26 75 64
> 3F%BE&ud
> 2002-07-08 13:28:34 [20] DEBUG:   data: 68 3d 25 30 36 25 30 35
> h=%06%05
> 2002-07-08 13:28:34 [20] DEBUG:   data: 25 30 34 25 30 42 25 38
> %04%0B%8
> 2002-07-08 13:28:34 [20] DEBUG:   data: 34 25 32 33 25 46 30 20
> 4%23%F0
> 2002-07-08 13:28:34 [20] DEBUG:   data: 48 54 54 50 2f 31 2e 31
> HTTP/1.1
> 2002-07-08 13:28:34 [20] DEBUG:   data: 0d 0a 48 6f 73 74 3a 20
> ..Host:
> 2002-07-08 13:28:34 [20] DEBUG:   data: 6c 6f 63 61 6c 68 6f 73
> localhos
> 2002-07-08 13:28:34 [20] DEBUG:   data: 74 3a 38 30 38 30 0d 0a
> t:8080..
>
> It looks quite allright, only thing I'm not too sure about is the
> Content-Transfer-Encoding: binary field that's present in the message.

As I said before, binary encoding is exactly right.

Aarno


Reply via email to