原文地址:http://www.jt808.com/?p=1263

在开发部标监控平台的时候,我们要及时的将部标终端报警推送到web界面上,以弹窗的形式提供给用户显示,要将报警显示在界面上,部标808协议文档中规定的报警类型,如下图所示:

 18     报警标准位定义

定义

处理说明

0

1:紧急报警,触动报警开关后触发

收到应答后清零

1

1:超速报警

标志维持至报警条件解除

2

1: 疲劳驾驶

标志维持至报警条件解除

3

1:预警

收到应答后清零

4

1:GNSS模块发生故障

标志维持至报警条件解除

5

1:GNSS天线未接或被剪断

标志维持至报警条件解除

6

1:GNSS天线短路

标志维持至报警条件解除

7

1:终端主电源欠压

标志维持至报警条件解除

8

1:终端主电源掉电

标志维持至报警条件解除

9

1:终端LCD或显示器故障

标志维持至报警条件解除

10

1:TTS模块故障

标志维持至报警条件解除

11

1:摄像头故障

标志维持至报警条件解除

从部标808协议文档中对于报警的定义可以看出,一个定位包要承载多个报警,具体对应到数据库记录,一条定位记录要对应多条报警记录,在GPS部标监控平台车辆数到达一定的规模的时候,特别是很多平台的终端在安装的过程中接线松动,造成频繁误报,报警记录就会急剧的增多,如果采用轮询的方式,客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接。优点:后端程序编写比较容易。 缺点:请求中有大半是无用,浪费带宽和服务器资源。 只能适于小型应用。车辆规模达到一定数量的时候,数据库压力比较大,报警查询性能下降,难以及时的将报警显示在客户端的页面上。

而WebSocket是HTML5开始提供的一种浏览器与服务器间进行全双工通讯的网络技术。依靠这种技术可以实现客户端和服务器端的长连接,双向实时通信。基于事件驱动能够实现真正意义上的推送功能。在客户端与服务器端交互的web应用中,websocket最适合在高频率低延迟的场景下,进行事件的交换和处理。所以特别适合车辆终端报警信息低延迟,短消息高频率的推送场景。

各种浏览器对websocket的支持如下图所示:

具体技术的实现,可以采用spring框架,spring4.0以后加入了对websocket技术的支持,而SpringMVC框架可以完美的支持websocket, 只需要按照springmvc要求的规范开发。

 mavenpom.xml中加入websocket所依赖的jar

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-core</artifactId>

  <version>2.4.0</version>

</dependency>

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-databind</artifactId>

  <version>2.4.0</version>

</dependency>

<dependency>

   <groupId>org.springframework</groupId>

   <artifactId>spring-websocket</artifactId>//version须和spring mvc的version保持一致,否则会出现问题

   <version>4.0.5.RELEASE</version>

</dependency>

<dependency>

   <groupId>org.springframework</groupId>

   <artifactId>spring-messaging</artifactId>

   <version>4.0.5.RELEASE</version>

</dependency>

具体实现方式如下:

1)实现WebSocketHandler接口

WebSocketHandler接口主要是用来与websocket客户端来进行交互的接口,Spring WebSocket提供了一些实现类,可以根据自己的需求进行选择与重写。

2)新建一个自己的HandShakeInterceptor类

HandShakeInterceptor是websocket握手拦截器,用于拦截websocket初始化连接的请求 。

3)配置spring.xml文件

