Главная страница / Геолокатор / Документация

 

E-mail

Пароль

Документация

Быстрый старт

Ниже вы найдете пример исходного кода самой простой страницы с использованием Wi2Geo Javascript API.

Исходный код
  1. <html>
  2. <title>Wi2Geo Javascript API - пример использования</title>
  3. <head>
  4. <script type="text/javascript" src="http://api.wi2geo.ru/js/wi2geolocator.js"></script>
  5. <script type="text/javascript">
  6.    var myWi2GeoLocator = new Wi2GeoLocator('REFERENCE');
  7.    myWi2GeoLocator.getLocationSuccess = function(location) {
  8.  alert("Широта: "+location.lat+"\nДолгота: "+location.lng+"\nАдрес: "+location.address.string);
  9.    }
  10.  myWi2GeoLocator.getLocationFailure = function(error_code, error_text) {
  11.   if (error_code == 1) {
  12.   alert("Установите MagicScanner и попробуйте определить координаты снова.");
  13.   myWi2GeoLocator.installScanner();
  14.  }
  15.  else { alert("Ошибка: " + error_text); }
  16.  }
  17. </script>
  18. </head>
  19. <body>
  20. <h1>Очень простой пример внедрения Геолокатора Wi2Geo</h1>
  21. <a href="#" onclick="myWi2GeoLocator.getLocation()">Определить координаты</a>
  22. </body>
  23. </html>

Конечно, API позволяет реализовывать более сложный функционал. Но на этом примере хорошо видно, как легко добавить Геолокатор Wi2Geo на любой сайт.

Разберем пример по строкам:

  1. <script type="text/javascript" src="http://api.wi2geo.ru/js/wi2geolocator.js"></script> — подключаем библиотеку Wi2Geo.
  2. var myWi2GeoLocator = new Wi2GeoLocator('REFERENCE') — создаем объект Wi2GeoScanner. В качестве параметра передаем строку — ключ API Wi2Geo. Для каждого сайта необходимо получить индивидуальный ключ.
  3. myWi2GeoLocator.getLocationSuccess = function(location) {...} — определяем функцию-обработчик данных о местоположении посетителя.
  4. myWi2GeoLocator.getLocationFailure = function(error_code, error_text) {...} — определяем функцию-обработчик, которая будет вызвана в случае ошибки (например, если MagicScanner не установлен).
  5. myWi2GeoLocator.getLocation() — вызываем метод определения координат и адреса.

Вот и всё! Если вы хотите изучить API более подробно, продолжайте читать. И мы с удовольствием ответим на любые вопросы по email info@wi2geo.ru.

API

new Wi2GeoLocator(string api_key)

Это конструктор объекта Wi2GeoScanner.

  • api_key string — обязательно. Строка, содержащая уникальный для каждого сайта ключ API Wi2Geo.

Wi2GeoLocator.getLocation()

Метод определения координат и адреса по Wi-Fi. Для определения необходимо, чтобы на компьтере посетителя был установлен MagicScanner. В случае успешного определения, будет вызвана функция-обработчик getLocationSuccess, в случае ошибки — getLocationFailure.

Wi2GeoLocator.getLocationSuccess(hash location)

