CN103581828B - 一种查询附近移动终端的方法、服务器和系统 - Google Patents
一种查询附近移动终端的方法、服务器和系统 Download PDFInfo
- Publication number
- CN103581828B CN103581828B CN201310567844.XA CN201310567844A CN103581828B CN 103581828 B CN103581828 B CN 103581828B CN 201310567844 A CN201310567844 A CN 201310567844A CN 103581828 B CN103581828 B CN 103581828B
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- information
- request
- wifi
- gps
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种查询附近移动终端的方法,该方法包括:接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述请求中携带的数据信息包括Wifi信息;在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。基于同样的发明构思,本发明还提出一种服务器和系统,能够在社交网络中为移动终端更加精确地查询到其附近移动终端。
Description
技术领域
本发明涉及社交网络技术领域,特别涉及一种查询附近移动终端的方法、服务器和系统。
背景技术
在社交网络中,某些情况下,用户可能会需要查询出自己附近的用户,进而与其进行联系,以便来交友或寻求帮助等。
现有技术中,可采用以下查询方式:服务器按照经纬度信息预先将地球表面划分为一系列等面积的网格阵列;对于任一用户,假设为用户X,当其需要查询附近用户时,会通过自身所使用的客户端,如移动终端,向服务器上报自己的位置信息,该位置信息包括经纬度信息和用户标识;服务器接收到用户X上报的位置信息后,首先确定该位置信息所处的网格,之后,查询出同处于该网格的其它用户,并将查询出的其它用户的用户标识以及与用户X之间的距离等返回给用户X的客户端。
但是,上述方式在实际应用中会存在一定的问题,即:用户X有可能处于两个相邻网格的边界附近,查询结果不够准确。
对于移动终端的位置信息的获取目前有2种比较常见的方式:
全球定位系统(GPS)模块:利用移动设备的GPS模块直接获得位置信息,目前民用设备的误差在20米左右,主要问题在于如果移动设备在室内就无法获取位置信息;
移动设备的基站信息:利用移动设备的基站信息获得的位置信息实际上是基站的位置信息,与用户的位置信息存在比较大的误差,因为基站的覆盖范围从0.5公里到数十公里不等。
对于目前的大多数社交网络,都是综合使用这两种方式来获取用户的位置信息,即当使用GPS模块能够获取到位置信息的时候就使用这种方式,否则使用移动设备的基站信息来获得用户的位置信息。
因为基站覆盖面积的不同,导致使用基站得到的用户位置信息与用户实际的位置信息偏差很大,所以这样处理所得到的结果存在相当程度的误差。发明内容
有鉴于此,本发明提供一种查询附近移动终端的方法、服务器和系统,能够在社交网络中为移动终端更加精确地查询到其附近移动终端。
为解决上述技术问题,本发明的技术方案是这样实现的:
一种查询附近移动终端的方法,接收到移动终端周期上报的数据信息时,更新并存储;所述方法包括:
接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述请求中携带的数据信息包括Wifi信息;
在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;
将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。
一种服务器,该服务器包括:存储单元、收发单元和处理单元;
所述存储单元,用于接收到移动终端周期上报的数据信息时,更新并存储;
所述收发单元,用于接收任一移动终端发起的查询其附近移动终端的请求;将所述处理单元通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端;
所述处理单元,用于当所述收发单元接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述数据信息包括Wifi信息;在所述存储单元中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;
一种系统,包括服务器和多个移动终端;
任一所述移动终端获取数据信息,并向所述服务器周期上报获取的数据信息,所述数据上报的数据信息为GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合;在需要查询附件的移动终端时,向所述服务器发起请求查询其附近移动终端的请求,所述请求中携带的数据信息包括GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合,若包括GPS信息,在所述请求中还携带查询范围;接收到所述服务器响应的查询到的移动终端的数据信息时,获知其附近的移动终端及各移动终端的数据信息;
所述服务器接收到各移动终端周期上报的数据信息时,将各移动终端的数据信息更新并存储;在接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息,若获取的数据信息中包括GPS信息,还需获取请求中携带的查询范围;根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序;若获取的数据信息中包括Wifi信息,在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;若获取的数据信息中包括蓝牙信息,在存储的数据信息中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;若获取的数据信息中包括Wifi-direct信息,在存储的数据信息中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;最终将查询到的移动终端的数据信息响应给发起请求的移动终端。
综上所述,本发明通过在接收到泛在网络中的移动终端发起的查询其附近移动终端的请求时,通过请求中携带的数据信息在预先存储的各移动终端的数据信息中,为发起请求的移动终端查询其附近的移动终端,并将查询到的移动终端排序并响应给发起请求的移动终端,能够在社交网络中为移动终端更加精确地查询到其附近移动终端。
附图说明
图1为本发明具体实施例一中查询附近移动终端的方法的流程示意图;
图2为本发明实施例二中查询附近移动终端的方法的流程示意图;
图3为计算本发明实施例中计算经度范围示意图;
图4为本发明具体实施例中计算纬度范围示意图;
图5为本发明实施例三中查询附近移动终端的方法的流程示意图;
图6为本发明具体实施例中应用于上述技术的服务器的结构示意图;
图7为本发明具体实施例中应用于上述技术的系统示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施例中提出一种查询附近移动终端的方法,在接收到泛在网络中的移动终端发起的查询其附近移动终端的请求时,通过请求中携带的数据信息在预先存储的各移动终端的数据信息中,为发起请求的移动终端查询其附近的移动终端,并将查询到的移动终端排序并响应给发起请求的移动终端。通过该方法,能够在社交网络中为移动终端更加精确地查询到其附近移动终端。
本发明中的社交网络,包括服务器和多个移动终端。各移动终端需周期地向服务器上报数据信息,上报的数据信息包括如下一种或任意组合:
GPS信息、无线保真(Wifi)信息、蓝牙信息、点对点无线保真(Wifi-direct)信息。
GPS信息为移动终端通过GPS模块收集的经度信息和纬度信息,即该移动终端当前的位置信息。具有GPS模块的移动终端可以获取GPS信息,但是由于某些原因,如在商场中,即使有GPS模块,可能也不能获取GPS信息。
Wifi信息为移动终端通过Wifi搜索到的和连接过的移动终端的MAC地址组成的AP列表、以及各MAC地址对应的信号强度等。
蓝牙信息为移动终端通过蓝牙搜索到的和连接过的移动终端的设备标识。
Wifi-direct信息为移动终端通过Wifi-direct搜索到的和连接过的移动终端的设备标识。
本发明中提到的移动终端若具有GPS功能,且当前能获得GPS信息时,在当前上报周期将GPS信息上报服务器;若该移动终端不具有GPS功能,或者具有GPS功能,但当前不能获得GPS信息时,在当前上报周期不上报GPS信息。
若具有Wifi功能,且搜索到或连接到其他设备时,将Wifi信息周期上报服务器。
同样道理,若具有蓝牙信息和Wifi-direct信息,且搜索到或连接过其他设备时,也需周期上报服务器。
若某个移动终端不能获取所述数据信息中的一种或几种时,不向服务器上报即可。
服务器在接收到社交网络中的移动终端周期上报的数据信息时,更新并存储接收到的数据信息。这些数据信息可以存储在数据库中,也可以存储在指定的存储空间中。
服务器对存储的各移动终端的数据信息设置老化时间,如果在老化时间到时,未接收到该移动终端上报的数据信息,则将该移动终端对应的数据信息删除;如果在老化时间内,接收到该移动终端上报的数据信息,则使用新接收到的数据信息更新并存储该移动终端对应的数据信息,并刷新老化时间。
实施例一
参见图1,图1为本发明具体实施例一中查询附近移动终端的方法的流程示意图,具体步骤为:
步骤101,服务器接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息。
所述数据信息包括Wifi信息。
步骤102,该服务器在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表。
步骤103,该服务器按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序。
具体排序过程为:首先按AP列表中与所述发起请求的移动终端的AP列表中MAC地址相同个数进行排序,如果存在相同MAC地址的个数相同,再按信号强度比较排序,如果存在信号强度也相同的移动终端,则按是否与所述发起请求的移动终端连接过进行排序。
与发起请求的移动终端的AP列表中MAC地址相同个数较多的移动终端在排序时优先级较高;信号强度强的移动终端在排序时优先级较高;与所述发起请求的移动终端连接过的移动终端在排序时优先级较高。
步骤104,该服务器将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。
移动终端接收到服务器响应的各移动终端的Wifi信息后,获知其附近移动终端有哪些,以及这些移动终端的Wifi信息。
由此可见,在该移动终端发起的请求中携带的数据信息中不包含GPS信息,即该移动终端当前不能获取GPS信息时,使用Wifi信息查询附近移动终端,而不是向现有技术中采用通过基站信息获得的位置信息进行查询,而使得查询到的误差较大。
实施例二
参见图2,图2为本发明实施例二中查询附近移动终端的方法的流程示意图,具体步骤为:
步骤201,服务器接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息和查询范围。
所述数据信息包括GPS信息和Wifi信息。
可见,该移动终端在发起请求中携带的数据信息包括GPS信息和Wifi信息,在为该发起请求的移动终端查询附近移动终端时,需使用GPS信息和Wifi信息进行查询。
步骤202,该服务器根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息。
本步骤中根据获取的GPS信息和所述查询范围获得一个GPS范围,具体包括:
当获取的GPS的范围中移动终端的经度为longitude,纬度为latitude,且所述查询范围为以range为半径的圆时,所述获得的GPS范围为:
最大经度max Longitude为:
最小经度min Longitude为:
最大纬度max latitude为:
最小纬度min latitude为:
其中,所述EARTH_RADIUS为有效地球半径。
本发明实施例中所指的地图被假设为一个标准的球体,地球的背景为一个公认的常量。众所周知,地球是一个椭圆的球体,如果查询范围比较小的情况下,例如10公里为半径的圆,那么本发明具体实施例中的计算方法的误差几乎可以忽略不计,查询范围越大,误差范围越大。
本发明实施例的应用范围是社交网络,属于民用范围,社交网络中查询附近的移动终端通常不会出现范围特备大的情况,例如搜索距离自己50公里内的用户,这样的情况目前看来是没有什么意义的,就算有这种情况出现,可能出现的误差对于社交网络来说也是可以接受的。
参见图3,图3为计算本发明实施例中计算经度范围示意图。图3中L部分代表的是在这个纬度上的一个切面圆,如果能得到这个圆的周长,那么就能够得到每一经度所代表的距离。要得到周长的前提是先得到这个圆的半径,如图3所示为r,半径r可以通过如下公式得到:
r=cos(latitude)*EARTH_RADIUS。
得到L代表的区域的周长并且算出范围为range所占的经度为:
参见图4,图4为本发明具体实施例中计算纬度范围示意图。图4中和地球相切的那条虚线代表了所要查询的范围range,例如1公里,对于地球来说,如果图4中的range不是特别大的情况下(例如几千公里),这条切线可以认为完全贴在地球的表面,那么对于纬度的范围就可以用如下公式推导:
步骤203,该服务器分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离对查询到的移动终端进行排序;执行步骤206。
由上可见,本发明中确定出的GPS范围为一个矩形范围,而请求查询的范围为一个圆形范围,因此,需过滤掉查询到的矩形范围内且圆形范围外的移动终端。
本步骤中服务器分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,将计算出的与所述请求终端距离大于所述查询范围的移动终端过滤掉,再执行按计算出的距离对过滤后的查询到的移动终端进行排序。
步骤204,该服务器在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表。
本发明在具体实现时,可以启动多线程进行处理,在执行步骤202的同时,执行步骤204。
步骤205,该服务器按查询到的移动终端的AP列表中与发送请求发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发送请求发起请求的移动终端连接过进行排序。
步骤206,该服务器将通过GPS信息获取查询到并排序的移动终端及的GPS信息,和以及通过Wifi信息获取查询到并排序的移动终端及的Wifi信息,响应给所述发起请求的移动终端。
服务器会将通过GPS信息和Wifi信息查询到的移动终端聚合后,一起发送给发起请求的移动终端;同时将通过GPS信息查询到的移动终端的GPS信息,以及通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。
实施例三
该服务器为实现为任一移动终端查询其附件移动终端,还可以通过蓝牙信息、Wifi-direct信息与GPS信息和Wifi信息查询附近移动终端。
由此可见,任一移动终端根据当前获取的数据信息向服务器请求查询其附近移动终端。在社交网络中的某个移动终端,当前获取的数据信息仅为Wifi信息,即如实施例一中所描述;某一移动终端当前获取的数据信息为Wifi信息和GPS信息,如实施例二所描述;某一移动终端当前获取的数据信息也可以为Wifi信息同蓝牙信息,和/或Wifi-direct信息的组合;某一移动终端当前获取的信息也可以为Wifi信息、GPS信息,同蓝牙信息,和/或Wifi-direct信息的组合。
下面以这四种信息当前都能获取为例,因此在发起的请求中会携带这四种信息。
参见图5,图5为本发明实施例三中查询附近移动终端的方法的流程示意图,具体步骤为:
步骤501,服务器接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息和查询范围。
步骤502,该服务器根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息。
步骤503,该服务器分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离对查询到的移动终端进行排序;执行步骤510。
步骤504,该服务器在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表。
步骤505,该服务器按查询到的移动终端的AP列表中与发送请求发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发送请求发起请求的移动终端连接过进行排序;执行步骤510。
步骤506,该服务器在存储的数据信息中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端。
步骤507,该服务器根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;执行步骤510。
在具体排序时,首先蓝牙信息中设备ID中相同个数进行排序,如果存在相同设备ID的个数相同,再按是否与所述发起请求的移动终端连接过进行排序。
与发起请求的移动终端的蓝牙信息中设备ID相同个数较多的移动终端在排序时优先级较高;与所述发起请求的移动终端连接过的移动终端在排序时优先级较高。
步骤508,该服务器在存储的数据信息中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端。
步骤502、步骤504、步骤506,步骤508可以启动多个线程同时执行。
步骤509,该服务器根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序。
在具体排序时,首先Wifi-direct信息中设备ID中相同个数进行排序,如果存在相同设备ID的个数相同,再按是否与所述发起请求的移动终端连接过进行排序。
与发起请求的移动终端的Wifi-direct信息中设备ID相同个数较多的移动终端在排序时优先级较高;与所述发起请求的移动终端连接过的移动终端在排序时优先级较高。
步骤510,该服务器在将通过GPS信息和查询范围查询到的移动终端的GPS信息、通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端、将通过蓝牙信息查询到的移动终端的蓝牙信息响应给发起请求的移动终端,以及将通过Wifi-direct信息查询到的移动终端的Wifi-direct信息响应给发起请求的移动终端。
基于同样的发明构思,本发明还提出一种服务器。参见图6,图6为本发明具体实施例中应用于上述技术的服务器的结构示意图。该服务器包括:存储单元601、收发单元602和处理单元603。
存储单元601,用于接收到移动终端周期上报的数据信息时,更新并存储。
收发单元602,用于接收任一移动终端发起的查询其附近移动终端的请求;将处理单元603通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。
处理单元603,用于当收发单元602接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述数据信息包括Wifi信息;在存储单元601中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序。
较佳地,
处理单元603,进一步用于所述数据信息中还包括GPS信息时,获取所述请求中携带的查询范围;在存储单元601中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表时,根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储单元601中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序。
收发单元602,进一步用于将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端时,将通过GPS信息和查询范围查询到的移动终端的GPS信息响应给发起请求的移动终端。
较佳地,
处理单元603,在分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序,具体为分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,过滤距离大于所述查询范围的移动终端,并将剩余的移动终端按计算出的距离进行排序。
较佳地,
处理单元603,进一步用所述数据信息进一步包括蓝牙信息时,根据获取的GPS信息和所述查询范围获得一个GPS范围时,在存储单元601中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序。
收发单元602,进一步用于将通过GPS信息查询到的移动终端的GPS信息响应给发起请求的移动终端时,将通过蓝牙信息查询到的移动终端的蓝牙信息响应给发起请求的移动终端。
较佳地,
处理单元603,进一步用于所述数据信息进一步包括Wifi-direct信息,在根据获取的GPS信息和所述查询范围获得一个GPS范围时,在存储单元601中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序。
收发单元602,进一步用于将通过GPS信息和查询范围查询到的移动终端的GPS信息响应给发起请求的移动终端时,将通过Wifi-direct信息查询到的移动终端的Wifi-direct信息响应给发起请求的移动终端。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
基于同样的发明构思,本发明具体实施例还提出一种系统。参见图7,图7为本发明具体实施例中应用于上述技术的系统示意图。该系统包括服务器和多个移动终端。
任一所述移动终端获取数据信息,并向所述服务器周期上报获取的数据信息,所述数据上报的数据信息为GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合;在需要查询附件的移动终端时,向所述服务器发起请求查询其附近移动终端的请求,所述请求中携带的数据信息包括GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合,若包括GPS信息,在所述请求中还携带查询范围;接收到所述服务器响应的查询到的移动终端的数据信息时,获知其附近的移动终端及各移动终端的数据信息;
服务器接收到各移动终端周期上报的数据信息时,将各移动终端的数据信息更新并存储;在接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息,若获取的数据信息中包括GPS信息,还需获取请求中携带的查询范围;根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序;若获取的数据信息中包括Wifi信息,在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;若获取的数据信息中包括蓝牙信息,在存储的数据信息中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;若获取的数据信息中包括Wifi-direct信息,在存储的数据信息中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;最终将查询到的移动终端的数据信息响应给发起请求的移动终端。
综上所述,本发明通过经纬度划分的特点和关于查询范围可以计算出经纬度的范围,为请求的移动终端响应查询到的其附近的移动终端;并且客服了现有实现中如果不能通过GPS获取位置信息时,即使用基站获取位置信息,而导致误差较大的缺陷;本发明具体实施例中,即使不能通过GPS信息获取
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种查询附近移动终端的方法,其特征在于,接收到移动终端周期上报的数据信息时,更新并存储;所述方法包括:
接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述请求中携带的数据信息包括无线保真Wifi信息;
在存储的数据信息中查询所述请求中携带的Wifi信息中AP列表中的各媒质访问控制MAC地址对应的移动终端的接入点AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;其中,Wifi信息为移动终端通过Wifi搜索到的和连接过的移动终端的MAC地址组成的AP列表、以及各MAC地址对应的信号强度;
将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端。
2.根据权利要求1所述的方法,其特征在于,
所述请求中携带的数据信息中还包括全球定位系统GPS信息时,获取所述请求中携带的查询范围;所述在存储的数据信息中查询所述请求中携带的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表时,所述方法进一步包括:
根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序;
所述将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端时,所述方法进一步包括:
将通过GPS信息和查询范围查询到的移动终端的GPS信息响应给发起请求的移动终端。
3.根据权利要求2所述的方法,其特征在于,所述根据获取的GPS信息和所述查询范围获得一个GPS范围,包括:
当获取的GPS的范围中移动终端的经度为longitude,纬度为latitude,且所述查询范围为以range为半径的圆时,所述获得的GPS范围为:
最大经度max Longitude为:
最小经度min Longitude为:
最大纬度max latitude为:
最小纬度min latitude为:
其中,所述EARTH_RADIUS为有效地球半径。
4.根据权利要求3所述的方法,其特征在于,所述分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序,包括:
分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,过滤距离大于所述查询范围的移动终端,并将剩余的移动终端按计算出的距离进行排序。
5.根据权利要求2-4任意一项所述的方法,其特征在于,
所述数据信息还包括蓝牙信息时,所述根据获取的GPS信息和所述查询范围获得一个GPS范围时,所述方法进一步包括:
在存储的数据信息中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所 述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;
所述通过GPS信息和查询范围查询到的移动终端的GPS信息,以及通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端时,所述方法进一步包括:
将通过蓝牙信息查询到的移动终端的蓝牙信息响应给发起请求的移动终端。
6.根据权利要求5所述的方法,其特征在于,
所述请求中携带的数据信息还包括点对点无线保真Wifi-direct信息时,所述根据获取的GPS信息和所述查询范围获得一个GPS范围时,所述方法进一步包括:
在存储的数据信息中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;
所述将通过GPS信息查询到的移动终端的GPS信息,以及通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端时,所述方法进一步包括:
将通过Wifi-direct信息查询到的移动终端的Wifi-direct信息响应给发起请求的移动终端。
7.一种服务器,其特征在于,该服务器包括:存储单元、收发单元和处理单元;
所述存储单元,用于接收到移动终端周期上报的数据信息时,更新并存储;
所述收发单元,用于接收任一移动终端发起的查询其附近移动终端的请求;将所述处理单元通过无线保真Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端;其中,Wifi信息为移动终端通过Wifi搜索到的和连接过的移动终端的MAC地址组成的AP列表、以及各MAC地址对应的 信号强度;
所述处理单元,用于当所述收发单元接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息;所述数据信息包括Wifi信息;在所述存储单元中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序。
8.根据权利要求7所述的服务器,其特征在于,
所述处理单元,进一步用于所述数据信息中还包括GPS信息时,获取所述请求中携带的查询范围;在所述存储单元中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表时,根据获取的GPS信息和所述查询范围获得一个GPS范围,并在所述存储单元中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序;
所述收发单元,进一步用于将通过Wifi信息查询到的移动终端的Wifi信息响应给发起请求的移动终端时,将通过GPS信息和查询范围查询到的移动终端的GPS信息响应给发起请求的移动终端。
9.根据权利要求8所述的服务器,其特征在于,
所述处理单元,在分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序,具体为分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,过滤距离大于所述查询范围的移动终端,并将剩余的移动终端按计算出的距离进行排序。
10.根据权利要求8-9任意一项所述的服务器,其特征在于,
所述处理单元,进一步用于所述数据信息进一步包括蓝牙信息时,根据获取的GPS信息和所述查询范围获得一个GPS范围时,在所述存储单元中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;
所述收发单元,进一步用于将通过GPS信息查询到的移动终端的GPS信息响应给发起请求的移动终端时,将通过蓝牙信息查询到的移动终端的蓝牙信息响应给发起请求的移动终端。
11.根据权利要求10所述的服务器,其特征在于,
所述处理单元,进一步用于所述数据信息进一步包括点对点无线保真Wifi-direct信息,在根据获取的GPS信息和所述查询范围获得一个GPS范围时,在所述存储单元中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;
所述收发单元,进一步用于将通过GPS信息和查询范围查询到的移动终端的GPS信息响应给发起请求的移动终端时,将通过Wifi-direct信息查询到的移动终端的Wifi-direct信息响应给发起请求的移动终端。
12.一种查询附近移动终端的系统,其特征在于,包括服务器和多个移动终端;
任一所述移动终端获取数据信息,并向所述服务器周期上报获取的数据信息,所述数据信息为GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合;在需要查询附件的移动终端时,向所述服务器发起请求查询其附近移动终端的请求,所述请求中携带的数据信息包括GPS信息、Wifi信息、蓝牙信息、Wifi-direct信息中的一种或任意组合,若包括GPS信息,在所述请求中还携带查询范围;接收到所述服务器响应的查询到的移动终端的数据信息时,获知其附近的移动终端及各移动终端的数据信息;其中,Wifi信息为移动终端通过Wifi搜索到的和连接过的移动终端的MAC地址组成的AP列表、以及各MAC地址对应的信号强度;
所述服务器接收到各移动终端周期上报的数据信息时,将各移动终端的数据信息更新并存储;在接收到任一移动终端发起的查询其附近移动终端的请求时,获取所述请求中携带的数据信息,若获取的数据信息中包括GPS信 息,还需获取请求中携带的查询范围;根据获取的GPS信息和所述查询范围获得一个GPS范围,并在存储的数据信息中获取在所述GPS范围内的移动终端的GPS信息;分别计算发起请求的移动终端与所述GPS范围内的移动终端之间的距离,并按计算出的距离进行排序;若获取的数据信息中包括Wifi信息,在存储的数据信息中查询所述获取的Wifi信息中AP列表中的各MAC地址对应的移动终端的AP列表,并按查询到的移动终端的AP列表中与发起请求的移动终端的AP列表中相同的MAC地址的个数、信号强度以及是否与发起请求的移动终端连接过进行排序;若获取的数据信息中包括蓝牙信息,在存储的数据信息中查询蓝牙信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据蓝牙信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;若获取的数据信息中包括Wifi-direct信息,在存储的数据信息中查询Wifi-direct信息中与所述发起请求的移动终端存在相同的设备ID的移动终端,并根据Wifi-direct信息中相同设备ID的个数、以及与所述发起请求的移动终端是否连接过,将查询到的移动终端进行排序;最终将查询到的移动终端的数据信息响应给发起请求的移动终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310567844.XA CN103581828B (zh) | 2013-11-14 | 2013-11-14 | 一种查询附近移动终端的方法、服务器和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310567844.XA CN103581828B (zh) | 2013-11-14 | 2013-11-14 | 一种查询附近移动终端的方法、服务器和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103581828A CN103581828A (zh) | 2014-02-12 |
CN103581828B true CN103581828B (zh) | 2017-02-08 |
Family
ID=50052571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310567844.XA Active CN103581828B (zh) | 2013-11-14 | 2013-11-14 | 一种查询附近移动终端的方法、服务器和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103581828B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104135715B (zh) * | 2014-06-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种位置服务的实现方法、装置,及系统 |
CN106162541B (zh) * | 2015-04-14 | 2021-04-13 | Tcl科技集团股份有限公司 | 一种查询附近终端设备的方法及系统 |
CN105682033B (zh) * | 2016-01-19 | 2019-01-25 | 福建师范大学 | 一种基于移动ap的近邻检测方法 |
CN108702299B (zh) * | 2016-02-22 | 2021-07-09 | 索尼移动通讯有限公司 | 卖方装置和买方装置之间发送和接收数据的方法及系统 |
CN105792327A (zh) * | 2016-02-24 | 2016-07-20 | 努比亚技术有限公司 | 一种无线接入方法、移动终端及服务器 |
CN107306441B (zh) * | 2016-04-22 | 2020-04-28 | 华为技术有限公司 | 发送蓝牙广播帧的方法、装置及无线接入点 |
CN106028282B (zh) * | 2016-05-13 | 2018-07-24 | 中科劲点(北京)科技有限公司 | 基于Wi-Fi的距离获取方法、终端、系统、服务器和电子设备 |
CN106060775B (zh) * | 2016-05-24 | 2020-03-17 | 竒葩网络(深圳)有限公司 | 一种通信环境辨识方法、装置以及系统 |
CN109922424B (zh) * | 2019-02-20 | 2020-09-22 | 中国人民解放军战略支援部队信息工程大学 | 基于查询结果中用户失序分析的微信用户定位方法 |
CN111757245B (zh) * | 2019-06-26 | 2022-07-08 | 广东小天才科技有限公司 | 一种可穿戴设备的定位方法及服务设备 |
CN110781370B (zh) * | 2019-10-16 | 2022-07-29 | 杭州云深科技有限公司 | 一种移动终端信息查询方法和计算机设备 |
CN111611501A (zh) * | 2020-05-15 | 2020-09-01 | 上海慧生健康科技有限公司 | 药师查询方法、系统、装置及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103228027A (zh) * | 2011-12-13 | 2013-07-31 | 三星电子株式会社 | 用于管理无线系统中的装置发现的方法和设备 |
CN103259859A (zh) * | 2013-05-08 | 2013-08-21 | 王天一 | 一种基于Android的体域网及其智能终端连接方法 |
CN103391511A (zh) * | 2013-07-17 | 2013-11-13 | 杭州东方网升科技有限公司 | 一种基于地理位置分享内容的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8730872B2 (en) * | 2011-02-01 | 2014-05-20 | David R. Elmaleh | System and method for identification of mobile device users in an area of a wireless access point |
-
2013
- 2013-11-14 CN CN201310567844.XA patent/CN103581828B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103228027A (zh) * | 2011-12-13 | 2013-07-31 | 三星电子株式会社 | 用于管理无线系统中的装置发现的方法和设备 |
CN103259859A (zh) * | 2013-05-08 | 2013-08-21 | 王天一 | 一种基于Android的体域网及其智能终端连接方法 |
CN103391511A (zh) * | 2013-07-17 | 2013-11-13 | 杭州东方网升科技有限公司 | 一种基于地理位置分享内容的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103581828A (zh) | 2014-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103581828B (zh) | 一种查询附近移动终端的方法、服务器和系统 | |
USRE48160E1 (en) | Method and system for positioning wireless device | |
CN104010364B (zh) | 用于确定基站的估计的地理位置的方法和系统 | |
AU2010341772B2 (en) | Managing a location database for network-based positioning system | |
AU2011205237B2 (en) | Determining a location of a mobile device using a location database | |
US8634860B2 (en) | Location determination using cached location area codes | |
US8655371B2 (en) | Location determination using cached location area codes | |
CN102843751B (zh) | 位置感知多模式通信系统 | |
CN102802116A (zh) | 信息推送方法、服务器及系统 | |
CN104902004A (zh) | 一种失踪人口的紧急救助系统及方法 | |
CN105430618B (zh) | 一种网络注册方法和装置 | |
CN105874857A (zh) | 用于无线网络数据收集的方法和装置 | |
CN103052152A (zh) | 移动终端定位方法、装置及移动终端 | |
CN106413041A (zh) | 移动终端小区驻留方法及装置 | |
CN104244408B (zh) | 一种基站位置信息获得方法及装置 | |
CN106126575A (zh) | 一种地理位置服务方法、服务器和系统 | |
CN102063834A (zh) | 含有地理位置信息的智能交互处理系统及处理方法 | |
CN103391503A (zh) | 一种确定虚拟地理范围的方法 | |
CN106019218A (zh) | 终端相对距离获取方法及可获取相对距离的终端 | |
CN102263800A (zh) | 基于云计算构建的地理信息物联网系统及应用 | |
CN113064183A (zh) | 一种多源融合的定位终端及定位方法 | |
CN102668602A (zh) | 基于地理位置信息服务的接入方法及装置 | |
CN103327041A (zh) | 一种获取用户内容的方法及系统 | |
CN103679966A (zh) | 基于智能设备混合定位技术的金融终端监控系统及方法 | |
WO2015185919A1 (en) | System for providing location-based social networking services to users of mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |