Mas短信開發增值服務平臺建設
中國移動MAS機的知識本人不是很熟悉,只知道如何使用它和.net開發鏈接起來做短信發佈,下面是我在網上看到的一些介紹:
移動代理服務器 Mobile Agent Server(MAS)
1、MAS系統組成和功能:
MAS系統包括MAS終端、MAS服務器和MAS管理平臺,中國移動通過在集團客戶(主要爲擁有完備企業信息系統的政府行業用戶和企業)內部部署移動代理服務器,爲集團客戶提供的基於移動終端(包括短信、彩信、GPRS 、WAP、手機客戶端等)的信息化應用服務。通過移動代理服務器將不同的行業用戶應用和業務延伸到移動終端。
1.1 MAS服務器組成和功能:
MAS服務器的組成:
MAS服務器由應用接入適配插件模塊、業務調度模塊、移動安全接入模塊及管理模塊組成。
各組成完成的功能:
應用接入適配插件模塊實現移動應用業務的移動應用接口,通過多種移動通訊方式完成移動辦公、移動Email、數據的現場查詢、採集、錄入、WAP應用等移動應用業務。
業務處理模塊對從應用系統接收到的數據信息進行處理,主要功能包括信息處理及路由、用戶認證、業務調度、日誌處理和QoS控制等。
移動安全接入模塊一方面通過移動行業網關提供的接口協議,實現MAS服務器與行業網關的數據通信。另一方面採用安全加密技術提供短信安全接入、彩信安全接入、GPRS安全接入、WAP安全接入、USSD安全接入、智能終端安全接入功能,通過這種方式實現信息的空中加密傳輸,爲MAS終端提供安全服務。
管理模塊完成MAS服務器的自管理和服務,可提供網絡管理、認證鑑權在內的接口子模塊。可選用業務導航、路由管理、業務管理、數據管理、應用發佈、統計分析、地址本管理、系統配置管理等功能模塊。
1.2、MAS管理平臺:
MAS管理平臺運行於移動公司,通過加密IP通道與MAS服務器進行通訊,完成對MAS服務器的管理和控制,具體的管理的內容有配置管理、認證管理、監控管理、故障管理、安全管理、升級維護管理。
1、3、MAS終端:
移動終端通過MAS系統能夠以SMS/MMS短消息、GPRS等移動通訊方式連接訪問信息網中應用數據,完成對數據移動應用。MAS終端配備硬件加密模塊(如手機配備安全SIM卡、筆記本配備安全PCMCIA卡),對移動安全接入模塊加密的下發信息進行解密,對上行信息進行加密等操作,保證接收到的信息或發送的信息的傳輸安全。MAS終端可以是普通手機、智能手機或PDA手機、移動筆記本電腦等移動終端。
2、MAS系統結構:
2.1 系統結構圖:
2.2 MAS網絡結構:
MAS服務器:部署在行業用戶和企業內部,通過廣域網或者移動公網與行業網關、MAS管理平臺進行通訊。
MAS管理平臺:部署在移動機房,通過中國移動內部網絡與BOSS及省綜合網管通訊,通過廣域網對各MAS服務器進行管理。
MAS終端:MAS終端通過移動網絡使用MAS系統所提供的業務。根據需要,可能需要安裝客戶端軟件。
3、MAS完成的業務:
3.1 MAS業務描述:
MAS終端通過安全短消息、GPRS在線方式、IP 在線業務、WAP等數據業務方式,通過MAS業務代理服務器轉發MAS終端的業務請求,完成數據的移動查詢、採集、錄入等移動應用,業務處理完畢後從MAS服務器接收處理結果,並將處理結果返回到MAS終端。
3.2 MAS完成業務的流程:
1)MAS服務器的部署:依據行業用戶需要完成的業務進行MAS服務器的安裝部署,
2)業務受理:
業務受理時序圖:
3)MAS服務器的註冊:
MAS服務器註冊管理:
4)MAS服務器認證與鑑權:
MAS服務器認證與鑑權
5)配置應用接入適配模塊:
在MAS服務器對移動應用接入適配模塊中的需開通的插件進行配置,配置內容包括MAS 服務器的基本信息,包括主機信息、支持用戶數、IP地址、業務服務端口等。
6)運行MAS系統:
MAS服務器根據MAS管理平臺下發的移動數據業務及業務適配能力開通相應功能;
MAS管理平臺對MAS服務器的設備狀態及運行狀況進行監控和管理;
MAS終端配置安全模塊、應用模塊,通過移動通信網絡與MAS服務器之間實現安全通信, MAS服務器作爲業務代理服務器嚮應用業務處理服務器轉發MAS終端的業務請求,業務處理完畢後從MAS處理服務器接收處理結果,並將處理結果返回到MAS終端。
4、MAS系統中的安全:
MAS系統採用安全措施保證信息網絡傳輸安全、MAS服務器安全、行業用戶信息網信息安全、移動終端安全,保護中國移動行業用戶移動應用整體安全。
4.1 數據傳輸安全:
MAS服務器通過VPDN方式連接到行業網關和MAS管理平臺等設備,從IP鏈路上保證數據傳輸的安全;信息在網絡傳輸中以加密方式進行傳輸,保證了數據傳輸的安全。
在對安全傳輸有較高要求的行業與應用中,可採用安全級別更高的專用安全傳輸與認證系統,保證信息安全。
4.2 移動終端安全:
移動終端上可使用專用安全SIM卡、安全PCMCIA模塊進行信息加密、用戶身份認證,以保證移動終端的安全。
4.3 MAS管理平臺安全:
MAS系統從訪問控制、安全檢測、攻擊監控、操作審計等一系列方面提供安全功能,有完整的網絡安全監控、報警和故障處理功能,保證了MAS管理平臺的安全
4.4 完善的權限管理和日誌管理:
MAS系統提供數據庫日誌、操作系統日誌完善的管理日誌;移動終端上的安全SIM卡/安全PIMCIA卡以及MAS管理平臺提供的使用用戶、管理員權限管理有效的對MAS系統的使用進行權限管理。
他的功能很多,下面就簡單介紹一下自己一個月來對他的使用。主要是在短信發送接收方面的一些內容
Mas機的數據庫我們可以看一下,裏面有很多的表,我們做移動增值開發的時候,真正用到的只有兩張表:tbl_SMSendTask和tbl_SMReceived
Tbl_SMSendTask表:這是短信發出任務表,添加到這個表裏面得內容,如果條件符合,或者說對應的插入信息是真實的話,那麼mas機就會立即發出該條信息,發出成功後這條記錄就會自動刪除。
下面簡單介紹一下,該表的字段名稱以及作用:
字段名 |
說明 |
ID |
主鍵,任務的ID號,自動增加字段 |
CreatorID |
創建者ID |
TaskName |
任務名稱 |
SmSendedNum |
該任務的已經發送的數量,初始值爲0 |
OperationType |
標識是移動辦公:WAS,業務定製:SPS |
SuboperationType |
對應移動辦公WAS中的常用業務的類型,取值50-99;sps中配置的業務,取值0-49。便於擴展定製化的業務類型。和小類別的統計 |
SendType |
1:表示普通短信2:表示羣發短信3:表示點點通4:表示常用業務5:表示wap-push短信 |
OrgAddr |
主叫標識號碼,源地址 |
DestAddr |
1.目的地址手機號碼.當爲SPS業務和WAS的單發任務時爲手機號碼用空隔分隔;2.當目的地址爲文件時,目前爲一條消息一個文件號碼,不支持多個文件;3.當SMType爲3或4時,表示使用用戶標識destUserId |
SM_Content |
消息內容,當SMType爲3或4時,表示計費用戶類型 feeUserId |
SendTime |
短信要求下發時間 |
NeedStateReport |
是否需要狀態報告;0:不要狀態報告;1:要狀態報告 |
ServiceID |
業務代碼 |
FeeType |
該短信的資費類型 |
FeeCode |
資費代碼(以分爲單位) |
MsgID |
從網關返回的消息ID,用於匹狀態報告 |
SMType |
默認值爲0 |
MessageID |
默認值爲'0' |
DestAddrType |
默認值爲0 |
SubTime |
消息被提交到待發表中的時間 |
TaskStatus |
該任務是否已經被取出,沒有被取出爲:0,取出後爲:1 |
SendLevel |
普通發送級別,0級最高,依次類推,現在分爲最高 0,高 1,中 2,低 3,四級。Sps的都爲0級,was的使用後面三級。 |
SendState |
短信發送任務的狀態分爲:發送 0,暫停 1,取消 3,暫停轉發送,如果該任務已經被加載到內存即 (TaskStatus=1)設爲2,如果還沒有加載到內存即(TaskStatus=0),設爲0。由取消狀態轉爲發送時需要將 TaskStatus設爲0,發送狀態爲0,對已經加載到內存的任務,要同時刪除Tbl_SMSendState表中該任務的相關記錄。 |
TryTimes |
重發次數 |
Count |
任務的總條數 |
SuccessID |
任務發送進度,表示發送到任務的第幾條短信 |
Reserve1 |
保留字段 |
Reserve2 |
保留字段 |
看完這些字段作用之後,還是有很多不明白的地方,那麼看一下下面的這個插入實例:
insert into tbl_SMSendTask (CreatorID,ServiceID,OperationType,sm_Content,OrgAddr,DestAddr,SendType,TaskStatus,FeeType,FeeCode,MsgID)
values('0000','MSC2110505','WAS', '對不起,該投票已結束',' 10657307023210170','1354444****','4','0','01','0','0')
上述使用的這條插入語句中字段都爲必須添加的字段,不然的話mas機就不會發送這條短信。
ServiceID是mas機的編碼,每個mas機都有一個名字,就像計算機名稱一樣。
OrgAddr:主叫的號碼地址,這是send表,那麼這個主叫地址就是mas機的地址,這個地址很長,大致爲:10657307023210170。這個號碼的前十二位是每個mas機啓用後中國移動給的固定的標示。就像mas機的身份證一樣的,利用他中國移動可以追蹤到具體的硬件位置。這條記錄進到mas數據庫裏面之後,如果符合條件,mas機就會與中國移動通信從而將短信內容發佈到對應的手機號碼。
上面的那條插入語句,可以實現向中國移動用戶1354444****發送短信息,用戶收到的短信息顯示的號碼就是10657307023210170。
另外一張表就是接受短信的表tbl_SMReceived
這張表是用來接收移動用戶給本Mas機回覆的短信息。
這張表也是很重要的表,我們做增值開發的人員可以從這張表中讀取我們想要的信息,進行統計分析等,得到我們想要的內容。
這張表中的字段中存有的我們比較關心的東西有:回覆短信的電話號碼,回覆內容,回覆時間等。
總結
介紹到這兒,我們應該可以瞭解到,移動增值服務系統的一些開發思路了吧。其實一開始接觸mas系統開發的時候,我最無從下手的就是不明白這個短信是怎麼發出去的,以及回覆的短信是怎麼收到的。經過本文,我們應該可以瞭解到,對於短信的發送和收取,我們要做的就只是mas機的數據庫中的發送表中加入記錄,在接收表中讀取記錄就可以啦,至於短信怎麼發出去的,我們沒有必要去知道啦。
另外,這些東西很多是關於數據庫處理的,那麼很多操作我們不能在程序中完成,這樣就沒了時效性,比如用戶針對某個投票調查回覆了一條信息,那麼他應該立即收到提示說投票成功或失敗,如果這一過程要在程序中實現,那麼你必須將程序時刻運行,時刻刷新進行回覆,否則用戶就只能在你程序下一次執行時纔會收到信息提示,時效性就沒啦。這個例子中的用戶提示信息可能可以晚一些,但是對於做數據統計或者其他的工作就不一樣啦,系統的使用者不可能時刻去刷新系統,重新去訪問數據庫,那樣負載也太大啦。
所以,在開發移動MAS增值服務時,我們要在數據庫中作很多處理而不是程序。比如觸發器的使用,作業的使用等,這樣就可以立即對用戶回覆的短信內容進行有效性判斷和一些簡單的統計歸類個、分析,使得系統更人性化,可用性、時效性更強。
以上便是我對mas增值服務開發的一些小的心得,不足之處或錯誤之處還請指正。