陳建婷
(南京藝術(shù)學(xué)院 信息化建設(shè)管理中心,江蘇 南京 210013)
融合通信(Rich Communication Suite,RCS)是GSMA國際標準組織定義的富媒體通信套件,是基于IMS網(wǎng)絡(luò)下對傳統(tǒng)短信、彩信、語音業(yè)務(wù)的升級,為運營商發(fā)展融合通信業(yè)務(wù)提供了標準和規(guī)范支撐,成為運營商對抗OTT業(yè)務(wù)沖擊的唯一出路。
RCS消息業(yè)務(wù)基于SIP,MSRP,HTTP協(xié)議,定義了多種消息業(yè)務(wù)場景及基本功能,包括:點對點、群發(fā)、群聊、文件傳輸、MaaP業(yè)務(wù)、增強呼叫等,媒體類型覆蓋文本、圖片、音頻、視頻、名片、地理位置、卡片等,可以給用戶帶來豐富的業(yè)務(wù)體驗。
當前,全球各大運營商都在積極探究和試點RCS業(yè)務(wù)。中國移動早在2014年就開始投資建設(shè)RCS業(yè)務(wù)平臺,到目前為止,平臺累計活躍用戶已突破千萬,RCS已進入蓬勃發(fā)展階段。隨著業(yè)務(wù)發(fā)展,同一用戶很可能會需要在手機上、PC上、Web頁面上使用RCS業(yè)務(wù),這必然帶來了多端同步問題。如何不斷提升用戶體驗、實現(xiàn)不同端的消息同步,已成為促進業(yè)務(wù)發(fā)展的一個重要課題[1]。
(1)Native終端,即支持RCS業(yè)務(wù)功能的軟件固化在手機中,用戶無需安裝任何軟件,直接從傳統(tǒng)短信入口即可使用RCS組件發(fā)送點對點或群聊消息,體驗豐富的消息業(yè)務(wù)。這是RCS的標準終端形態(tài),目前,國內(nèi)主流手機大多已支持。
(2)APP終端,在Native終端發(fā)展過程中,某些手機無法升級至Native終端,如iOS系統(tǒng),如果用戶想體驗RCS業(yè)務(wù),可以安裝相應(yīng)的APP,類似于微信。
(3)PC端,安裝在PC上的即時通信軟件,用戶通過手機號碼綁定登錄,后臺接入RCS消息業(yè)務(wù)處理平臺,實現(xiàn)與手機端的互通。
(4)Web端,直接在運營商提供的網(wǎng)頁上登錄,與PC端類似,綁定手機號碼登錄,后臺接入RCS消息業(yè)務(wù)處理平臺,實現(xiàn)與手機端互通。
隨著物聯(lián)網(wǎng)業(yè)務(wù)的發(fā)展,手表、手環(huán)、汽車等都有可能成為RCS消息系統(tǒng)的一種終端形態(tài)存在。從用戶體驗上說,登錄不同的終端都能看到完整的歷史對話消息,都能實時接收在線消息,是一種基本需求,這也意味著多端間的消息同步必須保證消息的完整性和實時性[2]。
2.2.1 平臺推送方式
RCS消息業(yè)務(wù)處理平臺為每個用戶記錄注冊的所有端碼號和在線狀態(tài)。當系統(tǒng)需要向該用戶發(fā)送消息時,根據(jù)用戶的端碼號,向當前在線的每個端都投遞該條消息。如果用戶的某個端因為網(wǎng)絡(luò)問題暫時無法接收,則系統(tǒng)對該端進行消息重試。若重試不成功,則緩存消息,并記錄下當前發(fā)送的位置,待用戶重新注冊上線后,再由平臺繼續(xù)下發(fā)緩存的離線消息。如果一條消息所有的端都接收成功,則從平臺緩存中刪除。由平臺確保該用戶的每個端都收到全量的消息,平臺對每個用戶分配一個消息隊列,用于管理待發(fā)消息[3],其組織方式如圖1所示。
圖1 RCS消息業(yè)務(wù)處理平臺組織方式
2.2.2 CMS方式
CPM消息存儲系統(tǒng)(CPM Message Store,CMS)從RCS消息業(yè)務(wù)處理平臺實時接收消息,內(nèi)部按照郵箱的模式存儲和管理消息,基于iMap協(xié)議為終端用戶提供消息查詢、消息拉取、消息管理等操作。
對于RCS消息業(yè)務(wù)處理平臺來說,當收到用戶A提交的消息后,除正常的業(yè)務(wù)邏輯處理外,還需要要向CMS平臺同步。CMS平臺收到該條消息后,存入主叫A用戶的發(fā)件箱中。當用戶A在其他終端登錄時,終端可以主動到CMS平臺拉取其發(fā)件箱消息,使用戶A的每個端都能看到自己曾經(jīng)發(fā)送過的全量消息。CMS方式下的消息同步流程如圖2所示。
圖2 CMS方式下的消息同步流程
當RCS消息業(yè)務(wù)處理平臺需要向用戶B投遞消息時,同時將該條消息同步給CMS平臺,CMS平臺將消息存入用戶B的收件箱中。當用戶B在其他端登錄時,終端可以主動到CMS平臺拉取其收件箱中的消息,使用戶B的每個端都能看到自己收到的全量消息。
當終端成功收到消息后,可向RCS消息業(yè)務(wù)處理平臺返回遞送報告。同樣地,RCS消息業(yè)務(wù)處理平臺可將遞送報告同步給CMS平臺,由CMS平臺對相應(yīng)的消息記錄其狀態(tài)。當用戶登錄其他終端時,消息遞送的狀態(tài)信息也可同步到其他終端,從而實現(xiàn)多端間消息狀態(tài)同步邏輯,如消息靜默、消除紅點等業(yè)務(wù)體驗。CMS方式下的回執(zhí)同步流程如圖3所示。
2.2.3 兩種方式比較
(1)平臺推送方式。在終端上處理簡單,僅需要被動接收消息,多端間的消息同步邏輯完全由平臺控制,對平臺的要求較高,需要對用戶的每一個端的狀態(tài)進行管理,在線實時投遞,離線失敗保存,從而保證消息同步的實時性。
圖3 CMS方式下的回執(zhí)同步流程
(2)CMS同步方式。由于RCS消息業(yè)務(wù)處理平臺和CMS平臺間消息是實時同步的,而CMS與終端間也具備實時接口,所以,RCS消息業(yè)務(wù)處理平臺僅需要針對在線端實時投遞消息,對離線端不用保存消息,也不需要對主叫用戶進行多端消息同步發(fā)送處理。通過CMS方式多端同步消息,可大大簡化RCS消息業(yè)務(wù)處理平臺的邏輯,也降低了設(shè)備性能消耗。另外,CMS平臺可屏蔽用戶不同終端的能力差異,完全依據(jù)終端拉取行為推送消息,平臺處理簡單、可靠。
CMS同步方式對終端的要求比較高,需要終端同時與RCS消息業(yè)務(wù)處理平臺和CMS平臺間具備實時接口,且對于實時接收到的消息和從CMS拉取下來的離線消息做合并處理,并按時間順序正確展示。終端需要根據(jù)CMS中的消息狀態(tài)變更,實時更新本端上的消息展示界面。
綜上所述,在RCS業(yè)務(wù)發(fā)展初期,終端對RCS業(yè)務(wù)的支持普遍還停留在基礎(chǔ)階段,通過RCS消息業(yè)務(wù)處理平臺推送方式實現(xiàn)多端間消息同步,是相對簡單、可行的一種方案;CMS方案作為標準規(guī)范不失為一種較好的多端消息同步方式,但鑒于目前終端發(fā)展還很有限,短期內(nèi)難以實現(xiàn)。相信隨著RCS業(yè)務(wù)的不斷發(fā)展,多端間消息同步機制還會有更多不斷優(yōu)化調(diào)整的空間,用戶體驗也會越來越好。