基于基站定位的无固定对象短信预警系统设计与实现
2024-11-22申红宇
关键词:短信预警;基站定位;手机信令;动态预警
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2024)26-0043-04开放科学(资源服务)标识码(OSID) :
0 引言
气象灾害监测预警和信息发布是防灾减灾的关键环节,对减轻灾害损失至关重要[1]。如何有效应对突发事件,最大限度地减少损失,是日常防范面临的关键问题[2]。应急信息预警是防灾减灾的关键环节,能够帮助人们及时了解信息并有效避险。
现有研究多采用维护固定对象数据库的方式进行预警信息发布,难以动态覆盖流动人群[3-7]。如何精准捕获流动人群,进行有针对性的预警信息发布,对提高防灾救灾能力至关重要。手机具有普及率高、便携性强等优势,能够将预警信息第一时间传递给用户[8]。本文借鉴小区短信发送[9]、电子围栏[10]和实时流技术[11],提出一种基于基站定位的无固定对象短信预警系统。该系统能够捕获预警区域内动态变化的手机用户,实现精准的预警信息发布,并对发布结果进行统计分析,为灾害预警和应急响应提供数据支持。
1 系统架构设计
基于基站定位的无固定对象短信预警系统采用预警信息采集子系统、预警信息处理子系统、预警信息分发子系统三层系统结构[12],在预警信息采集子系统中扩展增加通过API接口接入方式,在预警信息处理子系统中增加动态信令号码筛选过程,在预警信息分发子系统中增加统计分析功能,以使系统更具扩展性、动态预警对象筛选更精准、系统功能更完善。
1.1 预警信息采集子系统
预警信息采集子系统提供预警发布信息的采集功能,包括预警信息录入子系统和预警信息接口子系统。
1.1.1 预警信息录入子系统
预警信息录入子系统向预警任务发布者提供人机交互界面,满足发布者制作个性化预警信息的需求,支持自然灾害、公共卫生事件、社会安全事件等类型的预警信息。预警信息录入子系统功能包括录入预警任务名称、选择预警任务起始时间、选择预警信息模板、提供手绘地图界面圈定预警区域等。
1.1.2 预警信息采集接口子系统
预警信息采集接口子系统通过提供标准接口满足外部应用系统的预警信息制作需求。预警信息采集接口子系统一方面面向气象、山洪等自然灾害预测系统和交通、防疫等社会治理应用系统提供系统级别的预警采集接口,另一方面将接收到的预警信息传递给预警信息处理子系统进行处理。该子系统提供的接口功能包括:接入接口功能、信息解析入库功能、预警任务生命周期管理功能等。
1.2 预警信息处理子系统
预警信息处理子系统接收来自预警信息采集子系统的预警任务信息,首先结合预警信息模板和预警参数匹配组合成完整的预警信息,其次预警信息质控子系统中配置的预警信息质量控制规则,对预警信息进行合理性检查和敏感词过滤,对于不满足要求的预警信息进行告警退回,对于合理的预警信息进行预警任务的创建,然后结合预警区域地理经纬度范围和运营商基站定位坐标信息,对接运营商信令处理系统构建基站小区电子围栏,订阅电子围栏手机信令处理系统,根据电子围栏触发规则,如驻留、进入等行为,接收信令处理系统推送的动态变化的信令数据,最后结合运营商大数据用户标签系统,精准选择特定标签特征的手机用户作为预警发布对象,传递至预警信息分发子系统进行下一步处理。
预警信息处理子系统包括预警信息发布模板子系统、预警信息质控子系统和精准发布支持子系统。预警信息发布模板子系统提供预警信息模板制作、模板分类管理、模板内容编辑、模板与内容关联匹配等功能。预警信息质控子系统提供敏感词库管理、敏感词过滤、反季节检查、合理性检查等功能。精准发布支持子系统提供地理空间分析、区域基站坐标匹配、用户标签分类、目标人群筛选等功能。
1.3 预警信息分发子系统
经过预警信息采集子系统和预警信息处理子系统处理后,预警任务具有完整的预警信息和筛选出的预警对象,预警信息分发子系统对接运营商短信发送网关,将预警信息发送至预警对象,实现短信的推送发布,然后接收运营商短信推送发布结果信息数据,在发布结果统计分析子系统中进行分析统计,最终以图表形式展现预警信息发布成果,为预警任务发布者提供可视化的预警任务执行情况。
预警信息分发子系统由预警信息发布子系统和发布结果统计分析子系统组成。预警短信发布子系统提供短信平台对接管理、三大运营商接口对接、发布任务管理等功能。发布结果统计分析子系统提供预警短信发送结果接收、短信发送结果数据分析、发布日志数据收集、图表形式展现数据统计等功能。
2 业务架构设计
基于基站定位的无固定对象短信预警系统业务架构从下往上依次划分为资源层、数据层、组件层、系统层和应用层,从资源、数据、组件和系统模块进行整合以支撑应用层系统功能的实现。整体架构的分层设计,支持在各个层级进行动态扩展,以满足系统业务的发展,架构的扩展性和适应性能够提升系统应用的及时性、灵活性和准确性。
2.1 应用层
应用层面向发布者提供预警任务发布功能,包括预警短消息发送平台采集前端、突发事件预警信息发布系统和其他应急系统等。
2.2 系统层
系统层包括综合预警信息采集子系统、预警信息处理子系统、预警信息分发子系统,其中预警信息采集子系统划分为信息录入子系统、信息采集接口子系统,预警信息处理子系统划分为预警信息发布模板子系统、预警信息质控子系统和精准发布支持子系统,预警信息分发子系统划分为预警信息发布子系统和发布结果统计分析子系统。
2.3 组件层
组件层提供统一认证组件、行政区划组织机构组件、消息队列组件、文件存取组件、链路追踪组件和可视化分析展示组件等,组件层为系统提供封装的可复用的能力模块,可快速集成为系统提供用户统一认证能力、行政区划组织机构获取能力、消息队列发布订阅能力、文件快速存取能力、跨系统调用跟踪能力和可视化设计展示能力。
2.4 数据层
数据层为系统提供结构化数据存储能力、非结构化和缓存数据存储能力以及文件数据存储能力,采用MySQL数据库集群、Redis缓存数据库集群以及分布式文件服务。
2.5 资源层
资源层提供系统运行所需的计算、存储、网络资源,支持从云虚拟化资源池获取,满足实现项目上云的灵活性。
3 业务流程设计
基于基站定位的无固定对象短信预警系统业务流程以预警信息采集层预警任务的发起为起点,经过预警信息处理层对预警信息模板处理、预警信息质控管控和精准发布过滤筛选后,进入预警信息发布层,通过预警信息发送和反馈结果统计到最后预警任务结束的完整业务流程。
3.1 预警任务接收
预警信息采集子系统通过预警信息录入子系统录入界面进行手工录入和调用提供给第三方系统的预警信息采集接口子系统的API接口两种方式接收预警任务,触发预警任务的开始。
3.2 预警信息质控
在接收到预警信息采集子系统的预警任务后,预警信息质控子系统对预警信息模板和预警信息参数匹配组合成的完整预警短信进行质控处理,如敏感词过滤、反季节检查、合理性检查等,以保证预警短信的合理合规。
3.3 预警对象动态捕捉
接收预警任务后,预警信息处理子系统结合预警任务经纬度地理区域范围与运营商基站坐标定位,筛选出位于预警区域范围内的基站,以筛选出的基站划定为电子围栏,依据手机信令与电子围栏中基站之间的动态连接交互动作,结合进入、驻留、离开等触发规则,筛选 出电子围栏内的信令手机号码用户作为动态预警初选对象,并将动态预警初选对象推送给下一业务系统进行预警对象的精准靶向筛选。
3.4 预警对象筛选
动态预警初选对象捕捉后,结合运营商大数据用户人群标签体系及预警发布场景需求,选择特定标签的用户群体作为预警发布对象,如依据用户年龄、性别、职业等特征标签信息,选择特定年龄段、固定性别和特定职业的用户作为预警发布对象,以实现对预警对象的精准靶向筛选。
3.5 预警任务发布
在预警信息分发子系统中,基于动态预警初选对象捕捉和精准靶向筛选后确定的预警发布对象与经过质控处理后的完整预警信息,对接运营商短信网关,将预警信息发送至预警发布对象手机,实现预警短信的推送发布。
3.6 预警结果统计分析
预警信息分发子系统正式开启分发后,发布结果统计分析子系统接收运营商短信发送结果反馈信息,包括发送成功或失败的状态与预警发布对象年龄、性别、职业特征等数据,对预警发送结果进行综合统计分析,一方面通过图表的形式展现预警信息发布成果,便于发布者了解预警信息发送量、预警发布对象特征分布等信息;另一方面通过系统接口将预警信息发送数据信息反馈给预警发布者,为其后续的预警应对措施决策提供数据支撑。
4 系统实现与关键技术
4.1 系统实现技术
基于基站定位的无固定对象短信预警系统后端采用Java开发语言、Springboot后台开发框架,页面前端系统采用Vue开发框架,数据库使用MySQL关系型数据库、Redis缓存数据库,基站信令数据处理模块使用Storm实时数据处理框架和HBase数据存储,信令号码业务推送使用Kafka消息队列,业务号码发送推送使用RabbitMQ消息队列,各个子模块服务部署在服务器Linux环境运行。
4.2 关键技术
4.2.1 结合消息队列技术平缓发送速率
预警信息的发布有一定时限时段的要求,发送的对象有区域留存信令用户和新进入用户,在预警任务触发初阶段主要以留存用户为主,当留存用户对象群体数量比较庞大时,会超过三大运营商短信发送渠道发送速率限制,造成短信发送的批量失败问题;而在时段后期以新进入用户为主要发送目标,此阶段新入用户数量较少,因此在系统设计和实现过程中,结合消息队列削峰填谷的特性,实现在发布时段时限内平缓发送,在一定程度上达到降低发送拥堵造成的失败问题。
4.2.2 基于运营商短信发布系统实现短信发送
预警短信发布依赖于三大运营商短信发送网关来实现,由于对接移动、电信、联通的短信网关需要分别遵循移动CMPP3.0协议、联通SGIP1.2协议、电信SMGP3.0协议,造成系统复杂性高可靠性降低运维困难,因此系统设计直接对接三大运营商基于短信发送协议的短信发送系统进行预警短信发送,运营商短信技术成熟且稳定,其性能符合预警发布平台短信告警机制进行短信发送时及时、高效的基本要求[13]。
5 结束语
基于基站定位的无固定对象短信预警系统实时、动态监控预警区域手机用户人群流动,及时准确捕获动态变化的预警对象群体,通过群体特征筛选,及时、有效、精准发送预警信息,系统首先应用于山洪灾害预报预警领域[14],并且推广到高速公路气象团雾等自然灾害预警信息发布方向,发挥出有效的预警作用。