本公开涉及通信,特别是涉及一种终端的远程操控方法、系统以及介质。
背景技术:
1、在通信场景中,各种各样的终端设备之间需要进行联动通信,如在物联网场景中,海量终端设备需要接入物联网平台构建物联场景。在此种通信场景下,设备在运行过程中,难免会出现各种问题,如软件故障、数据错误等,一旦出现这些问题,便需要进行设备故障排查。
2、相关技术中,在进行终端设备故障排查时,一般需要运维人员到现场登录出故障的终端设置,登录后再在终端上进行故障排查。但是此种方式,效率较低、成本较高。
技术实现思路
1、基于背景技术的内容,本公开提出了一种终端的远程操控方法、系统以及介质。
2、其中,一种终端的远程操控方法,应用于终端,所述方法包括:
3、响应于服务平台发送的启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接;
4、向所述服务平台反馈所述web服务的运行信息,以指示所述服务平台将所述web服务所在的端口映射为所述代理服务上可被访问的公网地址;
5、基于所述第一连接和所述web服务,将web端通过所述公网地址发送给所述代理服务的操作命令,传入到所述命令行程序,以及将所述命令行程序执行所述操作命令后的执行结果反馈给所述web端,以支持所述web端对所述终端的远程操控。
6、示例性地,在所述基于所述第一连接和所述web服务,将所述web端通过所述公网地址发送给所述代理服务的操作命令,映射到所述命令行程序,以及将所述命令行程序执行所述操作命令后的执行结果反馈给所述web端之前,所述方法还包括:
7、基于所述第一连接,接收所述代理服务发送的登录请求,所述登录请求由所述web端通过所述公网地址发送;
8、基于第一验证信息与所述登录请求中携带的第二验证信息,验证所述web端是否合法;其中,所述第一验证信息携带在所述启动参数中和/或由所述终端生成;
9、若是,则保持所述第一连接的连接;
10、若否,则执行以下至少一者:
11、关断所述第一连接、拦截所述操作命令、向所述代理服务发送针对所述web端的非法登录指令,以使所述代理服务禁止监听所述web端产生的操作命令。
12、示例性地,所述启动参数中携带密钥,所述第一验证信息由所述终端生成,包括:
13、基于所述代理服务的标识、所述终端的标识中的至少一者,生成标识信息;
14、利用所述密钥对所述标识信息进行加密,得到所述第一验证信息。
15、示例性地,所述第一验证信息包括文本信息、图像信息、音频信息、登录信息中的至少一者。
16、示例性地,所述将所述终端的命令行程序映射为可被访问的web服务,包括:
17、启动伪终端对象,并将所述伪终端对象与所述命令行程序绑定;
18、调用所述终端上的第一端口;
19、通过所述第一端口,初始化与所述伪终端对象对应的所述web服务。
20、示例性地,所述伪终端对象包括伪终端主设备文件和伪终端从设备文件,所述伪终端从设备文件用于与所述命令行程序的输入输出绑定,所述通过所述第一端口,初始化与所述伪终端对象对应的所述web服务,包括:
21、初始化与第一端口绑定的第一连接服务、以及与所述第一连接服务绑定的第二连接服务;
22、将所述第二连接服务与所述伪终端主设备文件绑定,以实现所述web服务;
23、其中,所述第一连接服务用于提供所述第一端口与所述代理服务之间的连接,所述第二连接服务用于提供所述第一端口与所述伪终端主设备文件之间的连接。
24、示例性地,所述将所述命令行程序执行所述操作命令后的执行结果反馈给所述web端之后,所述方法还包括:
25、检测是否满足预设条件,所述预设条件包括在第一预设时长内未再次接收到所述代理服务发送的操作命令,和/或在第二预设时长内未产生与所述新的操作命令对应的执行结果;
26、若否,则执行以下至少一者:
27、释放所述web服务所占用的资源、停止所述web服务的运行、释放所述第一连接。
28、示例性地,所述终端的处理器中运行有第一程序,所述第一程序与所述服务平台连接;所述响应于服务平台发送的启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接,包括:
29、通过所述第一程序接收所述启动参数,并通过所述第一程序将所述终端的命令行程序映射为可被访问的web服务;
30、通过所述web服务向所述代理服务发送注册申请,以建立所述第一连接。
31、示例性地,所述终端的处理器中还运行有第二程序,所述响应于服务平台发送的启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接,包括:
32、通过所述第一程序接收所述启动参数,并通过所述第一程序启动所述第二程序;
33、在所述第二程序启动时,触发所述第二程序执行将所述终端的命令行程序映射为可被访问的web服务的步骤;
34、建立所述第二程序与所述代理服务之间的第一连接。
35、示例性地,所述建立所述web服务与所述服务平台上的代理服务之间的第一连接,包括:
36、为所述web服务分配第一端口;
37、基于所述第一端口,通过所述web服务向所述代理服务发送所述第一端口的端口地址的注册申请;
38、响应于所述代理服务基于所述注册申请反馈的注册成功信令,建立所述第一端口和第二端口之间的第一连接;其中,所述第二端口为所述代理服务分配给所述web服务的端口。
39、其中,一种终端的远程操控方法,应用于服务平台,所述方法包括:
40、响应于web端发送的远程操控请求,生成启动参数;
41、将所述启动参数发送给终端,以指示所述终端启动web服务,并建立所述web服务与所述代理服务之间的第一连接;其中,所述web服务在启动后用于将所述终端的命令行程序映射为可被访问的web服务;
42、响应于所述终端返回的运行信息,基于所述启动参数,向web端发送登录信息;所述登录信息中携带所述代理服务对外公开的公网地址,以将所述web服务所在的端口映射为所述公网地址;
43、通过所述代理服务将所述web端发送的操作命令反馈给所述终端,以使所述终端基于所述第一连接和所述web服务,将所述操作命令映射到所述命令行程序;
44、通过所述代理服务将所述web服务反馈的执行结果,返回给所述web端,所述执行结果为所述命令行程序执行所述操作命令后的数据。
45、示例性地,所述响应于web端发送的远程操控请求,生成启动参数,包括:
46、响应于所述远程操控请求,指示所述代理服务为所述web端分配第三端口;
47、基于所述代理服务在所述服务平台的地址和所述第三端口的端口地址,生成所述启动参数。
48、示例性地,所述启动参数还包括第一验证信息,所述第一验证信息通过以下任一步骤生成:
49、基于当前随机生成的随机数,生成所述第一验证信息;
50、基于当前时刻、所述web端的标识、所述服务平台的标识中的至少一者,生成所述第一验证信息;
51、基于随机生成的用户名和密码,生成所述第一验证信息。
52、示例性地,所述基于所述启动参数之后,向web端发送登录信息之后,所述方法还包括:
53、通过所述代理服务向所述终端发送所述web端的登录请求,所述登录请求中携带第二验证信息,以指示所述终端基于第一验证信息和所述第二验证信息,验证所述web端是否合法;
54、接收所述终端发送的非法登录指令,所述非法登录指令为所述终端验证所述web端非法时发送的;
55、响应于所述非法登录指令,执行以下至少一者:
56、向所述代理服务发送所述web端的禁用信令,以指示所述代理服务禁止监听所述web端;
57、根据所述web端的当前非法登录次数,确定所述web端的危险等级,对所述web端执行与所述危险等级对应的处理;
58、向所述web端反馈登录错误信令,以指示所述web端通过所代理服务向所述终端重新发出登录请求。
59、示例性地,所述基于所述启动参数之后,向web端发送登录信息之后,所述方法还包括:
60、监听与所述终端上的第一程序之间的连接状态;
61、在所述连接状态指示所述第一程序离线时,指示所述代理服务获取所述第一连接的连接状态;
62、在通过所述代理服务获取到所述第一连接的连接状态为断开状态时,释放所述服务平台上为所述第二程序和所述第一程序配置的资源;
63、在通过所述代理服务获取到所述第一连接的连接状态为连接状态时,释放所述服务平台上为所述第一程序和/或所述第二程序配置的资源。
64、示例性地,所述web端配置有窗口页面,所述响应于web端发送的远程操控请求,生成启动参数,包括:
65、响应于所述web端通过所述窗口页面输入的远程操作指请求,生成所述启动参数;
66、所述通过所述代理服务将所述web服务反馈的执行结果,返回给所述web端,包括:
67、通过所述代理服务将所述执行结果渲染到所述窗口页面中。
68、其中,一种终端的远程操控方法,所述方法包括:
69、服务平台响应于web端发送的远程操控请求,生成启动参数,并将启动参数发送给终端,所述服务平台上配置有代理服务;
70、所述终端基于所述启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接;
71、所述服务平台响应于所述终端完成所述第一连接后反馈的运行信息,将所述代理服务配置的公网地址反馈给所述web端;
72、所述代理服务基于所述第一连接,将所述web端通过所述公网地址发送的操作命令映射到所述web服务;
73、所述web服务将所述操作命令传入到所述命令行程序,以及将所述命令行程序执行所述操作命令后的执行结果反馈给所述代理服务,以支持所述web端对所述终端的远程操控;
74、所述代理服务将所述执行结果反馈给所述web端。
75、示例性地,所述终端包括第一程序和第二程序,所述基于所述启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接,包括:
76、所述第一程序基于所述启动参数启动所述第二程序;
77、所述第二程序在启动后,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接。
78、其中,一种远程操控系统,包括终端、服务平台,其中,所述服务平台提供有代理服务;
79、其中,所述服务平台用于响应于web端发送的远程操控请求,生成启动参数,并将启动参数发送给所述终端;
80、所述终端,用于响应于所述启动参数,将所述终端的命令行程序映射为可被访问的web服务,以及建立所述web服务与所述服务平台上的代理服务之间的第一连接;以及向所述服务平台反馈所述web服务的运行信息;
81、所述服务平台,还用于基于所述运行信息,向所述web端反馈所述代理服务上可被访问的公网地址;
82、所述web服务,用于将所述代理服务基于所述第一连接发送的操作命令,传入到所述命令行程序,以及基于所述第一连接,将所述命令行程序执行所述操作命令后的执行结果反馈给所述代理服务;其中,所述操作命令由所述web端通过所述公网地址发送给所述代理服务;
83、所述代理服务,用于将所述执行结果反馈给所述web端。
84、其中,一种计算机可读存储介质,其存储的计算机程序使得处理器执行如任一示例性实施例所述的终端的远程操控方法。
85、本公开提出的终端的远程操控方法,应用于终端,该终端可以响应于服务平台发送的启动参数,将终端的命令行程序映射为可被访问的web服务,以及建立web服务与服务平台上的代理服务之间的第一连接;接着,向服务平台反馈web服务的运行信息,以指示服务平台将web服务所在的端口映射为代理服务上可被访问的公网地址;之后,可以基于第一连接和web服务,将web端通过公网地址发送给代理服务的操作命令,映射到命令行程序,以及将命令行程序执行操作命令后的执行结果反馈给web端,以支持web端对终端的远程操控。
86、由于将所述web服务所在的端口映射为可被访问的公网地址,因此,web端可以通过公网地址先向代理服务发送操作命令,接着,基于代理服务与web服务之间的第一连接,将该操作命令返回到web服务,又由于web服务已经将终端的命令行程序映射为可被访问的web服务,由此,使得操作命令可以被映射到命令行程序,从而被终端的命令行程序所执行,这样,web端便可以通过代理服务与web服务,远程操控终端,从而对终端上的软件故障和数据错误进行维护。
87、上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。