Saturday, March 6, 2010

Ericsson 雙向簡訊界接心得

前陣子在接Ericsson的雙向簡訊功能,因為有些技術問題在溝通上講的不是很清楚,所以特別寫出來在界接時需要注意到的東西,希望能幫到有同樣需求的人,別跟我一樣花那麼多時間。

我要做的雙向簡訊是計次式的,就是使用者傳keyword過來,判斷關鍵字後再回傳回去。

流程會是
1.接收系統傳來使用者傳的keyword與相關資訊
2.處理後做發送簡訊給使用者的動作
3.接收發送簡訊後的回報

我是先從第二項發送簡訊開始做。因為我是用C#開發,所以直接從原廠提供的Guide SMS Ver J版那份,拿5.9的.Net範例來用。這邊有需要用到三個Class,分別是SmsApiService,SendRequest,SendResponse,我是直接用Guild Taiwan Rev 2.0那份PDF裡第七節的第一個Web Service來做參考,如果要自己照PDF刻也可以。

在SendRequest裡的參數,有些需要改的如下
originatingAddress : 這要改成送出的電話,請洽你的技術窗口
destinationAddress : 改成要收到SMS的號碼,記得用加國碼的格式
DCS : 傳英文設-1,傳Unicode(如中文)設8,Unicode傳送格式後述
statusReportFlags : 設定是否要接收傳送的回報,0=否,1=要,預設為-1
tariffClass : 預設為ERU0,這是收歐元0元,要改成TWD#,#請按照你要設定金額去設(有限制的)
accountName : 如果金額為0,設Longnumber_TW,否則設#NULL#
referenceId : 如果金額為0,設#NULL#,否則設定成要收費的來源MessageID
username : 你的帳號,請洽你的技術窗口
password : 你的密碼,請洽你的技術窗口
Url : 用Web reference那個就好

基本上,這些要注意的設完之後,就可以送出簡訊了。


再來是收資訊的部份,這段我跟技術窗口溝通了很久,原本以為是要用Web Service的方式去接的,後來試了很久之後才發現他們的主機是用Query String以Get的方式丟過來(這邊請跟技術窗口確認要用Get還是Post,他們可以設定),所以只要準備兩個頁面,分別接收流程 1 跟 3 的資料就可以,要收的欄位按照Guide SMS Ver J這份PDF的4.7跟4.8內容去接,差不多就沒問題了。


需要注意的大至上是這樣,有其他問題還是得洽技術窗口XD

No comments:

Post a Comment