终端远程控制方法技术

技术编号:32348936 阅读:16 留言:0更新日期:2022-02-20 02:12
本发明专利技术公开了一种终端远程控制方法,包括:PC/移动端、服务器和终端设备,所述PC/移动端包括用户前端页面,所述服务器包括控制中心服务、MQTT服务器和Redis服务,所述终端设备包括终端插件和终端CGI接口,将MQTT、Redis、终端CGI以及Rest API技术进行融合,实现终端的远程控制;本发明专利技术一方面有效解决了平台对多终端并发控制时的有效调度以及用户前端及时获取指令响应结果的问题,另一方面也提升了设备接入控制平台的开发效率和成本。入控制平台的开发效率和成本。入控制平台的开发效率和成本。

【技术实现步骤摘要】
终端远程控制方法


[0001]本专利技术涉及远程控制
,特别是一种终端远程控制方法。

技术介绍

[0002]MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是由IBM公司开发的轻量级的即时通信协议。MQTT采用的是发布/订阅的模式,而不是传统的请求/响应模式,这种更为轻量级的模式使得MQTT更加适用于低功耗和网络带宽有限的物联网设备。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
[0003]Redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key

Value数据库,具备超高的读写性能,支持丰富的数据类型,所有操作都具备原子性,是高并发、高性能场景下进行数据缓存的常用工具之一。
[0004]CGI:通用网关接口(Common Gateway Interface)是一个Web服务器主机提供信息服务的标准接口。通过CGI接口,Web服务器就能够获取客户端提交的信息,转交给服务器端的CGI程序进行处理,最后返回结果给客户端。
[0005]近年来随着信息技术的发展,智能终端设备已经深入人们的生活,同时也面临新的挑战,如何为人们提供灵活便捷的智能终端设备远程控制能力,提升人们的生活便捷性,成为大家关注的焦点之一。现有的终端远程控制方法存在以下缺点:
[0006](1)现有的终端远程控制方法大多都是直接通过不同设备订阅不同的MQTT主题实现对终端设备的控制,但由于订阅发布的机制造成用户前端页面无法主动获取终端设备的响应结果,对多终端并发控制时平台无法对控制指令进行有效追踪调度、无法统一处理指令响应超时、无法记录指令响应过程等问题;
[0007](2)现有的终端远程控制方法大多都需要按照接入平台的要求重新定义新的控制接口,不能直接复用终端自身原有的CGI接口,终端接入时需要根据平台接口协议进行大量的开发工作。

技术实现思路

