之所以把MMS Notification 放在单独的一节是由于它的特殊性,前面提到过,MMS Notification 是由SMSC (短息服务中心)以PUSH 通知的方式发给接收方的,即MMS Notification 是一条短息,不同于普通的短息,MMS Notification 的编码是WSP +MMS PDU Header 的结构,里面最重要的信息就是Content-Location ,它指出了彩信所在的Uri 地址,接收时从该地址下载彩信到客户端,这个Uri 地址前面我们看到过,类似于 http://xxx.xxx.xxx.xxx//abcd efghijkl 的样子,不同的彩信,中间的IP 是不一样的,如果是移动帐号,后面的字符一般是12 个的长度,但是也不保证一定是这个长度,对我们来说,它们是随机生成的。当然,MMS Notification 里面还包括发送方的手机号码等信息。
下面是 MMS Notification 的 Short Message 结构:
图20 MMS Notification 结构
说明一点,对应用层来说,SM-TL 和TP-UDP 是不可见的,在wince 平台上,这部分由驱动层来完成,通过WIN API 实际接收到的是WSP PDU 和MMS PDU Header 部分。下面提供一个从网上摘抄的例子来说明MMS Notification 的结构。
十六进制编码如下
08 91 68 31 08 10 00 05 F0 44 04 A1 33 25 00 04 60 01 52 32 95 35 23 88 06 05 04 0B 84 23 F0 A 5 06 24 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 B4 87 AF 84 8C 82 98 5A 58 37 32 68 63 4D 41 6C 71 37 41 00 8D 90 83 68 74 74 70 3A 2F 2F 32 31 38 2E 32 30 30 2E 32 34 39 2E 33 38 2F 5A 58 37 32 68 63 4D 41 6C 71 37 41 00 88 05 81 03 02 A3 00 89 16 80 35 35 35 35 31 36 30 31 30 33 2F 54 59 50 45 3D 50 4C 4D 4E 00 8A 82 8E 01 0D
08 91 68 31 08 10 00 05 F0
Octet(s) |
Description |
08 |
Length of the SMSC info |