mapAdmin — rest — map
Карта
Положение карты по умолчанию
GET /map/default
Пример ответа:
{
res: 1,
map: {
center: {
lon: 88.681640625,
lat: 55.37911044801
},
zoom: 3
}
}
Список положений карты
GET /mapextents
Формат ответа:
{
"res": ,
"mapExtents": [{
"id": ,
"name": ,
"extent":
}]
}
MapAdmin — rest — news-info
Информация по сообщению
Данные по конкретному сообщению
Формат ответа:
{
res: 1,
resText: "",
news_data: {
id: "18766",
user_id: "1230",
user_fio: "Пользователь1",
department_id: "493",
department_logo: "logo_493.png",
department_title: "Организация1",
news_date: "2014-11-06 14:05:00",
title: "Тест",
text: "Тест1",
num_main_photo: "1",
archive: "f",
confirmed: "1",
confirmed_comment: null,
news_type_id: "1",
system_data: "",
restricted: "f",
notice: "1",
assigned_to: "493",
assigned_department_name: "Организация2",
assigned_to_user: "1230",
assigned_user_fio: "Пользователь2",
news_type_logo: "icon3d_1.png",
news_type_icon: "icon3d_1.png",
news_type_name: "происшествие",
assigned_change_date: "2014-11-06 15:38:55",
assigned_status: "3",
category_id: "1",
custom_fields: "{"logika":{"value":true,"field_id":41}}",
category_name: "информационная",
status_name: "обратная связь",
lon: "49.1421427",
lat: "55.7744393",
zoom: null,
update_date: "2014-11-07 15:36:15"
}
}
// id сообщения
// id создателя
// ФИО создателя
// id ведомства
// логотип ведомства
// заголовок ведомства
// дата сообщения
// заголовок сообщения
// текст сообщения
// текстовое поле
// в архиве сообщение или нет (t или f)
// 0 - не просмотрена, 1 - утверждена, 2 - не утверждена
// комментарий к подтверждению
// id типа сообщения
// данные
// ограниченные или нет (t или f)
// оповещение
// кому назначено
// какому ведомству назначено
// какому пользователю назначено
// ФИО пользователя, которому назначено
// логотип типа
// иконка типа
// название типа
// дата назначения
// статус назначения
// id категории
// дополнительные поля
// название категории
// название статуса
// долгота
// широта
// увеличение
// дата обновления
Удаление сообщения
POST /news/{newsId}/
Формат входных параметров:
{
"action": "delete"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
Краткая информация по сообщению
GET /news/{newsId}/shortdata
Формат ответа:
{
"res": 1,
"news": {
"id": ,
"news_date": ,
"date": ,
"title": ,
"shorttext": ,
"department_id": ,
"system_data": ,
"archive": ,
"photos": ,
"files": ,
"sounds": ,
"video": ,
"point":
},
"resText": ""
}
// id сообщения
// дата
// дата в формате дд.мм.гггг чч:мм
// заголовок
// текст
// id ведомства
// текстовое поле
// находится ли сообщение в архиве | t или f
// количество фотографий
// количество файлов
// количество звуковых файлов
// количество видео в формате flv
// 1 - есть точка, 0 - нет точки
Текст сообщения
GET /news/{newsId}/text
Формат ответа:
{
"res": 1,
"text": "{Текст}"
}
Прикрепленные файлы
Путь к фотографиям сообщения: /department_files/photos
Название: photo_{department_id}_{newsId}_{num}.{ext};
Путь к видео сообщения: /department_files/video
Название: video_{department_id}_{newsId}_{num}.flv;
Путь к звуковым файлам сообщения: /department_files/sounds
Название: sounds_{department_id}_{newsId}_{num}.{ext};
Путь к файлам сообщения: /department_files/dif_files
Название: files_{department_id}_{newsId}_{num}.{ext};
Список фотографий
GET /news/{newsId}/photos
Формат ответа:
{
"res": 1,
"photos": [{
"id": ,
"num": ,
"name": ,
"description": ,
"extension": ,
"file_name": ,
"link":
}],
"resText": ""
}
// id фотографии
// порядковый номер
// исходное название
// описание
// расширение
// название файла на сервера
// для фотографий всегда null
Удаление фотографии сообщения
POST /news/{newsId}/photos/{fileId}
fileId — id фотографии
Тело запроса:
{
"action": "delete"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
Список видео
GET /news/{newsId}/video
Формат ответа:
{
"res": 1,
"video": [{
"id": ,
"num": ,
"description": ,
"extension": ,
"file_name": ,
"link":
}],
"resText": ""
}
// id
// порядковый номер
// описание
// расширение
// название файла на сервере
// ссылка, если видео находится не на сервере
Удаление видео сообщения
POST /news/{newsId}/video/{fileId}
fileId — id видео
Тело запроса:
{
"action": "delete"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
Список файлов
GET /news/{newsId}/files
Формат ответа:
{
"res": 1,
"files": [{
"id": ,
"num": ,
"name": ,
"description": ,
"extension": ,
"file_name": ,
"link":
}],
"resText": ""
}
// id
// порядковый номер
// исходное название
// описание
// расширение
// название файла на сервере
// для файлов всегда null
Удаление файла сообщения
POST /news/{newsId}/files/{fileId}
fileId — id файла
Тело запроса:
{
"action": "delete"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
Список звуковых файлов
GET /news/{newsId}/sounds
Формат ответа:
{
"res": 1,
"sounds": [{
"id": ,
"num": ,
"name": ,
"description": ,
"extension": ,
"file_name": ,
"link":
}],
"resText": "",
"sounds_converted": [ ]
}
// id
// порядковый номер
// исходное название
// описание
// расширение
// название файла на сервере
// для аудио всегда null
// массив названий сконвертированных файлов
Удаление звукового файла
POST /news/{newsId}/sounds/{fileId}
fileId — id аудио
Тело запроса:
{
"action": "delete"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
Точка сообщения
GET /news/{newsId}/point
Формат ответа:
{
"res": 1,
"point": ["{lon}","{lat}"],
"resText": ""
}
Получение pdf сообщения
GET /news/{newsId}/pdf
Изменение статуса сообщения
POST /news/{newsId}/update
Параметры:
assigned_status — статус. Цифра 1-новый, 2-назначено, 3-обратная связь, 3-выполнено
assigned_organization_id — id назначенной организации
assigned_user_id — id назначенного пользователя
category_id — id категории
news_type_id — id типа сообщения
confirmed — 1-утверждено, 2-не утверждено, 0 — новое
restricted — true/false ограниченный доступ
archive — true/false в архиве
system_data — текстовое поле
text — текст сообщения
title — заголовок сообщения
point — массив из двух элементов, координаты x и y
pointZoom — зум, на котором будет отображаться точка, можно отправить null, тогда будет взят зум по умолчанию
custom_fields — json объект, состоящий из списка дополнительных полей с их значениями
Формат:
custom_fields: "{\"translit_name1\": {\"field_id\": 12, \"value\": "Hello"}, \"translit_name2\": {\"field_id\": 14, \"value\": true}}"
photos — массив прикрепленных фотографий, где каждый элемент — это объект с полями: file — название захваченного файла, fileName — оригинальное название файла
Формат:
"photos": [
{"file":"naaethsde56gh.jpg","fileName":"photo1.jpg"},
{"file":"sdbvr54456fc4.png","fileName":"photo2.png"}
]
videos — массив прикрепленных видео (формат, как у фотографий)
files — массив прикрепленных файлов (формат, как у фотографий)
update_comments — комментарий обновления статуса
Следующие поля не обязательные. Они необходимы только в том случае, если комментарий обновления статуса должен быть виден определенным пользователям. Каждое поле отвечает за свою группу. Отсылать только нужные поля, установить значение true.
updatecomment_visible_all — виден всем
updatecomment_visible_user — виден только автору сообщения
updatecomment_visible_assigned_to — виден админам назначенного ведомства
updatecomment_visible_assigned_to_user — виден назначенному пользователю
Пример запроса:
{
"assigned_user_id": 1,
"assigned_status": 3,
"system_data": "обновление от 12.12.2013",
"photos": [
{"file":"naaethsde56gh.jpg","fileName":"photo1.jpg"},
{"file":"sdbvr54456fc4.png","fileName":"photo2.png"}
],
"update_comments": "Сообщение была назначена",
"updatecomment_visible_user": true,
"updatecomment_visible_assigned_to_user": true,
"text": "Это текст сообщения",
"point": [46.197509765625,56.480695390196296],
"pointZoom": 14,
"custom_fields":"{\"imia\":{\"field_id\":1,\"value\":\"неек\"},\"test4\":{\"field_id\":8,\"value\":\"значение2\"}}"
}
Формат ответа:
{
"res": 1,
"resText": ""
}
AutoMap — rest — writers
Источники отправки данных
Источники отправки данных
GET /daemon/writers
Структура запроса:
GET /daemon/writers?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"host": "8.8.8.8",
"port": 6941,
"path": "103.69.14.147",
"needAuth": false,
"authUser": null,
"authPassword": null,
"reconnectTime": 5,
"resendAttempts": 3,
"loggerTimeout": 60,
"name": "test",
"incrementId": 0,
"logLevel": 5,
"rightId": null,
"tagId": 121,
"protocolId": 11
},…]
// id источника отправки данных, целое число
// хост, строка
// порт, целое число
// путь, строка
// требуется ли авторизация, булевое поле
// логин, строка
// пароль, строка
// время переподключения, целое число
// максимальное количество неудачных попыток отправки данных, целое число
// период времени, для которого будет подсчитано и записано в лог количество отправленных сообщений, целое число
// название, строка
// id прав, целое число
// уровень логирования, целое число
// id прав, целое число
// id метки, целое число
// id протокола, целое число
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация об источнике отправки данных по ID
GET /daemon/writers/{id}
Структура запроса:
GET /daemon/writers/21?token=mbs90lon2a8
id: id источника отправки данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 21,
"host": "18.28.98.108",
"port": 6941,
"path": "103.69.14.147",
"needAuth": false,
"authUser": null,
"authPassword": null,
"reconnectTime": 5,
"resendAttempts": 3,
"loggerTimeout": 60,
"name": "test",
"incrementId": 0,
"logLevel": 5,
"rightId": null,
"tagId": 121,
"protocolId": 11
}
// id источника отправки данных, целое число
// хост, строка
// порт, целое число
// путь, строка
// требуется ли авторизация, булевое поле
// логин, строка
// пароль, строка
// время переподключения, целое число
// максимальное количество неудачных попыток отправки данных, целое число
// период времени, для которого будет подсчитано и записано в лог количество отправленных сообщений, целое число
// название, строка
// id прав, целое число
// уровень логирования, целое число
// id прав, целое число
// id метки, целое число
// id протокола, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление источника отправки данных
POST /daemon/writers
Структура запроса:
POST /daemon/writers?token=mbs90lon2a8
token: ключ доступа
Пример запроса:
Формат: json
{
"authPassword": "password",
"authUser": "login",
"host": "155.69.187.40",
"incrementId": 10,
"logLevel": "5",
"mappings": [],
"name": "New writer",
"needAuth": true,
"path": "path",
"port": 6687,
"protocolId": 11,
"reconnectTime": 5,
"resendAttempts": 3,
"rightId": null,
"tagId": 1
}
// пароль для авторизации, строка
// логин для авторизации, строка
// хост, строка
// id приращения, строка
// уровень логирования, строка
// картография
// название, строка
// требуется ли авторизация, булевое поле
// путь, строка
// порт, целое число
// id протокола, целое число
// время переподключения, целое число
// максимальное число неудачных попыток, целое число
// id прав, целое число
// id метки, целое число
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 1061,
"protocol": {
"id": 11,
"name": "native",
"title": "Внутренний формат",
"listener": true,
"receiver": false,
"writer": true,
"stable": true
},
"host": "155.69.187.40",
"port": 6687,
"path": "path",
"right": null,
"tag": {
"id": 1,
"name": "first tag",
"color": "8fff33"
},
"needAuth": true,
"authUser": "login",
"authPassword": "password",
"reconnectTime": 5,
"resendAttempts": 3,
"loggerTimeout": 60,
"name": "New writer",
"incrementId": 10,
"logLevel": 5,
"protocolId": 11,
"rightId": null,
"tagId": 1
}
// id источника отправки данных, целое число
// информация о протоколе
// id протокола, целое число
// название протокола, строка
// заголовок, строка
// источник получения данных, булевое поле
// источник сбора данных, булевое поле
// источник отправки данных, булевое поле
// стабильность источника, булевое поле
// хост, строка
// порт, целое число
// путь, строка
// информация о правах
// информация о метках
// id метки, целое число
// название метки, строка
// цвет метки, строка
// требуется ли авторизация, булевое поле
// пользователь, строка
// пароль, строка
// время переподключения, целое число
// максимальное количество неудачных попыток отправки данных, целое число
// период времени, для которого будет подсчитано и записано в лог количество отправленных сообщений
// название, строка
// id приращения, целое число
// уровень логирования, целое число
// id протокола, целое число
// id прав, целое число
// id метки, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование источника отправки данных
PUT /daemon/writers/{id}
Структура запроса:
PUT /daemon/writers/20?token=mbs90lon2a8
id: id источника отправки данных
token: ключ доступа
Пример запроса:
Формат: json
{
"authPassword": "password",
"authUser": "login",
"host": "155.69.187.40",
"id": 1061,
"incrementId": 10,
"logLevel": 3,
"loggerTimeout": 60,
"mappings": [],
"name": "New writer",
"needAuth": true,
"path": "path",
"port": 6687,
"protocol": {
"id": 11,
"listener": true,
"name": "native",
"receiver": false,
"stable": true,
"title": "Внутренний формат",
"writer": true
},
"protocolId": 17,
"reconnectTime": 5,
"resendAttempts": 3,
"right": null,
"rightId": 2,
"tag": {
"color": "8fff33",
"id": 1,
"name": "first tag"
},
"tagId": null
}
// пароль для авторизации, строка
// логин для авторизации, строка
// хост, строка
// id источника отправки данных, целое число
// id приращения, строка
// уровень логирования, строка
// период времени, для которого будет подсчитано и записано в лог количество отправленных сообщений, целое число
// картография
// название, строка
// требуется ли авторизация, булевое поле
// путь, строка
// порт, целое число
// информация о протоколе
// id протокола, целое число
// источник получения данных, булевое поле
// название, строка
// источник сбора данных, булевое поле
// стабильность протокола, булевое поле
// заголовок, строка
// источник отправки данных, булевое поле
// id протокола, целое число
// время переподключения, целое число
// максимальное число неудачных попыток, целое число
// права, строка
// id права, целое число
// информация о метках
// цвет метки, строка
// id метки, целое число
// название метки, строка
// id метки, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 1061,
"host": "155.69.187.40",
"port": 6687,
"path": "path",
"needAuth": true,
"authUser": "login",
"authPassword": "password",
"reconnectTime": 5,
"resendAttempts": 3,
"loggerTimeout": 60,
"name": "New writer",
"incrementId": 10,
"logLevel": 3,
"protocolId": 17,
"rightId": 2,
"tagId": null
}
// id источника отправки данных, целое число
// хост, строка
// порт, целое число
// путь, строка
// требуется ли авторизация, булевое поле
// пользователь, строка
// пароль, строка
// время переподлкючения, целое число
// максимальное количество неудачных попыток отправки данных, целое число
// период времени, для которого будет подсчитано и записано в лог количество отправленных сообщений
// название, строка
// id приращения, целое число
// уровень логирования, целое число
// id протокола, целое число
// id прав, целое число
// id метки, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление источников отправки данных
DELETE /daemon/writers/{id}
Структура запроса:
DELETE /daemon/writers/6?token=mbs90lon2a8
id: id источника отправки данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"delete":true
}
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество источников отправки данных
GET /daemon/writers/count
Структура запроса:
GET /daemon/writers/count?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
17
// количество источников отправки данных
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — receivers
Источники сбора данных
Источники сбора данных
GET /daemon/receivers
Структура запроса:
GET /daemon/receivers?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"host": "85.19.44.78",
"port": 9912,
"login": "login",
"password": "password",
"reconnectTime": 5,
"useEnginePort": false,
"defaultEnginePort": null,
"timezone": 0,
"useDinGauges": false,
"useDinAdditionalGauges": false,
"useAnalogGauges": false,
"useSpeedGauge": false,
"name": "Name",
"path": "",
"incrementId": 0,
"logLevel": 3,
"defaultGroupId": 500,
"defaultModelId": null,
"defaultMarkId": 380,
"protocolId": 25
},…]
// id источника сбора данных, целое число
// хост, строка
// порт, целое число
// логин, строка
// пароль, строка
// время переподключения, целое число
// использование порта зажигания, булевое поле
// значение порта зажигания по умолчанию, целое число
// часовой пояс, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование скоростного датчика, булевое поле
// название, строка
// путь, строка
// id приращения, целое число
// уровень логирования, целое число
// id группы по умолчанию, целое число
// id модели по умолчанию, целое число
// id марки по умолчанию, целое число
// id протокола, целое число
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация об источнике сбора данных по ID
GET /daemon/receivers/{id}
Структура запроса:
GET /daemon/receivers/21?token=mbs90lon2a8
id: id источника сбора данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 21,
"host": "39.22.197.64",
"port": 6674,
"login": "login",
"password": "password",
"reconnectTime": 5,
"useEnginePort": false,
"defaultEnginePort": null,
"timezone": 0,
"useDinGauges": false,
"useDinAdditionalGauges": false,
"useAnalogGauges": false,
"useSpeedGauge": false,
"name": "Name",
"path": "",
"incrementId": 0,
"logLevel": 3,
"defaultGroupId": 500,
"defaultModelId": null,
"defaultMarkId": 380,
"protocolId": 15
}
// id источника сбора данных, целое число
// хост, строка
// порт, целое число
// логин, строка
// пароль, строка
// время переподключения, целое число
// использование порта зажигания, булевое поле
// значение порта зажигания по умолчанию, целое число
// часовой пояс, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование скоростного датчика, булевое поле
// название, строка
// путь, строка
// id приращения, целое число
// уровень логирования, целое число
// id группы по умолчанию, целое число
// id модели по умолчанию, целое число
// id марки по умолчанию, целое число
// id протокола, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление источника сбора данных
POST /daemon/receivers
Структура запроса:
POST /daemon/receivers?token=mbs90lon2a8
token: ключ доступа
Пример запроса:
Формат: json
{
"defaultEnginePort": 9874,
"defaultGroupId": 123,
"defaultMarkId": 7,
"defaultModelId": 67,
"host": "12.154.36.9",
"incrementId": 15,
"logLevel": 3,
"login": "login",
"mappings": [],
"name": "New receiver",
"password": "password",
"path": "path",
"port": 5874,
"protocolId": 21,
"reconnectTime": 5,
"timezone": 0,
"useAnalogGauges": false,
"useDinAdditionalGauges": false,
"useDinGauges": true,
"useEnginePort": true,
"useSpeedGauge": false
}
// порт датчика зажигания, целое число
// id группы, целое число
// id марки ТС (по умолчанию), целое число
// id модели ТС (по умолчанию), целое число
// хост, строка
// id приращения, целое число
// уровень логирования, целое число
// логин, строка
// картография
// название, строка
// пароль, строка
// путь, строка
// номер порта, целое число
// id протокола, целое число
// время переподключения, целое число
// часовой пояс, целое число
// использование аналоговых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование цифровых датчиков, булевое поле
// использование датчиков зажигания, булевое поле
// использование датчиков скорости, булевое поле
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 801,
"protocol": {
"id": 21,
"name": "autotracker",
"title": "РНТ (АвтоТрекер)",
"listener": false,
"receiver": true,
"writer": false,
"stable": true
},
"host": "12.154.36.9",
"port": 5874,
"login": "login",
"password": "password",
"reconnectTime": 5,
"defaultGroup": {
"id": 2123,
"name": "lonely car group",
"notes": "",
"organizationId": 9383
},
"defaultModel": {
"id": 67,
"name": "RAPIDE",
"mark": {
"id": 7,
"name": "ASTON MARTIN"
},
"expenseOn100km": 11.0,
"maxTank": 100,
"motohoursStop": 1.0,
"motohoursMove": 1.0,
"markId": 7
},
"defaultMark": {
"id": 7,
"name": "ASTON MARTIN"
},
"useEnginePort": true,
"defaultEnginePort": 9874,
"timezone": 0,
"useDinGauges": true,
"useDinAdditionalGauges": false,
"useAnalogGauges": false,
"useSpeedGauge": false,
"name": "New receiver",
"path": "path",
"incrementId": 15,
"logLevel": 3,
"protocolId": 21,
"defaultGroupId": 2123,
"defaultModelId": 67,
"defaultMarkId": 7
}
// id источника сбора данных, целое число
// информация о протоколе
// id протокола, целое число
// название протокола, строка
// заголовок, строка
// источник получения данных, булевое поле
// источник сбора данных, булевое поле
// источник отправки данных, булевое поле
// стабильность источника, булевое поле
// хост, строка
// порт, целое число
// логин, строка
// пароль, строка
// время переподключения, целое число
// информация о группе по умолчанию
// id группы по умолчанию, целое число
// название группы по умолчанию, строка
// примечания группы, строка
// id организации, к которой относится группа, целое число
// информация о модели ТС по умолчанию
// id модели ТС по умолчанию, целое число
// название модели ТС по умолчанию, строка
// марка модели ТС по умолчанию
// id марки модели ТС, целое число
// название марки модели ТС, строка
// расход топлива на 100 км, число с плавающей точкой
// вместимость топливного бака, целое число
// коэффициент моточасов на стоянке для модели ТС, число с плавающей точкой
// коэффициент моточасов при движении для модели ТС, число с плавающей точкой
// id марки модели ТС, целое число
// информация о марке ТС
// id марки ТС, целое число
// название марки ТС, строка
// использование порта зажигания, булевое поле
// порт зажигания по умолчанию, целое число
// часовой пояс, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование скоростного датчика, булевое поле
// название, строка
// путь, строка
// id приращения, целое число
// уровень логирования, целое число
// id протокола, целое число
// id группы по умолчанию, целое число
// id модели по умолчанию, целое число
// id марки по умолчанию, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование источника сбора данных
PUT /daemon/receivers/{id}
Структура запроса:
PUT /daemon/receivers/20?token=mbs90lon2a8
id: id источника сбора данных
token: ключ доступа
Пример запроса:
Формат: json
{
"defaultEnginePort": 9874,
"defaultGroup": {
"id": 2123,
"name": "Car group",
"notes": "",
"organizationId": 9383
},
"defaultGroupId": 2123,
"defaultMark": {
"id": 7,
"name": "ASTON MARTIN"
},
"defaultMarkId": 7,
"defaultModel": {
"expenseOn100km": 11,
"id": 67,
"mark": {
"id": 7,
"name": "ASTON MARTIN"
},
"markId": 7,
"maxTank": 100,
"motohoursMove": 1,
"motohoursStop": 1,
"name": "RAPIDE"
},
"defaultModelId": 66,
"host": "12.154.36.9",
"id": 801,
"incrementId": 15,
"logLevel": 5,
"login": "login",
"mappings": [],
"name": "New receiver",
"password": "password",
"path": "path",
"port": 5874,
"protocol": {
"id": 21,
"listener": false,
"name": "autotracker",
"receiver": true,
"stable": true,
"title": "РНТ (АвтоТрекер)",
"writer": false
},
"protocolId": 25,
"reconnectTime": 5,
"timezone": 0,
"useAnalogGauges": false,
"useDinAdditionalGauges": true,
"useDinGauges": true,
"useEnginePort": false,
"useSpeedGauge": false
}
// порт зажигания по умолчанию, целое число
// информация о группе по умолчанию
// id группы по умолчанию, целое число
// название группы по умолчанию, строка
// примечания группы, строка
// id организации, к которой относится группа, целое число
// id группы, целое число
// информация о марке
// id марки ТС, целое число
// название марки ТС, строка
// id марки ТС, целое число
// информация о модели ТС по умолчанию
// расход топлива на 100 км, целое число
// id модели ТС по умолчанию, целое число
// информация о марке ТС
// id марки, целое число
// название марки, строка
// id марки, целое число
// вместимость топливного бака, целое число
// коэффициент моточасов на стоянке для модели ТС, число с плавающей точкой
// коэффициент моточасов при движении для модели ТС, число с плавающей точкой
// название, строка
// id модели ТС по умолчанию, строка
// хост, строка
// id источника сбора данных, целое число
// id приращения, целое число
// уровень логирования, целое число
// логин, строка
// картография
// название источника сбора данных, строка
// пароль, строка
// путь, строка
// порт, целое число
// информация о протоколе
// id протокола, целое число
// источник получения данных, булевое поле
// название, строка
// источник сбора данных, булевое поле
// стабильность источника, булевое поле
// заголовок, строка
// источник отправки данных, булевое поле
// id протокола, целое число
// время переподключения, целое число
// часовой пояс, целое число
// использование аналоговых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование цифровых датчиков, булевое поле
// использование порта зажигания, булевое поле
// использование скоростного датчика, булевое поле
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 20,
"host": "newserver.com",
"port": 6644,
"login": "login",
"password": "password",
"reconnectTime": 5,
"useEnginePort": false,
"defaultEnginePort": null,
"timezone": 0,
"useDinGauges": true,
"useDinAdditionalGauges": false,
"useAnalogGauges": false,
"useSpeedGauge": true,
"name": "Новое название источника",
"path": "path",
"incrementId": 10,
"logLevel": 5,
"defaultGroupId": 1945,
"defaultModelId": 2807,
"defaultMarkId": 2,
"protocolId": 21
}
// id источника сбора данных, целое число
// хост, строка
// порт, целое число
// логин, строка
// пароль, строка
// время переподлкючения, целое число
// использование порта зажигания, булевое поле
// значение порта зажигания по умолчанию, целое число
// часовой пояс, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование скоростного датчика, булевое поле
// название, строка
// путь, строка
// id приращения, целое число
// уровень логирования, целое число
// id группы по умолчанию, целое число
// id модели по умолчанию, целое число
// id марки по умолчанию, целое число
// id протокола, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление источников сбора данных
DELETE /daemon/receivers/{id}
Структура запроса:
DELETE /daemon/receivers/6?token=mbs90lon2a8
id: id источника сбора данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"delete":true
}
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество источников сбора данных
GET /daemon/receivers/count
Структура запроса:
GET /daemon/receivers/count?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
47
// количество источников сбора данных
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — listeners
Источники получения данных
Источники получения данных
GET /daemon/listeners
Структура запроса:
GET /daemon/listeners?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"port": 9996,
"timezone": 0,
"threads": 4,
"odometr": false,
"reconnectTime": 5,
"useDinGauges": true,
"useDinAdditionalGauges": false,
"useAnalogGauges": true,
"useSpeedGauge": true,
"name": "Название",
"incrementId": 0,
"logLevel": 7,
"maxDop": 0,
"useGaugeNullValue": false,
"protocolId": 17
},…]
// id источника получения данных, целое число
// порт, целое число
// часовой пояс, строка
// потоки, целое число
// используется ли одометр, булевое поле
// время переподключения, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование датчиков скорости, булевое поле
// название протокола, строка
// id приращения, целое число
// уровень логирования, целое число
// максимальное снижение точности, целое число
// учитывать нулевые значения, булевое поле
// id протокола, целое число
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация об источнике получения данных по ID
GET /daemon/listeners/{id}
Структура запроса:
GET /daemon/listeners/41?token=mbs90lon2a8
id: id источника получения данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 41,
"port": 9990,
"timezone": 0,
"threads": 4,
"odometr": false,
"reconnectTime": 5,
"useDinGauges": false,
"useDinAdditionalGauges": false,
"useAnalogGauges": false,
"useSpeedGauge": false,
"name": "Название",
"incrementId": 0,
"logLevel": 7,
"maxDop": 0,
"useGaugeNullValue": false,
"protocolId": 17
}
// id источника получения данных, целое число
// порт, целое число
// часовой пояс, строка
// потоки, целое число
// используется ли одометр, булевое поле
// время переподключения, целое число
// использование цифровых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование датчиков скорости, булевое поле
// название протокола, строка
// id приращения, целое число
// уровень логирования, целое число
// максимальное снижение точности, целое число
// учитывать нулевые значения, булевое поле
// id протокола, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление источника получения данных
POST /daemon/listeners
Структура запроса:
POST /daemon/listeners?token=mbs90lon2a8
token: ключ доступа
Пример запроса:
Формат: json
{
"incrementId": 10,
"logLevel": 5,
"mappings": [],
"maxDop": 25,
"name": "New listener",
"odometr": false,
"port": 6641,
"protocolId": 22,
"timezone": "0",
"useAnalogGauges": true,
"useDinAdditionalGauges": false,
"useDinGauges": true,
"useGaugeNullValue": true,
"useSpeedGauge": false
}
// id приращения, целое число
// уровень логирования, целое число
// картография, массив
// максимальное снижение точности, целое число
// название источника, строка
// использование одометра, булевое поле
// номер порта, целое число
// id протокола, целое число
// часовой пояс, целое число
// использование аналоговых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование цифровых датчиков, булевое поле
// учитывать нулевые значения, булевое поле
// использование датчиков скорости, булевое поле
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 1001,
"protocol": {
"id": 22,
"name": "egts",
"title": "ЭРА-ГЛОНАСС",
"listener": true,
"receiver": false,
"writer": true,
"stable": true
},
"port": 6641,
"timezone": 0,
"threads": 4,
"odometr": false,
"reconnectTime": 5,
"useDinGauges": true,
"useDinAdditionalGauges": false,
"useAnalogGauges": true,
"useSpeedGauge": false,
"name": "New listener",
"incrementId": 10,
"logLevel": 5,
"maxDop": null,
"useGaugeNullValue": null,
"protocolId": 22
}
// id получения источника данных, целое число
// информация о протоколе
// id протокола, целое число
// название протокола, строка
// заголовок, строка
// источник получения данных, булевое поле
// источник сбора данных, булевое поле
// источник отправки данных, булевое поле
// стабильность источника, булевое поле
// порт, целое число
// часовой пояс, целое число
// количество потоков, целое число
// использование одометра, булевое поле
// время переподключения, целое число
// использование цифровых датчиков, булевое поле
// использование цифровых дополнительных датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование датчиков скорости, булевое поле
// название, строка
// id приращения, целое число
// уровень логирования, целое число
// максимальное снижение точности, целое число
// учитывать нулевые значения, булевое поле
// id протокола, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование источника получения данных
PUT /daemon/listeners/{id}
Структура запроса:
PUT /daemon/listeners/15?token=mbs90lon2a8
token: ключ доступа
Пример запроса:
Формат: json
{
"id": 1001,
"incrementId": 5,
"logLevel": 5,
"mappings": [],
"maxDop": null,
"name": "New listener",
"odometr": false,
"port": 6641,
"protocol": {
"id": 22,
"listener": true,
"name": "egts",
"receiver": false,
"stable": true,
"title": "ЭРА-ГЛОНАСС",
"writer": true
},
"protocolId": 22,
"reconnectTime": 5,
"threads": 4,
"timezone": -6,
"useAnalogGauges": false,
"useDinAdditionalGauges": true,
"useDinGauges": false,
"useGaugeNullValue": null,
"useSpeedGauge": true
}
// id источника получения данных, целое число
// id приращения, целое число
// уровень логирования, целое число
// картография, массив
// максимальное снижение точности, целое число
// название источника, строка
// использование одометра, булевое поле
// номер порта, целое число
// протокол
// id протокола, целое число
// источник получения данных, булевое поле
// название, строка
// источник сбора данных, булевое поле
// стабильность, булевое поле
// заголовок, строка
// источник отправки данных, булевое поле
// максимальное снижение точности, целое число
// id протокола, целое число
// время переподключения, целое число
// количество потоков, целое число
// часовой пояс, целое число
// использование аналоговых датчиков, булевое поле
// использование дополнительных цифровых датчиков, булевое поле
// использование цифровых датчиков, булевое поле
// учитывать нулевые значения, булевое поле
// использование датчиков скорости, булевое поле
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 1001,
"port": 6641,
"timezone": -6,
"threads": 4,
"odometr": false,
"reconnectTime": 5,
"useDinGauges": false,
"useDinAdditionalGauges": true,
"useAnalogGauges": false,
"useSpeedGauge": true,
"name": "New listener",
"incrementId": 5,
"logLevel": 5,
"maxDop": null,
"useGaugeNullValue": null,
"protocolId": 22
}
// id получения источника данных, целое число
// порт, целое число
// часовой пояс, целое число
// количество потоков, целое число
// использование одометра, булевое поле
// время переподлкючения, целое число
// использование цифровых датчиков, булевое поле
// использование цифровых дополнительных датчиков, булевое поле
// использование аналоговых датчиков, булевое поле
// использование датчиков скорости, булевое поле
// название, строка
// id приращения, целое число
// уровень логирования, целое число
// максимальное снижение точности, целое число
// учитывать нулевые значения, булевое поле
// id протокола, целое число
Статус: 400 — ошибка в запросе
Формат: text/plain
Содержит описание ошибки
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление источников получения данных
DELETE /daemon/listeners/{id}
Структура запроса:
DELETE /daemon/listeners/6?token=mbs90lon2a8
id: id источника получения данных
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"delete":true
}
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество источников получения данных
GET /daemon/listeners/count
Структура запроса:
GET /daemon/listeners/count?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
11
// количество источников получения данных
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — jasper
JasperReports
Отчет для печати
GET /jreports/file/{name}
Структура запроса:
GET /jreports/file/filename?token=mbs90lon2a8
name: название файла
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Параметры для построения отчетов
GET /jreports/{id}/parameters
Структура запроса:
GET /jreports/29/parameters?token=mbs90lon2a8
id: id отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 2,
"description": "id",
"type": "int",
"name": "in_car_id",
"sourceQuery": null,
"prompt": false,
"lib": false,
"order": 1
},…]
// id параметра, целое число
// описание, строка
// тип, строка
// название, строка
// доступно ли поле к заполнению, булевое поле
// параметр, который требует предварительную загрузку списка значений, доступных для выбора (булевое поле)
// порядковый номер, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Значения параметров для построения отчетов
GET /jreports/{id}/parameters/{parameterId}/values
Структура запроса:
GET /jreports/29/parameters/1/values?token=mbs90lon2a8
id: id отчета
parameterId: id параметра отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"name": "Педаль сцепления"
},...]
// id параметра, целое число
// название параметра, строка
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Список расширенных отчетов
GET /jreports
Структура запроса:
GET /jreports?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 3,
"name": "table_report_update",
"type": 1
},…]
// id отчета, целое число
// название отчета, строка
// тип отчета, целое число
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Дополнительные расширенные отчеты
GET /jreports/extern
Структура запроса:
GET /jreports/extern?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"name": "Название отчета"
},…]
// id отчета, целое число
// название отчета, строка
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Параметры для построения дополнительных расширенных отчетов
GET /jreports/extern/{id}/parameters
Структура запроса:
GET /jreports/extern/4/parameters?token=mbs90lon2a8
id: id отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 4,
"description": "Описание",
"type": "int",
"name": "in_car_id",
"sourceQuery": null,
"prompt": false,
"lib": false,
"order": 1
},…]
// id параметра, целое число
// описание, строка
// тип, строка
// название, строка
// доступно ли поле к заполнению, булевое поле
// параметр, который требует предварительную загрузку списка значений, доступных для выбора (булевое поле)
// порядковый номер, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — reports
Комбоотчеты
Комбоотчет по группе
GET /reports/runs/group/{groupId}/{tsFrom}/{tsTo}
Структура запроса:
GET /reports/runs/group/1/1421787600000/1421844480000?token=mbs90lon2a8
groupId: id группы
tsFrom: время, начиная с которого необходимо построить отчет
tsTo: время окончания построения отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 1,
"sysrun": 0.0,
"billrun": 0.0
},...]
// id ТС, целое число
// системный пробег, число с плавающей точкой
// пробег по путевым листам, число с плавающей точкой
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Комбоотчет по списку ТС
GET /reports/runs/cars/{carIds}/{tsFrom}/{tsTo}
Структура запроса:
GET /reports/runs/cars/228/1421787600000/1421845500000?token=mbs90lon2a8
carIds: id ТС
tsFrom: время, начиная с которого необходимо построить отчет
tsTo: время окончания построения отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 228,
"sysrun": 0.0,
"billrun": 0.0
},...]
// id ТС, целое число
// системный пробег, число с плавающей точкой
// пробег по путевым листам, число с плавающей точкой
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Комбоотчет по списку ТС (POST запрос)
POST /reports/runs/cars/{tsFrom}/{tsTo}
Структура запроса:
POST /reports/runs/cars/1421787600000/1421845500000?token=mbs90lon2a8
tsFrom: время, начиная с которого необходимо построить отчет
tsTo: время окончания построения отчета
token: ключ доступа
Пример запроса:
Формат: xml
{
"cars": ["121", "122", "123"]
}
// идентификаторы ТС, по которым необходимо построить отчет
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 121,
"sysrun": 0.0,
"billrun": 0.0
},...]
// id группы, целое число
// системный пробег, число с плавающей точкой
// пробег по путевым листам, число с плавающей точкой
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Комбоотчет для конкретного ТС
GET /reports/runs/daily/{carId}/{tsFrom}/{tsTo}
Структура запроса:
GET /reports/runs/daily/121/1421787600000/1421845500000?token=mbs90lon2a8
carId: id ТС
tsFrom: время, начиная с которого необходимо построить отчет/p>
tsTo: время окончания построения отчета
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"date": "20.01.15",
"sysrun": 0.0,
"billrun": 0.0
},...]
// дата, строка
// системный пробег, число с плавающей точкой
// пробег по путевым листам, число с плавающей точкой
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — files
Файлы
Информация о файле
GET /files/{uuid}
Структура запроса:
GET /files/p189tc0i1f1pjb17j91k?token=mbs90lon2a8
uuid: id файла
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление файла
POST /files/upload
Структура запроса:
POST /files/upload?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"name": "p189tc0i1f1pjb17j91kphlia1qsc7.gif",
"status": "ok",
"uploaded": true
}
// название файла, строка
// статус, строка
// загружен ли файл, булевое поле
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — layers
Слои
Базовые слои
GET /layers/base
Структура запроса:
GET /layers/base?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"schemas": [{
"name": "Карта России",
"className": "new M.Rekod()",
"order": 0
},...],
"spaces": [{
"name": "Космоснимки Роскосмос",
"className": "new M.TileLayer",
"order": 0
},...]
}
// схемы
// название схемы, строка
// название класса, строка
// порядок, целое число
// космоснимки
// название схемы, строка
// название класса, строка
// порядок
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
AutoMap — rest — functional
Функционал геопортала
Обращение к функционалу геопорталу — GET запрос
Доступно только для пользователей с правами администрирования
GET /geoportal/*path
Структура запроса:
GET /geoportal/layers?token=mbs90lon2a8
path: путь к функционалу
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Обращение к функционалу геопортала — POST запрос
Доступно только для пользователей с правами администрирования
POST /geoportal/*path
Структура запроса:
POST /geoportal/layers?token=mbs90lon2a8
path: путь к функционалу
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки