一种用于榨汁机系统的后台通信方法以及后台通信系统技术方案

技术编号:15395246 阅读:110 留言:0更新日期:2017-05-19 06:47
一种用于榨汁机系统的后台通信方法以及后台通信系统,方法包括:S1、检测客户端是否支持HTML5;S2、如果客户端支持HTML5,在服务器端创建WebSocket对象,与客户端建立通信会话,并通过该通信会话发送命令给客户端;客户端收到服务器端的命令后,通过请求WCF服务执行业务操作;S3、如果客户端不支持HTML5,客户端创建iframe,基于心跳包与服务器端建立通信并执行业务操作。本发明专利技术通过检测客户端是否支持HTML5可以两种方式实现通信,一种是在客户端不支持HTML5的情况下通过心跳包的方式使连接状态不断开,实现持久的通信会话,另一种是在客户端支持HTML5的情况下使用WebSocket,实现与服务器端全双工通信,且结合WCF技术,使得业务操作不再给通信连接本身产生压力。

Background communication method used for Juicer system and background communication system

A communication method for background Juicer system and backstage communication system, the method includes: S1, testing whether the client supports HTML5; S2, if the client supports HTML5, create a WebSocket object in the server, to establish a communication session with the client and to the client by sending the communication session command; the client receives the server command, by requesting the WCF service to perform operations; if the client does not support S3, HTML5, iframe to create client and server heartbeat packet to establish communication and execution of business operation based on. The present invention by detecting whether the client supports HTML5 communication can be realized in two ways, one is the client does not support the HTML5 case by the heartbeat packet connection state continuously, realize the communication session lasting, the other one is to use WebSocket in the client support HTML5, to achieve full duplex communication with the server end and, combined with WCF technology, makes the business operation no longer to the communication connection itself to generate pressure.

【技术实现步骤摘要】
一种用于榨汁机系统的后台通信方法以及后台通信系统
本专利技术涉及榨汁机领域,尤其涉及一种用于榨汁机系统的后台通信方法以及后台通信系统。
技术介绍
榨汁机是一种水果榨汁设备,以水果为原料,提供现场榨汁服务,一般部署在机场,火车站等人流量很大场所。榨汁机在工作过程中需要备料、故障处理、广告推送、系统更新、清洗,这此处理流程都基于服务器进行管理,此管理以榨汁机与服务器通信为基础。本系统就是为了解决服务器与榨汁机通信。一般的通信存在以下不足:服务器榨汁机管理平台架构为IIS通过HTTP协议为榨汁机客户端提供服务,而HTTP协议是一种无状态连接,在连接断开后服务器无法主动连接到客户端。所以现有技术存在缺陷,需要改进。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用于榨汁机系统的后台通信方法以及后台通信系统。本专利技术解决其技术问题所采用的技术方案是:构造一种用于榨汁机系统的后台通信方法,包括:S1、检测客户端是否支持HTML5;S2、如果客户端支持HTML5,在服务器端创建WebSocket对象,与客户端建立通信会话,并通过该通信会话发送命令给客户端;客户端收到服务器端的命令后,通过请求WCF服务执行业务操作;S3、如果客户端不支持HTML5,客户端创建iframe,基于心跳包与服务器端建立通信并执行业务操作。在本专利技术所述的用于榨汁机系统的后台通信方法中,所述步骤S2包括:S21、服务器端通过WebSockets类创建通信服务器;S22、客户端通过HubConnection()函数建立对通信服务器的连接并通过Invoke()函数加入通信服务器的通信会话;S23、通信服务器通过步骤S22中的通信会话主动向客户端发送命令;S24、服务器端的WCF组件/WCF服务器将一项功能打包成一个HTTP请求,客户端收到服务器的命令后,发送请求给WCF组件/WCF服务器,WCF组件/WCF服务器返回业务数据或者执行一项功能。在本专利技术所述的用于榨汁机系统的后台通信方法中,所述步骤S3包括:S31、客户端创建http请求函数,并在http请求函数中创建HttpWebRequest对象执行HTTP请求:S32、客户端创建Timer类,以一定的时间间隔向服务器端发出HTTP请求,通过返回值确定发出请求的客户端是否有需要执行的命令。在本专利技术所述的用于榨汁机系统的后台通信方法中,所述步骤S1中所述的检测客户端是否支持HTML5包括:客户端组件创建webbrowser控件,采用Javascript中的checkhHtml5()函数判断客户端是否支持HTML5。在本专利技术所述的用于榨汁机系统的后台通信方法中,所述步骤S2中所述的服务器端的命令由两个字段组成:第一个字段为业务内容,第二字段为对第一个字段的操作方式。本专利技术还公开了一种用于榨汁机系统的后台通信系统,包括客户端和服务器端,所述客户端包括:HTML5检测模块,用于检测客户端是否支持HTML5,如果支持HTML5,则触发第一通信模块工作,如果不支持HTML5,则触发第二通信模块工作;第一通信模块,用于与端创建WebSocket对象的服务器端建立通信会话,服务器端通过该通信会话发送命令给第一通信模块;第一通信模块收到服务器端的命令后,通过请求WCF服务执行业务操作;第二通信模块;用于创建iframe,基于心跳包与服务器端建立通信并执行业务操作。在本专利技术所述的用于榨汁机系统的后台通信系统中,所述服务器端包括通过WebSockets类创建的通信服务器和WCF组件/WCF服务器,WCF组件/WCF服务器用于将一项功能打包成一个HTTP请求;所述第一通信模块包括:通信单元,用于通过HubConnection()函数建立对通信服务器的连接并通过Invoke()函数加入通信服务器的通信会话;通信服务器通过该通信会话主动向通信单元发送命令;业务单元,在通信单元收到通信服务器的命令后,发送请求给WCF组件/WCF服务器,WCF组件/WCF服务器返回业务数据或者执行一项功能。在本专利技术所述的用于榨汁机系统的后台通信系统中,所述第二通信模块包括:请求单元:用于创建http请求函数,并在http请求函数中创建HttpWebRequest对象执行HTTP请求:定时单元:用于创建Timer类,以一定的时间间隔向服务器端发出HTTP请求,通过返回值确定发出请求的客户端是否有需要执行的命令。在本专利技术所述的用于榨汁机系统的后台通信系统中,所述的检测客户端是否支持HTML5包括:HTML5检测模块组件创建webbrowser控件,采用Javascript中的checkhHtml5()函数判断客户端是否支持HTML5。在本专利技术所述的用于榨汁机系统的后台通信系统中,所述的服务器端的命令由两个字段组成:第一个字段为业务内容,第二字段为对第一个字段的操作方式。实施本专利技术的用于榨汁机系统的后台通信方法以及后台通信系统,具有以下有益效果:本专利技术通过检测客户端是否支持HTML5可以两种方式实现通信,一种是在客户端不支持HTML5的情况下通过心跳包的方式使连接状态不断开,实现持久的通信会话,另一种是在客户端支持HTML5的情况下使用WebSocket,实现与服务器端全双工通信,且结合WCF技术,使得业务操作不再给通信连接本身产生压力。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术用于榨汁机系统的后台通信方法的流程图。具体实施方式为了对本专利技术的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本专利技术的具体实施方式。本专利技术适用于Windows、linux平台,本专利技术的用于榨汁机系统的后台通信方法包括:S1、检测客户端是否支持HTML5,如果支持HTML5,则执行步骤S2,如果不支持HTML5,则执行步骤S3;S2、在服务器端创建WebSocket对象,与客户端建立通信会话,并通过该通信会话发送命令给客户端;客户端收到服务器端的命令后,通过请求WCF服务执行业务操作;S3、客户端创建iframe,基于心跳包与服务器端建立通信并执行业务操作。优选的,所述步骤S2中所述的服务器端的命令由两个字段组成:第一个字段为业务内容,第二字段为对第一个字段的操作方式。因为当客户端数量很多,达到100W能上,服务器端与客户端的通信质量就有明显的下降,这个时候,服务器端与客户端的通信内容就是越少越有利于通信的速度、质量,在本方案中通过定义通信的命令格式形成一个标准,达到上面的要求,通信的命令以简短的“主+动”结构组成,例如"AdPlay",则表示要求客户端进行广告播放操作。其中,所述步骤S1中所述的检测客户端是否支持HTML5包括:客户端组件创建webbrowser控件(因为客户端的窗体各异,利用该控件可以实现在窗体中导航网页),采用Javascript中的checkhHtml5()函数判断客户端是否支持HTML5,例如具体实施例中JS代码为:其中,所述步骤S2包括:S21、服务器端通过WebSockets类创建通信服务器;例如,引用System.net.WebSockets,创建一个通信服务器:WebSocketwsServer=newWebSocket(“127.0.0.1”,805);本文档来自技高网...
一种用于榨汁机系统的后台通信方法以及后台通信系统

