掌桥专利:专业的专利平台
掌桥专利
首页

一种终端状态实时监控方法和设备

文献发布时间:2023-06-19 09:55:50


一种终端状态实时监控方法和设备

技术领域

本发明属于移动通信技术领域,特别涉及一种用于对终端状态实时监控的方法和设备。

背景技术

对于传统的通信终端,当前的大多数状态参数对用户是不可见的,经常会使用户对当前终端的状态产生疑惑,如果出现问题也不利于定位问题发生处。

发明内容

本发明实施例之一,一种终端状态实时监控方法,包括以下步骤:

启动LTED模块,并且建立与终端的通信;

从终端获取状态参数到页面,并且为页面建立通信接口;

所述LTED模块将配置参数下发至终端,并且更新终端的状态信息。

所述通信接口包括第一线程和第二线程,

所述第一线程实时的更新LTED模块的信息,并把该信息存入到存储器,并且在WEB用户界面中显示,

所述第二线程响应WEB页面的配置操作,建立一个消息队列,一直监听接收oam-lib库发送过来的消息。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1根据本发明实施例之一的终端状态实时监控方法流程图。

图2根据本发明实施例之一的终端状态实时监控方法流程图。

具体实施方式

如图1所示,设备上电后,linux内核驱动加载,LTE模块启动。Lted启动,初始化并与模块建立通信。通过轮询的方式,从模块侧拿到参数为页面并提供接口,并保持数据一直为最新的。当有配置下发的时候,Lted及时的把相关的命令下发到模块侧,并更新所有有关的状态信息。对于终端状态监控方法中包括2个线程。

pthread_lte_status线程。pthread_lte_status线程的作用是实时的更新模块的LTE相关的信息,并把相关的信息存入到nv中以便webui可以及时的显示。

pthread_lte_status会实时更新main_status的状态、更新LTE参数值、检测多apn是否激活、更新页面的wan信息、检测default路由的变化、检测sim卡状态。pthread_lte_status要实时监控这些值就需要定时发送一些AT来获取状态。

pthread_lte_config线程。pthread_lte_config线程主要是响应页面的具体配置操作。pthread_lte_config线程会建立一个消息队列,一直监听接收oam lib发送过来的消息。每条消息都会带一个msgCmd以区分不同的动作,然后根据不同的msgCmd在g_zAt_AtActTab表中调用不同的函数做相应的处理。

如图2所示,终端状态实时监控方法中包括main_status主状态。main_status主状态即表示当前模块正处于的状态,对页面的影响很大,页面上很多的显示都依赖于main_status的状态。main_status状态有以下值:module_communication_abnormal、need_pin、need_puk、sim_not_ready、no_service、disconnected、connected。

main_status是保存在nv中的,lted启动时会将它置为module_communication_abnormal,然后再尝试发送AT,如果回复OK,则发送AT+CPIN?查询SIM卡的状态;否则不更新main_status的状态值,并且一直尝试发送AT直到返回OK。然后再根据AT+CPIN?的返回值判断SIM卡的状态(READY、PIN LOCK、PUK LOCK、ERROR),如果SIM卡状态不是READY,main_status的值对应为(need_pin、need_puk、sim_not_ready);如果SIM卡状态是READY,则再根据AT+CESQ返回的RSRQ和RSRP值判断,如果AT+CESQ返回的RSRQ和RSRP值都为255或者都为空,则main_status的值为no_service;如果AT+CESQ返回的RSRQ和RSRP值是有效值,再根据AT+CEREG?的返回值判断,如果返回值不是1或者5,则main_status的值为disconnected,如果是1或者5并且是在自动模式下(或者手动模式下AT+CGATT?返回1),main_status的值为connected,否则main_status的值为disconnected。

这些值都是通过AT命令AT%ZMLTEINFO获取到的,pthread_lte_status线程会6s发送一次AT%ZMLTEINFO来更新这些LTE参数值。

进一步的,终端状态实时监控方法还包括:

检测多apn是否激活。

pthread_lte_status线程会3s检测一次enable值为1的apn是否被激活。如果查询到enable值为1但是未激活的apn,则发送AT+CGACT=1,x激活该apn。这里需要注意的是,如果此时激活apn未成功,LTED不会立刻返回,因为LTED侧有超时重发机制,会再40s后还未成功时才返回ERROR,这时就不能一直等LTED的返回了,此时我们的处理是:等待1s钟未返回,直接处理AT队列queue中的下一条AT,并且40s以后再做apn未被激活处理。这样做是因为即使在这40s内apn被激活,pthread_lte_status线程也会一直去查询apn的状态,当apn被激活则会立刻更新它的状态,并不会重复激活。

更新页面的wan信息。

pthread_lte_status线程会3s一个循环对enable值为1的apn发送AT命令AT+CGCONTRDP=x获取该apn的ip、gateway、mask、dns并保存在nv中,供页面显示及其他进程用。

检测default路由的变化。

