2011-12-23 9 views
2

私はワッププッシュメッセージを送信しようとします。私は0xf5をdatacoding設定し、メッセージ以下でSMを提出送る:ワッププッシュを送信

GSMショートメッセージサービスのユーザーデータ

 
    udh length: 6 
    16-bit address 05 04 
    Destination port 08b4 
    Source port 23f0 

ワイヤレスセッションプロトコル、方法:プッシュ(0x06で)、コンテンツタイプ:アプリケーション/ vnd.wapを。 SIC

 
    Transaction Id: 0x25 
    PDU Type: Push (0x06) 
    Header length: 1 
    Content type: application/vnd.wap.sic 

WAPバイナリXML、バージョン:1.2、公共ID: " - // WAPFORUM // DTD SI 1.0 // EN(サービス表示1 0.0)"

 
    Version: 1.2 (0x02) 
    Public Identifier: (known): -//WAPFORUM//DTD SI 1.0//EN (Service Indication 1 .0) 
    Character Set: utf-8 (0x000006a) 
    String table: 0 bytes 

データ表現:

 
    45 <si> 
    c6 <indication 
    0c href='http://' 
    03 69 2e 69 6d 67 75 72 2e 63 6f 6d 2f 66 6a 49 44 4e 2e 6a 70 67 00 i.imgur.com/fjIDN.jpg' 
    07 action='signal-medium' 
    01 > 
    03 69 6d 67 75 72 00 'imgur' 
    01 </indication> 
    01 </si> 

メッセージがバイト:

 
    06 05 04 0b 84 23 f0 25 06 01 ae 02 05 6a 00 45 
    c6 0c 03 69 2e 69 6d 67 75 72 2e 63 6f 6d 2f 66 
    6a 49 44 4e 2e 6a 70 67 00 07 01 03 69 6d 67 75 
    72 00 01 01 

SMSCリターン:SUBMIT_SM - RESP: "OK"。 しかし、電話は何も表示されませんでした。何か案は? 私の醜い英語のために申し訳ありません:

答えて

3

私はこれらの変更がうまくいかない理由を完全に正当化することはできませんが、数年後に以下のことがイギリスのネットワークとさまざまなハンドセットで確実に機能するように見えました。これは生産コードで使用されており、以来問題は発生していません。

06 - UDHL 
05 - EI (Send to Ports 16bit addr) 
04 - EIDL 
0B - src port 
84 - src port 
23 - dest port 
F0 - dest port (End of UDH) 

01 - trans id 
06 - Push 
04 - Header Length 
03 - Length 
AE - Content type (application/vnd.wap.sic) 
81 - Character Set (01 once removed high bit) 
EA - UTF 8 (6A once removed high bit) 

02 - Binary XML Version 1.2 
05 - SI Identifier 
6A - UTF-8 
00 - End Data 

45 - SI Binary XML Tag 
C6 - Indication Tag 
0B - href 
03 - Open Text 
    (URL bytes go here...) 
00 - End Data 
0A - Created (date) 
C3 - Data Follows 
07 - Data Length 
20 - date yy (century) 
08 - date yy (year) 
03 - date mm 
26 - date dd 
16 - date HH 
09 - date MM 
12 - date ss 
01 - Close Attribute 
03 - Open Text (Text Goes in here...) 
00 - End Data 
01 - Close Indication Tag 
01 - Close SI Tag 

はあなたの送信するためにいくつかの相違点があります:ワイヤレスセッションプロトコルヘッダに指定された

  1. UTF-8文字セット
  2. のhttp://はバイトとしてフルで書かれている、Iドンこれは違いがあると思っていますが、残りのアプリケーションでは必要でした。
  3. 指示札に何も作用しません
  4. 作成された日付属性が追加されました - これはハンドセットのサポートに大きな違いをもたらしました(私は確信していません)。