Сервер Планар-Зенит имеет интерфейс для связи с http клиентами, который может быть использован разработчиками для написания собственных клиентских приложений, работающих с нашим сервером. Поэтому, в данной статье будет публиковаться описание интерфейса. Статья будет дополняться, пока описаны только основные команды. Команды 1) Регистрация в системеЭта команда выполняется первой, и предназначена для регистрации клиента на сервере.Команда: /registerПараметры: id - имя пользователя
wisdom - пароль Пример:http://192.168.1.224:1080/register/id=DEMO&wisdom=demo2) Получение списка объектов Данная команда (/objlist.json) возвращает список объектов подразделения, в котором зарегистрирован клиент. Параметров у нее нет, для обхода кэширования желательно передавать меняющийся фиктивный параметр (например, r=1,r=2....)
Пример: http://192.168.1.224:1080/objlist.json?r=1
Пример ответа:
getObjList({"markers": [ {"id":"353579017545894","label":"Газель","X":"61.39748665","Y":"55.16454000","dscr":"353579017545894"}, {"id":"353579019618848","label":"Fiat Doblo Panoramo","X":"61.41445335","Y":"55.18056000","dscr":"353579019618848"}, {"id":"862170012809537","label":"Volkswagen Caravelle","X":"61.39746218","Y":"55.16464567","dscr":"862170012809537"}]
},353579017545894
)В данном случае сервер вернул массив из 3 объектов: "Газель","Fiat Doblo Panoramo" и "Volkswagen Caravelle". В информацию о каждом объекте входит:1)id - уникальный идентификатор объекта. Его можно узнать, считав информацию о приборе конфигуратором. 2)label - наименование объекта (например: текст, отображаемый у метки объекта)3) X и Y - последние известные географические координаты объекта. Координаты определяют местоположение объекта в системе WGS84, формат - десятичные градусы. 4) dscr - Поле текстового описания объекта, содержащее дополнительные сведения о нем.3) Статус сервераВыдает html документ с информацией о статусе сервера. Команда /statusПараметры - нет
Пример запроса: http://192.168.1.224:1080/status
Пример ответа:
<html><head><meta content="text/html; charset=windows-1251" http-equiv="Content-Type"><title>Статус сервера</title></head><body><h3>Статус сервера</h3><table class="table>"<tr><td>Подключено диспетчеров:</td><td>14</td></tr><tr><td>Подключено объектов:</td><td>208</td></tr><tr><td>Очередь данных:</td><td>0</td></tr><tr><td>Сформировано файлов:</td><td>49</td></tr><tr><td>Записано файлов:</td><td>49</td></tr><tr><td>Стартовал:</td><td>31.05.2013 9:13:10</td></tr><tr><td>В работе:</td><td>0 ч. 24 мин. 51 сек.</td></tr><tr><td>Использование памяти, %:</td><td>98</td></tr><tr><td>Свободно физ. памяти, байт:</td><td>20004864</td></tr><tr><td>Свободно вирт. памяти, байт:</td><td>1832673280</td></tr></table></body></html>
4) Отчет по проблемам
Выдаетhtml документс отчетом о проблемах, имеющихся у пользователей.
Команда/troublesreport
Параметры отсутствуют
Пример запроса:
http://192.168.1.224:1080/troublesreport
Пример ответа:
<html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"><link rel="stylesheet" type="text/css" href="style.css"><link rel="shortcut icon" href="/favicon.gif" type="image/gif"><style type="text/css">td {text-align: center;}</style></head><body><h3>Р�меющиеся технические проблемы</h3><p></p><table width="100%" class="table"><tr><td class="tds">Подразделение</td><td class="tds">Объект</td><td class="tds">Время регистрации</td><td class="tds">РЎСЂРѕРє устранения</td><td class="tds">Описание проблемы</td></tr><tr><td>РўРРџ</td><td>Урал РЅ798РјСЂ72</td><td>28.03.2013 14:08:57</td><td>РЅРµ указан</td><td class="tdl">РќРµ указан РіРѕСЃ номер автомобиля - Рќ798РњР 72</td></tr><tr><td>ТГМЗ</td><td>Р—Р�Р› РІ058РІСѓ 72</td><td>02.04.2013 11:09:12</td><td>01.04.2013 11:09:12</td><td class="tdl">нет показаний РЅРё РїРѕ топливу РЅРё РїРѕ поездкам Рё стоянкам</td></tr><tr><td>ТГМЗ</td><td>ГАЗ Р°711СЃС‚ 72</td><td>02.04.2013 11:11:42</td><td>01.04.2013 11:11:42</td><td class="tdl">РЅРµ работают датчики РЅРё РїРѕ топливу РЅРё РїРѕ поездкам Рё стоянкам</td></tr></table></body></html>
5) Выбор текущего объекта
Команда:/select
Параметры: imei - идентификатор подвижного объекта
Данная команда устанавливает текущий выбранный объект. Отчеты, маршруты загружаются
именно для этого объекта. Данную команду нужно вызывать при необходимости получать
данные другого объекта.
Пример запроса:
http://192.168.1.224:1080/select?imei=862170012809537
6)Данные маршрута
Выдает трек объекта за указанный период в формате json.Выдаются данные текущего
выбранного объекта. Выбранный объект - принадлежащий группеid (установлена
при регистрации командой/register)и имеющий идентификатор imei(установлен
последней командой /select)
Команда /track
Параметры:
from -время начала периода
-toвремя конца периода
Пример запроса:
http://192.168.1.224:1080/track?from=31.05.2013%2000:00&to=31.05.2013%2023:59
(период 31.05.2013 00:00 - 31.05.2013 23:59)
Пример ответа:(набор точек coordinates в примере пустой, обычно он заполнен точками маршрута)
getTrack({"type": "FeatureCollection","features":[{ "type": "Feature","geometry": {"type": "LineString","coordinates": []},"properties": {"label": "Volkswagen Caravelle","from": "31.05.2013 00:00","to": "31.05.2013 23:59",}}]})
7)Отчет по поездкам и стоянкам
Выдает отчет по поездкам и стоянкам для указанного временного периода и текущего
выбранного объекта. Документ выдается в формате HTML.
Команда: /report0
Параметры:
from -время начала периода
-toвремя конца периода
8) Отчет по топливу
/report1Команда
from -время начала периода
-toвремя конца периода
Выдает отчет по поездкам и стоянкам для указанного временного периода и текущего
выбранного объекта. Документ выдается в формате HTML.
Алексей, очень интересно. Будет ли продолжение?
ОтветитьУдалить