日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WAP PUSH——服务信息

發(fā)布時間:2023/12/10 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WAP PUSH——服务信息 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、WAP PUSH 技術的一些說明? http://blog.csdn.net/nutian/archive/2009/06/16/4269523.aspx

WAP PUSH又叫做服務信息或推入信息,是一種特殊格式的短信。
???? WAP就像因特網,是一個內容豐富的網絡,用戶如何找到自己喜歡的站點,如何在一個站點中找到自己喜歡的業(yè)務,往往需要花上很長的一段時間。而WAP PUSH可以將某一站點或某一業(yè)務的鏈接通過短信發(fā)送到支持WAP PUSH功能的手機上,這樣您只需要閱讀這條短信(服務信息),打開短信中的鏈接,就可以直接訪問業(yè)務了。因此,WAP PUSH實現了短信和WAP業(yè)務的結合,節(jié)省了您尋找業(yè)務的時間,方便您直接找到并使用自己喜歡的業(yè)務。PUSH信息無論是否被用戶打開,都會保留在手機的"推入收件箱"內,用戶可以重復打開。
???? wap push 的意思是帶連接的短信,它可以引導你進入wap的網站。它是通過sp的網關發(fā)出來的,用軟件和移動的接口。

WAP PUSH的特點優(yōu)勢
??? 省去用戶在手機上輸入網址的不方便。如有些網址字數多,輸入很麻煩。
??? 適合用來做針對性的促銷、廣告宣傳。如您可以直接講某個活動信息的頁面地址、某個優(yōu)惠券的頁面地址、某個產品的頁面地址直接推送到用戶手機。
??? 用戶強制性接受,到達率達到100%
??? 用戶打開率高收到WAP-PUSH后打開的比例分布:
??? 據互聯(lián)網權威研究機構艾瑞咨詢研究,收到WAPPUSH后,有16.6%的網民一般都會打開,看清說明文字后打開的比例達到了53.6%。而基本不打開或直接刪除的比例分別為11.4%和18.6。可以發(fā)現,WAPPUSH推送服務的接受程度是很高的,尤其是隨著WAPPUSH發(fā)送的文字說明和介紹對用戶是否打開起了比較重要的作用,大部分用戶是在看清了文字說明之后才打開WAPPUSH的。


??? 2006年以后出產的手機幾乎全部支持接收WAPPUSH

?

簡單易懂的解釋:

wap push是一種特殊的二進制短信
普通短信:在你手機上是一段文字,不是文盲的都認識

wap push:在你手機上是一個網址外加一段文字,通過這個網址你就可以直接訪問相應的wap站點

?

如何關閉接收push信息?

??? 一般情況下,在手機上選擇:互聯(lián)網--〉瀏覽器--〉瀏覽器設置--〉服務信息設置,點為關閉即可。

?

目前的發(fā)送狀況

??? 從今年起,中國移動開始逐漸限制各個SP商的push信息群發(fā),從理論上來講,幾乎所有的SP商都發(fā)不了push信息。

?

?

WAP Push的技術

??? WAP Push是要將互聯(lián)網上的信息主動推送到用戶的手機等移動終端上。達到這個目標需要解決如下兩個問題:
??? (1)互聯(lián)網服務器如何主動地連通位于無線網絡上的手機,通信問題。
??? (2)互聯(lián)網上的信息內容采用什么格式,數據表現問題。

?

??? WAP論壇(現在歸到OMG)在2000年時就提出了WAP1.2規(guī)范,相比WAP1.1增加的主要內容就是WAP Push的整個體系。 WAP Push分為Confirmed Push,即需要對方回送接收確認信息的Push,和無連接模式的Push,即發(fā)送出去后,是否收到不管了。

?

??? 整個WAP框架包括PI(Push Initiator,即互聯(lián)網的服務器)、PPG(Push Proxy Gateway,一般為WAP網關)、移動終端三大部分。PI到PPG之間是基于HTTP的PAP(Push Access Protocol)協(xié)議(PPG和PI互為HTTP服務器),PPG到移動終端之間是OTA(Over-The-Air)協(xié)議。

