Automap — rest — sockets
Сокеты
Подключение вебсокета
GET /ws
Структура запроса:
GET /ws?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Подключение сокета
GET /comet
Структура запроса:
GET /comet?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Отправление запроса через сокет
Доступно только для всевидящих администраторов
POST /comet/msg/$sessionId<[0-9a-z\-]+>
Структура запроса:
POST /comet/msg/dfd2134erfe?token=bw3ty3h46yth
sessionId: id сессии
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — daemon
Демон
Список доступных протоколов
GET /daemon/protocols
Структура запроса:
GET /daemon/protocols?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[
{
id: 1,
name: "protocol name",
title: "proto",
listener: true,
receiver: false,
writer: false,
stable: true
}
]
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Источники получения данных
GET /daemon/listeners
Структура запроса:
GET /daemon/listeners?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[
{
id: 401,
port: 123,
timezone: 4,
threads: 4,
odometr: true,
reconnectTime: 5,
useDinGauges: false,
useDinAdditionalGauges: true,
useAnalogGauges: false,
useSpeedGauge: false,
name: "Тест",
protocolId: 2
}
]
// массив источников получения данных
// id источника получения данных
// порт
// часовой пояс
// количество потоков
// одометр
// время переподключения
// использование цифровых датчиков
// использование дополнительных цифровых датчиков
// использование аналоговых датчиков
// использование скоростного датчика
// название
// id протокола
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Источник получения данных по id
GET /daemon/listeners/{id}
Структура запроса:
GET /daemon/listeners/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника получения данных
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
id: 401,
port: 123,
timezone: 4,
threads: 4,
odometr: true,
reconnectTime: 5,
useDinGauges: false,
useDinAdditionalGauges: true,
useAnalogGauges: false,
useSpeedGauge: false,
name: "Тест",
protocolId: 2
}
// id источника получения данных
// порт
// часовой пояс
// количество потоков
// одометр
// время переподключения
// использование цифровых датчиков
// использование дополнительных цифровых датчиков
// использование аналоговых датчиков
// использование скоростного датчика
// название
// id протокола
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Cоздание источника получения данных
Доступно только для пользователей с правами администратора
POST /daemon/listeners
Структура запроса:
POST /daemon/listeners?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
name: "234",
odometr: false,
port: "2345",
protocolId: "2",
timezone: "0",
useAnalogGauges: false,
useDinAdditionalGauges: false,
useDinGauges: false
}
// название
// одометр
// порт
// id протокола
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
id: 541
name: "Тест2"
odometr: false
port: 213
protocol{
id: 1
listener: true
name: "galileo"
receiver: false
stable: true
title: "Галилео"
writer: false
}
protocolId: 1
reconnectTime: 5
threads: 4
timezone: 0
useAnalogGauges: false
useDinAdditionalGauges: false
useDinGauges: false
useSpeedGauge: false
}
// id источника получения данных
// название
// одометр
// порт
// информация о протоколе
// id протокола
// получение данных
// название протокола
// сбор данных
// стабильность
// заголовок
// отправка данных
// id протокола
// время переподключения
// количество потоков
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование скоростного датчика
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование источника получения данных
Доступно только для пользователей с правами администратора
PUT /daemon/listeners/{id}
Структура запроса:
PUT /daemon/listeners/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника данных
Формат: json
{
id: 401
name: "Тест"
odometr: false
port: 1231
protocolId: 2
reconnectTime: 5
threads: 4
timezone: 4
useAnalogGauges: false
useDinAdditionalGauges: true
useDinGauges: false
useSpeedGauge: false
}
// id источника получения данных
// название
// одометр
// порт
// id протокола
// время переподключения
// количество потоков
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование скоростного датчика
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
id: 401
name: "Тест"
odometr: false
port: 1231
protocolId: 2
reconnectTime: 5
threads: 4
timezone: 4
useAnalogGauges: false
useDinAdditionalGauges: true
useDinGauges: false
useSpeedGauge: false
}
// id источника получения данных
// название
// одометр
// порт
// id протокола
// время переподключения
// количество потоков
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование скоростного датчика
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление источника получения данных
Доступно только для пользователей с правами администратора
DELETE /daemon/listeners/{id}
Структура запроса:
DELETE /daemon/listeners/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника получения данных
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество источников получения данных
GET /daemon/listeners/count
Структура запроса:
GET /daemon/listeners/count?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
3
// количество источников получения данных
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Сбор данных
GET /daemon/receivers
Структура запроса:
GET /daemon/receivers?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[
{
port: 5690,
login: "adminGR",
password: "6F5Wx4",
reconnectTime: 5,
useEnginePort: true,
defaultEnginePort: 2,
timezone: 0,
useDinGauges: true,
useDinAdditionalGauges: false,
useAnalogGauges: true,
useSpeedGauge: false,
name: null,
defaultGroupId: 1,
defaultModelId: 42,
defaultMarkId: 23,
protocolId: 27 id: 413,
host: "81.211.58.244",
}
]
// массив источников сбора данных
// порт
// логин
// пароль
// время переподключения
// использование порта зажигания
// порт зажигания по умолчанию
// часовой пояс
// использование цифровых датчиков
// использование дополнительных цифровых датчиков
// использование аналоговых датчиков
// использование скоростного датчика
// название
// id группы по умолчанию
// id модели по умолчанию
// id марки по умолчанию
// id протокола по умолчанию
// хост
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Источник сбора данных
GET /daemon/receivers/{id}
Структура запроса:
GET /daemon/receivers/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника сбора данных
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
id: 413,
host: "81.211.58.244",
port: 5690,
login: "adminGR",
password: "6F5Wx4",
reconnectTime: 5,
useEnginePort: true,
defaultEnginePort: 2,
timezone: 0,
useDinGauges: true,
useDinAdditionalGauges: false,
useAnalogGauges: true,
useSpeedGauge: false,
name: null,
defaultGroupId: 1,
defaultModelId: 42,
defaultMarkId: 23,
protocolId: 27
}
// id источника сбора данных
// хост
// порт
// логин
// пароль
// время переподключения
// использование порта зажигания
// порт зажигания по умолчанию
// часовой пояс
// использование цифровых датчиков
// использование дополнительных цифровых датчиков
// использование аналоговых датчиков
// использование скоростного датчика
// название
// id группы по умолчанию
// id модели по умолчанию
// id марки по умолчанию
// id протокола по умолчанию
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Создание источника сбора данных
Доступно только для пользователей с правами администратора
POST /daemon/receivers
Структура запроса:
POST /daemon/receivers?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
defaultEnginePort: "123",
defaultGroupId: "702",
defaultMarkId: "29",
defaultModelId: "108",
host: "213.ru",
login: "123",
name: "213",
password: "123123",
port: "213",
protocolId: "21",
reconnectTime: "5",
timezone: "0",
useAnalogGauges: false,
useDinAdditionalGauges: true,
useDinGauges: false,
useEnginePort: true,
useSpeedGauge: false
}
// порт зажигания по умолчанию
// id группы по умолчанию
// id марки по умолчанию
// id модели по умолчанию
// хост
// логин
// название
// пароль
// порт
// id протокола
// время переподключения
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование порта зажигания
// использование скоростного датчика
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
defaultEnginePort: "123",
defaultGroupId: "702",
defaultMarkId: "29",
defaultModelId: "108",
host: "213.ru",
id: 554,
login: "123",
name: "213",
password: "123123",
port: "213",
protocol{
id: 21,
listener: false,
name: "autotracker",
receiver: true,
stable: true,
title: "РНТ (АвтоТрекер)",
writer: false
}
protocolId: "21",
reconnectTime: "5",
timezone: "0",
useAnalogGauges: false,
useDinAdditionalGauges: true,
useDinGauges: false,
useEnginePort: true,
useSpeedGauge: false
}
// порт зажигания по умолчанию
// id группы по умолчанию
// id марки по умолчанию
// id модели по умолчанию
// хост
// id источника сбора данных
// логин
// название
// пароль
// порт
// информация о протоколе
// id протокола
// получение данных
// название протокола
// сбор данных
// стабильность
// заголовок
// отправка данных
// id протокола
// время переподключения
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование порта зажигания
// использование скоростного датчика
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование источника сбора данных
Доступно только для пользователей с правами администратора
PUT /daemon/receivers/{id}
Структура запроса:
PUT /daemon/receivers/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника сбора данных
Формат: json
{
defaultEnginePort: null
host: "213.ru"
id: 514
login: "213213"
name: "12321321"
password: "123213"
port: 12
reconnectTime: 5
timezone: 0
useAnalogGauges: false
useDinAdditionalGauges: false
useDinGauges: false
useEnginePort: false
useSpeedGauge: false
}
// порт зажигания по умолчанию
// хост
// id источника сбора данных
// логин
// название
// пароль
// порт
// время переподключения
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование порта зажигания
// использование скоростного датчика
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
defaultEnginePort: null,
host: "213.ru",
id: 514,
login: "213213",
name: "12321321",
password: "123213",
port: 12,
protocolId : 2,
reconnectTime: 5,
timezone: 0,
useAnalogGauges: false,
useDinAdditionalGauges: false,
useDinGauges: false,
useEnginePort: false,
useSpeedGauge: false
}
// порт зажигания по умолчанию
// хост
// id источника сбора данных
// логин
// название
// пароль
// порт
// id протокола
// время переподключения
// часовой пояс
// использование аналоговых датчиков
// использование дополнительных цифровых датчиков
// использование цифровых датчиков
// использование порта зажигания
// использование скоростного датчика
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление источника сбора данных
Доступно только для пользователей с правами администратора
DELETE /daemon/receivers/{id}
Структура запроса:
DELETE /daemon/receivers/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id источника сбора данных
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество источников сбора данных
GET /daemon/receivers/count
Структура запроса:
GET /daemon/receivers/count?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
4
// количество источников сбора данных
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Отправка данных
GET /daemon/writers
Структура запроса:
GET /daemon/writers?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[
{
id: 1401,
host: "1.1.1.1",
port: 1123,
path: "123",
needAuth: false,
authUser: null,
authPassword: null,
reconnectTime: 5,
resendAttempts: 3,
loggerTimeout: 60,
name: "11111",
rightId: null,
tagId: 1501,
protocolId: 13
}
]
// массив источников отправки данных
// id источника отправки данных
// хост
// порт
// путь
// требуется авторизация на сервере
// логин
// пароль
// время переподключения
// максимальное количество неудачных попыток отправки данных
// период времени, для которого будет подсчитано и записано в лог
// количество отправленных сообщений. Измеряется в секундах
// название
// id прав
// id метки
// id протокола
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Настройки отправки данных по id
GET /daemon/writers/{id}
Структура запроса:
GET /daemon/writers/{id}?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
id: 1401,
host: "1.1.1.1",
port: 1123,
path: "123",
needAuth: false,
authUser: null,
authPassword: null,
reconnectTime: 5,
resendAttempts: 3,
loggerTimeout: 60,
name: "11111",
rightId: null,
tagId: 1501,
protocolId: 13
}
// id источника отправки данных
// хост
// порт
// путь
// требуется авторизация на сервере
// логин
// пароль
// время переподключения
// максимальное количество неудачных попыток отправки данных
// период времени, для которого будет подсчитано и записано в лог
// количество отправленных сообщений. Измеряется в секундах
// название
// id прав
// id метки
// id протокола
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Создание настройки отправки данных
Доступно только для пользователей с правами администратора
POST /daemon/writers
Структура запроса:
POST /daemon/writers?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
host: "1.1.1.1",
name: "2121",
needAuth: false,
path: "123",
port: "123",
protocolId: "11",
reconnectTime: "5",
resendAttempts: "3",
rightId: "1063"
}
// хост
// название
// требуется авторизация на сервере
// путь
// порт
// id протокола
// время переподключения
// максимальное количество неудачных попыток отправки данных
// id прав
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
authPassword: null
authUser: null
host: "12.ru"
id: 1561
loggerTimeout: 60
name: "Тест1"
needAuth: false
path: "213"
port: 1233
protocol: {
id: 11
listener: true
name: "native"
receiver: false
stable: true
title: "Внутренний формат"
writer: true
}
protocolId: 11
reconnectTime: 5
resendAttempts: 3
right: {
admin: false
id: 43
name: "12345"
organization: {
id: 1
info: {
address: ""
email: ""
homepage: ""
inn: ""
kpp: ""
orgId: 1
phone: ""
}
mapAerialProvider: "MICROSOFT_AERIAL"
mapExtent: "55.712, 55.603, 49.4361, 48.73"
mapRoadProvider: "MAPKZN"
name: "ГрадоСервис ООО"
order: 100
toDelete: false
}
usersCount: 2
wheel: false
}
rightId: 43
tag: null
tagId: null
}
// пароль
// пользовател
// хост
// id
// период времени, для которого будет подсчитано и записано в лог
// количество отправленных сообщений. Измеряется в секундах
// название
// требуется авторизация на сервере
// путь
// порт
// информация о протоколе
// id протокола
// получение данных
// название протокола
// сбор данных
// стабильность
// заголовок
// отправка данных
// id протокола
// время переподключения
// максимальное количество неудачных попыток отправки данных
// администрирование
// id
// название
// информация об организации
// id организации
// адрес
// email
// домашняя страница
// ИНН
// КПП
// id организации
// телефон
// видимая часть карты(координаты левой нижней и правой верхней точек)
// провайдер карты дорог
// название
// порядок организации
// в процессе на удаление
// количество пользователей
// всевидящий
// id прав
// метка
// id метки
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование настройки отправки данных
Доступно только для пользователей с правами администратора
PUT /daemon/writers/{id}
Структура запроса:
PUT /daemon/writers/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id настройки отправки данных
Формат: json
{
authPassword: null
authUser: null
host: "12.ru"
id: 1481
loggerTimeout: 60
name: "1"
needAuth: false
path: "213"
port: 123
protocolId: 14
reconnectTime: 5
resendAttempts: 3
rightId: 43
tagId: null
}
// пароль
// логин
// хост
// id источника отправки данных
// период времени, для которого будет подсчитано и записано в лог
// количество отправленных сообщений. Измеряется в секундах
// название
// требуется авторизация на сервере
// путь
// порт
// id протокола
// время переподключения
// максимальное количество неудачных попыток отправки данных
// id прав
// id метки
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
authPassword: null
authUser: null
host: "12.ru"
id: 1561
loggerTimeout: 60
name: "Тест11"
needAuth: false
path: "213"
port: 1233
protocolId: 11
reconnectTime: 5
resendAttempts: 3
rightId: 43
tagId: null
}
// пароль
// пользователь
// хост
// id
// период времени, для которого будет подсчитано и записано в лог
// количество отправленных сообщений. Измеряется в секундах
// название
// требуется авторизация на сервере
// путь
// порт
// id протокола
// время переподключения
// максимальное количество неудачных попыток отправки данных
// id прав
// id метки
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление настройки отправки данных
Доступно только для пользователей с правами администратора
DELETE /daemon/writers/{id}
Структура запроса:
DELETE /daemon/writers/{id}?token=bw3ty3h46yth
token: ключ доступа
{id}: id настройки отправки данных
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество настроек отправки данных
GET /daemon/writers/count
Структура запроса:
GET /daemon/writers/count?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
4
// количество настроек отправки данных
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — motoHours
Моточасы
Моточасы конкретного ТС
GET /cars/{id}/motohours
Структура запроса:
GET /cars/3973/motohours?token=bw3ty3h46yth
id: id ТС
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"carId": 3973,
"stop": 10,
"move": null
}
// id ТС, целое число
// коэффициент моточасов на стоянке, целое число
// коэффициент моточасов при движении, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление моточасов
POST /cars/{id}/motohours
Структура запроса:
POST /cars/1887/motohours?token=gtr543lpas87
id: id ТС
token: ключ доступа
Пример запроса:
Статус: 200 — успешное выполнение
Формат: json
{
"stop": 4,
"move": 13
}
// коэффициент моточасов на стоянке, целое число
// коэффициент моточасов при движении, целое число
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"carId": 1887,
"stop": null,
"move": null
}
// id ТС, целое число
// коэффициент моточасов на стоянке, целое число
// коэффициент моточасов при движении, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование значения моточасов
Доступно только для пользователей с правами администратора
PUT /cars/{id}/motohours
Структура запроса:
PUT /cars/4/motohours?token=bw3ty3h46yth
id: id ТС
token: ключ доступа
Формат: json
{
"move": null,
"stop": 11
}
// коэффициент моточасов при движении, целое число
// коэффициент моточасов на стоянке, целое число
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"carId": 4,
"move": null,
"stop": 11
}
// id ТС, целое число
// коэффициент моточасов при движении, целое число
// коэффициент моточасов на стоянке, целое число
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление значения моточасов
Доступно только для пользователей с правами администратора
DELETE /cars/{id}/motohours
Структура запроса:
DELETE /cars/157/motohours?token=bw3ty3h46yth
id: id ТС
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — putLists
Путевые листы
Путевые листы по всем ТС за определенный промежуток времени
GET /putlists/{timestampFrom}/{timestampTo}
Структура запроса:
GET /putlists/1385064000000/1385150399000?token=bw3ty3h46yth
timestampFrom: начало промежутка
timestampTo: конец промежутка
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 3994,
"dateFrom": 1385064000000,
"dateTill": 1385150399000,
"distance": 0
},...]
// id ТС, целое число
// начальное время, timestamp
// конечное время, timestamp
// расстояние, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Путевые лист ТС за определенный период времени
GET /putlists/$carId<[0-9]+>/{timestampFrom}/{timestampTo}
Структура запроса:
GET /putlists/3/1383768000000/1383854399000?token=bw3ty3h46yth
carId: id ТС
timestampFrom: начало промежутка
timestampTo: конец промежутка
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 3,
"dateFrom": 1383768000000,
"dateTill": 1383854399000,
"distance": 240
},...]
// id ТС, целое число
// начальное время, timestamp
// конечное время, timestamp
// расстояние, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Создание путевого листа
Доступно только для пользователей с правами администратора
POST /putlists
Структура запроса:
POST /putlists?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
"carId": 2,
"dateFrom": 1383768000000,
"dateTill": 1383854399000,
"distance": 24
}
// id ТС, целое число
// начальное время, timestamp
// конечное время, timestamp
// расстояние, целое число
Ответ:
Статус: 200 — успешное выполнение
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — geozones
Геозоны
Получение списка геозон
GET /zones
Структура запроса:
GET /zones?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 17,
"geom": {
"type": "Polygon",
"coordinates": [[47.85021186,55.99901992],
[47.85045862,55.99903792],
[47.85022259,55.99921791],
[47.85021186,55.99901992]]
},
"name": "Геозона",
"color": "66ff33",
"active": true,
"isBase": false,
"organizationId": 10,
"coordinates":[[47.85021185874939,55.99901992242232],
[47.85045862197876,55.99903792134154],
[47.85022258758545,55.9992179100726],
[47.85021185874939,55.99901992242232]],
"carsIds": []
},...]
// id геозоны, целое число
// информация о геометрии, объект
// тип геометрии, строка
// координаты
// название, строка
// цвет, строка
// является активной, булева переменная
// является базой, булева переменная
// id организации, целое число
// координаты, массив
// id ТС, массив
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление геозоны
Доступно только для пользователей с правами администратора
POST /zones
Структура запроса:
POST /zones?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
"cars": [],
"color": "33eeff",
"geom": {
"coordinates": [[48.451080322265625,56.9752985148217],
[48.871307373046875,56.9820339049709]],
"type": "Polygon"
},
"isBase": true,
"name": "Новая зона контроля",
"organizationId": 1
}
// id ТС, целое число
// цвет геозоны, строка
// информация о геометрии
// координаты, массив
// тип геометрии, строка
// является базой, булева переменная
// название зоны, строка
// id организации, целое число
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 230,
"geom": {
"type": "Polygon",
"coordinates": [[48.45108032,56.97529851],
[48.87130737,56.9820339]]
},
"name": "Новая зона контроля",
"color": "33eeff",
"active": true,
"isBase": true,
"organizationId": 1,
"coordinates": [[48.451080322265625,56.9752985148217],
[48.871307373046875,56.9820339049709]],
"carsIds": []
}
// id геозоны, целое число
// информация о геометрии, объект
// тип геометрии, строка
// координаты, массив
// название, строка
// цвет, строка
// является активной, булева переменная
// является базой, булева переменная
// id организации, целое число
// координаты, массив
// id ТС, массив
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование геозоны
Доступно только для пользователей с правами администратора
PUT /zones/{id}
Структура запроса:
PUT /zones/621?token=gtr543lpas87
id: id геозоны
token: ключ доступа
Структура запроса:
Формат: json
{
"cars": [631,224,634,625,582],
"color": "ffb833",
"geom": {
"coordinates": [[37.65915871,55.74218747],
[37.65933037,55.74081045],
[37.66147614,55.74131778]],
"type": "Polygon"
},
"isBase": false,
"name": "Новое название зоны",
"organizationId": 1
}
// список ТС, прикрепленных к зоне
// цвет зоны, строка
// информация о геометрии, объект
// координаты, массив
// тип геометрии, строка
// является базой, булева переменная
// название зоны, строка
// id организации, целое число
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 621,
"geom": {
"type": "Polygon",
"coordinates": [[37.65915871,55.74218747],
[37.65933037,55.74081045],
[37.66147614,55.74131778]]
},
"name": "Новое название зоны",
"color": "ffb833",
"active": true,
"isBase": false,
"organizationId": 1,
"coordinates": [[37.65915871,55.74218747],
[37.65933037,55.74081045],
[37.66147614,55.74131778]],
"carsIds": [631,224,634,625,582]
}
// id геозоны, целое число
// информация о геометрии, объект
// тип геометрии, строка
// координаты, массив
// название геозоны, строка
// цвет геозоны, строка
// активность геозоны, булева переменная
// является базой, булева переменная
// id организации, целое число
// координаты, массив
// id ТС, массив
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление геозоны
Доступно только для пользователей с правами администратора
DELETE /zones/id
Структура запроса:
DELETE /zones/6?token=bw3ty3h46yth
id: id геозоны
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Выбранные ТС для геозоны
GET /zones/id/cars
Структура запроса:
GET /zones/1121/cars?token=bw3ty3h46yth
id: id геозоны
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 1,
"inZone": true,
"zoneId": 1121
},...]
// id ТС, целое число
// ТС находится в геозоне, булевое поле
// id геозоны, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Принадлежность ТС к геозонам
GET /zones/cars
Структура запроса:
GET /zones/cars?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"inZone": false,
"carId": 4077,
"zoneId": 1201
},...]
// ТС находится в геозоне, булевое поле
// id ТС, целое число
// id геозоны, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — gauges
Датчики
Датчики определенного ТС
GET /cars/{id}/gauges
Структура запроса:
GET /cars/4357/gauges?token=bw3ty3h46yth
id: id ТС
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"carId": 4357,
"glonassId": 909060,
"port": 23,
"name": "Название датчика",
"categoryId": 2,
"typeId": 41,
"analogToDin": false,
"din": false,
"dinInvert": false,
"analog": 62.0,
"updateData": 1428327427000,
"id": 1448,
"analogMin": null,
"analogMax": null,
"analogStep": null,
"analogAlarm": false,
"dinAlarm": false
},...]
// id ТС, целое число
// ГЛОНАСС id, целое число
// порт, целое число
// название датчика, строка
// id категории датчика, целое число
// id типа датчика, целое число
// аналоговый в цифровой, булевое поле
// цифровой, булевое поле
// цифровой инвертированный, булевое поле
// значение аналогового датчика, число с плавающей точкой
// дата обновления, timestamp
// id датчика, целое число
// аналоговый, с фиксацией события меньше, чем значение данного поля
// аналоговый, с фиксацией события больше, чем значение данного поля
// аналоговый, с фиксацией события при изменении шага меньше чем значение поля
// оповещение по аналоговому датчику, булевое поле
// оповещение по цифровому датчику, булевое поле
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Добавление датчика ТС
Доступно только для пользователей с правами администратора
POST /cars/{id}/gauges
Структура запроса:
POST /cars/4297/gauges?token=bw3ty3h46yth
id: id ТС
token: ключ доступа
Пример запроса:
{
"categoryId": "2",
"name": "Новый датчик",
"unitName": "Секунды"
}
// id категории датчика, целое число
// название датчика, строка
// единица измерения, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 381,
"name": "Новый датчик",
"dinAlarm": false,
"unitName": "Секунды",
"port": null,
"systemType": 0,
"categoryId": 2
}
// id датчика, целое число
// название датчика, строка
// оповещение, булевое поле
// единица измерения, строка
// номер порта, целое число
// тип системы, целое число
// id категории, целое число
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Снятие датчика с ТС
Доступно только для пользователей с правами администратора
DELETE /cars/{carid}/gauges/{port}/{typeid}
Структура запроса:
DELETE /cars/59/gauges/1334/2?token=bw3ty3h46yth
carId: id ТС
port: порт
typeId: id типа
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Категории датчиков
GET /gauges/categories
Структура запроса:
GET /gauges/categories?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 1,
"name": "Цифровой",
"shortName": "din"
},...]
// id категории, целое число
// название категории, строка
// сокращенное название категории
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Типы датчиков
GET /gauges/types
Структура запроса:
GET /gauges/types?token=bw3ty3h46yth
token: ключ доступа
Параметры фильтрации
GET /gauges/types?types.port=26&dinAlarm=true
name: получение списка типов датчиков по названию
category: поиск типов датчиков, принадлежащих хотя бы одной из заданных категорий
dinAlarm: получение списка типов датчиков, являющиеся цифровыми с оповещениями или нет, в соответствии заданному булевому значению
unitName: поиск типов датчиков по названию единиц измерения
types.port: поиск типов датчиков по номеру порта
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id": 2,
"name": "Название датчика",
"dinAlarm": false,
"unitName": null,
"port": null,
"categoryId": 2
},...]
// id типа, целое число
// название типа, строка
// цифровой с оповещением, булевое поле
// единицы измерения, строка
// порт, целое число
// id категории, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Создание датчика
Доступно только для пользователей с правами администратора
POST /gauges/types
Структура запроса:
POST /gauges/types?token=bw3ty3h46yth
token: ключ доступа
Формат: json
{
"categoryId": 3,
"name": "название датчика"
}
// id категории, целое число
// название датчика, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"categoryId": 3,
"dinAlarm": false,
"id": 243,
"name": "название датчика",
"port": null,
"unitName": null
}
// id категории, целое число
// цифровой с оповещением, булевое поле
// id датчика, целое число
// название датчика, строка
// порт, целое число
// единицы измерения, строка
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Редактирование датчика
Доступно только для пользователей с правами администратора
PUT /gauges/types/{id}
Структура запроса:
PUT /gauges/types/14?token=bw3ty3h46yth
id: id типа датчика
token: ключ доступа
Формат: json
{
"categoryId": 4,
"dinAlarm": false,
"id": 243,
"name": "test",
"port": null,
"unitName": null
}
// id категории, целое число
// цифровой с оповещением, булевое поле
// id датчика, целое число
// название датчика, строка
// порт, целое число
// единицы измерения, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"categoryId": 4,
"dinAlarm": false,
"id": 243,
"name": "test",
"port": null,
"unitName": null
}
// id категории, целое число
// цифровой с оповещением, булевое поле
// id датчика, целое число
// название датчика, строка
// порт, целое число
// единицы измерения, строка
Статус: 400 — ошибка в запросе
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление датчика
Доступно только для пользователей с правами администратора
DELETE /gauges/types/{id}
Структура запроса:
DELETE /gauges/types/3?token=bw3ty3h46yth
id: id типа датчика
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Датчики, которые выводят оповещения на экран
GET /gauges/alarm
Структура запроса:
GET /gauges/alarm?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
[{
"id":1,
"unitName": null,
"dinAlarm": true,
"analogMin": null,
"analogMax": null,
"analogStep": null,
"analogAlarm": false,
"dinInvert": true,
"analogToDin": false,
"autoDisable": null,
"disableTimeout": null,
"disablePeriodStart": null,
"disablePeriodEnd": null,
"name": "название датчика",
"port": 66,
"carId": 4158,
"categoryId": 1,
"typeId": 46
},...]
// id датчика, целое число
// единица измерения, строка
// цифровой с оповещением, булевое поле
// аналоговый, с фиксацией события меньше чем значение данного поля, булевое поле
// аналоговый, с фиксацией события больше чем значение данного поля, булевое поле
// аналоговый, с фиксацией события при изменении шага меньше чем значение поля
// аналоговый с оповещением, булевое поле
// инвертировать цифровой, булевое поле
// аналоговый в цифровой, булевое поле
// автоматическое отключение, булевое поле
// отключить начало периода, булевое поле
// отключить конец периода, булевое поле
// название датчика, строка
// порт, целое число
// id ТС, целое число
// id категории, целое число
// id типа, целое число
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — geocode
Геопоиск
Геопоиск
GET /geocode/{lat}/{lon}
Структура запроса:
GET /geocode/{lat}/{lon}?token=bw3ty3h46yth
token: ключ доступа
{lat}: широта
{lon}: долгота
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
distance: 8.477096557617188
kind: 10
label: "Республика Татарстан, Казань, улица Чистопольская"
lat: 55.81796267612046
lng: 49.13760236202698
}
// расстояние
// тип объекта
// название
// широта
// долгота
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — appInfo
Информация о приложении
Версия приложения
GET /version
Структура запроса:
GET /version?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
2.2-SNAPSHOT-214
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Получение текущей конфигурации приложения
GET /config
Структура запроса:
GET /config ?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
port: "9000",
monitor: {
showGroupInPopup: true,
carsUpdateTime: 30,
onlyActiveCars: true,
stayActive: 60,
showMarkInPopup: false,
showOrgInPopup: true,
setInactiveInZone: true
}
}
// порт
// показать группу в всплывающем окне
// время обновления ТС
// только активные ТС
// пребывание в активности
// показать марку в всплывающем окне
// показать организацию в всплывающем окне
// установить неактивные ТС в геозону
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Статистика
GET /statistics
Структура запроса:
GET /statistics?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
cars: {
active: 0,
total: 154
},
users: {
active: 1,
total: 33,
connections: 1
},
organizations:
[
{
name: "Организация",
cars: {
active: 0,
total: 1
}
}
],
tags:
[
{
name: "30",
cars: {
active: 0,
total: 1
}
}
]
}
// количество активных ТС
// общее количество ТС
// количество активных пользователей
// общее количество пользователей
// количество подключений от всех пользователей в текущее время
// массив организаций
// название организации
// количество активных ТС данной организации
// общее количество ТС данной организации
// массив меток
// название метки
// количество активных ТС
// общее количество ТС
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Automap — rest — calibration
Калибровка
Калибровка ТС
GET /cars/{carId}/gauges/{typeId}/{port}/calibration
Структура запроса:
GET /cars/196/gauges/3/1547?token=bw3ty3h46yth
сarId: id ТС
typeId: id типа датчика
port: порт
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"calibration": [{
"in":1,
"out":1
}],
"invertThreshold": false,
"isConverter": false,
"threshold": 0,
"unitName": "km"
}
// калибровка, объект
// вход, целое число
// выход, целое число
// инвертирование порога, булевое поле
// конвертирование, булевое поле
// порог, целое число
// единицы измерения, строка
Статус: 404 — объект не найден
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Изменение калибровки
Доступно только для пользователей с правами администратора
POST /cars/{carId}/gauges/{typeId}/{port}/calibration
Структура запроса:
POST /cars/39/gauges/11/1228/calibration?token=bw3ty3h46yth
сarId: id ТС
typeId: id типа датчика
port: порт
token: ключ доступа
Формат: json
{
"calibration":[{
"in": 1,
"out": 1
}],
"isConverter": false,
"unitName": "km"
}
// калибровка, объект
// вход, целое число
// выход, целое число
// конвертирование, булевое поле
// единицы измерения, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"calibration":[{
"in": 1,
"out": 1
}],
"invertThreshold": false,
"isConverter": false,
"threshold": 0,
"unitName": "km"
}
// калибровка, объект
// вход, целое число
// выход, целое число
// инвертировать порог, булевое поле
// конвертирование, булевое поле
// порог, целое число
// единицы измерения, строка
Статус: 400 — ошибка в запросе
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки