📜 ⬆️ ⬇️

Geolocation without GPS (part 2)

wifi Hello!
After the previous article ( part 1 ), I received a lot of feedback on the work of the open geolocation API on WiFi and mobile networks.
This time I want to submit my corrections, licensing of the project, geolocation on several access points, use cases and most importantly - current problems

First, about the corrected errors:
  1. The grammatical error in the server response was corrected (the “lan” was returned to the “lat” place) the “v = 1.1” key
  2. Added licensing (about this at the end)



Mobile networks


Open data
The main criticism of my API was the question: “What's wrong with OpenCellID ?” Answer: nothing, except that there is not enough data in this database.
At the moment, they have 7.8 million towers. This is a good result for a fully open base, but the main disadvantage is poor accuracy.
The Mozilla Location Service base greatly helped to increase the coverage of open data.
Of all the open bases, I threw inaccurate data, such as a radius of action of about 1,200 km, or a radius of action of 0. That is, the tower was “spotted” only once, and therefore, the position on it can only be assessed qualitatively and in a good way with an accuracy of 35 km as in the middle cell (the maximum range of the middle cell outside the city).
Open data is updated automatically once a week. Those. base is always relevant.
Now there are 13 million records in the database. This is an excellent result of coverage worldwide. I hope, questions, than it is better OpenCellID will not be. It is important to note that the API has no restrictions on the number of requests.
Example: https://api.mylnikov.org/geolocation/cell?v=1.1&mcc=250&mnc=02&cellid=200719106&lac=7840&data=open
How much data: 13.8M + open data (unique towers)

Data "as is"
Here is data that is not covered by any licenses.
There are many sources, the data are fairly reliable.
Download data directly is impossible, but it is possible to obtain in any quantity through the API.
The system of work is simple. As soon as the system receives a request that cannot be answered from the current database, requests are made to sources that can potentially know about the region of the request.
It is important to note that the “received” data goes through a full update cycle in a month.
Example: https://api.mylnikov.org/geolocation/cell?v=1.1&mcc=250&mnc=02&cellid=200719106&lac=7840
')
Detailed description of working with the geolocation API for mobile networks

Refined location
The documentation describes the function of geolocation on several mobile towers. Most open services do not know how to do this and the function in the GSM-EDGE range is extremely useful, but the API response is more likely a qualitative assessment of the geo-location. I will be happy if someone writes me ( alex@mylnikov.org ) and helps to solve the problem of "triangulation" on several mobile towers.
Maximum number of access points: 12
Example: https: //api.mylnikov.org/geolocation/cell? V = 1.1 & search = MjUwLDAyLDc4 ...
Potentially, with the operation of some telephones, it is possible to obtain data about the towers of several telephone operators (either 2 sim cards or super phone cards that show all visible towers, I don’t know any examples).

Download data


WiFi hotspot


Open data
The main contribution to the open data was brought by the magnificent OpenWLANMap project , the data from this project is updated once a week.
Some more sources are used, they are described in the detailed documentation.
Example: https://api.mylnikov.org/wifi/main.py/get?v=1.1&bssid=00 WESTC : 42 : 1F : 65 : E9&data=open

Data "as is"
There are few sources.
Download data directly is impossible, but it is possible to obtain in any quantity through the API.
The work system is identical to the work of the API for mobile networks.
Update period 1 month
Example: https://api.mylnikov.org/wifi/main.py/get?v=1.1&bssid=A0:F3:C1½B:6F:90

Detailed description of working with the API geolocation on WiFi points

Refined location
The documentation describes the function of geolocation on several mobile towers. For WiFi access points, the function is extremely useful. Although it gives a qualitative situation, however, usually the network adapter of a mobile device most often receives a list of all access points, even if there is no connection to any access point. Using this data, you can get a coordinate with an accuracy of up to 150 meters in one request.
Maximum number of access points: 20
Explanation: Of course, the data in the database is not about all points of your apartment, however, those that will be found will be used to clarify the geo-location.
Example: https://api.mylnikov.org/geolocation/wifi?v=1.1&search=Mjg6Mjg6 ..

Download data

Actual problems

Use Cases
From my point of view, the API can be useful for various applications, from geolocation applications to the hidden targeting of application content.


Licensing
Licensing of the project is somewhat tricky.
Two projects are available through one API (for mobile towers and WiFi access points, respectively).
  1. key data = open. This key guarantees that the data from the response were obtained exclusively from open sources. Data is distributed under the MIT license
  2. the absence of the data = open key does not give any guarantees about the data sources, and this part of the project is not licensed at all.

Availability
The serviceability of the “almost” service is guaranteed for 3 years, more precisely until the end of 2018 when there is a high number of requests from users and 1 year with no load.
In fact, there are two servers in independent data centers.
The average uptime for the last quarter was 99.923% (according to Yandex.Metrica).
Backward compatibility of each API version is guaranteed through the “v =” key indefinitely.

Explanation
Under no circumstances, I do not claim ownership of the data of this project. I just want to have a reliable and accessible source of geolocation data on the Internet. All data belong to the copyright holders.

PS I am available at any time of the day or night by e-mail alex@mylnikov.org and I am ready to listen to any criticism, suggestions and suggestions.

Source: https://habr.com/ru/post/259605/


All Articles