簡訊PDU編碼解析

來源:互聯網
上載者:User

簡訊PDU編碼解析

 概述

  問題:接收飛信或者配合終端發送的長簡訊(兩三百個字)或者接收電訊廠商發送的話費資訊,長簡訊總是接收不完整。其中會有某些段有丟失。

原因分析:

1 手機接收到了,但是拼接錯誤

         這樣的結果是多條接收不完整的資訊,基本上是可以排除的

2 網路發送了,手機訊號問題或者繁忙,碰巧處理不過來

         網路端會收不到反饋資訊,網路端會再發一條。

3 發送方的資訊沒全部發送

         通過確認發送成功。

4 網路根本就只發送此簡訊的某一段

         無法得知,但此原因的機率最高。

 

  此環境中此問題出現:拔打10086查詢話費通話過程中,通過輔助機連續發送了5條長簡訊和飛信連續發送多條到測試機,

通話結束後查看,有一條手機發的簡訊顯示不完整。

  網路出現問題的機率較高,連續性不斷髮送,造成網路出現問題。

但是仍然要明確確定是不是手機上僅僅接收到此條簡訊的其中的某幾段。通過測試log分析PDU編碼。

 

 簡訊PDU編碼分析

1 PDU內容:

a0 00 02 00 10 00 00 00 - 19 01 ad 01 09 08 91 68

31 08 70 75 15 f0 00 a0 - 60 0d 91 68 31 62 98 83

25 f4 00 08 21 20 30 61 - 04 25 23 8c 05 00 03 6c

03 01 54 68 5e fa 5e 73 - 00 3a 00 20 30 00 00 32

……

從從第14個位元組看起:

08:SMSC地址長度

91:地址類型,國際格式號碼(號碼前加“+”)

68:中國的國際區號,號碼前加 +86

31 08 70 75 15 f0:簡訊中心地址/號碼:位元組內反轉,13800775510,F補齊長度為偶數。

00 a0 - 60 0d:通常接下來這裡都是兩個位元組,這裡怎麼是四個??

應該標識以下位:這是條長簡訊,應該是60標識

其中0d:發送方地址/號碼長度 00 a0是幹什麼的呢?

Bit7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

TP-RP

TP-UDHI

TP-SRR

未用

TP-MMS

TP-MTI

0

1

1

00

0

00

                




    註:TP-UDHI :TP-User-Data-Header-Indicator(使用者資料頭標示)

     0:沒有頭資訊;1:有頭資訊,頭資訊格式(在使用者資料前面的6個位元組)

91 68 31 62 98 83 25 f4:91,86作用同前面,發送方地址/號碼:+8613268938524

00 :協議標識TP-PID:普通GSM,點到點方式

08 :編碼方式TP-DCS:三種:00表示7-bit編碼(英文)、04表示8-bit編碼(圖片和鈴聲)、08表示UCS2編碼(漢字)

21 20 30 61 - 04 25 23:時間戳記TP-SCTS:12/02/03/16:40:52 32時區

8c :簡訊長度 140 簡訊內容位元組長度,UCS2編碼

05 00 03 6c 03 01:記錄長簡訊的標識  非長簡訊則不帶有此資訊頭

    05- 協議長度(後面佔5位)

    00 表示拆分簡訊

    03 拆分資料的長度(後面的3位)

    6c 唯一標識(用於把多條簡訊合并)

    03 共被拆分3條簡訊

    01 序號,這是其中的第1條簡訊

其餘位元組:…… 簡訊內容

上面這個是正常電話號碼發送的!

 

2 10086發送

66 00 02 00 10 00 00 00 - 09 01 73 01 01 08 91 68

31 08 70 75 15 f1 00 66 - 64 05 a1 01 80 f6 00 08     01 80 f6 號碼:10086

21 20 30 61 73 33 23 56 - 05 00 03 18 02 02 00 33

5e 74 00 30 00 35 67 08 - 00 30 00 37 65 e5 ff 0c

67 08 7e d3 65 e5 4e 3a - 00 32 00 32 65 e5 ff 0c

60 a8 76 84 20 1c 00 31 - 00 30 52 06 20 1d 6e e1

61 0f ff 0c 62 11 4e ec - 76 84 65 e0 96 50 52 a8

52 9b 30 02 4e 2d 56 fd - 79 fb 52 a8 30 02

……

 

飛信發送

a1 00 02 00 10 00 00 00 - 19 01 ae 01 02 08 91 68

31 08 20 00 75 f1 00 a1 - 60 10 a8 21 25 10 53 29   剛好湊偶數 不用F補齊  號碼:1252013592767045

67 07 54 00 08 21 20 30 - 61 24 40 23 8c 05 00 03

78 05 02 80 0c 88 68 73 - b0 51 fa 67 65 76 84 30

02 54 0c 65 f6 ff 0c 51 - 85 57 28 4e 0e 59 16 57

28 76 84 59 51 54 08 4e - 0e 54 8c 8c 10 65 e2 66

……

 

不同平台發送的資訊,PDU編碼會有一些不同。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.