一种获取终端控制消息响应的方法技术

技术编号:21404811 阅读:38 留言:0更新日期:2019-06-19 08:42
本发明专利技术公开了一种获取终端控制消息响应的方法,包括:同时运行应用服务的消息控制模块和响应接收模块;消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间,同时实时检测应用服务的响应接收模块是否释放同步信号;响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;如果在超时时间内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。本发明专利技术获取到终端设备响应更快速、精准,并通过动态设置超时时间,使消息从服务发送到处理终端设备应答的耗时大大减少,提高控制消息响应速度。

【技术实现步骤摘要】
一种获取终端控制消息响应的方法
本专利技术涉及网络应用
,具体涉及一种获取终端控制消息响应的方法。
技术介绍
随着物联网的兴起,越来越多的终端接入到了互联网中,用户通过客户端的应用服务程序可以实现远程控制终端。而在实现远程控制终端的过程中,应用服务与终端的消息互通必不可少,尤其是为了保证终端在位,应用服务需要先向终端发送控制消息,并需要获取终端对控制消息的响应信息。在现有技术中,为了保证终端在位,使应用服务后续向终端下发的控制指令发送到终端并得以执行,通用的做法是应用服务在处理此类消息时,静态设置一个固定的等待时间time,如果在等待时间time内获得终端的应答,则根据应答更新终端在客户端的设备状态,否则,认为控制超时,为无效控制,不更新;而为了给终端留有足够的响应时间,选择的等待时间往往远长于实际平均所需时间,造成大量的时间浪费,尤其是在有大量需要终端响应的控制消息要处理的场景下,每次固定的大量额外时间支出是对客户端来说都是沉重的负担。有鉴于此,急需对现有的获取终端控制消息响应的方法进行改进,以使控制消息从应用服务发送到处理终端设备应答的耗时大大减少,提高应用服务对消息的整体处理效率。
技术实现思路
本专利技术所要解决的技术问题是现有的获取终端控制消息响应的方法为了给终端留有足够的响应时间,添加了往往远长于实际平均所需时间的等待时间,造成大量的时间浪费,降低应用服务对消息的整体处理效率的问题。为了解决上述技术问题,本专利技术所采用的技术方案是提供一种获取终端控制消息响应的方法,包括以下步骤:步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T,同时实时检测应用服务的响应接收模块是否释放同步信号;步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;步骤S40、如果在超时时间T内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。在上述方法中,同步信号为应用服务启动时创建的一个信号量,信号量的值包括0和1;信号量的初始化为0;信号量为0表示没有未读取的终端的响应信息;信号量为1表示有未读取的终端的响应信息。在上述方法中,每次响应接收模块接收到终端的响应信息,并将响应消息存入固定内存中,同时立即将信号量重新更新为1。在上述方法中,服务启动时消息控制模块将创建第一线程和第二线程两个线程;第一线程用于接收客户端的控制消息并转发给第二线程;第二线程用于把第一线程发送的控制消息发送给终端设备,并立刻检测同步信号;响应接收模块将实时接收的终端发来的响应消息存在固定内存中后,释放同步信号;第二线程检测到同步信号,从固定内存中读取响应消息,并发送给第一线程。在上述方法中,第二线程把控制消息发送给终端设备后,返回校验收到的响应是否正确的transid给第一线程;第一线程收到transid同时请求读取响应;第二线程接收到读取响应请求后,立刻检测同步信号;第二线程检测到同步信号后,读取响应,并发送给第一线程;第一线程利用之前获得的transid对接收的响应信息进行校验,如果校验通过,则此次读取响应成功;否则,失败。在上述方法中,所述超时时间T是通过大数据动态设置的,具体为:通过对接入应用服务的大量终端在不同时段的响应时间进行统计和分析,找到每个时段不同种类和用途终端的最大等待时长和最小等待时长;根据当前的终端种类和用途,自动的动态设置当前时段的超时时间T。与现有技术相比,本专利技术通过应用服务的消息控制模块在发送控制消息后,实时检测服务响应接收模块是否释放同步信号;实现对终端响应的快速感知,并在检测到同步信号后,立刻进行响应信息的读取;并通过动态设置终端的等待响应的超时时间,使消息从服务发送到处理终端设备应答的耗时大大减少,确保系统可以高效的运行。附图说明图1为本专利技术提供的一种获取终端控制消息响应的方法的流程图;图2为本专利技术中具体实施例一的流程图。具体实施方式本专利技术提供的一种获取终端控制消息响应的方法,节约原有机制中无意义的多余等待时间,消减整个系统的操作时耗,提高应用服务的消息的处理效率。下面结合说明书附图和具体实施方式对本专利技术做出详细说明。如图1所示,本专利技术提供的一种获取终端控制消息响应的方法,包括以下步骤:步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T(不同终端在不同时段设置的等待时间不同),同时实时检测应用服务的响应接收模块是否释放同步信号;步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;步骤S30、如果在超时时间T内消息控制模块检测到同步信号,立即去响应接收模块读取接收的响应信息,更新客户端状态;如果消息控制模块没有检测到同步信号进入等待状态,在设定的定时器超时时间T结束后,保持客户端状态不变。在本专利技术中,同步信号为服务启动时创建的一个信号量,信号量包括0和1两个值,信号量为0表示没有智能终端的响应,信号量为1表示有读取的智能终端响应,信号量的初始化为0,响应接收模块在接收到智能终端的响应后,立即将信号量更新为1,不管之前的信号量为1还是0。在本专利技术中,服务启动时消息控制模块将创建两个线程,第一线程1用于接收客户端的控制消息并转发给第二线程2;第二线程2用于把第一线程1发送的控制消息发送给终端设备,并返回校验收到的响应是否正确的transid给消息控制模块线程1,第一线程1收到transid同时请求读取响应,第二线程2接收到读取响应请求后,立刻检测同步信号(信号量)接口,为了避免永久等待,同时设置超时时间T。第二线程2检测到同步信号后,读取响应,并发送给第一线程,第一线程利用之前获得的transid对接收的响应信息进行校验,如果校验通过,此次读取响应成功;否则,失败。其中,设置的超时时间T是通过大数据动态设置的,即通过对接入应用服务的大量终端在不同时段的响应时间进行统计和分析,找到每个时段每种类型用途终端响应所需的最短和最长时长;再根据当前的终端种类和用途,自动的动态设置该终端当前时段的超时时间T。如图2所示,为本专利技术的具体实施例一的流程图,具体包括以下步骤:001:服务启动时,创建一个信号量,并初始化为0,信号量为0表示没有响应,信号量为1表示有未使用的响应,此处信号量不能为除0、1外其他值。002:消息控制模块的第一线程向消息控制模块第二线程发送需要获取响应的控制消息。003:消息控制模块第二线程向终端发送相应的控制消息,并返回transid给消息控制模块的第一线程;004:消息控制模块的第一线程收到transid后,立即向第二线程请求读取响应,此处省去了原有的固定等待时间。005:第二线程接收到第一线程的读取请求后,立刻开始检测信号量接口,并设置超时时间T。006:在消息控制模块第二线程向终端发送相应的控制消息后,响应接收模块实时接收终端发来的响应,并将接收到的响应信息入固定内存中,同时更新信号量为1,表示有未被读取的响应。007:本文档来自技高网...

