江曉慶
摘? ?要:為解決當(dāng)前高校校園消息發(fā)送管理中存在的不統(tǒng)一、不規(guī)范、發(fā)送效率與安全性低、消息服務(wù)體驗(yàn)差以及通信資源浪費(fèi)等問題,文章提出了一種安全可靠、高效便捷、智能集約的智慧校園統(tǒng)一消息發(fā)送中心系統(tǒng)解決方案。重點(diǎn)闡述了系統(tǒng)架構(gòu)、消息接口規(guī)范、可靠消息隊(duì)列機(jī)制及主要特色功能的設(shè)計(jì)與實(shí)現(xiàn),以期為高校建立精細(xì)化、移動化、智能化的“一站式”消息服務(wù)管理機(jī)制提供思路及參考。
關(guān)鍵詞:消息隊(duì)列;全終端;智能發(fā)送模式;審核機(jī)制;個人消息窗臺
中圖分類號:G647;TP311.13 文獻(xiàn)標(biāo)志碼:A 文章編號:1673-8454(2021)15-0079-05
近些年來,隨著高校數(shù)字校園向智慧校園轉(zhuǎn)型升級并加快發(fā)展,校園各類業(yè)務(wù)系統(tǒng)如OA、網(wǎng)上辦事大廳、教務(wù)系統(tǒng)、人事系統(tǒng)、財務(wù)系統(tǒng)、科研系統(tǒng)等業(yè)務(wù)功能也隨之增強(qiáng)與拓展,為各部門的業(yè)務(wù)管理工作帶來了極大的便利。然而,各類業(yè)務(wù)通知及提醒消息也急劇增多,消息的分散發(fā)送與管理,一方面,導(dǎo)致消息發(fā)布渠道多樣、不集中不統(tǒng)一,給業(yè)務(wù)管理員帶來了管理上的繁瑣和操作難度,工作效率低且浪費(fèi)資源;另一方面,對于學(xué)校師生用戶而言,缺少一個集中匯聚的消息接收平臺,各類消息的大量無序發(fā)送,造成了重要消息未能及時觸達(dá)用戶提醒處理,而無關(guān)緊要的消息卻接連不斷,嚴(yán)重影響了校園師生用戶的體驗(yàn)感和滿意度[1]。
為解決當(dāng)前高?!跋⒐聧u”產(chǎn)生的問題,建立一個集中統(tǒng)一、便捷管理的統(tǒng)一消息發(fā)送中心已是大勢所趨,為此,本文研究設(shè)計(jì)并構(gòu)建了智慧校園統(tǒng)一消息發(fā)送“一站式”服務(wù)中心,以期為高校智慧校園的消息服務(wù)提供解決方案。
一、高校校園消息發(fā)送存在的主要問題
目前,多數(shù)高校在智慧校園建設(shè)過程中存在以下消息發(fā)送管理相關(guān)問題:
1.消息接口不規(guī)范、不統(tǒng)一,存在各種“消息孤島”
由于智慧校園建設(shè)前期缺少統(tǒng)籌規(guī)劃與頂層設(shè)計(jì),各類校級業(yè)務(wù)系統(tǒng)“各自為政”分散建設(shè),并沒有形成全校統(tǒng)一的接口標(biāo)準(zhǔn)規(guī)范,因而出現(xiàn)了消息接口不一、內(nèi)容不規(guī)范的“消息孤島”現(xiàn)象[2]。
2.消息發(fā)送未集中化管理,發(fā)送效率和安全性低
校園沒有形成統(tǒng)一的消息管理中心,各業(yè)務(wù)系統(tǒng)發(fā)布消息的出口和渠道不統(tǒng)一且存在重復(fù)建設(shè)[3]。消息發(fā)送的權(quán)限、角色、對象沒有得到有效管控,容易出現(xiàn)消息發(fā)送混亂、發(fā)送效率低、安全性得不到保障等問題,甚至造成大量通信(短信)資源的浪費(fèi)。
3.消息發(fā)送未形成統(tǒng)一的接收窗口,服務(wù)體驗(yàn)差
校園各類業(yè)務(wù)系統(tǒng)、微信公眾號、APP、社交媒體等推送的消息類別和數(shù)量繁多,師生用戶每天通過手機(jī)短信、微信、QQ、郵箱等媒介接收到的校園消息與日俱增,并將呈幾何增長態(tài)勢。而消息的接收渠道多數(shù)混亂且分散,未能形成一個集中統(tǒng)一、匯聚分類的接收窗口以供用戶及時、方便查閱,容易造成與個人無關(guān)緊要的消息“鋪天蓋地”,而與個人密切相關(guān)的重要消息卻未能及時處理,從而一定程度上影響師生對智慧校園工作與生活服務(wù)的滿意度和期望[4]。
二、智慧校園統(tǒng)一消息發(fā)送中心系統(tǒng)架構(gòu)設(shè)計(jì)
智慧校園統(tǒng)一消息發(fā)送中心以統(tǒng)一消息發(fā)送平臺為主要依托,系統(tǒng)整體架構(gòu)自下而上分別由支撐層、數(shù)據(jù)層、渠道層、應(yīng)用層、用戶層等5層所構(gòu)成,如圖1 所示。其中,底層包括支撐層和數(shù)據(jù)層,中間層是發(fā)送消息的渠道層,上層是面向各類服務(wù)及用戶的應(yīng)用層和用戶層。
支撐層由學(xué)校統(tǒng)一身份認(rèn)證平臺、云平臺、負(fù)載均衡及數(shù)據(jù)備份組成,實(shí)現(xiàn)了統(tǒng)一消息發(fā)送中心與統(tǒng)一身份認(rèn)證的對接集成,硬件資源依托云平臺可實(shí)時彈性擴(kuò)容,消息隊(duì)列和數(shù)據(jù)備份采用負(fù)載均衡和冗余備份策略。數(shù)據(jù)層實(shí)現(xiàn)了統(tǒng)一消息發(fā)送平臺與大數(shù)據(jù)中心、各業(yè)務(wù)系統(tǒng)的互聯(lián)互通。一方面,統(tǒng)一消息發(fā)送平臺的個人通訊錄數(shù)據(jù)(手機(jī)、郵箱等)可實(shí)時從學(xué)校大數(shù)據(jù)中心同步更新,確保及時獲取最新的用戶基本信息;另一方面,該層為第三方業(yè)務(wù)系統(tǒng)推送消息提供了統(tǒng)一、開放的API接口調(diào)用服務(wù)和統(tǒng)一的集成管道。渠道層支持與短信網(wǎng)關(guān)、微信企業(yè)號、郵件系統(tǒng)、校園APP、QQ公眾號等5種媒介的對接融合,實(shí)現(xiàn)了校園消息一次編輯,多渠道同時發(fā)送。應(yīng)用層主要有兩方面應(yīng)用:一方面是第三方業(yè)務(wù)系統(tǒng)調(diào)用統(tǒng)一消息發(fā)送平臺自動發(fā)送業(yè)務(wù)消息,包括OA待辦、網(wǎng)上辦事大廳辦事提醒、財務(wù)報賬通知、教務(wù)通知、設(shè)備報修通知、進(jìn)校預(yù)約通知等;另一方面是各部門業(yè)務(wù)管理員使用統(tǒng)一消息發(fā)送平臺后臺發(fā)送各類業(yè)務(wù)通知,包括會議通知、事務(wù)通知、審批通知、繳費(fèi)通知、講座通知、體檢通知等。用戶層主要包括教師、學(xué)生、管理人員、校外人員等4大類人員,同時支持建立多維度、多層次的個人、部門個性化對象標(biāo)簽。
三、智慧校園統(tǒng)一消息發(fā)送中心系統(tǒng)實(shí)現(xiàn)
1.建立統(tǒng)一規(guī)范的校園消息接口標(biāo)準(zhǔn)
為解決學(xué)校長期以來存在的消息接口不統(tǒng)一、不集中、不兼容而產(chǎn)生的“消息孤島”現(xiàn)象,建立了一套標(biāo)準(zhǔn)的校園消息接口規(guī)范,提供統(tǒng)一的消息網(wǎng)關(guān)及接口,支持校級業(yè)務(wù)系統(tǒng)及各服務(wù)平臺的接入調(diào)用,可實(shí)現(xiàn)各類業(yè)務(wù)消息及短信驗(yàn)證碼的“一站式”推送管理。
第三方系統(tǒng)獲取可推送的服務(wù)與標(biāo)簽接口規(guī)范如下:
服務(wù)和標(biāo)簽說明:
服務(wù)決定了消息從哪里產(chǎn)生,并不影響發(fā)送給用戶。
標(biāo)簽存放的是發(fā)送對象,選擇標(biāo)簽即選擇要發(fā)送的用戶。
請求說明:
請求方式:POST
datatype: ”json”
Content-Type: application/json
請求包結(jié)構(gòu)體為:
{
"Account":" ", //賬號(String)
"Password":" " //密碼(String)?
}
返回結(jié)果:
{
"Services": [ //所能推送的服務(wù)
{
"ServiceId":"", //服務(wù)ID(long)
"ServiceName":"" //服務(wù)名稱(String)
}
],
"Labels": [ //所能推送的標(biāo)簽
{
"LabelId":"", //標(biāo)簽ID(long)
"LabelName":"" //標(biāo)簽姓名(String)
}
]
}
2.采用傳輸可靠的RabbitMQ消息隊(duì)列發(fā)送機(jī)制
RabbitMQ是實(shí)現(xiàn)了高級消息隊(duì)列協(xié)議(AMQP)的開源消息隊(duì)列系統(tǒng),其使用Erlang分布式語言開發(fā),易于集群部署,可實(shí)現(xiàn)高可用與高性能的消息發(fā)送效果[5]。統(tǒng)一消息發(fā)送中心采用RabbitMQ建立消息列隊(duì)發(fā)送機(jī)制,通過統(tǒng)一消息發(fā)送平臺與其它組件協(xié)作,構(gòu)建了消息收發(fā)引擎,其組織結(jié)構(gòu)如圖2所示。該組織結(jié)構(gòu)主要包括消息分發(fā)層、渠道控制層、渠道層和用戶層。消息分發(fā)層實(shí)現(xiàn)消息的統(tǒng)一匯聚存儲、消息狀態(tài)檢測、不同渠道分發(fā);渠道控制層實(shí)現(xiàn)不同渠道的消息存儲、消息狀態(tài)同步定時及消息推送;渠道層實(shí)現(xiàn)消息向5種不同渠道的推送任務(wù)和回調(diào)返回消息發(fā)送結(jié)果狀態(tài);用戶層主要包括教師、學(xué)生、管理人員、校外其他人員等4類用戶,并支持建立靈活多維度、多層次的個人及部門對象標(biāo)簽。
從組織結(jié)構(gòu)圖可以看出,對于RabbitMQ而言,消息分發(fā)程序是生產(chǎn)者,負(fù)責(zé)把消息存入不同渠道的消息隊(duì)列。渠道推送程序是消費(fèi)者,負(fù)責(zé)從消息隊(duì)列中獲取消息。消息能否成功送達(dá),由數(shù)據(jù)庫間的消息狀態(tài)定時檢測和同步機(jī)制進(jìn)行保障。一個完整的消息收發(fā)傳送過程步驟如下:
(1)第三方業(yè)務(wù)系統(tǒng)通過調(diào)用消息分發(fā)層API接口,將消息發(fā)送至消息分發(fā)層的消息分發(fā)程序。
(2)消息分發(fā)程序?qū)ο⑷蝿?wù)進(jìn)行發(fā)送權(quán)限、資源配置、內(nèi)容安全等核驗(yàn),之后將消息寫入數(shù)據(jù)庫中,并將消息記錄初始狀態(tài)deliverstatus置為0,然后發(fā)送Confirm給RabbitMQ。
(3)各渠道推送程序分別從RabbitMQ拉取對應(yīng)的渠道消息。
(4)各渠道推送程序?qū)@取的消息寫入對應(yīng)渠道的數(shù)據(jù)庫,并將消息推送至渠道層對應(yīng)的渠道,同時消息狀態(tài)deliverstatus置為0。
(5)各渠道將消息發(fā)送至用戶,并將消息送達(dá)狀態(tài)回調(diào)至渠道控制層的消息狀態(tài)回調(diào)處理器。不同渠道回調(diào)機(jī)制不同,處理器則根據(jù)消息的唯一標(biāo)識和用戶身份等信息判斷對應(yīng)的消息內(nèi)容項(xiàng),并將送達(dá)狀態(tài)deliverstatus置為1。
(6)渠道控制層負(fù)責(zé)對各渠道消息發(fā)送狀態(tài)進(jìn)行管理,不同渠道的消息數(shù)據(jù)分別獨(dú)立存儲,由消息狀態(tài)同步定時任務(wù)將數(shù)據(jù)匯總并同步至消息分發(fā)層的核心數(shù)據(jù)庫,將消息狀態(tài)deliverstatus更新為1。
(7)在規(guī)定的時間窗口內(nèi),若消息送達(dá)狀態(tài)deliverstatus未更新為1,則該消息被視為異常消息,啟動消息狀態(tài)檢測定時任務(wù),將異常消息從數(shù)據(jù)庫中拉取,并觸發(fā)消息重發(fā)機(jī)制,采用一定策略嘗試對消息多次重發(fā)。若嘗試重發(fā)消息成功送達(dá),則停止重發(fā)機(jī)制。若未成功,則累計(jì)消息重發(fā)次數(shù)標(biāo)識,達(dá)到一定次數(shù),停止發(fā)送并將消息標(biāo)記為“發(fā)送失敗”,結(jié)束發(fā)送。
3.實(shí)現(xiàn)多渠道、全終端消息發(fā)送管理
統(tǒng)一消息發(fā)送中心支持與短信網(wǎng)關(guān)、微信企業(yè)號(紫荊e站辦事大廳)、郵件系統(tǒng)、校園APP(微哨)、QQ公眾號等消息推送的無縫對接,讓學(xué)校各業(yè)務(wù)系統(tǒng)及管理人員都能夠通過統(tǒng)一消息發(fā)送中心向各類用戶對象發(fā)送多種形式(文字、圖文、驗(yàn)證碼、地址鏈接等)和5種渠道的校園消息,實(shí)現(xiàn)校園消息發(fā)送的多樣化、多渠道和全終端觸達(dá)。圖3為校園消息發(fā)送的多渠道選擇界面。
消息發(fā)送管理覆蓋PC端和移動端的全終端管理模式,支持Web端、微信端(微信企業(yè)號)、APP端(微哨)、移動H5等多種方式,滿足隨時隨地、移動便捷的消息發(fā)送工作需求,從而擺脫傳統(tǒng)消息發(fā)送管理對PC端的依賴和限制。圖4為消息發(fā)送的移動端管理界面。
4.實(shí)現(xiàn)集約化短信智能發(fā)送模式
隨著智慧校園消息發(fā)送的統(tǒng)一集中化管理,各種“消息孤島”不斷融合并逐漸形成匯聚的“大消息池”。而統(tǒng)一消息發(fā)送中心也承載著越來越多的各類業(yè)務(wù)消息推送任務(wù),特別是短信消息發(fā)送量也隨之驟增。為了更好地優(yōu)化資源分配,減少各自為政和短信泛濫發(fā)送造成的通信資源浪費(fèi),統(tǒng)一消息發(fā)送中心以集約化管理為原則,采用“管理+技術(shù)”手段,即前期通過對第三方業(yè)務(wù)系統(tǒng)申請調(diào)用的消息發(fā)送業(yè)務(wù)流程進(jìn)行干預(yù)、優(yōu)化,再利用消息接口提供的智能發(fā)送模式,用兩者相結(jié)合的機(jī)制,對各業(yè)務(wù)系統(tǒng)調(diào)用接口的短信發(fā)送進(jìn)行資源優(yōu)化與配置,避免“濫發(fā)送”現(xiàn)象,有效降低了短信通信成本。集約化的短信發(fā)送管理流程如圖5所示。
5.構(gòu)建安全便捷的消息發(fā)送審核機(jī)制
統(tǒng)一消息發(fā)送中心的消息發(fā)送審核采用基于服務(wù)的多層級審核機(jī)制,即自動審核和人工審核兩種方式相結(jié)合。
自動審核:管理員可自定義各類非法消息的安全策略,使用和配置多種知識庫,對不同需求下的敏感詞進(jìn)行自動攔截過濾,并追溯非法消息來源,保證消息發(fā)送的合法性和安全性。自動審核對消息內(nèi)容的三層過濾如下:第一層檢測過濾是否含有暴力、反動等惡意非法詞匯;第二層檢測過濾是否含有亂碼等影響安全性的字符內(nèi)容;第三層根據(jù)不良關(guān)鍵詞攔截特征庫,檢測過濾含有不良內(nèi)容特征的消息素材。
人工審核:可個性化定義和配置多層級的消息審核管理,對待發(fā)送的消息內(nèi)容,在系統(tǒng)自動審核的同時,還可采用由若干層級消息審核員組成的審核機(jī)制,并且支持消息創(chuàng)建與消息審核的權(quán)限分離及多層級劃分,確保整個審核流程過程清晰、分工明確、安全可控。
消息發(fā)送審核還支持移動終端微信企業(yè)號的消息待辦提醒與審核功能,做到消息審核隨時隨地可查閱、可辦理,極大提升了管理人員的辦公辦事效率。
6.設(shè)計(jì)集中匯聚、分類呈現(xiàn)的校園個人消息窗臺
以統(tǒng)一消息發(fā)送平臺為應(yīng)用支撐,以微信企業(yè)號(紫荊e站辦事大廳)為前端展示,通過融合對接校園各類業(yè)務(wù)系統(tǒng)、微信公眾號及企業(yè)號直通車應(yīng)用的消息接口通道,將校園各類消息服務(wù)進(jìn)行整合與分類,形成一個集中統(tǒng)一、匯聚融合的校園“大消息池”,并實(shí)現(xiàn)面向個人點(diǎn)對點(diǎn)精準(zhǔn)推送及分類呈現(xiàn)的校園“個人消息窗臺”,如圖6所示?!皞€人消息窗臺”為學(xué)校師生呈現(xiàn)與個人直接相關(guān)和間接相關(guān)的各類校園消息,按緊急、重要程度可分為五大類:
第一類是待辦提醒消息。該類消息呈現(xiàn)與個人直接相關(guān)且需要及時處理的各類重要待辦事項(xiàng),并可根據(jù)緊急程度優(yōu)先置頂,主要包括OA公文待辦、網(wǎng)上辦事審核待辦、教學(xué)事務(wù)待辦、科研事務(wù)待辦以及其它事務(wù)待辦。
第二類是會議消息。該類消息呈現(xiàn)與個人直接相關(guān)且需要參加的各種會議,主要包括工作相關(guān)會議、學(xué)習(xí)相關(guān)會議的通知。
第三類是服務(wù)消息。該類消息呈現(xiàn)與個人工作、學(xué)習(xí)、生活等方面相關(guān)的服務(wù)類消息,主要包括財務(wù)報賬通知、各類報修通知、各類繳費(fèi)通知、體檢預(yù)約通知等。
第四類是通知公告消息。該類消息是面向廣大師生的校園公眾消息,主要包括學(xué)校及各單位通知、學(xué)校及各單位要聞、學(xué)校公示、學(xué)術(shù)講座等。
第五類是其他消息。即除前四類消息之外的校園其他消息。
通過建立校園個人消息窗臺,可實(shí)現(xiàn)校園消息的集中匯聚、清晰分類、精準(zhǔn)推送,滿足學(xué)校師生對智慧校園消息服務(wù)的便捷查閱和高效處理等切實(shí)需要。
四、應(yīng)用實(shí)踐
智慧校園統(tǒng)一消息發(fā)送中心是華南農(nóng)業(yè)大學(xué)智慧校園消息統(tǒng)一發(fā)送與集約化管理的綜合服務(wù)平臺,面向?qū)W校各單位及全體師生,在教學(xué)、科研、管理及生活方面提供消息服務(wù),為提升辦公、辦事效率和服務(wù)質(zhì)量起到重要支撐作用。平臺自2018年底上線以來,為全校12個單位共23個業(yè)務(wù)系統(tǒng)提供了統(tǒng)一的消息接口調(diào)用及后臺管理服務(wù),累計(jì)發(fā)送各類短信消息達(dá)132.7萬條、微信消息達(dá)46.5萬條、郵件達(dá)10.3萬封,實(shí)現(xiàn)了學(xué)校各類會議通知、待辦提醒、報修報賬、預(yù)約通知、短信驗(yàn)證碼等消息服務(wù)的“一站式”管理、多渠道(短信、微信企業(yè)號、郵件、微哨APP、QQ公眾號)推送、全終端(Web端、微信端、APP端、移動H5)發(fā)送管理,建設(shè)效果良好。
五、結(jié)語
隨著智慧校園建設(shè)的不斷深入推進(jìn),學(xué)校各部門、各業(yè)務(wù)系統(tǒng)、各媒介平臺等產(chǎn)生的與師生相關(guān)的各種消息將呈幾何態(tài)勢增長,校園消息的“大數(shù)據(jù)時代”已經(jīng)到來。構(gòu)建一個規(guī)范化、集中化、一體化管控的消息發(fā)送管理中心,對于智慧校園的高效融合與高質(zhì)量發(fā)展,顯得極為重要。本文研究探討了一種安全可靠、移動便捷和智能集約的智慧校園統(tǒng)一消息發(fā)送中心系統(tǒng)解決方案,從系統(tǒng)架構(gòu)頂層設(shè)計(jì)、消息接口規(guī)范、可靠消息隊(duì)列發(fā)送、多渠道全終端發(fā)送管理、集約智能發(fā)送模式、安全審核機(jī)制、個人消息窗臺設(shè)計(jì)等多方面進(jìn)行了闡述,為高校構(gòu)建智慧校園統(tǒng)一消息發(fā)送的“一站式”服務(wù)中心提供參考借鑒。
智慧校園統(tǒng)一消息發(fā)送中心未來將進(jìn)一步深入對接學(xué)?!按髷?shù)據(jù)中心”,充分利用學(xué)校數(shù)據(jù)治理所取得的成效,獲取更加準(zhǔn)確、全面的用戶特征和行為數(shù)據(jù),通過運(yùn)用智能用戶標(biāo)簽、智能推薦等算法,全面構(gòu)建更加智能化、便捷化、可拓展的消息智能推薦中臺,實(shí)現(xiàn)校園消息和用戶對象基于標(biāo)簽的智能匹配與自動推送,更好地服務(wù)于學(xué)校師生。
參考文獻(xiàn):
[1]楊樹春,辛云飛,王義,等.基于微信企業(yè)號的高校移動平臺設(shè)計(jì)與實(shí)現(xiàn)[J].華中科技大學(xué)學(xué)報(自然科學(xué)版),2016,44(S1):158-161.
[2]王興建,陳平,田小萍.統(tǒng)一通信平臺在高校應(yīng)用的研究與實(shí)現(xiàn)[J].中國教育信息化,2020(3):93-96.
[3]郭倩,劉宏磊,張亞娟,等.基于B/S的高校PaaS平臺統(tǒng)一消息協(xié)作系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].中國教育信息化,2019(11):82-85.
[4]劉波,楊娟.基于微服務(wù)的智慧校園消息中心構(gòu)建研究[J].河北軟件職業(yè)技術(shù)學(xué)院學(xué)報,2018,20(3):1-4.
[5]吳煒鑫,王宇,王興偉.基于AMQP的校園消息總線系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].通信學(xué)報,2013,34(S2):180-183.
(編輯:王曉明)