APP下载

智慧校园统一消息发送中心系统设计与实践

2021-09-05江晓庆

中国教育信息化·高教职教 2021年8期

江晓庆

摘   要:为解决当前高校校园消息发送管理中存在的不统一、不规范、发送效率与安全性低、消息服务体验差以及通信资源浪费等问题,文章提出了一种安全可靠、高效便捷、智能集约的智慧校园统一消息发送中心系统解决方案。重点阐述了系统架构、消息接口规范、可靠消息队列机制及主要特色功能的设计与实现,以期为高校建立精细化、移动化、智能化的“一站式”消息服务管理机制提供思路及参考。

关键词:消息队列;全终端;智能发送模式;审核机制;个人消息窗台

中图分类号:G647;TP311.13 文献标志码:A 文章编号:1673-8454(2021)15-0079-05

近些年来,随着高校数字校园向智慧校园转型升级并加快发展,校园各类业务系统如OA、网上办事大厅、教务系统、人事系统、财务系统、科研系统等业务功能也随之增强与拓展,为各部门的业务管理工作带来了极大的便利。然而,各类业务通知及提醒消息也急剧增多,消息的分散发送与管理,一方面,导致消息发布渠道多样、不集中不统一,给业务管理员带来了管理上的繁琐和操作难度,工作效率低且浪费资源;另一方面,对于学校师生用户而言,缺少一个集中汇聚的消息接收平台,各类消息的大量無序发送,造成了重要消息未能及时触达用户提醒处理,而无关紧要的消息却接连不断,严重影响了校园师生用户的体验感和满意度[1]。

为解决当前高校“消息孤岛”产生的问题,建立一个集中统一、便捷管理的统一消息发送中心已是大势所趋,为此,本文研究设计并构建了智慧校园统一消息发送“一站式”服务中心,以期为高校智慧校园的消息服务提供解决方案。

一、高校校园消息发送存在的主要问题

目前,多数高校在智慧校园建设过程中存在以下消息发送管理相关问题:

1.消息接口不规范、不统一,存在各种“消息孤岛”

由于智慧校园建设前期缺少统筹规划与顶层设计,各类校级业务系统“各自为政”分散建设,并没有形成全校统一的接口标准规范,因而出现了消息接口不一、内容不规范的“消息孤岛”现象[2]。

2.消息发送未集中化管理,发送效率和安全性低

校园没有形成统一的消息管理中心,各业务系统发布消息的出口和渠道不统一且存在重复建设[3]。消息发送的权限、角色、对象没有得到有效管控,容易出现消息发送混乱、发送效率低、安全性得不到保障等问题,甚至造成大量通信(短信)资源的浪费。

3.消息发送未形成统一的接收窗口,服务体验差

校园各类业务系统、微信公众号、APP、社交媒体等推送的消息类别和数量繁多,师生用户每天通过手机短信、微信、QQ、邮箱等媒介接收到的校园消息与日俱增,并将呈几何增长态势。而消息的接收渠道多数混乱且分散,未能形成一个集中统一、汇聚分类的接收窗口以供用户及时、方便查阅,容易造成与个人无关紧要的消息“铺天盖地”,而与个人密切相关的重要消息却未能及时处理,从而一定程度上影响师生对智慧校园工作与生活服务的满意度和期望[4]。

二、智慧校园统一消息发送中心系统架构设计

智慧校园统一消息发送中心以统一消息发送平台为主要依托,系统整体架构自下而上分别由支撑层、数据层、渠道层、应用层、用户层等5层所构成,如图1 所示。其中,底层包括支撑层和数据层,中间层是发送消息的渠道层,上层是面向各类服务及用户的应用层和用户层。

支撑层由学校统一身份认证平台、云平台、负载均衡及数据备份组成,实现了统一消息发送中心与统一身份认证的对接集成,硬件资源依托云平台可实时弹性扩容,消息队列和数据备份采用负载均衡和冗余备份策略。数据层实现了统一消息发送平台与大数据中心、各业务系统的互联互通。一方面,统一消息发送平台的个人通讯录数据(手机、邮箱等)可实时从学校大数据中心同步更新,确保及时获取最新的用户基本信息;另一方面,该层为第三方业务系统推送消息提供了统一、开放的API接口调用服务和统一的集成管道。渠道层支持与短信网关、微信企业号、邮件系统、校园APP、QQ公众号等5种媒介的对接融合,实现了校园消息一次编辑,多渠道同时发送。应用层主要有两方面应用:一方面是第三方业务系统调用统一消息发送平台自动发送业务消息,包括OA待办、网上办事大厅办事提醒、财务报账通知、教务通知、设备报修通知、进校预约通知等;另一方面是各部门业务管理员使用统一消息发送平台后台发送各类业务通知,包括会议通知、事务通知、审批通知、缴费通知、讲座通知、体检通知等。用户层主要包括教师、学生、管理人员、校外人员等4大类人员,同时支持建立多维度、多层次的个人、部门个性化对象标签。

三、智慧校园统一消息发送中心系统实现

1.建立统一规范的校园消息接口标准

为解决学校长期以来存在的消息接口不统一、不集中、不兼容而产生的“消息孤岛”现象,建立了一套标准的校园消息接口规范,提供统一的消息网关及接口,支持校级业务系统及各服务平台的接入调用,可实现各类业务消息及短信验证码的“一站式”推送管理。

第三方系统获取可推送的服务与标签接口规范如下:

服务和标签说明:

服务决定了消息从哪里产生,并不影响发送给用户。

标签存放的是发送对象,选择标签即选择要发送的用户。

请求说明:

请求方式:POST

datatype: ”json”

Content-Type: application/json

请求包结构体为:

{

"Account":" ", //账号(String)

"Password":" " //密码(String)?

}

返回结果:

{

"Services": [ //所能推送的服务

{

"ServiceId":"", //服务ID(long)

"ServiceName":"" //服务名称(String)

}

],

"Labels": [ //所能推送的标签

{

"LabelId":"", //标签ID(long)

"LabelName":"" //标签姓名(String)

}

]

}

2.采用传输可靠的RabbitMQ消息队列发送机制

RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息队列系统,其使用Erlang分布式语言开发,易于集群部署,可实现高可用与高性能的消息发送效果[5]。统一消息发送中心采用RabbitMQ建立消息列队发送机制,通过统一消息发送平台与其它组件协作,构建了消息收发引擎,其组织结构如图2所示。该组织结构主要包括消息分发层、渠道控制层、渠道层和用户层。消息分发层实现消息的统一汇聚存储、消息状态检测、不同渠道分發;渠道控制层实现不同渠道的消息存储、消息状态同步定时及消息推送;渠道层实现消息向5种不同渠道的推送任务和回调返回消息发送结果状态;用户层主要包括教师、学生、管理人员、校外其他人员等4类用户,并支持建立灵活多维度、多层次的个人及部门对象标签。

从组织结构图可以看出,对于RabbitMQ而言,消息分发程序是生产者,负责把消息存入不同渠道的消息队列。渠道推送程序是消费者,负责从消息队列中获取消息。消息能否成功送达,由数据库间的消息状态定时检测和同步机制进行保障。一个完整的消息收发传送过程步骤如下:

(1)第三方业务系统通过调用消息分发层API接口,将消息发送至消息分发层的消息分发程序。

(2)消息分发程序对消息任务进行发送权限、资源配置、内容安全等核验,之后将消息写入数据库中,并将消息记录初始状态deliverstatus置为0,然后发送Confirm给RabbitMQ。

(3)各渠道推送程序分别从RabbitMQ拉取对应的渠道消息。

(4)各渠道推送程序将获取的消息写入对应渠道的数据库,并将消息推送至渠道层对应的渠道,同时消息状态deliverstatus置为0。

(5)各渠道将消息发送至用户,并将消息送达状态回调至渠道控制层的消息状态回调处理器。不同渠道回调机制不同,处理器则根据消息的唯一标识和用户身份等信息判断对应的消息内容项,并将送达状态deliverstatus置为1。

(6)渠道控制层负责对各渠道消息发送状态进行管理,不同渠道的消息数据分别独立存储,由消息状态同步定时任务将数据汇总并同步至消息分发层的核心数据库,将消息状态deliverstatus更新为1。

(7)在规定的时间窗口内,若消息送达状态deliverstatus未更新为1,则该消息被视为异常消息,启动消息状态检测定时任务,将异常消息从数据库中拉取,并触发消息重发机制,采用一定策略尝试对消息多次重发。若尝试重发消息成功送达,则停止重发机制。若未成功,则累计消息重发次数标识,达到一定次数,停止发送并将消息标记为“发送失败”,结束发送。

3.实现多渠道、全终端消息发送管理

统一消息发送中心支持与短信网关、微信企业号(紫荆e站办事大厅)、邮件系统、校园APP(微哨)、QQ公众号等消息推送的无缝对接,让学校各业务系统及管理人员都能够通过统一消息发送中心向各类用户对象发送多种形式(文字、图文、验证码、地址链接等)和5种渠道的校园消息,实现校园消息发送的多样化、多渠道和全终端触达。图3为校园消息发送的多渠道选择界面。

消息发送管理覆盖PC端和移动端的全终端管理模式,支持Web端、微信端(微信企业号)、APP端(微哨)、移动H5等多种方式,满足随时随地、移动便捷的消息发送工作需求,从而摆脱传统消息发送管理对PC端的依赖和限制。图4为消息发送的移动端管理界面。

4.实现集约化短信智能发送模式

随着智慧校园消息发送的统一集中化管理,各种“消息孤岛”不断融合并逐渐形成汇聚的“大消息池”。而统一消息发送中心也承载着越来越多的各类业务消息推送任务,特别是短信消息发送量也随之骤增。为了更好地优化资源分配,减少各自为政和短信泛滥发送造成的通信资源浪费,统一消息发送中心以集约化管理为原则,采用“管理+技术”手段,即前期通过对第三方业务系统申请调用的消息发送业务流程进行干预、优化,再利用消息接口提供的智能发送模式,用两者相结合的机制,对各业务系统调用接口的短信发送进行资源优化与配置,避免“滥发送”现象,有效降低了短信通信成本。集约化的短信发送管理流程如图5所示。

5.构建安全便捷的消息发送审核机制

统一消息发送中心的消息发送审核采用基于服务的多层级审核机制,即自动审核和人工审核两种方式相结合。

自动审核:管理员可自定义各类非法消息的安全策略,使用和配置多种知识库,对不同需求下的敏感词进行自动拦截过滤,并追溯非法消息来源,保证消息发送的合法性和安全性。自动审核对消息内容的三层过滤如下:第一层检测过滤是否含有暴力、反动等恶意非法词汇;第二层检测过滤是否含有乱码等影响安全性的字符内容;第三层根据不良关键词拦截特征库,检测过滤含有不良内容特征的消息素材。

人工审核:可个性化定义和配置多层级的消息审核管理,对待发送的消息内容,在系统自动审核的同时,还可采用由若干层级消息审核员组成的审核机制,并且支持消息创建与消息审核的权限分离及多层级划分,确保整个审核流程过程清晰、分工明确、安全可控。

消息发送审核还支持移动终端微信企业号的消息待办提醒与审核功能,做到消息审核随时随地可查阅、可办理,极大提升了管理人员的办公办事效率。

6.设计集中汇聚、分类呈现的校园个人消息窗台

以统一消息发送平台为应用支撑,以微信企业号(紫荆e站办事大厅)为前端展示,通过融合对接校园各类业务系统、微信公众号及企业号直通车应用的消息接口通道,将校园各类消息服务进行整合与分类,形成一个集中统一、汇聚融合的校园“大消息池”,并实现面向个人点对点精准推送及分类呈现的校园“个人消息窗台”,如图6所示。“个人消息窗台”为学校师生呈现与个人直接相关和间接相关的各类校园消息,按紧急、重要程度可分为五大类:

第一类是待办提醒消息。该类消息呈现与个人直接相关且需要及时处理的各类重要待办事项,并可根据紧急程度优先置顶,主要包括OA公文待办、网上办事审核待办、教学事务待办、科研事务待办以及其它事务待办。

第二类是会议消息。该类消息呈现与个人直接相关且需要参加的各种会议,主要包括工作相关会议、学习相关会议的通知。

第三类是服务消息。该类消息呈现与个人工作、学习、生活等方面相关的服务类消息,主要包括财务报账通知、各类报修通知、各类缴费通知、体检预约通知等。

第四类是通知公告消息。该类消息是面向广大师生的校园公众消息,主要包括学校及各单位通知、学校及各单位要闻、学校公示、学术讲座等。

第五类是其他消息。即除前四类消息之外的校园其他消息。

通过建立校园个人消息窗台,可实现校园消息的集中汇聚、清晰分类、精准推送,满足学校师生对智慧校园消息服务的便捷查阅和高效处理等切实需要。

四、应用实践

智慧校园统一消息发送中心是华南农业大学智慧校园消息统一发送与集约化管理的综合服务平台,面向学校各单位及全体师生,在教学、科研、管理及生活方面提供消息服务,为提升办公、办事效率和服务质量起到重要支撑作用。平台自2018年底上线以来,为全校12个单位共23个业务系统提供了统一的消息接口调用及后台管理服务,累计发送各类短信消息达132.7万条、微信消息达46.5万条、邮件达10.3万封,实现了学校各类会议通知、待办提醒、报修报账、预约通知、短信验证码等消息服务的“一站式”管理、多渠道(短信、微信企业号、邮件、微哨APP、QQ公众号)推送、全终端(Web端、微信端、APP端、移动H5)发送管理,建设效果良好。

五、结语

随着智慧校园建设的不断深入推进,学校各部门、各业务系统、各媒介平台等产生的与师生相关的各种消息将呈几何态势增长,校园消息的“大数据时代”已经到来。构建一个规范化、集中化、一体化管控的消息发送管理中心,对于智慧校园的高效融合与高质量发展,显得极为重要。本文研究探讨了一种安全可靠、移动便捷和智能集约的智慧校园统一消息发送中心系统解决方案,从系统架构顶层设计、消息接口规范、可靠消息队列发送、多渠道全终端发送管理、集约智能发送模式、安全审核机制、个人消息窗台设计等多方面进行了阐述,为高校构建智慧校园统一消息发送的“一站式”服务中心提供参考借鉴。

智慧校园统一消息发送中心未来将进一步深入对接学校“大数据中心”,充分利用学校数据治理所取得的成效,获取更加准确、全面的用户特征和行为数据,通过运用智能用户标签、智能推荐等算法,全面构建更加智能化、便捷化、可拓展的消息智能推荐中台,实现校园消息和用户对象基于标签的智能匹配与自动推送,更好地服务于学校师生。

参考文献:

[1]杨树春,辛云飞,王义,等.基于微信企业号的高校移动平台设计与实现[J].华中科技大学学报(自然科学版),2016,44(S1):158-161.

[2]王兴建,陈平,田小萍.统一通信平臺在高校应用的研究与实现[J].中国教育信息化,2020(3):93-96.

[3]郭倩,刘宏磊,张亚娟,等.基于B/S的高校PaaS平台统一消息协作系统设计与实现[J].中国教育信息化,2019(11):82-85.

[4]刘波,杨娟.基于微服务的智慧校园消息中心构建研究[J].河北软件职业技术学院学报,2018,20(3):1-4.

[5]吴炜鑫,王宇,王兴伟.基于AMQP的校园消息总线系统的设计与实现[J].通信学报,2013,34(S2):180-183.

(编辑:王晓明)