?

??? 基本流程是互聯(lián)網的服務器將要發(fā)送的信息內容,采用XML表現形式,通過PAP協(xié)議發(fā)送給WAP網關。這里發(fā)生了很多細節(jié)過程后(計費、SP標識、訪問控制、信息內容二進制壓縮編碼、終端發(fā)現、終端能力特性檢查、終端地址解析),通過OTA協(xié)議將內容發(fā)送到手機上(2.0以下的規(guī)范用OTA- WSP,2.0以上的規(guī)范用OTA-HTTP)。

?

??? 這是很理想的目標,可是在目前全球所有運營商部署的無線網絡那里,實現這個基本都不現實。第二代無線網絡GSM/CDMA95A是基于信令的電路交換的通信技術,并不支持IP協(xié)議,能進行WAP這樣數據業(yè)務,需要先在信令協(xié)議棧上借用modem撥號機制封裝成IP/PPP包。WAP網關通過信令網找到手機并建立WSP會話的連接,是不可能實現的。第二代半過渡性的網絡技術GPRS/CDMA1.x理論上是可以讓手機永久在線,擁有固定的IP地址,可現實并不是如此。空中信道的有限容量、計費管理、網絡容量等方面都不成熟,所以,移動終端要像一臺服務器那樣,接收并處理WAP網關隨時發(fā)起的主動連接請求,只能等到第三代無線網絡技術全面普及的那一天了。

?

??? 正是由于上述局限,目前,在世界各地,所有運營商和所有方案供應商那里,都采用SMS方式承載OTA側的推送。SMS是信令通道上傳輸的,處于網絡覆蓋中的手機通過BTS、BSC、MSC與短信中心隨時隨地可以相互通信。所以,作為這種服務器到終端的信息傳輸載體,SMS是最適合不過了。

?

??? 中國移動和中國聯(lián)通都對SP提供了WAP Push接口,他們是通過WAP網關與短信中心的接口用SMS發(fā)送到手機上。既然他們也是用短消息來實現的,那么,如果我擁有一個短信發(fā)送通道,從理論上說,自然而然也可以發(fā)送WAP Push。

?

下面要說的就是WAP Push的信息表現形式問題。
??? WAP Push的內容有兩種,一種是SI,service indication;另一種 SL,service loading。這兩種內容類型的目的都是發(fā)送URL鏈接到手機上。SI是以異步方式發(fā)送一個通知、警示、提醒等信息到手機上,用戶會看到屏幕上顯示這條通知文字內容,然后,提示你是否去那個頁面,如果去,手機將激活為WAP瀏覽器,打開這個鏈接,瀏覽其內容。SL則是直接發(fā)送一個 URL鏈接到手機上,手機不會給用戶任何提示,自動地啟動WAP微瀏覽器,下載這個URL對應的內容,顯示在手機上。讓人覺得好像是推送了一個頁面下來了似的。MMS就是利用這個機制實現的。

?

??? 至于為什么不直接發(fā)送一個基于XML的WML頁面(包括多媒體信息圖像、聲音),WAP論壇的規(guī)范設計者找了一通理由,說這種方式存在很多弊病,所以,WAP Push就沒有直接推送內容的規(guī)范了。我想未來3G肯定會有這樣的規(guī)范出臺。

?

??? 目前大部分手機并沒有實現對SL的支持,近幾年新出的WAP瀏覽器版本高點的手機基本都支持SI(OEM Openwave微瀏覽器的手機如果 WAP Browser版本在4.0以上的都支持)。國產手機基本都是貼牌生產,內核全是國外的,所以,國內手機技術現狀基本跟歐洲一樣的格局。

?

??? 中國聯(lián)通的WAP網關和WAP Push業(yè)務都是有Openwave提供,Openwave出于對市場的壟斷和控制,在CDMA手機上的 WAP Push支持非常封閉保守,有些接口沒有遵循國際規(guī)范,通過聯(lián)通的短信中心發(fā)送WAP Push的SI消息到CDMA手機上,只能借用聯(lián)通和 OpenWave提供的接口標準。

?

二、WAP PUSH經驗總結(overSMS)????? http://kb.cnblogs.com/a/1057468/??(WAP 構建 Java 應用 和 WAP經驗總結)

注:內容很多,有時間應該看看,這里只把wap push的部分拿了過來

?

sms實現wap push的方法和格式(轉載)
?
wap push格式
00???? ’SMSC Len。用手機上設置短信中心號碼
51???? ’submit type
00???? ’SMS_TP_Message_Reference type
0B??? ’對方電話的長度
A1???? ’Number type
13175639296F6?????? ’電話號碼:13573629696
00???? ’SMS_TP_PID
F5???? ’SMS DCS
A744???????? ’SMS available date
0B05040B8423F00003030101???????? ’Wap Push Header 1
29060603AE81EA8DCA?? 'Wap Push header 2
02
05? '-//WAPFORUM//DTD SI 1.0//EN
6A? 'UTF-8
00
45? '<si>
C6? '<indication
08? '<action=signal-high>
0C? 'href="http://
03? '字符串開始
687474703A2F2F3231382E35392E3133382E35343A32303030? 'URL:?? http://218.59.138.54:2000/
00? 'URL 字符串結束
01? '>
03? '內容描述字符串開始
'這里就是顯示給用戶的內容,用utf-8編碼。
9A6C5EF6671D?????? '內容描述:馬延朝
00? '內容描述字符串結束
01? '</indication>"
01? '</si>
可以只能顯示很少的漢字,請高手指點怎么分包發(fā)送更多的漢字?

?

一下方法是經過驗證的。

TrxID? =一個隨機數
??? fullStr = "0605040B8423F0" & TrxID & "0601AE"
??? fullStr = fullStr & "02056A0045C6080C03"
??? fullStr = fullStr & StrToHex(TheURL, 2)
??? fullStr = fullStr & "001103" & "0102"
??? fullStr = fullStr & "40494400080AC307" & Format(Now, "yyyymmddhhmmss")
??? fullStr = fullStr & "10C304" & "20990101" & "0103"
??? fullStr = fullStr & StrToHex(MServiceName, 2) & "000101"


分段發(fā)送的

例如? http://blog.csdn.net/eason_cou/archive/2007/05/11/wap.gd.monternet.com/?userType=B&serviceID=04020028 提示信息:神秘激情地帶,江湖兒女情長神秘激情地帶,江湖兒女情長神秘激情地帶,江湖兒女情長
第一包:
0B05040B8423F0000355020155060403AE81EA02056A0045C60C037761702E67642E6D6F6E74657
26E65742E636F6D2F3F75736572547970653D42267365727669636549443D303430323030323800
070103E7A59EE7A798E6BF80E68385E59CB0E5B8A62CE6B19FE6B996E584BFE5A5B3E68385E995BF
E7A59EE7A798E6BF80E68385E59CB0E5B8A62C?
第二包:
0B05040B8423F00003550202E6B19FE6B996E584BFE5A5B3E68385E995BFE7A59EE7A798E6BF80E6
8385E59CB0E5B8A62CE6B19FE6B996E584BFE5A5B3E68385E995BF000101 ,解釋可參考WDP WSP,我就不具體說了


0B是頭的總長度
05040B8423F0是固定的,表示接下來是一個WAP PUSH
分包的關鍵是0003550201,對應GSM 03.40里9.2.3.24.1,00表示是Concatenated Short Messages,03是長度,55是reference number,樓主在這兒固定編碼會有問題的,如果同時下發(fā)兩條這樣的多包短信給同一個手機,手機就區(qū)分不開了,02表示分成2個短信發(fā)送,01是當前包的序號。


一個擴展包wappush包是這么構成的
WDP + WSP + SI/SL

如果長度超常(短信一個包的Content不要超過140)

就要分解成

WDP1 + (WSP+SI/SL)的part 1
WDP2 + (WSP+SI/SL)的part 2
...
WDPN + (WSP+SI/SL)的part N

?

如單包
WDP: 06 05 04 0B 84 23 F0
WSP: ...
SI/SL:...

雙包是
第1包
WDP: 0B 05 04 0B 84 23 F0 00 03 01 02 01
Part1: ...

// 00 - UDH IE Tag
// 03 - UDH SAR IE Length
// 01 - Refrence
// 02 - Total Packet
// 01 - Current Packet

第2包
WDP: 0B 05 04 0B 84 23 F0 00 03 01 02 02
Part2:...


WDP參考相關文檔。

?

=====================================================
首先,構造一個Push消息體:

02
05? '-//WAPFORUM//DTD SI 1.0//EN
6A? 'UTF-8
00
45? '<si>
C6? '<indication
08? '<action=signal-high>
0C? 'href="http://
03? '字符串開始
這里就是url從"http://"以后的那部分的每個字符的ASCII碼
00? '字符串結束
0A? 'created=
C3? '時間
07? '7個字節(jié),也可以是04,下面就只需要年月日就可以了
20 03 01 01 00 00 00 '年,月,日,時,分,秒,格式如何一看就明白吧。
10? 'si_expires=
C3? '時間
07? '跟上面一樣
20 04 01 01 00 00 00
01? '>
03? '字符串開始
這里就是顯示給用戶的內容,用utf-8編碼。
utf-8編碼,英文字符直接用ascii碼;中文如果unicode是(二進制)abcdefgh ijklmnop,
那么utf-8就會變成1110abcd 10efghij 10klmnop
00? '字符串結束
01? '</indication>"
01? '</si>

有了Push消息體之后,需要在前面增加一個Push PDU
81? 'transaction id (connectionless WSP)
06? 'pdu type (06=push)
06? 'Headers len
03 AE 81 EA??? 'content type: application/vnd.wap.sic; charset=utf-8
8D??? 'content-length
XX? '這里就是Push消息體的長度。如果消息體長度小于128,那么就要加上128。例如是93個字節(jié),那么需要填入DD
'至于大于127怎么處理,按照協(xié)議好像應該是這樣,例如原來的二進制abcdefgh,那么就要弄成兩個字節(jié):
'1000000a 1bcdefgh,但是嘗試還沒成功

在然后,還要在前面增加一個UDH
06 'User Data Header Length (6 bytes)
05 'UDH Item Element id (Port Numbers)
04 'UDH IE length (4 bytes)
0B 84?? 'destination port number
23 F0?? 'origin port number

如果所有這些加起來大于140個字節(jié),那么就需要修改UDH頭,分成兩條短消息串聯(lián)。但是沒有嘗試成功。

發(fā)送的時候,udhi=1,pid=0,dcs=4
Nokia 3650/7650肯定OK,motorola t720肯定ok,siemens 3118,3618肯定不行,其他的還沒嘗試。

同樣的技術可以用來發(fā)送mms通知、fundown的鈴聲圖片。

需要解決的問題:長于127字節(jié)/兩條短信的時候該怎么辦。

?

另轉載 Wap push over sms 實踐??


通過短信進行點對點的WAP PUSH,本質上來說應該是發(fā)送一個wap頁面(WBXML)到接收方,里面含有一段文字和一個url鏈接。