[0008]为解决现有技术中存在的问题,本专利技术的目的是提供一种终端远程控制方法,本专利技术一方面有效解决了平台对多终端并发控制时的有效调度以及用户前端及时获取指令响应结果的问题,另一方面也提升了设备接入控制平台的开发效率和成本。
[0009]为实现上述目的,本专利技术采用的技术方案是:一种终端远程控制方法,包括PC/移动端、服务器和终端设备,所述PC/移动端包括用户前端页面,所述服务器包括控制中心服务、MQTT服务器和Redis服务,所述终端设备包括终端插件和终端CGI接口;所述的方法包括:
[0010]当所述用户前端页面点击按钮对终端设备进行远程操作时,用户前端页面通过Rest API将对应的控制指令发送给控制中心服务;
[0011]控制中心服务给该条控制指令赋予唯一识别码并调用Redis服务将控制指令进行缓存并根据业务规则同步设置过期策略;
[0012]控制中心服务再调用MQTT服务通过指定的主题将该控制指令下发给对应终端插件,终端插件通过订阅对应的主题接收控制中心服务下发的远程控制指令;
[0013]终端插件再根据远程控制指令的参数调取对应的终端CGI接口执行指令,待指令执行完成后终端插件再通过Rest API将对应指令的执行结果返回控制中心服务;
[0014]控制中心服务收到终端的执行结果或者检测到控制指令在Redis中缓存过期时立即通过Rest API将对应的执行状态结果返回给用户前端页面,从而实现对终端远程控制的整个流程。
[0015]作为本专利技术的进一步改进,还包括:
[0016]当并发存在多个用户前端页面分别对不同终端设备进行远程控制时,控制中心服务将根据给每个控制指令赋予的唯一识别码以及请求时间进行区分,从而实现多终端并发控制时对控制指令进行有效追踪调度。
[0017]本专利技术的有益效果是:
[0018]本专利技术将MQTT、Redis、终端CGI以及Rest API技术进行融合,解决了单纯的MQTT订阅发布的机制造成用户前端页面无法主动获取终端设备的响应过程,对多终端并发控制时平台无法对控制指令进行有效追踪调度、无法统一处理指令响应超时、无法记录指令响应过程等问题,同时本专利技术基于终端原有CGI接口进行调度以达到对终端的控制,实现了对终端原有CGI的完美兼容,极大提高了终端接入的开发便捷性和效率。所以,本专利技术一方面有效解决了平台对多终端并发控制时的有效调度以及用户前端及时获取指令响应结果的问题,另一方面也提升了设备接入控制平台的开发效率和成本。
附图说明
[0019]图1为本专利技术实施例中各个模块实体关系的结构框图;
[0020]图2为本专利技术实施例的业务逻辑流程图。
具体实施方式
[0021]下面结合附图对本专利技术的实施例进行详细说明。
[0022]实施例
[0023]如图1和图2所示,一种终端远程控制方法,主要由用户前端页面、控制中心服务、MQTT服务、Redis服务、终端插件、终端CGI接口几大模块结合实现。当用户前端页面点击按钮对终端进行远程操作时,用户前端页面将通过Rest API将对应的控制指令发送给控制中心服务,控制中心服务给该条控制指令赋予唯一识别码并调用Redis服务将控制指令进行缓存并根据业务规则同步设置过期策略,控制中心服务再调用MQTT服务通过指定的主题将该控制指令下发给对应终端,终端插件通过订阅对应的主题接收控制中心服务下发的远程控制指令,终端插件再根据远程控制指令的参数调取对应的CGI接口执行指令,待指令执行完成后终端插件再通过Rest API将对应指令的执行结果返回控制中心服务,控制中心服务收到终端的执行结果或者检测到指令在Redis中缓存过期时立即通过Rest API将对应的执行状态结果返回给用户前端页面,从而实现对终端远程控制的整个流程。当并发存在多个
用户前端页面分别对不同终端设备进行远程控制时,控制中心服务将根据给每个控制指令赋予的唯一识别码以及请求时间进行区分,从而实现多终端并发控制时对控制指令进行有效追踪调度。
[0024]再如图2所示,本实施例的整体业务流程如下:
[0025]1、用户前端页面通过Rest API将控制指令发送给控制中心服务;
[0026]2、控制中心服务给该控制指令赋予唯一识别码,并调用Redis服务进程缓存,同时设置缓存的过期时间;
[0027]3、控制中心服务开启异步检测线程,检测该控制指令是否缓存过期或是否有收取到该控制指令的执行结果返回;
[0028]4、控制中心服务调用MQTT服务,将控制指令进行下发;
[0029]5、MQTT服务接收到控制指令并通过指定的主题发布该条控制指令;
[0030]6、终端插件通过订阅指定的主题接收该条控制指令;
[0031]7、终端插件根据控制指令中的CGI参数直接调用终端CGI接口;
[0032]8、终端CGI接口根据指令进行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种终端远程控制方法,其特征在于,包括PC/移动端、服务器和终端设备,所述PC/移动端包括用户前端页面,所述服务器包括控制中心服务、MQTT服务器和Redis服务,所述终端设备包括终端插件和终端CGI接口;所述的方法包括:当所述用户前端页面点击按钮对终端设备进行远程操作时,用户前端页面通过Rest API将对应的控制指令发送给控制中心服务;控制中心服务给该条控制指令赋予唯一识别码并调用Redis服务将控制指令进行缓存并根据业务规则同步设置过期策略;控制中心服务再调用MQTT服务通过指定的主题将该控制指令下发给对应终端插件,终端插件通过订阅对应的主题接收控制中心服务下发的远程控...

【专利技术属性】
技术研发人员:赵洋杨丽波车文哲谢万东冯浚峰
申请(专利权)人:四川九州电子科技股份有限公司
类型:发明
国别省市:

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

1