一种基于MQTT和ABD远程排查故障的系统及方法与流程
未命名
09-22
阅读:91
评论:0

一种基于mqtt和abd远程排查故障的系统及方法
技术领域
1.本发明涉及智能设备技术领域,尤其涉及一种基于mqtt和abd远程排查故障的系统及方法。
背景技术:
2.目前很多智能设备出现故障时,需要售后人员将设备寄回企业让技术人员分析或技术人员上门排查,成本高、周期长。如果遇到某些故障与智能设备使用的环境相关,设备寄回企业后也很难复现。
3.通过专利搜索,通过关键词“mqtt and adb”进行检索。检索出“cn202210677304.6”和"cn202111551699.7”专利文件对这两个关键字有过描述。前一个专利因没有在设备上启动adb客户端且没与mqtt服务端关联,无法将设备adb执行结果返回到电脑mqtt控制端,且无法执行扩展命令,后一个专利的远程控制方法与我们的实现方案没有关联。
技术实现要素:
4.本发明的目的就在于为了解决上述问题而提供一种基于mqtt和abd远程排查故障的系统及方法,本发明利用很多系统内置的adb协议和通信用的mqtt协议实现远程软件故障的排查和基本故障的维修,实现简单,可以充分利用adb现有的命令集,成本较低,如果有复杂需求,也可以扩展现有的命令集。
5.本发明通过以下技术方案来实现上述目的:
6.一种基于mqtt和abd远程排查故障的系统,包括智能设备系统、电脑mqtt客户端、mqtt服务器;所述智能设备系统包括adb服务端,所述adb服务端与扩展命令解释和执行模块、预置命令执行模块通讯连接;所述adb服务端与adb客户端通讯连接,所述adb客户端与mqtt服务端通讯连接;
7.所述mqtt服务器与电脑mqtt客户端、mqtt服务端通讯连接;
8.系统运行时,分别启动adb客户端、adb服务端、mqtt服务端、预置命令执行模块、扩展命令执行模块,mqtt服务端以设备序列号为标识符启动。
9.电脑mqtt客户端与adb服务端组成了一个全双工通信,可以用电脑mqtt客户端控制adb服务端执行命令并返回结果。如果有复杂的命令,可以自定义一些扩展命令,执行时由“扩展命令解释和执行模块”执行。
10.进一步方案为,所述adb客户端的实现方法为通过adb标准协议栈实现或移植。
11.进一步方案为,所述adb服务端与adb客户端连接方法为通过自带的adb connect命令建立连接。
12.进一步方案为,所述mqtt服务端与adb客户端连接方法为mqtt收到消息后,以adb shell加上消息的格式执行命令,若消息是df-h,则执行adb shell df-h,并监听执行结果。
13.进一步方案为,所述电脑mqtt客户端为标准的mqtt客户端。
14.本发明还提供了一种基于mqtt和abd远程排查故障的系统的实现方法,包括以下步骤:
15.步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;
16.步骤2、电脑mqtt客户端发送adb logcat指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,然后返回智能设备的崩溃相关日志;
17.步骤3、根据日志排查解决崩溃故障。
18.本发明还提供了一种基于mqtt和abd远程排查故障的系统的实现方法,包括以下步骤:
19.步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;
20.步骤2、电脑mqtt客户端发送adb shell ifconfig指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,返回智能设备网络配置参数。根据网络配置参数发现设备没有连接wifi,指导用户重新配网。如果连接上了wifi,则执行步骤3;
21.步骤3、执行adb shell ping www.baidu.com,该指令能判断是否路由器连通外网,如果无法连通外网,指导用户重启路由器或联系网络服务商解决。
22.本发明的有益效果在于:
23.本发明的一种基于mqtt和abd远程排查故障的系统及方法,通过在现有智能设备系统中,集成adb客户端,让智能系统同时运行adb客户端和服务端,并能互相通信,将mqtt服务端收到的消息转送到adb客户端,adb服务端执行命令的地方增加“扩展命令解释和执行模块”,adb客户端将执行的结果返回给电脑mqtt客户端;如果智能设备出现操作卡顿时,技术人员通过电脑mqtt客户端执行查看远程智能设备磁盘占用状态,发现某个应用占用磁盘过多导致空间不足;技术人员通过远程命令释放部分空间修复卡顿问题;另外可以用于远程日志查看、系统还原等操作。
附图说明
24.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要实用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
25.图1为本发明系统结构图。
26.图2为本发明流程图。
具体实施方式
27.为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
28.在任一实施例中,如图1所示,本发明的一种基于mqtt和abd远程排查故障的系统,包括智能设备系统、电脑mqtt客户端、mqtt服务器;所述智能设备系统包括adb服务端,所述adb服务端与扩展命令解释和执行模块、预置命令执行模块通讯连接;所述adb服务端与adb客户端通讯连接,所述adb客户端与mqtt服务端通讯连接;
29.所述adb客户端的实现方法为通过adb标准协议栈实现或移植。所述adb服务端与adb客户端连接方法为通过自带的adb connect命令建立连接。所述mqtt服务端与adb客户端连接方法为mqtt收到消息后,以adb shell加上消息的格式执行命令,若消息是df-h,则执行adb shell df-h,并监听执行结果。所述电脑mqtt客户端为标准的mqtt客户端。
30.所述mqtt服务器与电脑mqtt客户端、mqtt服务端通讯连接;
31.系统运行时,分别启动adb客户端、adb服务端、mqtt服务端、预置命令执行模块、扩展命令执行模块,mqtt服务端以设备序列号为标识符启动。
32.电脑mqtt客户端与adb服务端组成了一个全双工通信,可以用电脑mqtt客户端控制adb服务端执行命令并返回结果。如果有复杂的命令,可以自定义一些扩展命令,执行时由“扩展命令解释和执行模块”执行。
33.如果智能设备出现操作卡顿时,技术人员通过电脑mqtt客户端执行查看远程智能设备磁盘占用状态,发现某个应用占用磁盘过多导致空间不足。技术人员通过远程命令释放部分空间修复卡顿问题。另外可以用于远程日志查看、系统还原等操作。
34.如果需要排查磁盘空间故障时,技术人员在远程电脑上通过mqtt客户端连接智能设备的mqtt服务端,然后将指令发送到mqtt服务端,如"df-h"查看磁盘空间命令,mqtt服务端收到该指令后,转发给adb客户端,adb客户端执行"adb shell df-h"指令,adb服务端收到该指令后,将结果通过原路径返回到远程电脑上。然后远程电脑执行"pm clean com.test.app"指令,清除了com.test.app的缓存数据,释放磁盘空间。如果是自定义命令,执行时由”扩展命令解释和执行模块“执行。
35.在一个具体实施例中,如图2所示,本发明还提供了一种基于mqtt和abd远程排查故障的系统的实现方法,包括以下步骤:
36.场景一:用户反馈智能设备某个功能进入后立即退出,无法正常使用。
37.步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;
38.步骤2、电脑mqtt客户端发送adb logcat指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,然后返回智能设备的崩溃相关日志;
39.步骤3、根据日志排查解决崩溃故障。
40.场景二:用户反馈设备不能上网。
41.步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;
42.步骤2、电脑mqtt客户端发送adb shell ifconfig指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,返回智能设备网络配置参数。根据网络配置参数发现设备没有连接wifi,指导用户重新配网。如果连接上了wifi,则执行步骤3;
43.步骤3、执行adb shell ping www.baidu.com,该指令能判断是否路由器连通外
网,如果无法连通外网,指导用户重启路由器或联系网络服务商解决。
44.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
技术特征:
1.一种基于mqtt和abd远程排查故障的系统,其特征在于,包括智能设备系统、电脑mqtt客户端、mqtt服务器;所述智能设备系统包括adb服务端,所述adb服务端与扩展命令解释和执行模块、预置命令执行模块通讯连接;所述adb服务端与adb客户端通讯连接,所述adb客户端与mqtt服务端通讯连接;所述mqtt服务器与电脑mqtt客户端、mqtt服务端通讯连接;系统运行时,分别启动adb客户端、adb服务端、mqtt服务端、预置命令执行模块、扩展命令执行模块,mqtt服务端以设备序列号为标识符启动。电脑mqtt客户端与adb服务端组成了一个全双工通信,可以用电脑mqtt客户端控制adb服务端执行命令并返回结果。如果有复杂的命令,可以自定义一些扩展命令,执行时由“扩展命令解释和执行模块”执行。2.如权利要求1所述的一种基于mqtt和abd远程排查故障的系统,其特征在于,所述adb客户端的实现方法为通过adb标准协议栈实现或移植。3.如权利要求1所述的一种基于mqtt和abd远程排查故障的系统,其特征在于,所述adb服务端与adb客户端连接方法为通过自带的adb connect命令建立连接。4.如权利要求1所述的一种基于mqtt和abd远程排查故障的系统,其特征在于,所述mqtt服务端与adb客户端连接方法为mqtt收到消息后,以adb shell加上消息的格式执行命令,若消息是df-h,则执行adb shell df-h,并监听执行结果。5.如权利要求1所述的一种基于mqtt和abd远程排查故障的系统,其特征在于,所述电脑mqtt客户端为标准的mqtt客户端。6.如权利要求1-5任一项所述的一种基于mqtt和abd远程排查故障的系统的实现方法,其特征在于,包括以下步骤:步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;步骤2、电脑mqtt客户端发送adb logcat指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,然后返回智能设备的崩溃相关日志;步骤3、根据日志排查解决崩溃故障。7.如权利要求1-5任一项所述的一种基于mqtt和abd远程排查故障的系统的实现方法,其特征在于,包括以下步骤:步骤1、根据用户提供的设备序列号,技术人员使用电脑mqtt客户端连接到设备mqtt服务端;步骤2、电脑mqtt客户端发送adb shell ifconfig指令,mqtt服务端收到该指令,经adb客户端、adb服务端转到预置指令执行模块处执行,返回智能设备网络配置参数。根据网络配置参数发现设备没有连接wifi,指导用户重新配网。如果连接上了wifi,则执行步骤3;步骤3、执行adb shell ping www.baidu.com,该指令能判断是否路由器连通外网,如果无法连通外网,指导用户重启路由器或联系网络服务商解决。
技术总结
本发明公开了一种基于MQTT和ABD远程排查故障的系统及方法,通过在现有智能设备系统中,集成adb客户端,让智能系统同时运行adb客户端和服务端,并能互相通信,将mqtt服务端收到的消息转送到adb客户端,adb服务端执行命令的地方增加“扩展命令解释和执行模块”,adb客户端将执行的结果返回给电脑mqtt客户端;如果智能设备出现操作卡顿时,技术人员通过电脑mqtt客户端执行查看远程智能设备磁盘占用状态,发现某个应用占用磁盘过多导致空间不足;技术人员通过远程命令释放部分空间修复卡顿问题;另外可以用于远程日志查看、系统还原等操作。操作。操作。
技术研发人员:康弦 荣霞芳
受保护的技术使用者:四川虹美智能科技有限公司
技术研发日:2023.06.15
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:复合磁屏蔽结构 下一篇:一种高温干热天气下大体积混凝土施工方法与流程