基于轨道交通的个性化信息推送系统

2021-10-31 12:06袁永恒
铁路通信信号工程技术 2021年10期
关键词:服务端客户端轨道交通

袁永恒

(北京全路通信信号研究设计院集团有限公司,北京 100070)

随着社会经济的发展,城市人口迅速增加,人们对于生活质量的要求逐渐增高,对出行的舒适性与便利性更加注重。城市与城际轨道交通作为目前重要的出行方式,受到了人们的欢迎,也极大地满足了市民的日常生活需求。

近几年互联网信息技术快速发展与不断创新,信息技术也逐渐渗透到日常生活的方方面面,使平时的生活方式发生了根本性的改变。伴随着社会互联网的全面覆盖,移动互联网的全面普及,信息技术也在深刻地影响着轨道交通的发展。结合互联网信息技术的轨道交通智能化系统不仅能够提高列车的运营效率与安全,更能提升人们所乘坐的轨道交通工具的舒适性与安全性;无论在日常的城市出行亦或城际出行,信息技术都在为轨道交通行业持续服务,提升其发展速度与创新,并发挥着不可替代的作用。

1 推送技术概述

随着近几年移动互联网不断普及,信息推送技术也逐渐发展并成熟,在各大软件应用中的使用率也越来越高。消息推送主动地将消息传送给目标客户端,可以节省目标用户在网络上漫无目的地浏览。推送技术根据用户需求,有针对性地将用户感兴趣的信息推送至用户的客户端中。该项技术,广泛应用于各大常用应用与各种场景,如出行、娱乐、广告、景点、新媒体等。推送技术之所以会在短时间内获得快速发展,取决于其对用户要求低、及时性好、精准度高以及应用场景广泛等优点。

信息推送技术主要依靠后台服务器根据接收到的消息,经过一定的逻辑判断与计算,将服务器中的信息主动推送到前台用户,让用户感知。用户除了预订此项技术服务外,无需再进行任何操作。信息推送技术的应用主要是为了提升用户的使用体验,避免用户不断的无效操作。例如系统软件更新通知,功能变化通知等。

信息推送系统的实现主要包含以下两个方面。

1)Web层消息推送

Web层可使用Socket接口进行全双工的通信服务,超文本传输协议(Hyper Text Transfer Protocol,HTTP)的简单轮询、长轮询、http流或Html5 WebSocket等。

2)服务端的消息分发

服务端的设置需搭建起与Web层配套的消息传输通道,再配合Web的双工通信,确定传输目标,实现精准消息发送以及群组分发。

目前信息推送的方式主要有以下几种。

邮件式推送:通过发送邮件的方式,将信息传递给订阅某种特定消息类型的用户群体与个人。

网页推送:在特定的网站页面中,给感兴趣的用户提供消息服务。

专用推送:在某种特定环境下,通过搭建点对点通信的网络环境,发送特定信息到指定用户终端。

移动端推送:通过搭建推送服务端,根据用户数据与信息,向手机、平板等可移动设备发送用户感兴趣的信息。

2 出行场景应用分析

在乘坐轨道交通工具时,会产出如用户基本信息、用户购票信息等数据。基于各种用户数据,通过信息推送系统搭建起的服务端可实现多个功能,如用户进站检票通知、列车发车通知、线路故障推送、终点站天气信息推送、站台限流通知等。

系统通过获取后台用户数据,在列车运行过程中,实时获取从轨道交通运营公司传输的各项数据,并将这些数据进行大量的计算与比对。当某个数据参数触发特定的事件时,便将此类事件的详细信息通过推送系统推送至用户终端,让特定用户提前感知信息,并做好提前准备,实现个性化推送服务。如在前往目的地的过程中,某一条线路出现故障,推送系统获取到警报信息后,将警报信息发送至这一条线路上的所有乘客,使其提前感知。

3 推送系统技术选型

系统主要采用目前常用的B/S架构来搭建服务端与客户端。数据库采用MySQL;客户端则采用Android手机与IOS手机作为客户端,在开发过程中能很好的集成匹配推送相关组件,提高开发效率。

推送功能则采用基于WebSocket全双工通信的工具进行搭建,可实现精准推送、用户分群推送、自定义消息、富媒体以及数据统计。WebSocket在建立起双工通信后,服务端能够实时向客户端发送自定义数据,客户端能够实时接收与处理,不用主动刷新或轮询,只需被动接收并显示即可。

服务端系统主要由Spring MVC、MyBatis、Spring 3个开源框架搭建而成,即SSM框架。SSM框架因其优秀的可维护性和复用性,已成为当前多数Web应用的首要选择。考虑到个性化信息推送系统需要高稳定性与较好的可移植性,因此系统后台服务开发框架选择SSM框架。数据库则采用MySQL,服务端发布环境为Linux。框架结构如图1所示。

图1 服务端框架Fig.1 Server framework

客户端界面主要采用VUE.js框架来开发,Vue.js是一个轻量级的前端MVVM框架,具有高性能、灵活性强的特点。此框架采用了一种虚拟DOM内部机制,极大减少前端系统的开发时间、降低研发人员的功能设计难度。客户端框架结构如图2所示。

图2 客户端框架Fig.2 Client framework

4 系统功能

基于轨道交通的个性化信息推送系统基本开发功能主要包括用户管理功能、智能信息推送功能、消息中心存储、历史行程查看等。

考虑到乘客买票与乘坐过程会出现的情况,系统完成消息内容筛选、推送目标自动选择等功能设计,并在数据库建表时考虑到用户习惯,建立消息中心存放历史消息内容,方便用户回溯历史消息与记录。

系统在业务层(Service)中将推送所做的工具类进行集成,方便在特定条件下触发相对应功能。其中工具类在调用Push接口时,可设置发送目标群体别称(在本系统中为用户号),可设置目标群体的标签组合(在本系统中为同一列车号)以及可选的推送目标平台等。推送信息在发送过程中可直接存储至数据库的消息中心列表中。

通过前端框架开发出的移动客户端,并在客户端中设置推送相关的关键参数值,如AppKey,TargetAlias,targetTag等,使客户端具有唯一确定的接收推送信息的标志符,再结合用户的票务信息与GPS地理位置信息,实现列车进站信息提醒、检票通知、列车发车通知、线路故障通知、天气信息提醒等。在后台系统获取数据信息,并达到推送出发条件时,推送工具便将信息实时传递至用户,并弹出进行提示,效果如图3所示。

图3 客户端推送效果Fig.3 Client push effect

5 总结

采用基于WebSocket的实时通信技术,并结合基于SSM框架开发的服务端与基于Vue.js开发的客户端,构建出一套基于轨道交通的个性化信息推送系统。此系统经过多方面测试,具有效应速度快、鲁棒性高、性能稳定的特点。

猜你喜欢
服务端客户端轨道交通
你的手机安装了多少个客户端
“人民网+客户端”推出数据新闻
——稳就业、惠民生,“数”读十年成绩单
城市轨道交通投融资模式分析
城市轨道交通投融资模式分析
轨道交通信号系统无线传输应用
轨道交通快慢车越行问题研究
轨道交通快慢车越行问题研究
多人联机对战游戏的设计与实现
基于三层结构下机房管理系统的实现分析
基于三层结构下机房管理系统的实现分析