【技术保护点】
一种用于榨汁机系统的后台通信方法,其特征在于,包括:S1、检测客户端是否支持HTML5;S2、如果客户端支持HTML5,在服务器端创建WebSocket对象,与客户端建立通信会话,并通过该通信会话发送命令给客户端;客户端收到服务器端的命令后,通过请求WCF服务执行业务操作;S3、如果客户端不支持HTML5,客户端创建iframe,基于心跳包与服务器端建立通信并执行业务操作。

【技术特征摘要】
1.一种用于榨汁机系统的后台通信方法,其特征在于,包括:S1、检测客户端是否支持HTML5;S2、如果客户端支持HTML5,在服务器端创建WebSocket对象,与客户端建立通信会话,并通过该通信会话发送命令给客户端;客户端收到服务器端的命令后,通过请求WCF服务执行业务操作;S3、如果客户端不支持HTML5,客户端创建iframe,基于心跳包与服务器端建立通信并执行业务操作。2.根据权利要求1所述的用于榨汁机系统的后台通信方法,其特征在于,所述步骤S2包括:S21、服务器端通过WebSockets类创建通信服务器;S22、客户端通过HubConnection()函数建立对通信服务器的连接并通过Invoke()函数加入通信服务器的通信会话;S23、通信服务器通过步骤S22中的通信会话主动向客户端发送命令;S24、服务器端的WCF组件/WCF服务器将一项功能打包成一个HTTP请求,客户端收到服务器的命令后,发送请求给WCF组件/WCF服务器,WCF组件/WCF服务器返回业务数据给客户端或者执行一项功能。3.根据权利要求1所述的用于榨汁机系统的后台通信方法,其特征在于,所述步骤S3包括:S31、客户端创建http请求函数,并在http请求函数中创建HttpWebRequest对象执行HTTP请求:S32、客户端创建Timer类,以一定的时间间隔向服务器端发出HTTP请求,通过返回值确定发出请求的客户端是否有需要执行的命令。4.根据权利要求1所述的用于榨汁机系统的后台通信方法,其特征在于,所述步骤S1中所述的检测客户端是否支持HTML5包括:客户端组件创建webbrowser控件,采用Javascript中的checkhHtml5()函数判断客户端是否支持HTML5。5.根据权利要求1所述的用于榨汁机系统的后台通信方法,其特征在于,所述步骤S2中所述的服务器端的命令由两个字段组成:第一个字段为业务内容,第二字段为对第一个字段的操作方式。6.一种用于榨汁机系统的后台通信系统,其特征在于,包括客户端和...

【专利技术属性】
技术研发人员:阮仕涛
申请(专利权)人:深圳市祈飞科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1