pthread_lte_status线程会每3s查询一次default_gateway是否改变,如有改变则通知zm_router做相应的处理。

检测sim卡状态。

pthread_lte_status线程会每3s发送一次AT命令AT+CPIN?查询sim卡的状态,并以此更新main_status状态。

模块的默认配置是自动连接模式,在自动连接模式下,模块每次启动都会自动入网;当用户设置为手动连接时,模块每次启动时并不会自动入网,需要用户自己手动点击连接按钮才会入网。当用户点击连接按钮时,入网以后,连接按钮则会变为断开按钮。而自动连接模式并不会有连接按钮和断开按钮。

当用户从自动连接模式切换成手动连接模式时,模块会立刻断网,并会一直保持断网状态,但是LTE的参数信息会一直会持续更新。模块重启也会保持手动连接模式不连网状态,但是LTE参数信息也会存在并且会实时更新。

当用户从手动连接模式切换成自动连接模式时,模块会立即入网,并保存在ucfg配置中,模块重启后也会自动入网。

页面支持用户打开PIN码、取消PIN码、修改PIN码、解PIN码、解PUK码操作。其中,

打开PIN码操作:当用户输入正确PIN码打开PIN码后,使用该SIM卡的模块每次重启时都不会入网,需要输入正确的PIN码解锁后,模块才会正常入网。用户通过取消PIN码操作会解除此SIM卡的PIN码锁。

修改PIN码:当用户打开PIN码后,可以下面页面修改PIN码,需要注意的是PIN码长度是4-8,并且只能是数字。

解PIN码:用户打开PIN码后重启模块时需要到下面页面解锁PIN码才可以正常入网。这样解锁PIN码只是单次解锁PIN码,下次重启还需要输入PIN码解锁。

解PUK码:当用户在操作PIN码时,输错PIN码3次后,SIM卡会变成PUK LOCK,模块会立刻断网,需要解PUK码才可以重新入网,这里需要特别注意的是解PUK只有10次机会,10次还未输入正确的PUK码,这张SIM卡就变成了废卡。PUK LOCK后,重启模块也还是PUK LOCK,需要输入正确的PUK码才能正常入网。

PIN码操作遇到的问题可能包括,

1)页面在处理修改PIN码、解PIN码、解PUK码时,如果lted程序在处理完就立刻把结果返回给页面的话,有可能导致SIM卡状态和PIN码剩余次数、PUK剩余次数更新不及时的情况,所以lted程序是这样先处理的:

先修改PIN码、解PIN码、解PUK码;

再更新SIM卡状态和PIN码剩余次数、PUK剩余次数;

然后再将处理结果返回给页面。

2)当SIM卡PUK LOCK后,重启模块时,在解完PUK码过后,此时立刻去查询SIM卡状态会返回ERROR(因为GCT此时会有一个读卡过程,大概3秒钟),此时会影响main_status的值,所以在lted程序中做了这样的处理:如果正确解锁PUK码,直接把SIM卡状态置为READY,main_status置为no_service.(因为已经正确解锁PUK码,我们可以确定此时SIM卡正常)

用户可以在页面上配置自己希望接入的band或者频点,当用户设置了锁定的band或者频点,模块只会扫描锁定的band或频点,不会扫描其他的band和频点。每次配置都会立即生效,并且重启也会保存。

当用户选择锁band时,页面会把模块所支持的band列在下面供用户选择,用户可以锁定一个或者多个band。

当用户选择锁频点时,用户可以将需要锁定的频点添加到下列的List当中提交,当然用户也可以删除List中的频点再提交;这里供用户选择的频点是根据模块所支持的band来显示的,只让用户选择所支持的band中的频点。

本发明通过建立oam-lib库与模块间的通信,实时、准确的显示当前终端所处的状态,快速、无误的响应终端收到的配置信息。使终端用户可以实时准确的查看到当前终端处于一种怎样的状态、用户下发的配置是否生效以及配置生效后终端的状态。

根据本发明实施例,当设备无法驻留网络亦或者当前网络速度不佳的时候,可以通过检查实时的状态参数,来迅速定位当前设备无法驻留网络亦或者当前网络速度不佳的原因,比如:当前信号质量不佳(全部rsrp参数不良)、某根天线或天线口存在问题(某个rsrp参数不良),当前环境存在干扰(cinr不佳)等。方便以最快的速度和最小的代价来解决此类问题。

当需要驻留在指定的band的时候,可以通过页面清晰的看到当前设备支持的band,并允许通过简单的手动配置来驻留指定的band,而不需要复杂的操作来选取正确并可用的网络。

可以看到当前SIM卡是否是处于可识别、已识别或者是SIM LOCK状态,以便快速判断当前设备的入网状态是否和SIM卡的状态有关联或者是SIM卡异常导致。

本发明中集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

相关技术
  • 一种终端状态实时监控方法和设备
  • 用于电能质量监测系统及监测终端运行状态的实时监控方法
技术分类

06120112354066