方軍 丘華
(中國聯(lián)合網(wǎng)絡(luò)通信有限公司廣東省分公司,廣東 廣州 510000)
消息計費系統(tǒng)是目前國內(nèi)各大電信運營商通過消息報文觸發(fā)加快計費效率所采取的主要系統(tǒng)架構(gòu)。按照總部OCS上遷cBSS的要求,廣東省在2020年6月份已經(jīng)圓滿完成了全量OCS用戶上cBSS的任務(wù)。目前廣東的消息計費系統(tǒng)已承載所有850萬戶的原OCS用戶數(shù)據(jù)業(yè)務(wù)計費,但是OCS用戶上遷后變成后付的計費模式,難免會改變用戶的使用習(xí)慣,造成原OCS用戶在余額或信用度超額的時候,仍然繼續(xù)使用業(yè)務(wù),造成巨大的欠費量,不僅給公司帶來了潛在的費用回收風(fēng)險,也給原OCS客戶帶來不良的影響,大額欠費投訴急劇上升,亟需建設(shè)軟控策略來壓降用戶欠費率。本項目通過打造面向消息計費客戶關(guān)愛統(tǒng)一服務(wù)管理平臺來提升消息計費核心能力,在現(xiàn)有提醒短信基礎(chǔ)上,豐富短信實時提醒內(nèi)容,充分發(fā)揮消息計費及時的優(yōu)勢,通過軟控策略來大幅壓降用戶的巨額欠費,從而提升用戶服務(wù)感知。
(1)動態(tài)配額功能:建設(shè)數(shù)據(jù)業(yè)務(wù)流量動態(tài)配額功能。
(2)低余額用戶提醒管理模塊:實時觸發(fā)的短信提醒用戶低余額情況,提醒用戶進行充值等操作,以免產(chǎn)生后續(xù)的停機。
(3)實時軟停機功能:通過與省分實時消息接入結(jié)合,實現(xiàn)用戶實時軟停機和開機能力,是本次開發(fā)的重點功能。在用戶達(dá)到一定欠費程度的時候?qū)τ脩魧嵤┩C功能,有效避免用戶產(chǎn)生巨額欠費,而當(dāng)用戶余額恢復(fù)到可用狀態(tài)時候,對用戶實施及時開機。實現(xiàn)軟停功能能夠直接有效控制用戶的欠費額度,因此在此功能上需具備非常高的實時性和精準(zhǔn)的要求。實時軟停機與低余額提醒、動態(tài)配額功能配合使用實現(xiàn)對欠費用戶的進一步壓降,其中包含了用戶信息分布式高速緩存模塊、實時鑒權(quán)模塊、同步開機模塊以及消息克隆模塊等。
(4)系統(tǒng)集成部署:鑒于CES提升客戶關(guān)愛平臺的海量數(shù)據(jù)以快速計算屬性,通過EDAS分布式服務(wù)框架進行系統(tǒng)集成部署,將數(shù)據(jù)下沉服務(wù)、統(tǒng)計接口服務(wù)、應(yīng)用服務(wù)和數(shù)據(jù)服務(wù)進行封裝,對外提供相應(yīng)的服務(wù)層次。
賦能消息計費系統(tǒng)達(dá)到軟控管理功能,需建設(shè)消息計費客戶關(guān)愛服務(wù)管理平臺,此平臺屬于獨立于消息計費主模塊的外圍系統(tǒng),實現(xiàn)的目標(biāo)需求比較繁瑣,業(yè)務(wù)功能點較多,要求開發(fā)人員對消息計費系統(tǒng)架構(gòu)和業(yè)務(wù)流程熟悉程度比較高,因此采用自研和外聘相結(jié)合的方式,通過DEVOPS敏捷開發(fā)方式,達(dá)到快速實現(xiàn)項目落地和運行的目的。
根據(jù)對目標(biāo)需求的深入調(diào)研和分析,總體系統(tǒng)架構(gòu)如圖1。
圖1 總體系統(tǒng)架構(gòu)圖
項目實施技術(shù)方案如圖2。為有效串聯(lián)用戶各種個性化提醒、動態(tài)額度管理、停開機控制等功能,將相關(guān)服務(wù)模塊進行整合,建立消息計費客戶關(guān)愛統(tǒng)一服務(wù)管理平臺。該平臺實現(xiàn)了接入域接收cBSS下沉各項狀態(tài)變更、停開機、短信下發(fā)、消息計費接入等關(guān)鍵數(shù)據(jù)來源接入途徑,通過數(shù)據(jù)域同步到本地內(nèi)存數(shù)據(jù)庫中,并匹配規(guī)則域相關(guān)信控、提醒、監(jiān)控等規(guī)則生成控制信號,通過信控域的管理生成信控、配額、欠費等邏輯策略,對用戶的數(shù)據(jù)業(yè)務(wù)行為進行介入控制,例如動態(tài)調(diào)整用戶的流量配額、上網(wǎng)限速、數(shù)據(jù)業(yè)務(wù)停機使用,并通過短信域的提醒和下發(fā)等功能通知客戶端,形成透明化的用戶高額欠費的管控一體化流程。
圖2 CES提升客戶關(guān)愛管理平臺功能架構(gòu)圖
建設(shè)數(shù)據(jù)業(yè)務(wù)流量動態(tài)配額功能,主要鑒于如下兩個方面的目的:
(1)通過動態(tài)配額功能,可對低余額的用戶進行一定程度的限流限速,使得用戶終端使用可分配的流量額度限制在一定范圍內(nèi),用戶上網(wǎng)的額度消耗受到一定程度的減緩,從而有時間通知用戶進行必要的短信提醒,避免用戶在不知情的情況下產(chǎn)生高額的欠費。
(2)對不同的用戶群體進行不同級別的流量額度分配,例如5G用戶可區(qū)分的動態(tài)分配較大的配額,例如每bit150Mb的配額,用戶在高配額情況下可以減少與計費系統(tǒng)的交互,上網(wǎng)速率得到較大的提升。
通過根據(jù)用戶的實時狀態(tài),比如用戶余額、信用度、使用網(wǎng)絡(luò)等信息動態(tài)計算用戶的配額,在返回的CCA應(yīng)答包中動態(tài)修改用戶的配額授權(quán)值。
動態(tài)配額的業(yè)務(wù)流程如圖3。
圖3 動態(tài)配額業(yè)務(wù)流程圖
1)接收網(wǎng)元ggsn的請求消息ccr包;
2)ocs根據(jù)路由信息將請求包ccr路由轉(zhuǎn)發(fā)到消息計費系統(tǒng);
3)接收消息計費系統(tǒng)的應(yīng)答包cca,判斷用戶的授權(quán)配置值是否需要修改,如果是則修改配額值并返回cca;
由于目標(biāo)用戶大多數(shù)屬于OCS遷轉(zhuǎn)cBSS用戶,用戶原來的使用習(xí)慣是預(yù)付費模式,即在用戶余額接近一定閾值的時候,短信提醒用戶低余額情況,提醒用戶進行充值等操作,以免產(chǎn)生后續(xù)的停機,上遷到cBSS后,基于一切為了用戶的理念考慮,為這部分盡量實現(xiàn)近似的個性化提醒功能。
低余額用戶提醒功能業(yè)務(wù)流程如圖4。
圖4 低余額用戶提醒功能業(yè)務(wù)流程圖
軟停機模塊是本項目的重點模塊,需要與上述的短信提醒與動態(tài)配額功能結(jié)合使用,在用戶余額低于一定閾值時候進行短信前期的提醒,引起用戶的注意,在低于更小閾值時候進行動態(tài)配額控制,進一步對用戶的額度進行控制,在用戶達(dá)到一定欠費程度的時候?qū)τ脩魧嵤┩C功能,有效避免用戶產(chǎn)生巨額欠費,而當(dāng)用戶余額恢復(fù)到可用狀態(tài)時候,對用戶實施及時開機。實現(xiàn)軟停功能能夠直接有效控制用戶的欠費額度,因此在此功能上需具備非常高的實時性和精準(zhǔn)的要求,實時軟停機與低余額提醒、動態(tài)配額功能一起實現(xiàn)對用戶欠費的進一步壓降。
消息計費的配額授權(quán)值根據(jù)用戶的余額、信用度或使用網(wǎng)絡(luò)等實時動態(tài)調(diào)整并及時停機。整體業(yè)務(wù)流程如圖5。相關(guān)系統(tǒng)架構(gòu)如圖6。
圖5 實時軟停機功能業(yè)務(wù)流程圖
圖6 實時軟停機功能系統(tǒng)架構(gòu)圖
3.3.1用戶信息分布式高速緩存模塊業(yè)務(wù)流程(圖7)
圖7 用戶信息分布式高速緩存模塊業(yè)務(wù)流程圖
(1)用戶基本配額信息資料和屬性的定期更新:通過定期掃描用戶數(shù)量,根據(jù)相關(guān)策略規(guī)則匹配(如:品牌ID+產(chǎn)品ID--->通配品牌+產(chǎn)品ID--->品牌ID+通配產(chǎn)品--->通配品牌+通配產(chǎn)品),只要有一個規(guī)則匹配成功則結(jié)束規(guī)則匹配循環(huán),在用戶配額日志表理論上每個用戶只有一條記錄,如果記錄存在,則更新配額信息。若用戶處于已動態(tài)配額狀態(tài),如果使用量小于授權(quán)配額值,表示用戶配額值暫未使用完,更新用戶操作狀態(tài)表里的授權(quán)配額值,剩余授權(quán)配額值=授權(quán)配額值-已使用量。
(2)查詢用戶狀態(tài)操作表以會話ID作為查詢條件,以會話級別控制用戶的軟停機。已使用量為當(dāng)前CCR中所有收費RG的使用量累計,屬性為免費的RG使用量不作為本次累計使用量,根據(jù)用戶可用余額=實時余額+信用度的模式進行判定。
(3)用戶確認(rèn)需要停機操作前需調(diào)用能力平臺的查詢CB用戶余額接口(由于時限問題,可設(shè)置相關(guān)超時配置),并且查詢用戶開機記錄表,用戶開機時間內(nèi)不做停機,以免由于消息積壓造成誤停機。
3.3.2實時鑒權(quán)模塊業(yè)務(wù)流程(圖8)
圖8 實時鑒權(quán)模塊業(yè)務(wù)流程圖
程序后端同時連接兩條通信鏈路,包括消息計費通信鏈
路和消息克隆通信鏈路,所有請求包優(yōu)先轉(zhuǎn)發(fā)給消息計費鏈路,只有UT包才轉(zhuǎn)發(fā)給消息克隆鏈路。接收到CCR時,轉(zhuǎn)發(fā)完請求包需要在redis里保存會話記錄,計費用戶信息標(biāo)準(zhǔn)化后再保存,以便CCA可以通過會話ID找到用戶號碼信息,會話失效時間為2小時。接收到CCA時,需查詢用戶鑒權(quán)表,用戶處于停機狀態(tài)則將CCA的所有收費RG的返回碼修改成4012,用戶處于動態(tài)配額狀態(tài)則將所有收費RG的配額修改成最新配額,刪除會話表記錄。查詢redis的表信息失敗,不做任何的修改報文動作,先保證請求可以正常返回。用戶在白名單中且有效,該用戶不動態(tài)配額、不軟停機。
3.3.3同步開機模塊業(yè)務(wù)流程(圖9)
圖9 同步開機模塊業(yè)務(wù)流程圖
開機服務(wù)注冊到dubbo上,實現(xiàn)功能為查詢redis里是否存在用戶停機記錄,并可對外提供OAM界面做緊急開機處理,而在開機時候需要寫入開機記錄表,該表提供給實時信控程序在停機前做判斷。
3.3.4消息克隆模塊業(yè)務(wù)流程(圖10)
實時消息克隆模塊分為父進程和子進程,父進程負(fù)責(zé)監(jiān)聽socket連接,每條鏈路拉起一個子進程,并在系統(tǒng)IPC上開辟一塊共享內(nèi)存,父進程和子進程在共享內(nèi)存上進行數(shù)據(jù)交互,對于接收到的消息CER/DWR請求包,直接回復(fù)應(yīng)答包,而子進程將接收到的CCR請求包轉(zhuǎn)換成json消息,并通過kafka集群寫入高速緩存。
鑒于CES提升客戶關(guān)愛平臺的海量數(shù)據(jù)以快速計算屬性,通過EDAS分布式服務(wù)框架進行系統(tǒng)集成部署,將數(shù)據(jù)下沉服務(wù)、統(tǒng)計接口服務(wù)、應(yīng)用服務(wù)和數(shù)據(jù)服務(wù)進行封裝,對外提供相應(yīng)的服務(wù)層次。
相關(guān)系統(tǒng)集成部署如圖11。
圖11 系統(tǒng)集成部署圖
在CES提升客戶關(guān)愛平臺采用物理機與虛擬機結(jié)合部署方式,使用4臺服務(wù)機和6臺虛擬機進行系統(tǒng)架構(gòu)部署,相關(guān)功能模塊對應(yīng)的機器部署如圖12。
圖12 系統(tǒng)模塊部署圖
本項目于2020年6月在廣東省已經(jīng)圓滿完成了全量OCS用戶上cBSS的任務(wù)。目前廣東的消息計費系統(tǒng)已承載850萬戶的原OCS用戶數(shù)據(jù)業(yè)務(wù)計費,具備龐大的原預(yù)付費用戶群,壓降欠費意義重大。
預(yù)計項目將建成消息計費系統(tǒng)CES指標(biāo)提升用戶關(guān)愛統(tǒng)一服務(wù)管理平臺,此平臺將為上遷到cBSS的預(yù)付費用戶進行關(guān)愛服務(wù),提供低余額短信預(yù)提醒、用戶高額欠費管控等功能,通過EDAS、MQ、redis、kafka等熱門組件技術(shù)應(yīng)用,提供全流程配套管理,保障業(yè)務(wù)快速有效開展,此項目的應(yīng)用將提高系統(tǒng)的運營能力,實現(xiàn)如下客戶服務(wù)能力的提升:
(1)減少投訴:減少99%短信及時性引發(fā)的投訴。
(2)減少損失:實時軟停機減少用戶欠費。
(3)提升用戶服務(wù)感知:及時短信提醒用戶。
(4)提高創(chuàng)收:滿足更多個性化需求。
通過對用戶的欠費情況管控,從而達(dá)到高額欠費率降低到1%以下,大大降低了上遷到cBSS的預(yù)付費用戶的欠費風(fēng)險,為總部和其他省分公司提供新型的輔助運營方案參考,并且對外輸出能力接口,從而靈活推廣到其他系統(tǒng)的接入應(yīng)用。