Справочный центр Wialon

get_zones_by_point

Метод get_zones_by_point используется для проверки наличия какой-либо точки в пределах определенных геозон или для поиска ближайшей геозоны.

Конечная точка

Copied!
svc=resource/get_zones_by_point&params={
  "spec": {
    "lat": <double>,
    "lon": <double>,
    "radius": <double>,
    "zoneId": {
      "<long>": [<long>, ...],
      ...
    }
  }
}

Параметры

Название Описание
zoneId Список геозон: {“ID ресурса”:[ID геозоны,…], …}.
lat Широта.
lon Долгота.
radius Радиус поиска геозон, м. Необязательное поле.

Если массив ID геозон для указанного “ID ресурса” пустой, то берутся все геозоны ресурса.

Ответ

Если точка находится в пределах геозоны, возвращается следующий результат:

Copied!
{
  "<text>": {      /* ID ресурса */
    "<text>": 0,   /* ID геозоны: расстояние до геозоны, м (в этом случае всегда 0) */
    ...
  },
  ...
}

Если точка находится за пределами геозоны, возвращается следующий результат:

Copied!
{
  "<text>": {          /* ID ресурса */
    "<text>": <double> /* ID геозоны: расстояние до геозоны, м */
  }
}

Если нет поля radius, возвращается следующий результат:

Copied!
{
  "<text>": [  /* ID ресурса */
    <long>,    /* ID геозон */
    ...
  ],
  ...
}

Если нет поля radius и точка не находится ни в одной из указанных геозон, возвращается пустой объект ({}).

Коды ошибок

Код Описание
4 Неверные входные параметры.
6 Общая ошибка.

Если вы заметили ошибку в тексте, пожалуйста, выделите её и нажмите Ctrl+Enter.