基于浏览器的多客户端之间的消息互通方法
【专利摘要】本发明属于基于浏览器的多客户端通信方法,尤其是基于浏览器的多客户之间的消息互通方法,其包括登陆流程步骤及客户端消息互通流程,通过本解决方案使得在基于浏览器的多客户端之间的消息互通时,用户可以接收到服务端推送的消息。用户不必关心它是在线发送的还是离线接收的,同时通过消息格式的配置提供消息的多种呈现方式,这样提高了消息互通时用户体验。
【专利说明】基于浏览器的多客户端之间的消息互通方法
【技术领域】
[0001]本发明属于基于浏览器的多客户端通信方法,尤其是基于浏览器的多客户之间的消息互通方法。
【背景技术】
[0002]基于浏览器的消息推送使用的是Websocket协议,它实现了浏览器与服务器全双工通信(full-duplex)。但是,这种通信方式是基于用户必须在线的。如果用户离线将无法收到服务器推送的消息。
【发明内容】
[0003]为解决以上问题,本发明提供一种使得在基于浏览器的多客户端之间的消息互通时,用户可以接收到服务端推送的消息的基于浏览器的多客户端之间的消息互通方法。
[0004]为解决以上发明目的,本发明提供以下技术方案:基于浏览器的多客户端之间的消息互通方法,其特征在于:其包括登陆流程步骤及客户端消息互通流程,所述登陆流程步骤如下:
[0005]步骤al)、用户输入账号、密码登陆客户端,向服务端提交登陆信息;
[0006]步骤a2)、服务端接收到用户的登陆信息,对登陆信息进行验证,验证成功,允许用户登陆客户端;验证失败,返回失败信息;
[0007]步骤a3)、用户成功登陆客户端后,向服务端发起建立连接的请求,服务端对请求进行检查,如果是合法的请求头,则发送握手信息到客户端;步骤a4)、同时为客户端创建一个socket用来通信;
[0008]步骤a5)、客户端通过调用服务端端口读取离线消息类型数据;
[0009]步骤a6)、根据离线消息类型数据从数据库获取相应的需要显示的消息信息,产生消息数据;
[0010]步骤a7)、客户端对服务端返回的消息数据进行解析:
[0011]所述客户端消息互通流程步骤如下:
[0012]步骤bl)、发送数据的客户端和服务端握手成功并建立通道,同时发送包含消息类型、消息内容的数据到服务器;
[0013]步骤b2)、服务端接收到发送数据的客户端发送的数据,首先会将数据保存到数据库,再根据发送数据的客户端发送的数据从数据库中获取要显示的消息信息,产生消息数;
[0014]步骤b3)、显示消息的客户端处于离线状态,服务端会将发送数据的客户端发送的数据更新为离线状态;
[0015]步骤b4)、显示消息的客户端处于在线状态,服务端会主动将消息数据推送到显示消息的客户端;
[0016]步骤b5)、显示消息的客户端对服务端推送消息数据进行解析。
[0017]本发明在在线接收消息的基础上,提供接收离线消息的功能,为消息呈现提供表现方式的配置。在线消息和离线消息都是通过Websocket协议推送给用户,用户收到消息不必关心是离线消息还是在线消息。消息呈现的方式可以多种方式,并且能够灵活配置。
[0018]对比现有技术,本发明有益效果为:通过本解决方案使得在基于浏览器的多客户端之间的消息互通时,用户可以接收到服务端推送的消息。用户不必关心它是在线发送的还是离线接收的,同时通过消息格式的配置提供消息的多种呈现方式,这样提高了消息互通时用户体验。
【专利附图】
【附图说明】
[0019]图1是本发明实施例基于浏览器的多客户端之间的消息互通方法流程图。
【具体实施方式】
[0020]参考图1,本发明实施例基于浏览器的多客户端之间的消息互通方法,其特征在于:其包括登陆流程步骤及客户端消息互通流程,所述登陆流程步骤如下:
[0021]步骤al)、用户输入账号、密码登陆客户端,向服务端提交登陆信息;
[0022]步骤a2)、服务端接收到用户的登陆信息,对登陆信息进行验证,验证成功,允许用户登陆客户端;验证失败,返回失败信息;
[0023]步骤a3)、用户成功登陆客户端后,向服务端发起建立连接的请求,服务端对请求进行检查,如果是合法的请求头,则发送握手信息到客户端;步骤a4)、同时为客户端创建一个socket用来通信;
[0024]步骤a5)、客户端通过调用服务端端口读取离线消息类型数据,格式如下:
[0025]{"Type": "type", "Content"..”...",State: ” 离线,,}
[0026]步骤a6)、根据离线消息类型数据从数据库获取相应的需要显示的消息信息,产生消息数据,格式如下:
[0027]{PageID: {pagel: "main, html", page2: "list, html"},Title:"提不",
[0028]Content: 〃 测试数据Durat1n: "6000",Times: "3"}
[0029]步骤a7)、客户端对服务端返回的消息数据进行解析:
[0030]PagelD:判断消息在那些页面显示;
[0031]Title:显示消息的标题;
[0032]Content:显示消息内容;
[0033]Durat1n:设置消息持续时间;
[0034]Times:可以设置消息窗口闪烁次数。
[0035]所述客户端消息互通流程步骤如下:
[0036]步骤bl)、发送数据的客户端和服务端握手成功并建立通道,完成系统中的某项业务,同时发送包含消息类型、消息内容的数据到服务器;发送数据的客户端发送数据格式如下:
[0037]{"Type": "type", "Content": "..."}
[0038]步骤b2)、服务端接收到发送数据的客户端发送的数据,首先会将数据保存到数据库,再根据发送数据的客户端发送的数据从数据库中获取要显示的消息信息,产生消息数据,消息数据格式如下:
[0039]{PageID: {page1: "main, html", page2: "list, html"} ,Title:"提不",
[0040]Content: 〃 测试数据...",Durat1n: "6000",Times: "3"}
[0041]步骤b3)、显示消息的客户端处于离线状态,服务端会将发送数据的客户端发送的数据更新为离线状态;
[0042]步骤b4)、显示消息的客户端处于在线状态,服务端会主动将消息数据推送到显示消息的客户端;
[0043]步骤b5)、显示消息的客户端对服务端推送消息数据进行解析。
[0044]PageID:判断消息在那些页面显示;
[0045]Title:显示消息的标题;
[0046]Content:显示消息内容;
[0047]Durat1n:设置消息持续时间;
[0048]Times:可以设置消息窗口闪烁次数。
【权利要求】
1.基于浏览器的多客户端之间的消息互通方法,其特征在于:其包括登陆流程步骤及客户端消息互通流程,所述登陆流程步骤如下: 步骤al)、用户输入账号、密码登陆客户端,向服务端提交登陆信息; 步骤a2)、服务端接收到用户的登陆信息,对登陆信息进行验证,验证成功,允许用户登陆客户端;验证失败,返回失败信息; 步骤a3)、用户成功登陆客户端后,向服务端发起建立连接的请求,服务端对请求进行检查,如果是合法的请求头,则发送握手信息到客户端;步骤a4)、同时为客户端创建一个socket用来通信; 步骤a5)、客户端通过调用服务端端口读取离线消息类型数据; 步骤a6)、根据离线消息类型数据从数据库获取相应的需要显示的消息信息,产生消息数据; 步骤a7)、客户端对服务端返回的消息数据进行解析: 所述客户端消息互通流程步骤如下: 步骤bl)、发送数据的客户端和服务端握手成功并建立通道,同时发送包含消息类型、消息内容的数据到服务器; 步骤b2)、服务端接收到发送数据的客户端发送的数据,首先会将数据保存到数据库,再根据发送数据的客户端发送的数据从数据库中获取要显示的消息信息,产生消息数;步骤b3)、显示消息的客户端处于离线状态,服务端会将发送数据的客户端发送的数据更新为离线状态; 步骤b4)、显示消息的客户端处于在线状态,服务端会主动将消息数据推送到显示消息的客户端; 步骤b5)、显示消息的客户端对服务端推送消息数据进行解析。
【文档编号】H04L29/06GK104270335SQ201410298659
【公开日】2015年1月7日 申请日期:2014年6月26日 优先权日:2014年6月26日
【发明者】王征平, 黄平, 韩腾飞, 陈杰 申请人:湖北安标信息技术有限公司