JAVA SGIP 調研文檔(一)

來源:互聯網
上載者:User

hi~everyone~~~

首先,SGIP有多個廠商的API實現,以下代碼均為中興SGIP API(中興的縮寫為zte)的代碼。其實其他廠商的API也都大同小異。

 

 

一:準備工作:
1.首先你需要得到sgip的java API包sgip_java.rar。(下載?拷貝?聯通給你的?whatever~)
2.開啟ECLIPSE,並建立兩個JAVA PROJECT,分別命名為:SGIPClientDemo與SGIPServerDemo
3.解壓sgip_java.rar後,將release包下的SGIPClientDemo,SGIPServerDemo的src目錄分別複製到
eclipse的項目中來。
4.將sgip_java\sgip_java\release\api檔案夾下的jar包(com.zte.smgw.api.jar)與
\sgip_java\sgip_java\release\lib檔案夾下的jar包(log4j-1.2.15.jar)添加至
ECLIPSE裡的這兩個項目裡。(JAVA BUILD PATH,不會的話你可以去撞牆了!)
5.將\sgip_java\sgip_java\release\api檔案夾下的兩個設定檔(log4j.properties與sgipconfig.properties)
分別拷貝到ECLIPSE兩個項目中的src目錄下。(這兩個檔案一般情況下不用修改,至少我沒有改~)

PS:最重要的準備工作是你需要去聯通網關申請先關的參數等等等等。讓聯通給你開戶等等等等。
(but thats none of my business right?cuz im a coder.)

 

二:簡訊上行

簡訊上行流程:測試手機-->聯通網關-->JAVA監聽程式
簡訊上行的原理:
(在測試工作之前需要讓聯通網關配置好我們監聽上行簡訊的IP和連接埠號碼)
首先測試手機給聯通的一個號段例如105550200508發簡訊,
這個號碼叫特服號碼,之後聯通網關會監聽這個特服號碼,一旦收到往這個特服號碼發送的簡訊後,聯通網關會路由到配置好的IP和連接埠,之後推送這條簡訊息到你的監聽伺服器。監聽伺服器需要一直運行一個多線程的監聽服務。這樣就可以在JAVA程式中收到簡訊內容了。
注意事項:
測試機器的IP與連接埠必須是事先配置好在聯通網關的,並必須可以串連外網,如果外網轉內網的話,需要使用TCP-TRACE工具做IP轉換。

 

簡訊上行主要用到的是SGIPServerDemo這個項目。
您需要配置四個主要參數,他們分別是:
info.IP = "111.111.11.11";//這個IP是你申請的IP。如果外網轉內網的話請使用強大的TCP-TRACE工具
info.port = 10227;//這個連接埠號碼是你申請的連接埠號碼。
info.userName = "yang";//以此類推,你申請的帳號
info.passWord = "yanglala";//你申請的密碼
以上這四個參數都是聯通為你提供的,不知道的話儘管給他們打電話就好了。

設定完成之後就可以RUN了,就是這麼簡單!
RUN AS -->JAVA APPLICATION 不用我教你了吧?

RUN成功的提示資訊如下:
INFO  [main] com.zte.smgw.api.sgip.server.SGIPServer     - SGIP server is init success!
INFO  [main] com.zte.smgw.socket.server.SocketServer     - 11.11.11.11:11111 is begin to listen!
INFO  [main] com.zte.smgw.api.sgip.server.SGIPServer     - SGIP server is start success!
 
恭喜你,可以進入下一步了~

拿起您的手機,往你申請的特服號碼發送一條測試簡訊。例如往105550200508,發一條"i luv u"
此時此刻,在receiveThread中的
SGIPDeliver deliver = (SGIPDeliver) msg.obj;
會接收到簡訊內容;
然後把他打出來吧
SGIPDeliverBody a = deliver.getBody();
System.out.println(new String(a.getMessageContent()));

控制台顯示:i luv u.
至此,上行簡訊全部OK。
(中文的問題在這裡就不說了,DIY吧。)

PS:

msg.messageType==1表示監聽到上行簡訊

msg.messageType==2表示監聽到下行簡訊回執報告,在下行簡訊中會提到

 

如果行不通的話就給聯通的支援人員打電話。我這個流程就是正常的流程。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.