Функция-обработчик, вызываемая в случае успешного выполнения getLocation и getIPLocation. Функция определяется разработчиками сайта, на котором производится определение координат. Может быть использована для вывода информации о местоположении, для отображения точки на карте и т.д..

  • location hash:
    • lat — широта.
    • lng — долгота.
    • type - способ определения местоположения. Возможные значения: GPS, WiFi, GSM, IP. Наиболее вероятно, что на веб сайтах координаты будут определяться по WiFi или IP, если WiFi отсутствует. Точность определения по IP ниже чем по WiFi.
    • precision — точность определения местоположения в метрах.
    • address hash
    • address.country — страна.
    • address.city — город.
    • address.street — название улицы, на которой находится ближайшее найденное строение.
    • address.building — номер дома (ближайшее найденное строение).
    • address.metro — название ближайшей станции метро.
    • address.string —адрес полоностью.
    • distance hash
    • distance.street — расстояние до ближайшей улицы в метрах (до приблизительной середины улицы).
    • distance.building — расстояние до ближайшего здания в метрах.
    • distance.metro — расстояние до ближайшей станции метро в метрах.
    • xml — XMLObject c полной информацией о результате запроса.
    • text — XML с данными в виде текста.
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <wi2geo source-info-url="http://www.wi2geo.ru/" generator-info-name="Wi2Geo Hybrid Geolocation Server">
    3.  <iamhere>
    4.   <latitude>55.74679266687654</latitude>
    5.   <longitude>37.623647464078346</longitude>
    6.   <precision>150</precision>
    7.   <pos_type>1</pos_type>
    8.   <pos_type_text>WiFi</pos_type_text>
    9.   <wifi_found>22</wifi_found>
    10.   <wifi_fix>22</wifi_fix>
    11.  </iamhere>
    12.  <nearest>
    13.   <exactly>
    14.    <name>Russian Federation, 115035, Moscow, Болотная ул., 10</name>
    15.   </exactly>
    16.   <building>
    17.    <name>10</name>
    18.    <distance>20</distance>
    19.   </building>
    20.   <street>
    21.    <name>Болотная улица</name>
    22.    <distance>20</distance>
    23.   </street>
    24.   <metro>
    25.    <name>Новокузнецкая</name>
    26.    <distance>619</distance>
    27.   </metro>
    28.   <city>
    29.    <name>Москва</name>
    30.   </city>
    31.   <country>
    32.    <name>Россия</name>
    33.   </country>
    34.  </nearest>
    35. </wi2geo>

Wi2GeoLocator.getLocationFailure(error_code, error_text)

Функция-обработчик, вызываемая в случае ошибки выполнения getLocation и getIPLocation. Функция определяется разработчиками сайта, на котором производится определение координат. Может быть использована для вывода информации об ошибке, для вызова метода installScanner (установка MagicScanner) и других действий.

  • error_code int — код ошибки.
  • error_text string — описание ошибки.
  • Возможные значения error_code и error_text:
    • 1 — 'MagicScanner is not installed' — не установлен MagicScanner. В этом случае рекомендуется запустить метод installScanner и сообщить посетителю, что для точного определения местоположения необходимо установить специальный плагин и попробовать определить координаты ещё раз.
    • 2 — 'Invalid API Key' — неверный ключ Wi2Geo API. Нужно получить индивидуальный ключ для использования Геолокатора на вашем сайте или, если ключ у вас есть, но он не подходит — связаться со службой поддрежки Wi2Geo, написав на info@wi2geo.ru.
    • 3 — 'Location server unavailable' — проблемы на стороне сервера Wi2Geo. О таких ошибках просим сообщать нам на info@wi2geo.ru.
    • 1001 — 'User denied location request' — пользователь запретил доступ к данным о точном местоположении. В этом случае можно воспользоваться методом getIPLocation — определение координат по IP-адресу.

Wi2GeoLocator.getIPLocation()

Метод определения координат и адреса по IP-адресу посетителя без обращения к MagicScanner. Существенно уступает по точности методу getLocation. В результате выполнения вызываются те же обработчики, что и методом getLocationgetLocationSuccess и getLocationFailure.

Wi2GeoLocator.installScanner()

Метод установки MagicScanner на компьютер посетителя. Установка происходит разными способами в зависимости от операционной системы и браузера, которые установлены на компьютере посетителя сайта. Перед вызовом данного метода рекомендуем вывести сообщения для посетителя. Например: «Для точного автоматического определения адреса (координат, местоположения) установите плагин Wi2Geo и попробуйте определить координаты ещё раз».

MagicScanner

MagicScanner — программа необходимая для определения местоположения по Wi-Fi. Устанавливается на компьютер пользователя вместе с необходимыми для её работы браузерными плагинами и работает в фоновом режиме. Единственная выполняемая функция — выдача данных об окружающих Wi-Fi сетях по запросу метода getLocation Javascript библиотеки Wi2GeoLocator. Данные передаются в зашифрованном виде и могут быть расшифрованы только на сервере Wi2Geo. Таким образом MagicScanner не предстваляет угрозы ни для безопасности компьютера пользователя, ни для сохранности каких-либо персональных данных.

Географическая социальная сеть Wi2Geo Телефон: +7 (499) 502-53-19 E-mail: info@wi2geo.ru