【技术保护点】
1.一种获取终端控制消息响应的方法,其特征在于,包括以下步骤:步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T,同时实时检测应用服务的响应接收模块是否释放同步信号;步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;步骤S40、如果在超时时间T内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。

【技术特征摘要】
1.一种获取终端控制消息响应的方法,其特征在于,包括以下步骤:步骤S10、应用服务的消息控制模块和响应接收模块两个线程,同时运行;步骤S20、消息控制模块向终端发送需要响应的控制消息,并根据该终端类型和用途动态设置当前时段的超时时间T,同时实时检测应用服务的响应接收模块是否释放同步信号;步骤S30、响应接收模块实时接收终端发来的响应消息,并在收到终端的响应消息后,释放同步信号;步骤S40、如果在超时时间T内消息控制模块检测到同步信号,立即响应接收模块读取接收的响应信息,更新客户端状态;否则,保持客户端状态不变。2.根据权利要求1所述的方法,其特征在于,同步信号为应用服务启动时创建的一个信号量,信号量的值包括0和1;信号量的初始化为0;信号量为0表示没有未读取的终端的响应信息;信号量为1表示有未读取的终端的响应信息。3.根据权利要求2所述的方法,其特征在于,每次响应接收模块接收到终端的响应信息,并将响应消息存入固定内存中,同时立即将信号量重新更新为1。4.根据权利要求1所述的方法,其特征在于,服务启动时消息控制模块将创建第一线程和...

【专利技术属性】
技术研发人员:陈亚骁
申请(专利权)人:闪联信息技术工程中心有限公司
类型:发明
国别省市:北京,11

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

1