在發(fā)送端采用PDU模式發(fā)送,編碼是UCS2。
?
整個發(fā)送的包大部分內容都是固定的,只需要對幾個地方根據希望發(fā)送的內容進行一下替換即可。
?
我參考的例子是這樣的,只用說明中紅色的部分是需要變化的:
0051000BA13108086406F600F5A7850B05040B8423F0000303010129060603AE81EA8DCA02056A00
45C6080C033231312e3133362e3135332e33302f776170707573682f70757368496e6465782e6a737
03f7075736849643d3035303531313134313630353231000103E8AFB7E782B9E587BBE4BBA5E4B88B
E993BEE68EA5E88EB7E58F96E5BDA9E4BFA1E58685E5AEB9000101

00 SMSC 地址信息的長度 00表示用手機上設置短信中心號碼,PDU 串的“SMSC 址格式”段和“SMSC 地址”段將省去
51 基本參數(TP-MTI/VFP) 不要求發(fā)送回復
00 消息基準值(TP-MR)
0B 對方電話的長度
A1 目標地址格式 A1表示為國內格式
3108086406F6 目標地址,補‘F’湊成偶數位后奇偶位互換 (因為手機號碼是11位,需要補一個F,再將奇偶位互換,比如12345678901需要變成2143658709F1)
00 協(xié)議標識(TP-PID) 是普通GSM 類型,點到點方式
F5 用戶信息編碼方式 (TP-DCS)
A7 有效期(TP-VP)
85 用戶信息長度(TP-UDL) (此處是從下面的0B開始所有的字節(jié)數/2對應的十六進制數)
0B WAP PUSH頭部的總長度
05040B8423F0表示接下來是一個WAP PUSH
00 表示是Concatenated Short Messages
03 長度
03 reference number
01 表示分成1個短信發(fā)送
01 當前包的序號
29060603AE81EA8DCA WSP
02 標記位
05 -//WAPFORUM//DTD SI 1.0//EN
6A UTF-8
00 標記開始
45
C6
08
0C href=\"http://
03 字符串開始
3231312e3133362e3135332e33302f776170707573682f70757368496e6465782e6a73703f7075736
849643d3035303531313134313630353231 URL (編碼過的URL,不帶http://)
00 URL 字符串結束
01 >
03 內容描述字符串開始
E8AFB7E782B9E587BBE4BBA5E4B88BE993BEE68EA5E88EB7E58F96E5BDA9E4BFA1E58685E5AEB9 內容描述字符串 (編碼過的文字內容)
00 內容描述字符串結束
01
01
?
?
AT指令發(fā)送時:
at+cmgf=0 //設置發(fā)送為二進制模式
OK
at+cmgs=93 //十進制的數字,值為 (上面生成的一大串的字節(jié)數/2)-1,還沒搞清為啥要減一
> 0051000BA1。。。。。。。(就是那一大串了) Ctrl+Z
+CMGS: 14
OK
?
發(fā)送成功

?

?三、WAPPUSH實現說明

It has been shown in this section that the MMS noti?cation is conveyed over the SMS bearer or alternatively over a data connection(e.g.GSMdatacon-nection or GPRS) if one had previously been established by the MMSclient(e.g.message submission or message retrieval).

根據這句話,還有我通過手機收發(fā)短信的觀察,一部分手機可能不是通過sms方式來實現的。因為sms肯定是不需要gprs聯(lián)網對吧,但觀察中發(fā)現在發(fā)給自己彩信的過程中,發(fā)送時GPRS連接,發(fā)送結束,斷開GPRS連接,然后在收到彩信之前還有一次短暫的連接GPRS的過程。由此現象推斷,這個m-notification-ind就是在這個時候發(fā)送的,而且是通過gprs,也就是wap發(fā)送的。至于為什么是通過wap協(xié)議。理由如下:在抓取的完整的收發(fā)過程數據包中(抓的tcp/ip數據包),只有收發(fā)和發(fā)送確認數據包,而沒有通知消息的數據。由此判斷通知消息是通過wap協(xié)議,而不是whttp推送的。

轉載于:https://www.cnblogs.com/edward259/archive/2010/01/29/1659415.html

總結

以上是生活随笔為你收集整理的WAP PUSH——服务信息的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。