歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

中國移動(dòng)MM7API用戶手冊(cè).doc

  • 資源ID:1561310       資源大?。?span id="kseptkk" class="font-tahoma">407.50KB        全文頁數(shù):31頁
  • 資源格式: DOC        下載積分:4積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要4積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

中國移動(dòng)MM7API用戶手冊(cè).doc

中移MM7 API用戶手冊(cè) 中國移動(dòng)MM7 API用戶手冊(cè)V1.5.1中國移動(dòng)MM7 API用戶手冊(cè)版本:V1.5.3 中國移動(dòng)集團(tuán)公司修改記錄文件編號(hào)版本號(hào)擬制人/修改人擬制/修改日期更改理由主要更改內(nèi)容(寫要點(diǎn)即可)V1.1胡冬梅2004.03.22修改、整理V1.2胡冬梅2004.04.14增加內(nèi)容增加安裝說明V1.3胡冬梅2004.4.21增加內(nèi)容增加狀態(tài)碼等說明 V1.5.1胡冬梅2004.5.12增加內(nèi)容增加獲取API版本信息、API返回碼說明等目 錄1.概述52.概念52.1企業(yè)代碼52.2服務(wù)代碼62.3業(yè)務(wù)代碼62.3.1上行業(yè)務(wù)的業(yè)務(wù)代碼規(guī)范62.3.2下行業(yè)務(wù)的業(yè)務(wù)代碼規(guī)范82.4操作指令碼102.5下行業(yè)務(wù)112.6上行業(yè)務(wù)112.7遞送報(bào)告113.安裝方法113.1 MM7 API的使用113.2配置文件的設(shè)置114.開發(fā)方法134.1 VASP接收傳送請(qǐng)求(上行業(yè)務(wù))134.1.1 方式1:普通應(yīng)用程序中的用法134.1.2 方式2:Web應(yīng)用程序中的用法144.2發(fā)送多媒體消息的過程(下行業(yè)務(wù))154.2.1準(zhǔn)備154.2.2創(chuàng)建待發(fā)送消息164.2.2.1 創(chuàng)建提交增值業(yè)務(wù)的多媒體消息(MM7SubmitReq)164.2.2.2 創(chuàng)建取消多媒體消息(MM7CancelReq)184.2.2.3 創(chuàng)建替換多媒體消息(MM7ReplaceReq)184.2.3 創(chuàng)建消息內(nèi)容體194.2.4 發(fā)送多媒體消息204.2.5發(fā)送MM7SubmitReq消息到移動(dòng)終端實(shí)例204.3 VASP接收傳送消息以及發(fā)送提交消息實(shí)例214.4 VASP接收狀態(tài)報(bào)告(上行業(yè)務(wù))244.4.1方式1:普通應(yīng)用程序中的用法244.4.2方式2:Web應(yīng)用程序中的用法254.5 VASP接收讀后回復(fù)報(bào)告(上行業(yè)務(wù))264.5.1方式1:普通應(yīng)用程序中的用法264.5.2方式2:Web應(yīng)用程序中的用法274.6 發(fā)送取消消息(下行業(yè)務(wù))274.7 發(fā)送替換消息(下行業(yè)務(wù))285.開發(fā)過程中需用的一些Status解釋295.1 關(guān)于VASP接收到消息后設(shè)置返回響應(yīng)(Res)的狀態(tài)碼及狀態(tài)報(bào)告的解釋295.2 關(guān)于VASP收到DeliverReq中MMStatus的解釋305.3 關(guān)于VASP收到ReadReplyReq中ReadStatus的解釋306.獲取MM7 API版本信息的方法307. MM7 API返回StatusCode說明301.概述該文檔說明了SP如何使用中國移動(dòng)集團(tuán)公司的MM7 API程序與彩信中心進(jìn)行對(duì)接,實(shí)現(xiàn)MM7接口的通訊,開發(fā)增值業(yè)務(wù)應(yīng)用。該MM7 API是使用純Java開發(fā)的,使用的JDK的版本為JDK1.4.0。所以使用該API進(jìn)行開發(fā)時(shí),要求使用的JDK版本必須是JDK1.4.0以上版本。該API所使用的通訊承載協(xié)議是HTTP/1.1。縮略詞: MM: Multimedia Message (多媒體消息) MMS: Multimedia Message Service(多媒體消息服務(wù)) MMSC: Multimedia Message Service Center(多媒體消息服務(wù)中心) VAS: Value Added Service(增值業(yè)務(wù)) SP: Service Provider(業(yè)務(wù)提供商) HTTP: Hypertext Transfer Protocol(超文本傳輸協(xié)議)2.概念2.1企業(yè)代碼企業(yè)代碼是企業(yè)身份的標(biāo)識(shí),網(wǎng)絡(luò)中地址翻譯、計(jì)費(fèi)、結(jié)算等均以企業(yè)代碼為依據(jù)。企業(yè)代碼的數(shù)據(jù)需要在MMSC和BOSS系統(tǒng)中進(jìn)行配置。企業(yè)代碼以數(shù)字表示,共6位,從“8XY000”至“8XY999”,其中“XY”為各移動(dòng)分公司代碼。彩信全網(wǎng)業(yè)務(wù)的SP企業(yè)代碼為8XY0018XY999。(目前短信全網(wǎng)業(yè)務(wù)的企業(yè)代碼為9XY0019XY500,WAP全網(wǎng)業(yè)務(wù)的企業(yè)代碼為9XY5019XY999。)彩信地方業(yè)務(wù)的SP企業(yè)代碼由各地方移動(dòng)公司按照業(yè)務(wù)許可的順序依次分配制定,“XY”具體分配情況見相關(guān)表格。2.2服務(wù)代碼服務(wù)代碼是:用戶使用彩信的發(fā)送、上傳等上行類業(yè)務(wù)時(shí),需要輸入的接收方號(hào)碼;或SP在根據(jù)用戶的點(diǎn)播請(qǐng)求在向用戶發(fā)送、下載等下行類業(yè)務(wù)時(shí),用戶終端中顯示的發(fā)送方的號(hào)碼。服務(wù)代碼的數(shù)據(jù)需要在MMSC上進(jìn)行配置,用于路由的查找和狀態(tài)報(bào)告的返回。服務(wù)代碼以數(shù)字表示。全國業(yè)務(wù)的服務(wù)代碼長度統(tǒng)一為4位,即“1000”“9999”;本地業(yè)務(wù)服務(wù)代碼長度統(tǒng)一為5位,即“01000”“09999”。以下號(hào)碼或號(hào)段暫不分配:13XX(XX00-99)、20XX(XX0199)、168X(X0-9)、186X(X=0-9)、1258/1259、172X(X=0-9)、6XXX、7XXX。上述代碼的分配和使用情況均可以在www.monternet.com上查詢。如果SP已經(jīng)開展了短信等業(yè)務(wù),原則上彩信的服務(wù)代碼依照SP原有的服務(wù)代碼進(jìn)行分配,以保證用戶的使用習(xí)慣。目前全網(wǎng)業(yè)務(wù)的服務(wù)代碼,由集團(tuán)公司統(tǒng)一分配。2.3業(yè)務(wù)代碼業(yè)務(wù)代碼表示業(yè)務(wù)類別,并且區(qū)分不同業(yè)務(wù)的信息服務(wù)費(fèi)。業(yè)務(wù)代碼的數(shù)據(jù)需要在MMSC和BOSS系統(tǒng)中進(jìn)行配置。業(yè)務(wù)代碼用數(shù)字表示,并且不能使用000。為便于進(jìn)行業(yè)務(wù)統(tǒng)計(jì)和分析,業(yè)務(wù)代碼盡量按照不同的業(yè)務(wù)分類如下:互聯(lián)網(wǎng)點(diǎn)播類: 以1開頭 WAP點(diǎn)播類: 以2開頭短信點(diǎn)播類: 以3開頭 STK點(diǎn)播類: 以4開頭彩信點(diǎn)播類: 以0開頭業(yè)務(wù)代碼在遵循原則的前提下其余內(nèi)容由SP自己制定。2.3.1上行業(yè)務(wù)的業(yè)務(wù)代碼規(guī)范上行業(yè)務(wù)的業(yè)務(wù)代碼為三位,其構(gòu)成如下:第1位:0、7、9開頭的業(yè)務(wù)代碼保留,其他代碼由彩信SP自行編排。第23位:由彩信SP自行編排特例:如果用戶直接給四位服務(wù)代碼發(fā)送上行彩信,系統(tǒng)會(huì)默認(rèn)加上業(yè)務(wù)代碼“0”,該業(yè)務(wù)代碼默認(rèn)開通,僅用于上行彩信到服務(wù)代碼。2.3.2下行業(yè)務(wù)的業(yè)務(wù)代碼規(guī)范下行業(yè)務(wù)的業(yè)務(wù)代碼為六位,其構(gòu)成如下:第1位:功能標(biāo)識(shí)位,目前有如下兩種選擇:l 1,代表一般下行業(yè)務(wù)l 7,代表用于“先機(jī)時(shí)代”項(xiàng)目中手機(jī)內(nèi)置并參與渠道分成的業(yè)務(wù)l 6,代表用于集團(tuán)客戶應(yīng)用的業(yè)務(wù)(免費(fèi))其他數(shù)字目前保留。第2位:彩信業(yè)務(wù)一級(jí)分類,具體如下面表格:第3位:彩信業(yè)務(wù)二級(jí)分類,具體如下面表格:一級(jí)分類及標(biāo)識(shí)代碼二級(jí)分類及標(biāo)識(shí)代碼新聞天氣(1)天氣預(yù)報(bào)(1)熱點(diǎn)快訊(2)社會(huì)新聞(3)體育新聞(4)娛樂新聞(5)財(cái)經(jīng)新聞(6)綜合新聞(0)游戲娛樂(2)聊天交友(1)笑話幽默(2)彩信游戲(3)影音視線(4)互動(dòng)有獎(jiǎng)(5)五花八門(0)時(shí)尚生活(3)時(shí)尚有約(1)車迷世界(2)文化教育(3)情感畫廊(4)愛情家庭(5)兩性健康(6)證券財(cái)經(jīng)(7)位置服務(wù)(8)五花八門(0)卡通動(dòng)漫(4)歐美(1)日本(2)韓國(3)港臺(tái)(4)本地原創(chuàng)(5)五花八門(0)彩信鈴聲(5)明星專輯(1)精品影視(2)流行音樂(3)古典音樂(4)卡拉OK(5)特殊音效(6)五花八門(0)彩圖動(dòng)畫(6)人物剪影(1)動(dòng)物一族(2)美麗心情(3)溫馨祝福(4)電影名畫(5)體育縱橫(6)大千世界(7)3D動(dòng)畫(8)五花八門(0)彩信DIY(7)賀卡類(1)形象類(2)文字類(3)五花八門(0)特色用途(0)免費(fèi)客服(1)優(yōu)惠套餐(2)第4位:業(yè)務(wù)模式位,各個(gè)模式及其數(shù)字標(biāo)識(shí)如下:l 1:按條點(diǎn)播l 2:按條定制l 3:包月定制l 4:包月點(diǎn)播第56位:由彩信SP自行編排2.4操作指令碼操作指令碼是指用戶通過短信點(diǎn)播或定制彩信業(yè)務(wù)時(shí),在短信的信息體內(nèi)輸入的代碼,或用戶上行發(fā)送彩信時(shí),在彩信消息體內(nèi)的文本信息中輸入的代碼。操作指令碼用于標(biāo)識(shí)對(duì)彩信的處理方式。此代碼出現(xiàn)在短信或彩信的消息體內(nèi),由SP自行處理,彩信中心不負(fù)責(zé)處理該代碼。在短信中輸入的操作指令碼應(yīng)嚴(yán)格區(qū)分用戶是點(diǎn)播、定制短信業(yè)務(wù)還是彩信業(yè)務(wù)。如果用戶通過短信點(diǎn)播或定制彩信業(yè)務(wù),操作指令碼應(yīng)以CX開頭。如:用戶在短信或彩信文本信息體內(nèi)輸入“CX XW”發(fā)送至8888,就是定制新浪提供的彩信圖片新聞業(yè)務(wù)。2.5下行業(yè)務(wù)由SP主動(dòng)發(fā)起的業(yè)務(wù)。這里主要指SP向MMSC發(fā)起的業(yè)務(wù)。2.6上行業(yè)務(wù)SP被動(dòng)接收的業(yè)務(wù)。這里主要指從MMSC那里接收業(yè)務(wù)。2.7遞送報(bào)告報(bào)告是接收方(終端)對(duì)接收到消息的處理方式信息。遞送報(bào)告指MMSC在獲取這個(gè)報(bào)告后把這個(gè)信息發(fā)送給發(fā)送方(SP)。接收方對(duì)消息的處理可能是接收或者拒絕等。處理流程如下:l SP發(fā)送消息(通過MMSC)給終端,并且要求遞送報(bào)告;l 終端接收到消息后做相應(yīng)處理(接收或拒絕);l MMSC把終端對(duì)消息的處理信息(遞送報(bào)告)發(fā)送給SP。3.安裝方法 這里主要介紹一下如何將MM7 API運(yùn)用到VASP自己開發(fā)的程序中以及在配置文件中需要注意修改的地方。3.1 MM7 API的使用在VASP用Java開發(fā)自己程序時(shí),只要將中國移動(dòng)集團(tuán)公司提供的mm7api.jar和lib下的所有的Jar文件加入到classpath中即可。3.2配置文件的設(shè)置 配置文件mm7Config.xml需要根據(jù)SP情況進(jìn)行修改。<?xml version="1.0"?><vasp:MM7Config xmlns:vasp="http:/mms.chinamobile.com/mm7ConfigSchema"><AuthenticationMode>1</AuthenticationMode><UserName>zxme</UserName><Password>zxme</Password><MaxMessageSize>100000000</MaxMessageSize><LogPath>c:vas_log</LogPath><logLevel>1</logLevel><LogNum>100</LogNum><LogInterval>120</LogInterval><LogSize>200</LogSize><Charset>UTF-8</Charset><MmscID>1</MmscID><mmscURL> /mm7</mmscURL><mmscIP>192.120.231.180</mmscIP><UseSSL>true</UseSSL><ListenIP>192.120.231.228</ListenIP><ListenPort>80</ListenPort><BackLog>50</BackLog><TimeOut>10000</TimeOut><ReSendCount>5</ReSendCount></vasp:MM7Config>一些地方需要進(jìn)行修改,下面一一說明:<AuthenticationMode>1</AuthenticationMode>表示VASP作為服務(wù)端接收消息時(shí)是否進(jìn)行鑒權(quán)或進(jìn)行什么樣的鑒權(quán),0表示不鑒權(quán),1表示進(jìn)行基本鑒權(quán),2表示進(jìn)行摘要鑒權(quán)。<UserName>zxme</UserName><Password>zxme</Password>表示彩信中心對(duì)VASP進(jìn)行鑒權(quán)時(shí)的用戶名和密碼,同時(shí)也是VASP對(duì)接入的彩信中心進(jìn)行鑒權(quán)時(shí)用戶名和密碼,是雙向的,要VASP和MMSC雙方進(jìn)行約定。<LogPath>c:vas_log</LogPath>表示日志存放的路徑,在Windows操作系統(tǒng)下和Linux下是不一樣的,要注意進(jìn)行修改。<MmscID>1</MmscID>表示MMSC網(wǎng)關(guān)的序號(hào),需要從MMSC處得到。<mmscURL> /mm7</mmscURL><mmscIP>192.120.231.180</mmscIP>分別表示MMSC網(wǎng)關(guān)的URL地址和IP(或主機(jī)名),也需要MMSC處得到。這里也可以填成ip:port。例如:192.120.231.180:8080,不填端口號(hào)使用默認(rèn)端口號(hào)80。<ListenIP>192.120.231.228</ListenIP><ListenPort>80</ListenPort>表示當(dāng)VASP用應(yīng)用程序方式進(jìn)行接收消息時(shí)的監(jiān)聽地址和端口號(hào)。以上為這個(gè)配置文件中主要需要注意修改的地方,當(dāng)然其他的內(nèi)容也可以進(jìn)行修改,如<logLevel>1</logLevel>可以根據(jù)需要進(jìn)行修改,0表示不產(chǎn)生日志;1表示產(chǎn)生錯(cuò)誤日志;3表示產(chǎn)生信息日志;6表示產(chǎn)生完整信息日志。<TimeOut>90000</TimeOut>表示設(shè)置發(fā)送的超時(shí)時(shí)間,若發(fā)送超過這個(gè)時(shí)間,則自動(dòng)進(jìn)行重新發(fā)送。<ReSendCount>2</ReSendCount>表示設(shè)置重發(fā)的次數(shù),建議在3次以下,一般用2次即可。4.開發(fā)方法這里主要介紹從SP接收MMSC發(fā)過來的DeliverReq開始,到SP發(fā)送SubmitReq到MMSC的整個(gè)流程,SP所需要做的工作。4.1 VASP接收傳送請(qǐng)求(上行業(yè)務(wù))VASP接收可以有兩種方式:l 如果SP的增值應(yīng)用是一個(gè)普通應(yīng)用程序,可以使用方式1,即接收代理會(huì)自動(dòng)打開一個(gè)監(jiān)聽端口,啟動(dòng)一個(gè)監(jiān)聽線程來接收來自MMSC的多媒體消息;l 如果SP的增值應(yīng)用是一個(gè)Web應(yīng)用,則可以使用方式2,即接收代理作為一個(gè)Servlet運(yùn)行,并自動(dòng)處理從HttpRequest中搜索數(shù)據(jù),并解碼成多媒體消息。4.1.1 方式1:普通應(yīng)用程序中的用法public class MyReceiver extends MM7Receiver/定義一個(gè)MM7DeliverReq,以便得到MMSC發(fā)過來的Deliver消息。(必備)public static MM7DeliverReq deliverReq = new MM7DeliverReq();/Main方法public static void main(String args)/初始化VASPMM7Config mm7Config = new MM7Config(“./config/mm7Config.xml”);/設(shè)置ConnConfig.xml文件的路徑mm7Config.setConnConfigName(“./config/ConnConfig.xml”); /必備/構(gòu)造MyReceiverMyReciever receiver = new MyReceiver();myReceiver.setConfig(mm7Config); /必備/創(chuàng)建MM7消息發(fā)送接口MM7Sender mm7Sender = new MM7Sender(mm7Config);/啟動(dòng)接收器receiver.start();for(;);public MM7VASPRes doDeliver(MM7DeliverReq request)/*接收從MMSC發(fā)過來的傳送消息,以便取出其中的部分值構(gòu)造提交消息或得到一些有用信息,如MMSC的標(biāo)識(shí)符等*/deliverReq = request;System.out.println(“收到手機(jī)”+request.getSender()+“提交的消息,標(biāo)題為:”+request.getSubject(); System.out.println("MMSC的標(biāo)識(shí)符為:"+request. GetMMSRelayServerID() /SP需要進(jìn)行一些處理,例如構(gòu)建MM7DeliverRes消息,設(shè)置ServiceCode或StatusCodeMM7DeliverRes mm7DeliverRes = new MM7DeliverRes();mm7DeliverRes.setServiceCode("服務(wù)代碼"); /設(shè)置ServiceCode,可選mm7DeliverRes.setStatusCode(MMConstants.RequestStatus.SUCCESS) /*設(shè)置請(qǐng)求完成狀態(tài),必備,以便表明SP已經(jīng)接收到傳送消息。一般設(shè)1000。*/mm7DeliverRes.setStatusText("所用狀態(tài)文本說明"); /*設(shè)置所用狀態(tài)的文本說明,應(yīng)限定請(qǐng)求狀態(tài),可選*/返回給MM7 API,以便API將MM7DeliverRes返回給MMSC。return(MM7VASPRes)mm7DeliverRes;4.1.2 方式2:Web應(yīng)用程序中的用法public class MyReceiver extends MM7RecieveServletpublic MM7VASPRes doDeliver(MM7DeliverReq request)System.out.println(“收到手機(jī)”+request.getSender()+“提交的消息,標(biāo)題為:”+request.getSubject();System.out.println("MMSC的標(biāo)識(shí)符為:"+request. GetMMSRelayServerID() /SP需要進(jìn)行一些處理,例如構(gòu)建MM7DeliverRes消息,設(shè)置ServiceCode或StatusCodeMM7DeliverRes mm7DeliverRes = new MM7DeliverRes();mm7DeliverRes.setServiceCode("服務(wù)代碼"); /設(shè)置ServiceCode,可選mm7DeliverRes.setStatusCode(MMConstants.RequestStatus.SUCCESS) /*設(shè)置請(qǐng)求完成狀態(tài),必備,以便表明SP已經(jīng)接收到傳送消息。一般設(shè)1000。*/mm7DeliverRes.setStatusText("所用狀態(tài)文本說明"); /*設(shè)置所用狀態(tài)的文本說明,應(yīng)限定請(qǐng)求狀態(tài),可選*/返回給MM7 API,以便API將MM7DeliverRes返回給MMSC。return(MM7VASPRes)mm7DeliverRes;4.2發(fā)送多媒體消息的過程(下行業(yè)務(wù))發(fā)送多媒體消息的過程就是使用MM7 API組織消息,并通過MM7Sender發(fā)送給MMSC的過程。主要步驟如下:4.2.1準(zhǔn)備1. 初始化VASP初始化VASP使用的是MM7Config類,該類定義了有關(guān)本VASP和對(duì)應(yīng)的MMSC的配置信息。系統(tǒng)在初始化時(shí),必須對(duì)該對(duì)象進(jìn)行定義,它將用于通信類的控制。MM7Config mm7Config = new MM7Config("./config/mm7Config.xml ");其中mm7Config.xml為配置文件,其格式如下:<?xml version="1.0"?><vasp:MM7Config xmlns:vasp="http:/mms.chinamobile.com/mm7ConfigSchema"><!-鑒權(quán)方式,1為基本鑒權(quán),2為摘要鑒權(quán),0為不使用鑒權(quán)-><AuthenticationMode>0</AuthenticationMode><!-設(shè)置用戶名, 必須為被授權(quán)的用戶(4位)-><UserName>1111</UserName><!-設(shè)置VASP的密碼(6位)-><Password>11111111</Password><!設(shè)置允許的最大消息的大?。ㄒ宰止?jié)為單位),目前最大支持128K-><MaxMessageSize>100000</MaxMessageSize><!-設(shè)置日志路徑-><LogPath>c:vas_log</LogPath><!-設(shè)置日志級(jí)別,8 個(gè)級(jí)別(0)No log(1)Severe, (2)Warning, (3)Info, (4)Config, (5)Fine, (6)Finer, (7)Finest-><logLevel>1</logLevel><!-設(shè)置指定用于對(duì)消息編碼的字符集(缺省值為UTF-8)-><Charset>UTF-8</Charset><!-MMSC網(wǎng)關(guān)的URL地址-><mmscURL>/mm7</mmscURL><!- MMSC網(wǎng)關(guān)的IP或主機(jī)名列表-><mmscIP>202.202.202.202</mmscIP><!MMSC網(wǎng)關(guān)的序號(hào)à<MmscID>910010</MmscID><!-是否啟用SSL加密,false:不加密,true:SSL加密-><UseSSL>true</UseSSL><!-應(yīng)用程序方式的監(jiān)聽IP地址-><ListenIP>102.102.102.102</ListenIP><!-應(yīng)用程序方式的監(jiān)聽端口-><ListenPort>80</ListenPort><!-日志文件的最大產(chǎn)生數(shù)量,單位為個(gè),缺省值為100,取值范圍為:1至9999。-><LogNum>100</LogNum><!-日志記錄的產(chǎn)生時(shí)間間隔,單位為分,缺省值為60,取值范圍為:1至1440-><LogInterval>10</LogInterval><!-日志文件大小的最大限制,單位為K,缺省值為500K,最大值為10000K。-><LogSize>1000</LogSize></vasp:MM7Config>2. 創(chuàng)建MM7消息發(fā)送接口:創(chuàng)建發(fā)送接口使用的是MM7Sender類,其中已經(jīng)封裝了和MMSC連接的通訊機(jī)制,使用時(shí)只要?jiǎng)?chuàng)建它的一個(gè)帶MM7Config參數(shù)的實(shí)例即可。MM7Sender mm7Sender = new MM7Sender(mm7Config);4.2.2創(chuàng)建待發(fā)送消息創(chuàng)建待發(fā)送消息使用的類均是由MM7Message繼承得到的。主要有MM7SubmitReq、MM7CancelReq、MM7ReplaceReq等類,具體設(shè)置方法將分別進(jìn)行介紹。4.2.2.1 創(chuàng)建提交增值業(yè)務(wù)的多媒體消息(MM7SubmitReq)1.創(chuàng)建消息對(duì)象MM7SubmitReq submitReq = new MM7SubmitReq();2.設(shè)置消息屬性submitReq.setTransactionID("關(guān)聯(lián)標(biāo)識(shí)"); /*設(shè)置MM7_submit.REQ/MM7_submit.RES對(duì)的標(biāo)識(shí),必備*/submitReq.setVASPID("SP代碼")  /設(shè)置SP代碼,必備submitReq.setVASID("服務(wù)代碼")  /設(shè)置服務(wù)代碼,必備submitReq.setServiceCode("業(yè)務(wù)代碼"); /設(shè)置業(yè)務(wù)代碼,必備submitReq.setSenderAddress("MM始發(fā)方的地址");設(shè)置MM始發(fā)方的地址(填寫SP的服務(wù)代碼,或者填寫讓用戶回復(fù)SP的長號(hào)碼,長號(hào)碼構(gòu)成:SP的服務(wù)代碼業(yè)務(wù)代碼操作碼),必備submitReq.setChargedPartyID(“付費(fèi)方手機(jī)號(hào)碼”); /設(shè)置付費(fèi)方的手機(jī)號(hào)碼,必備submitReq.setTo("接收方地址"); /設(shè)置接收方MM的地址submitReq.addTo("單個(gè)接受方地址"); /增加單個(gè)接受方地址submitReq.setCc("抄送方地址"); /設(shè)置抄送方MM的地址submitReq.addCc("單個(gè)抄送方地址"); /增加單個(gè)抄送方地址submitReq.setBcc("密送方地址"); /設(shè)置密送方MM的地址submitReq.addBcc("單個(gè)密送方地址"); /增加單個(gè)密送方地址注:在設(shè)置或增加To,Cc和Bcc時(shí),至少需要設(shè)置其中一個(gè),這些地址可能存在多個(gè)地址或使用指示使用分發(fā)表的別名??梢詷?biāo)記僅供參考的地址。submitReq.setLinkedID("鏈接標(biāo)識(shí)"); /*設(shè)置鏈接標(biāo)識(shí),標(biāo)識(shí)傳送至VASP的上一個(gè)有效消息的對(duì)應(yīng)關(guān)系;可選*/submitReq.setMessageClass("MM的類別"); /*設(shè)置MM的類別(例如,廣告、信息服務(wù)和計(jì)費(fèi)),可選,具體有:Auto、Personal、Advertisement、Informational*/submitReq.setTimeStamp("提交MM的日期和時(shí)間"); /*提交MM的時(shí)間和日期(時(shí)間戳),格式如2004-02-09T10:21:07,可選*/submitReq.setExpiryDate("指定超時(shí)時(shí)間"); /*設(shè)置MM指定的超時(shí)時(shí)間(絕對(duì)或相對(duì)時(shí)間),可選*/submitReq.setEarliestDeliveryTime("最早理想時(shí)間"); /*設(shè)置將MM傳送給接收方的最早理想時(shí)間(絕對(duì)或相對(duì)時(shí)間),可選*/submitReq.setDeliveryReport("發(fā)送報(bào)告的請(qǐng)求"); /*設(shè)置是否需要發(fā)送報(bào)告的請(qǐng)求(boolean值),可選*/submitReq.setReadReply("需要讀取報(bào)告的請(qǐng)求"); /*設(shè)置通過請(qǐng)求傳送一個(gè)讀取報(bào)告進(jìn)行確認(rèn),可選*/submitReq.setReplyCharging("應(yīng)答計(jì)費(fèi)的請(qǐng)求"); /*設(shè)置應(yīng)答計(jì)費(fèi)的請(qǐng)求(boolean值),可選*/submitReq.setReplyDeadline("提交應(yīng)答的最遲時(shí)間"); /*設(shè)置在應(yīng)答計(jì)費(fèi)的情況下,向接收方提交應(yīng)答的最遲時(shí)間(絕對(duì)或相對(duì)時(shí)間),可選*/submitReq.setReplyChargingSize("應(yīng)答MM的最大大小"); /*設(shè)置在應(yīng)答計(jì)費(fèi)的情況下,提供給接收方的應(yīng)答MM的最大大小,可選*/submitReq.setPriority("消息的優(yōu)先級(jí)"); /*消息的優(yōu)先級(jí)(重要性)(0=最低優(yōu)先級(jí),1=正常,2=緊急),byte類型的值,可選*/submitReq.setSubject("多媒體消息的標(biāo)題"); /*設(shè)置多媒體消息的標(biāo)題,可選*/submitReq.setAllowAdaptations("VASP是否允許修改內(nèi)容"); /*設(shè)置VASP是否允許修改內(nèi)容(boolean值,默認(rèn)為真),可選*/submitReq.setChargedParty("VASP所提交MM的付費(fèi)方"); /*設(shè)置VASP所提交MM的付費(fèi)方,例如,發(fā)送方、接收方、發(fā)送方和接收方或兩方均不付費(fèi),可選,0:Sender、1:Recipients、2:Both、3:Neither、4:ThirdParty*/submitReq.setContent("多媒體消息的內(nèi)容"); /*設(shè)置多媒體消息的內(nèi)容,可選,注意當(dāng)要設(shè)置時(shí),一定要設(shè)置其ContentType。*/submitReq.setDistributionIndicator("是否可重新分發(fā)"); /*設(shè)置VASP是否可重新分發(fā)MM的內(nèi)容(boolean值,true為可以,false為不可以),可選*/4.2.2.2 創(chuàng)建取消多媒體消息(MM7CancelReq)1.創(chuàng)建消息對(duì)象MM7CancelReq cancelReq = new MM7CancelReq();2. 設(shè)置消息屬性cancelReq.setTransactionID("關(guān)聯(lián)標(biāo)識(shí)"); /*MM7_cancel.REQ/MM7_cancel.RES對(duì)的標(biāo)識(shí),必備*/cancelReq.setVASPID("SP代碼"); /*設(shè)置SP代碼,可選*/cancelReq.setVASID("服務(wù)代碼"); /*設(shè)置服務(wù)代碼,可選*/cancelReq.setSenderAddress("MM始發(fā)方地址"); /*設(shè)置MM始發(fā)方地址,可選*/cancelReq.setMessageID("待取消的消息的標(biāo)識(shí)符"); /*設(shè)置待取消的消息的標(biāo)識(shí)符,必備*/4.2.2.3 創(chuàng)建替換多媒體消息(MM7ReplaceReq)1.創(chuàng)建消息對(duì)象MM7ReplaceReq replaceReq = new MM7ReplaceReq();2. 設(shè)置消息屬性replaceReq.setTransactionID("關(guān)聯(lián)標(biāo)識(shí)"); /*設(shè)置MM7_replace.REQ/MM7_replace.RES對(duì)的標(biāo)識(shí),必備*/replaceReq.setVASPID("SP代碼"); /*設(shè)置SP代碼,可選*/replaceReq.setVASID("服務(wù)代碼"); /*設(shè)置服務(wù)代碼,可選*/replaceReq.setMessageID("被當(dāng)前消息所替換的消息的標(biāo)識(shí)符"); /*被當(dāng)前消息所替換的消息的標(biāo)識(shí)符,必備*/replaceReq.setServiceCode("業(yè)務(wù)代碼"); /*設(shè)置業(yè)務(wù)代碼,可選*/replaceReq.setTimeStamp("提交MM的日期和時(shí)間"); /*設(shè)置提交MM的時(shí)間和日期(時(shí)間戳),格式如2004-02-09T10:21:07,可選*/replaceReq.setEarliestDeliveryTime("最早理想時(shí)間"); /*設(shè)置將MM傳送給接收方的最早理想時(shí)間(絕對(duì)或相對(duì)時(shí)間),可選*/replaceReq.setReadReply("需要讀取報(bào)告的請(qǐng)求"); /*設(shè)置通過請(qǐng)求傳送一個(gè)讀取報(bào)告進(jìn)行確認(rèn)(boolean值,true為需要,false為不需要),可選*/replaceReq.setAllowAdaptations("VASP是否允許修改內(nèi)容"); /*設(shè)置VASP是否允許修改內(nèi)容(boolean值,默認(rèn)為真),可選*/replaceReq.setContent("多媒體消息內(nèi)容"); /*設(shè)置多媒體消息的內(nèi)容,可選,注意當(dāng)要設(shè)置時(shí),一定要設(shè)置其ContentType。*/replaceReq.setDistributionIndicator("是否可重新分發(fā)"); /*設(shè)置VASP是否可重新分發(fā)MM的內(nèi)容(boolean值,true為可以,false為不可以),可選*/4.2.3 創(chuàng)建消息內(nèi)容體每個(gè)消息內(nèi)容體就是一個(gè)MMContent實(shí)例,可以添加多個(gè)消息內(nèi)容體,但是所有消息內(nèi)容體大小之和不能超過MMSC允許大?。壳白畲笾С?28K)。MMContent content = new MMContent();/*設(shè)置附件的類型,若不包含SMIL格式的文件,則設(shè)置類型為MMConstants.ContentType. MULTIPART_MIXED,若包含SMIL格式的文件,則設(shè)置類型為MMConstants.ContentType. MULTIPART_RELATED*/content.setContentType(MMConstants.ContentType. MULTIPART_MIXED);/*添加類型為Gif的附件一 */MMContent sub1 = MMContent.createFromFile("f:yellow.gif");sub1.setContentID("1.gif"); /可以不設(shè)/*設(shè)置子附件的類型,有兩種設(shè)置方式:一種是在setContentType里面填寫MMConstants.ContentType里面定義的常量,另一種是在setContentType里面填寫一個(gè)String的類型,如text/plain等。*/sub1.setContentType(MMConstants.ContentType.GIF); /一定要設(shè)置content.addSubContent(sub1);/*添加類型為Txt的附件二*/MMContent sub2 = MMContent.createFromString("This is a Test2!");sub2.setContentType(MMConstants.ContentType. TEXT); /一定要設(shè)置sub2.setContentID("2.txt");content.addSubContent(sub2);/*將附件進(jìn)行設(shè)置,設(shè)需發(fā)送消息為MM7SubmitReq*/submitReq.setContent(content);4.2.4 發(fā)送多媒體消息調(diào)用MM7Sender的send方法發(fā)送多媒體消息,返回MM7RSRes類型的消息。舉例,發(fā)送MM7SubmitReq類型的消息:MM7RSRes res = mm7Sender.send(submitReq); /其它消息與此類似4.2.5發(fā)送MM7SubmitReq消息到移動(dòng)終端實(shí)例package com.cmcc.mm7.vasp.conf;import com.cmcc.mm7.vasp.message.*;import com.cmcc.mm7.vasp.service.MM7Sender;import com.cmcc.mm7.vasp.common.*;import java.io.*;public class VaspSendTest public static void main(String args) MM7Config mm7Config = new MM7Config("./config/mm7Config.xml");mm7Config. setConnConfigName("./config/ConnConfig.xml");MM7Sender mm7Sender = new MM7Sender(mm7Config);MM7SubmitReq submit = new MM7SubmitReq();submit.setTransactionID("11111111"); submit.addTo("13915002000"); submit.setVASID("1234"); submit.setServiceCode("123"); submit.setSubject("測(cè)試");MMContent content = new MMContent(); content.setContentType(MMConstants.ContentType. MULTIPART_MIXED);MMContent sub1 = MMContent.createFromFile("f:yellow.gif"); sub1.setContentID("1.gif"); sub1.setContentType(MMConstants.ContentType.GIF); content.addSubContent(sub1);MMContent sub2 = MMContent.createFromString("This is a Test2!");sub2.setContentID("2.txt");sub2.setContentType(MMConstants.ContentType. TEXT);content.addSubContent(sub2);submit.setContent(content);MM7RSRes res = mm7Sender.send(submit);System.out.println("res.statuscode=" + res.getStatusCode() + "res.statusText=" + res.getStatusText();4.3 VASP接收傳送消息以及發(fā)送提交消息實(shí)例舉一個(gè)實(shí)例說明VASP構(gòu)建MM7SubmitReq,發(fā)送給MMSC,并得到返回消息,通過StatusCode判斷,本次發(fā)送是否成功,若成功,得到MessageID,以便以后希望取消或替換該消息時(shí)用。public class MyReceiver extends MM7Receiver/定義一個(gè)MM7DeliverReq,以便得到MMSC發(fā)過來的Deliver消息。(必備)public static MM7DeliverReq deliverReq = new MM7DeliverReq();/Main方法public static void main(Stringargs) /初始化VASPMM7Config mm7Config = new MM7Config(“./config/mm7Config.xml”);/設(shè)置ConnConfig.xml文件的路徑mm7Config.setConnConfigName(“./config/ConnConfig.xml”); /必備/構(gòu)造MyReceiverMyReciever receiver = new MyReceiver();receiver.setConfig(mm7Config); /必備/創(chuàng)建MM7消息發(fā)送接口MM7Sender mm7Sender = new MM7Sender(mm7Config);/啟動(dòng)接收器receiver.start();/接收MM7DeliverReq完畢,開始構(gòu)造MM7SubmitReq/有兩種可能,一種是MM7SubmitReq完全由SP構(gòu)造,另一種是SP用接收到的/MM7DeliverReq的部分內(nèi)容進(jìn)行填充。MM7SubmitReq submitReq = new MM7SubmitReq();submitReq.setVASPID("SP代碼")  /必備submitReq.setVASID("服務(wù)代碼")  /必備submitReq.setServiceCode("業(yè)務(wù)代碼"); /必備submitReq.setSenderAddress("MM始發(fā)方的地址"); /*必備,若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setSenderAddress(deliverReq.getSender();*/submitReq.setTo("接收方地址"); /*若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setTo(deliverReq.getTo();*/ submitReq.addTo("單個(gè)接受方地址"); /增加單個(gè)接受方地址submitReq.setCc("抄送方地址"); /*若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setCc(deliverReq.getCc() */ submitReq.addCc("單個(gè)抄送方地址"); /增加單個(gè)抄送方地址submitReq.setBcc("密送方地址"); /*若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setBcc(deliverReq.getBcc() */submitReq.addBcc("單個(gè)密送方地址"); /增加單個(gè)密送方地址submitReq.setLinkedID("鏈接標(biāo)識(shí)"); /*可選,若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setLinkedID(deliverReq.getLinkedID() */submitReq.setMessageClass("MM的類別"); /*可選*/submitReq.setTimeStamp("提交MM的日期和時(shí)間"); /*格式如2004-02-09T10:21:07,可選*/submitReq.setExpiryDate("指定超時(shí)時(shí)間"); /*可選*/submitReq.setEarliestDeliveryTime("最早理想時(shí)間"); /*可選*/submitReq.setDeliveryReport("發(fā)送報(bào)告的請(qǐng)求"); /* boolean值,可選*/submitReq.setReadReply("需要讀取報(bào)告的請(qǐng)求"); /*可選*/submitReq.setReplyCharging("應(yīng)答計(jì)費(fèi)的請(qǐng)求"); /*boolean值,可選*/submitReq.setReplyDeadline("提交應(yīng)答的最遲時(shí)間"); /*可選*/submitReq.setReplyChargingSize("應(yīng)答MM的最大大小"); /*可選*/submitReq.setPriority("消息的優(yōu)先級(jí)"); /* 0=最低優(yōu)先級(jí),1=正常,2=緊急,byte類型的值,可選,若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):submitReq.setPriority(deliverReq.getPriority();*/submitReq.setSubject("多媒體消息的標(biāo)題"); /*可選,若想從MM7DeliverReq中獲得,則應(yīng)按下面的方式設(shè):SubmitReq.setSubject(deliverReq.getSubject();*/submitReq.setAllowAdaptations("VASP是否允許修改內(nèi)容"); / boolean值,默認(rèn)為真,可選submitReq.setChargedParty("VASP所提交MM的付費(fèi)方"); /*可選*/submitReq.setChargedPartyID("chargedPartyID"); /*必備*/submitReq.setDistributionIndicator("是否可重新分發(fā)"); /*boolean值,true為可以,false為不可以,可選*/開始創(chuàng)建多媒體消息的內(nèi)容/*每個(gè)消息內(nèi)容體就是一個(gè)MMContent實(shí)例,可以添加多個(gè)消息內(nèi)容體,但是所有消息內(nèi)容體大小之和不能超過MMSC允許大?。壳白畲笾С?28K)。*/MMContent content = new MMContent();content.setContentType(MMConstants.ContentType.MULTIPART_RELATED);/*添加類型為Gif的附件一 */MMContent sub1 = MMContent.createFromFile("f:yellow.gif");sub1.setContentID("1.gif"); /可以不設(shè)sub1.setContentType(MMConstants.ContentType.GIF); /*可以不設(shè),但這個(gè)不設(shè)的話,ContentID必須設(shè)*/content.addSubContent(sub1);/*添加類型為Txt的附件二*/MMContent sub2 = MMContent.createFromString("This is a Test2!");sub2.setContentID("2.txt");sub2.setContentType(MMConstants.ContentType. TEXT);content.addSubContent(sub2);/*將附件進(jìn)行設(shè)置*/submitReq.setContent("多媒體消息的內(nèi)容"); /*可選,也可以從MM7DeliverReq中獲得多媒體消息的內(nèi)容,submitReq.setContent(deliverReq.getContent();*/*發(fā)送MM7SubmitReq消息,正確返回MM7SubmitRes消息,錯(cuò)誤返回MM7RSError消息,其它消息與此類似*/ MM7RSRes res = mm7Sender.send(submitReq); /*可以根據(jù)StatusCode來判斷本次發(fā)送是否成功,若成功能得到MessageID等信息。StatusCode可能得到的值,具體可見本文中的請(qǐng)求狀態(tài)碼說明。*/ if(res instanceof MM7SubmitRes)MM7SubmitRes submitRes = (MM7SubmitRes)r

注意事項(xiàng)

本文(中國移動(dòng)MM7API用戶手冊(cè).doc)為本站會(huì)員(丁**)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!