Alexander Mylnikov

5Apr/150

Публичная база телефонных станций мира. Публичное открытое API

cellСегодня я хочу представить всем желающим базу телефонных станций всего мира.

Это может быть полезно приложениям или сервисам, которые по идентификаторам мобильной станции хотят получить ее геопозицию и тип. Данная база частично является копией The OpenCellID map, однако в официальной реализации есть ограничение на количество запросов и обязательно выпускать API ключ. В базе так же собраны и другие источники данных.

Список открытых источников:

В моей реализации нет не лимитов, ни ключей.

Данные обновляются еженедельно.

Реализация API (Открытые источники)

http://api.mylnikov.org/mobile/main.py/get адрес запросов передаются методом GET

Так же доступен по протоколу https://api.mylnikov.org/mobile/main.py/get

Для запроса есть 4 обязательных поля:

  1. mcc - Integer (Код страны)
  2. mnc - Integer (Код телефонного оператора)
  3. cellid - Integer (Код телефонной станции)
  4. lac - Integer (Код региона или Area, Location)
  5. v - Номер версии (Актуацльная версия 1.1)
  6. data=open  - указание, что данные полученные из API строго открытые

Пример:

http://api.mylnikov.org/mobile/main.py/get?data=open&mcc=250&mnc=02&cellid=200719106&lac=7840&v=1.1

Ответ:

Строка JSON имеющее обязательное поле result.

Если станция найдена в поле result приходит ответ 200, при ошибках возвращается код 404.

{ 
"result":200,
"data":{ 
"lon":"30.385654398",
"mcc":250,
"lac": 7840,
"range":"869.994176272",
"radio":"UMTS",
"samples":49,
"time":1430577060,
"lat":"60.056594206",
"mnc":2,
"cellid":200719106
}
}
{ 
"result":404,
"data":{ 
},
"real":6,
"desc":"No information about location",
"time":1430579063
}

Описание успешного ответа:

  • lat - широта
  • lon - долгота
  • range - точность определения координаты в метрах
  • samples - количество измерений
  • mcc - код страны
  • mnc - код мобильного оператора
  • lac - код мобильного региона
  • cellid - Id базовой станции
  • radio - тим базовой стании

Реализация API (Данные "как есть")

Для запроса есть 4 обязательных поля:

  1. mcc - Integer (Код страны)
  2. mnc - Integer (Код телефонного оператора)
  3. cellid - Integer (Код телефонной станции)
  4. lac - Integer (Код региона или Area, Location)
  5. v - Номер версии (Актуацльная версия 1.1)

Пример:

http://api.mylnikov.org/mobile/main.py/get?mcc=250&mnc=02&cellid=200719106&lac=7840&v=1.1

Уточненное местоположение

Вводится новая функция получения приблизительного пожложения точки триангуляционного центра. Синтаксис следующий: на сервер передается набор базовых станций, видимых приемником и силу сигналов станций, а сервер по имеющимся данным получает приблизительное положение точки, качественно являющейся трианглуляционным центром. все данныые запроса оборачиваются base64

Пример исходной строки:

250,02,7810,318,-81;250,02,4711,24208,-83;250,02,4711,24214,-89;250,02,4711,619,-95;250,02,4711,16627,-95

mcc,mnc,lac,cellid,SS;mcc1,mnc1,lac1,cellid1,SS1

SS - Signal Strength

https://api.mylnikov.org/mobile/main.py/get?v=1.1&search=MjUwLDAyLDc4MTAsMzE4LC04MTsyNTAsMDIsNDcxMSwyNDIwOCwtODM7MjUwLDAyLDQ3MTEsMjQyMTQsLTg5OzI1MCwwMiw0NzExLDYxOSwtOTU7MjUwLDAyLDQ3MTEsMTY2MjcsLTk1

В данном моде так же работает тег data=open который сообщает серверу что данные должны быть получены исключительно из открытых источников. К сожалению, в этом случае часты ситуации с отрицательным результатом.

Важно заметить, что API позволяет геолоцироваться по разным операторам одновременно, те если абонент слышить много сетей вокруг, то его местоположение пожно определить достаточно достоверно.

Лицензирование

Через одно API доступно, на самом деле, два проекта.

Первый и лицензируемый проект это все запросы к API с ключем "data=open" и он работает под лицензией  MIT License.

Второй проект получает данные "как есть". Полностью законное получение данных не оговаривается. И обращение к API без ключа open=data в принципе не документируется и предоставляется как "пасхальное яйцо". Данные предоставляемые используются конечным пользователем на свой страх и риск.

Скачать данные

Раздел загрузок

Приложение для тестирования:
Get it on Google Play

Приложение для тестирования (Верисия для разработчиков):
Get it on Google Play

Comments (0) Trackbacks (0)

No comments yet.


Leave a comment

No trackbacks yet.