Re: m-notification-ind (cont.)

Aarno Syvänen <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.