本发明实施例涉及移动通信领域,具体涉及基于云服务获取终端手机号码的方法、装置和电子设备。
背景技术:
msisdn信息为运营商发放的用户识别卡(subscriberidentitymodule,sim)签约时分配的号码,即手机号码,该号码唯一标识一个移动用户,相对于sim中烧写的国际移动用户识别码(internationalmobilesubscriberidentity,imsi)便于用户记忆使用,在移动通信管控专网系统功能中,获取msisdn特征值为一个关键指标点。
现有获取msisdn信息通常采用基于本地取号的方式,即取号模块集成在一个专有设备中,该设备称为取号设备,使用时通过网线拉远与主设备相连,取号设备中需插入sim卡,且能稳定驻留在相应运营商的全球移动通信系统(globalsystemformobilecommunications,gsm)网络中。现有获取msisdn信息的方式存在以下问题:取号设备需根据主设备覆盖距离调整拉远距离,在主设备覆盖较好范围内部署会导致取号设备接收阻塞性干扰,影响取号模块驻网情况,进而导致取号功能缺失;取号设备受部署区域运营商网络覆盖情况约束严重;受宏站信号约束,本地取号设备如需加大拉远距离可能增加中继、光纤等设备,增加运营成本;取号设备出现问题及故障不便于现场维护,时效性差,维护成本较高。
技术实现要素:
本发明实施例的目的在于提供基于云服务获取终端手机号码的方法、装置和电子设备,用以解决现有取号设备受约束严重、成本高和维修不便的问题。
为实现上述目的,本发明实施例主要提供如下技术方案:
第一方面,本发明实施例提供了一种基于云服务获取终端手机号码的方法,包括:
接收取号请求,所述取号请求包括目标终端的国际移动用户识别码;
根据所述国际移动用户识别码在本地数据库进行查询是否存在所述目标终端的手机号码;
如果不存在所述目标终端的号码,则通过云服务器获取所述目标终端的手机号码;
将所述目标终端的手机号码反馈给取号请求方。
根据本发明的一个实施例,通过所述云服务器获取所述目标终端的号码,包括:
向所述云服务器发送资源连接请求,以便所述云服务器根据所述目标终端的国际移动用户识别码在云数据库中进行匹配,如果所述云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果;
接收所述云服务器发送的所述取号结果;
根据所述取号结果得到所述目标终端的手机号码;
其中,所述资源连接请求包括传输状态码和所述目标终端的国际移动用户识别码。
根据本发明的一个实施例,在向所述云服务器发送资源连接请求之后,还包括:
周期性向所述云服务器发送心跳信号;
如果在每次发送心跳信号后预设时间内没有收到所述云服务器发送的心跳反馈信息,则判定与所述云服务器之间连接失败。
根据本发明的一个实施例,在根据所述取号结果得到所述目标终端的手机号码之后,还包括:
在所述本地数据库存储所述目标终端的手机号码。
第二方面,本发明实施例还提供一种基于云服务获取终端手机号码的装置,包括:
通信模块,用于接收取号请求,所述取号请求包括目标终端的国际移动用户识别码;
查询模块,用于根据所述国际移动用户识别码在本地数据库进行查询是否存在所述目标终端的手机号码;
控制处理模块,用于如果不存在所述目标终端的号码,则使用所述通信模块通过所述云服务器获取所述目标终端的手机号码;
其中,所述通信模块还用于将所述目标终端的手机号码反馈给取号请求方。
根据本发明的一个实施例,所述通信模块还用于向所述云服务器发送资源连接请求,以便所述云服务器根据所述目标终端的国际移动用户识别码在云数据库中进行匹配,如果所述云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果;所述通信模块还用于接收所述云服务器发送的所述取号结果;所述控制处理模块还用于根据所述取号结果得到所述目标终端的手机号码;其中,所述资源连接请求包括传输状态码和所述目标终端的国际移动用户识别码。
根据本发明的一个实施例,所述通信模块还用于周期性向所述云服务器发送心跳信号;所述控制处理模块还用于如果在每次发送心跳信号后预设时间内没有收到所述云服务器发送的心跳反馈信息,则判定与所述云服务器之间连接失败。
根据本发明的一个实施例,所述控制处理模块还用于在所述本地数据库存储所述目标终端的手机号码。
第三方面,本发明实施例还提供一种电子设备,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如第一方面所述的基于云服务获取终端手机号码的方法。
第四方面,本发明实施例还提供一种计算机可读存储介质,包含一个或多个程序指令,所述一个或多个程序指令用于被执行如第一方面所述的基于云服务获取终端手机号码的方法。
本发明实施例提供的技术方案至少具有如下优点:
本发明实施例提供的基于云服务获取终端手机号码的方法、装置和电子设备,对外提供vpn接入服务,远端主设备通过互联网建立vpn隧道,与云服务器建立数据连接,通过私有接口交互应用取号服务,实现msisdn信息获取,可以在弱覆盖环境实现取号功能,提供较稳定的取号成功率,并可以提升取号带宽,增加并发取号数,更好的满足功能需求。
附图说明
图1为本发明实施例的基于云服务获取终端手机号码的方法的流程图。
图2为本发明一个示例中取号过程的示意图。
图3为本发明实施例的基于云服务获取终端手机号码的装置的结构框图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效。
在本发明的描述中,需要理解的是,术语“第一”和“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”和“连接”应做广义理解,例如可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
图1为本发明实施例的基于云服务获取终端手机号码的方法的流程图。如图1所示,本发明实施例的基于云服务获取终端手机号码的方法,包括:
s1:接收取号请求。其中,取号请求包括目标终端的imsi。
具体地,主设备(即取号设备)接收取号请求方发送的取号请求,取号请求中包括想要进行取号的终端(即目标终端)的imsi。
图2为本发明一个示例中取号过程的示意图。如图2所示,在本发明的一个实施例中,在步骤s1之前,还包括:建立主设备与云服务器之间的虚拟专用网络(virtualprivatenetwork,vpn)隧道,以便主设备可以与云服务器进行通讯。其中,云服务器需要部署在合适的运营商宏站信号位置区域,进而满足取号模块稳定驻网提供高质量的取号成功率,信号需满足以下指标:
移动gsm:≥-85dbm;
联通gsm:≥-85dbm;
典型cdma:≥-95dbm。
s2:根据imsi在本地数据库进行查询是否存在目标终端的手机号码。
具体地,主设备根据目标终端的imsi本地数据库中进行查询,检测本地数据库中是否存有对应该imsi的手机号码
s3:如果本地数据库不存在目标终端的号码,则通过云服务器获取目标终端的手机号码。
在本发明的一个实施例中,步骤s3包括:
s3-1:向云服务器发送资源连接请求,以便云服务器根据目标终端的国际移动用户识别码在云数据库中进行匹配,云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果。
具体地,请参考图2,主设备向云服务器发送资源连接请求,其中,资源连接请求包括传输状态码和目标终端的imsi。
云服务器接收到资源连接请求后,向主设备反馈资源连接应答信息。
然后云服务器通过云数据库匹配、资源分配信令交互自动获取进行号码提取,取号结果返回成功则将应用请求特征值作为键值将目标终端的电话号码进行反向映射后得到取号结果,云服务器将取号结果发送至主设备。
s3-2:主设备接收云服务器发送的取号结果。
s3-3:主设备根据取号结果得到目标终端的手机号码,即主设备通过对取号结果进行解析得到目标终端的手机号码。
在本发明的一个实施例中,在步骤s3-1之后,还包括:主设备周期性向云服务器发送心跳信号;如果在每次发送心跳信号后预设时间内没有收到云服务器发送的心跳反馈信息,则主设备判定与云服务器之间连接失败。
在本发明的一个实施例中,在步骤s3-1中,还包括:如果云服务器向主设备反馈资源连接失败,则主设备向取号请求方反馈取号失败信息。如果云服务器向主设备反馈资源连接成功,则进一步判断云服务器的云数据库中是否存在目标终端的手机号码,如果存在,则将向取号请求方反馈号码存在的结果;如果不存在,则触发还原,即取号请求方与云服务器之间进行信令交互,实现资源交互,完成自动取号。
s4:将目标终端的手机号码反馈给取号请求方。
在本发明的一个实施例中,在步骤s4之后,还包括:主设备在本地数据库存储目标终端的手机号码,以便之后再有请求获取目标终端的手机号码时,主设备可以直接从本地数据库中得到目标终端的手机号码。
本发明实施例提供的基于云服务获取终端手机号码的方法,对外提供vpn接入服务,远端主设备通过互联网建立vpn隧道,与云服务器建立数据连接,通过私有接口交互应用取号服务,实现msisdn信息获取,可以在弱覆盖环境实现取号功能,提供较稳定的取号成功率,并可以提升取号带宽,增加并发取号数,更好的满足功能需求。
图3为本发明实施例的基于云服务获取终端手机号码的装置的结构框图。如图3所示,本发明实施例的基于云服务获取终端手机号码的装置,包括:通信模块100、查询模块200和控制处理模块300。
通信模块100用于接收取号请求,取号请求包括目标终端的国际移动用户识别码。查询模块200用于根据国际移动用户识别码在本地数据库进行查询是否存在目标终端的手机号码。控制处理模块300用于如果不存在目标终端的号码,则使用通信模块通过云服务器获取目标终端的手机号码。其中,通信模块100还用于将目标终端的手机号码反馈给取号请求方。
在本发明的一个实施例中,通信模块100还用于向云服务器发送资源连接请求,以便云服务器根据目标终端的国际移动用户识别码在云数据库中进行匹配,如果云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果。通信模块100还用于接收云服务器发送的取号结果。控制处理模块300还用于根据取号结果得到目标终端的手机号码。其中,资源连接请求包括传输状态码和目标终端的国际移动用户识别码。
在本发明的一个实施例中,通信模块100还用于周期性向云服务器发送心跳信号。控制处理模块300还用于如果在每次发送心跳信号后预设时间内没有收到云服务器发送的心跳反馈信息,则判定与云服务器之间连接失败。
在本发明的一个实施例中,控制处理模块300还用于在本地数据库存储目标终端的手机号码。
需要说明的是,本发明实施例的基于云服务获取终端手机号码的装置的具体实施方式与本发明实施例的基于云服务获取终端手机号码的方法的具体实施方式类似,具体参见基于云服务获取终端手机号码的方法部分的描述,为了减少冗余,不做赘述。
另外,本发明实施例的基于云服务获取终端手机号码的装置的其它构成以及作用对于本领域的技术人员而言都是已知的,为了减少冗余,不做赘述。
本发明实施例还提供一种电子设备,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如第一方面所述的基于云服务获取终端手机号码的方法。
本发明所公开的实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行上述的基于云服务获取终端手机号码的方法。
在本发明实施例中,处理器可以是一种集成电路芯片,具有信号的处理能力。处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(read-onlymemory,简称rom)、可编程只读存储器(programmablerom,简称prom)、可擦除可编程只读存储器(erasableprom,简称eprom)、电可擦除可编程只读存储器(electricallyeprom,简称eeprom)或闪存。
易失性存储器可以是随机存取存储器(randomaccessmemory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,简称sram)、动态随机存取存储器(dynamicram,简称dram)、同步动态随机存取存储器(synchronousdram,简称sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,简称esdram)、同步连接动态随机存取存储器(synchlinkdram,简称sldram)和直接内存总线随机存取存储器(directrambusram,简称drram)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
1.一种基于云服务获取终端手机号码的方法,其特征在于,包括:
接收取号请求,所述取号请求包括目标终端的国际移动用户识别码;
根据所述国际移动用户识别码在本地数据库进行查询是否存在所述目标终端的手机号码;
如果不存在所述目标终端的号码,则通过云服务器获取所述目标终端的手机号码;
将所述目标终端的手机号码反馈给取号请求方。
2.根据权利要求1所述的基于云服务获取终端手机号码的方法,其特征在于,通过所述云服务器获取所述目标终端的号码,包括:
向所述云服务器发送资源连接请求,以便所述云服务器根据所述目标终端的国际移动用户识别码在云数据库中进行匹配,所述云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果;
接收所述云服务器发送的所述取号结果;
根据所述取号结果得到所述目标终端的手机号码;
其中,所述资源连接请求包括传输状态码和所述目标终端的国际移动用户识别码。
3.根据权利要求2所述的基于云服务获取终端手机号码的方法,其特征在于,在向所述云服务器发送资源连接请求之后,还包括:
周期性向所述云服务器发送心跳信号;
如果在每次发送心跳信号后预设时间内没有收到所述云服务器发送的心跳反馈信息,则判定与所述云服务器之间连接失败。
4.根据权利要求2所述的基于云服务获取终端手机号码的方法,其特征在于,在根据所述取号结果得到所述目标终端的手机号码之后,还包括:
在所述本地数据库存储所述目标终端的手机号码。
5.一种基于云服务获取终端手机号码的装置,其特征在于,包括:
通信模块,用于接收取号请求,所述取号请求包括目标终端的国际移动用户识别码;
查询模块,用于根据所述国际移动用户识别码在本地数据库进行查询是否存在所述目标终端的手机号码;
控制处理模块,用于如果不存在所述目标终端的号码,则使用所述通信模块通过所述云服务器获取所述目标终端的手机号码;
其中,所述通信模块还用于将所述目标终端的手机号码反馈给取号请求方。
6.根据权利要求5所述的基于云服务获取终端手机号码的装置,其特征在于,所述通信模块还用于向所述云服务器发送资源连接请求,以便所述云服务器根据所述目标终端的国际移动用户识别码在云数据库中进行匹配,如果所述云服务器匹配成功,则生成取号结果;如果匹配失败,则通过分配空闲资源进行信令交互完成号码自动提取,并同步云端数据库,生成取号结果;所述通信模块还用于接收所述云服务器发送的所述取号结果;所述控制处理模块还用于根据所述取号结果得到所述目标终端的手机号码;其中,所述资源连接请求包括传输状态码和所述目标终端的国际移动用户识别码。
7.根据权利要求6所述的基于云服务获取终端手机号码的装置,其特征在于,所述通信模块还用于周期性向所述云服务器发送心跳信号;所述控制处理模块还用于如果在每次发送心跳信号后预设时间内没有收到所述云服务器发送的心跳反馈信息,则判定与所述云服务器之间连接失败。
8.根据权利要求6所述的基于云服务获取终端手机号码的装置,其特征在于,所述控制处理模块还用于在所述本地数据库存储所述目标终端的手机号码。
9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器和至少一个存储器;
所述存储器用于存储一个或多个程序指令;
所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1-4任一项所述的基于云服务获取终端手机号码的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行如权利要求1-4任一项所述的基于云服务获取终端手机号码的方法。
技术总结