基于Websocket+SpringMVC4推送部标Jt808终端报警(转)的更多相关文章

  1. node.js Websocket消息推送---GoEasy

    Goeasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送!个人感觉goeasy推送更稳定,推送 速度快,代码简单易懂上手快 浏览器兼容性:GoEasy推送 支持websocket ...

  2. C(++) Websocket消息推送---GoEasy

    Goeasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送!个人感觉goeasy推送更稳定,推送 速度快,代码简单易懂上手快 浏览器兼容性:GoEasy推送 支持websocket ...

  3. Android 高仿微信实时聊天 基于百度云推送

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38799363 ,本文出自:[张鸿洋的博客] 一直在仿微信界面,今天终于有幸利用百 ...

  4. swoole websocket服务推送

    用过workerman, 两个字"好用",对于swoole最近有时间也研究研究 swoole的websocket 很好实现 如官网 https://wiki.swoole.com/ ...

  5. 【WebSocket】WebSocket消息推送

    准备使用WebSocket实现Java与Vue或者安卓间的实时通信,实现私密聊天.群聊.查询下资料备用. WebSocket客户端 websocket允许通过JavaScript建立与远程服务器的连接 ...

  6. HTML5学习总结-08 WebSocket 服务器推送

    一 WebSocket 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展 ...

  7. WebSocket消息推送

    WebSocket协议是基于TCP的一种新的网络协议,应用层,是TCP/IP协议的子集. 它实现了浏览器与服务器全双工(full-duplex)通信,客户端和服务器都可以向对方主动发送和接收数据.在J ...

  8. 基于Java Mina框架的部标jt808服务器设计和开发

    在开发部标GPS平台中,部标jt808GPS服务器是系统的核心关键,决定了部标平台的稳定性和行那个.Linux服务器是首选,为了跨平台,开发语言选择Java自不待言.需要购买jt808GPS服务器源码 ...

  9. HTML5 WebSocket 实时推送信息测试demo

    测试一下HTML5的websocket功能,实现了客户端→服务器实时推送信息到客户端,包括推送图片: websocket实现MessageInbound类 onTextMessage()/onBina ...

随机推荐

  1. Linux_Windows7使用VMare安装Centos6.5并使用Xshell连接Centos

      本文章主要是记录虚拟机安装Centos,并在windows使用xshell执行命令的过程,供自己和需要之人学习和使用.    难点主要在于windows和centos网络的设置,实现window连 ...

  2. 分享一个基于 Node.js 的 Web 开发框架 - Nokitjs

    简介 Nokit 是一个简单易用的基于 Nodejs 的 Web 开发框架,默认提供了 MVC / NSP / RESTful 等支持,并提供对应项目模板.管理工具. 资源 GitHub https: ...

  3. tornado框架介绍

    一.安装tornado 手动安装: 下载 tornado-1.2.1.tar.gz tar xvzf tornado-1.2.1.tar.gz cd tornado-1.2.1 python setu ...

  4. 给 Easyui Datagrid 扩展方法

    $.extend($.fn.datagrid.methods, { /** * 更新 非编辑列值 * @param rowIndex : 行索引 * @param cellName : 列索引或列名 ...

  5. 【论文笔记】Leveraging Datasets with Varying Annotations for Face Alignment via Deep Regression Network

    參考文献: Zhang J, Kan M, Shan S, et al. Leveraging Datasets With Varying Annotations for Face Alignment ...

  6. 图结构练习——BFS——从起始点到目标点的最短步数(邻接表+BFS)

    图练习-BFS-从起点到目标点的最短步数 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 在古老的魔兽传说中.有两个军团,一个 ...

  7. 全民Scheme(2):来自星星的你

    一门编程语言,假设不能对你思考编程的方式产生影响.就不值得去学习.--  Alan Perlis (define rember*   (lambda (a list)     (cond       ...

  8. linux中的硬链接和软链接是什么

    Linux 文件系统最重要的特点之一是它的文件链接.链接是对文件的引用,这样您可以让文件在文件系统中多处被看到.不过,在 Linux 中,链接可以如同原始文件一样来对待.链接可以与普通的文件一样被执行 ...

  9. ASP.NET HTTP404错误怎么办

    如图所示,HTTP404错误. 这是由于没有安装ASP.NET导致的.我们在控制面板->打开或关闭windows功能->Internet信息服务->万维网服务->应用程序开发功 ...

  10. UISearchBar cancel 按钮设置文本

    主要是在 UISearchDisplayDelegate中更改: - (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayCont ...