Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/01/28 12:59
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -1,11 +1,9 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 -**Содержание страницы:** 3 +**Содержание страницы:**\ 4 4 ))) 5 5 6 -{{toc/}} 7 7 8 - 9 9 = (% style="color:#000000; font-size:16px" %)**Действующие ограничения**(%%) = 10 10 11 11 (% style="color:#000000" %)−(%%) **Между запросами должна быть пауза в 1 секунду** (превышение отвергается системой с уведомлением о превышении частоты запросов). ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!15 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 17 + 18 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 19 + 20 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 21 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 24 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 25 +((( 26 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 27 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 28 +))) 22 22 23 23 (% class="box successmessage" %) 24 24 ((( ... ... @@ -44,12 +44,8 @@ 44 44 45 45 (% lang="en-US" %) 46 46 (% style="color:#000000" %){ 47 - 48 -(% lang="en-US" %) 49 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 50 - "User": "testuser" , ~/~/ имя пользователя 51 - 52 -(% lang="en-US" %) 54 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 55 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 66 +(% class="wikigeneratedid" %) 67 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 68 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -173,7 +173,6 @@ 173 173 { 174 174 "agentId": "",(% style="color:#000000" %) (%%) 175 175 "parentId": "", 176 - "parentName": "string", 177 177 "name": "string", 178 178 "fullName": "string", 179 179 "agentInfoType": 0, ... ... @@ -184,7 +184,6 @@ 184 184 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 185 185 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 186 186 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 187 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 188 188 |(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 189 189 |(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 190 190 |(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) ... ... @@ -228,7 +228,6 @@ 228 228 "bankKS": "string" ~/~/ корр. счёт 229 229 } 230 230 231 - 232 232 Ответ: 233 233 234 234 { ... ... @@ -422,7 +422,6 @@ 422 422 ], 423 423 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 424 424 } 425 - 426 426 { 427 427 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 428 428 "lastName": "string", ... ... @@ -436,12 +436,8 @@ 436 436 437 437 (% style="text-align:left" %) 438 438 (% style="color:#000000; font-weight:normal" %)Ответ: 439 - 440 -(% style="text-align:left" %) 441 -(% style="color:#000000; font-weight:normal" %){ 442 - 443 -(% style="text-align:left" %) 444 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 441 +{ 442 + "id": "" , ~/~/ ID пользователя 445 445 "lastName": "" , ~/~/ Фамилия , 446 446 "firstName": "" , ~/~/ Имя 447 447 "position": "" , ~/~/ Должность ... ... @@ -458,11 +458,9 @@ 458 458 "kind": "" , ~/~/ тип аутентификации 459 459 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 460 460 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 459 +} 461 461 462 -(% style="text-align:left" %) 463 -(% style="color:#000000; font-weight:normal" %)} 464 464 465 - 466 466 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 467 467 468 468 (% class="box infomessage" %) ... ... @@ -482,19 +482,16 @@ 482 482 483 483 (% style="color:#000000" %)Параметры в теле запроса (JSON): 484 484 485 -(% style="color:#000000" %){ 486 - 481 +(% style="color:#000000" %){(%%) 487 487 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 488 488 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 489 489 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 490 490 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 491 - 492 492 (% style="color:#000000" %)} 493 493 494 494 (% style="color:#000000" %)Ответ: 495 495 496 496 (% style="color:#000000" %){ (%%) 497 - 498 498 "id": "" , ~/~/ идентификатор пользователя 499 499 "lastName": "" , ~/~/ фамилия 500 500 "firstName": "" , ~/~/ имя ... ... @@ -508,7 +508,6 @@ 508 508 "sessionDuration":"", ~/~/ длительность сессии в минутах 509 509 "status": "1", ~/~/ статус пользователя 510 510 "lastLogged": "", ~/~/ дата/время последней авторизации 511 - 512 512 (% style="color:#000000" %)} 513 513 514 514 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -582,10 +582,8 @@ 582 582 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 583 583 584 584 (% lang="en-US" style="text-align:left" %) 585 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 586 - 587 -(% lang="en-US" style="text-align:left" %) 588 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 577 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 578 + "id": "" , ~/~/ ID пользователя 589 589 "lastName": "" , ~/~/ фамилия 590 590 "firstName": "" , ~/~/ имя 591 591 "position": "" , ~/~/ должность ... ... @@ -607,9 +607,7 @@ 607 607 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 608 608 }, 609 609 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 610 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 611 - 612 -(% lang="en-US" style="text-align:left" %) 600 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 613 613 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 614 614 615 615 (% lang="en-US" style="text-align:left" %) ... ... @@ -616,10 +616,8 @@ 616 616 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 617 617 618 618 (% lang="en-US" style="text-align:left" %) 619 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 620 - 621 -(% lang="en-US" style="text-align:left" %) 622 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 607 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 608 + "id": "" , ~/~/ идентификатор пользователя 623 623 "lastName": "" , ~/~/ фамилия 624 624 "firstName": "" , ~/~/ имя 625 625 "position": "" , ~/~/ должность ... ... @@ -640,10 +640,8 @@ 640 640 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 641 641 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 642 642 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 629 +} 643 643 644 -(% lang="en-US" style="text-align:left" %) 645 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 646 - 647 647 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 648 648 649 649 (% class="box warningmessage" %) ... ... @@ -663,12 +663,10 @@ 663 663 664 664 (% style="color:#000000" %)Параметры в теле запроса (JSON): 665 665 666 -(% style="color:#000000" %){ 667 - 650 +(% style="color:#000000" %){(%%) 668 668 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 669 669 "description": "" , ~/~/ описание 670 670 "data": "" , ~/~/ данные, связанные со сменой статуса 671 - 672 672 (% style="color:#000000" %)} 673 673 674 674 (% style="text-align:left" %) ... ... @@ -690,7 +690,7 @@ 690 690 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 691 691 692 692 [ 693 - 675 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 694 694 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 695 695 ] 696 696 ... ... @@ -996,7 +996,7 @@ 996 996 997 997 Ответ: В случае успеха **Success 200** 998 998 999 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 981 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1000 1000 1001 1001 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1002 1002 ... ... @@ -1032,19 +1032,15 @@ 1032 1032 "deviceTypeName": "", ~/~/ Название типа устройства 1033 1033 "sim1": "", ~/~/ Номер SIM1 1034 1034 "sim2": "", ~/~/ Номер SIM2 1035 - 1036 1036 "parentId": "", ~/~/ ID клиента-родителя 1037 1037 "parentName": "", ~/~/ Наименование клиента-родителя 1038 1038 "modelId": "", ~/~/ ID модели объекта 1039 1039 "modelName": "", ~/~/ Имя модели объекта 1040 - 1041 1041 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1042 1042 "unitName": "string", ~/~/ Наименование подразделения 1043 1043 "status": 0, ~/~/ Статус объекта 1044 - 1045 1045 "createdAt": "", ~/~/ Дата создания объекта 1046 1046 }, 1047 - 1048 1048 "customFields": [ ~/~/ Произвольные поля 1049 1049 { 1050 1050 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1067,8 +1067,7 @@ 1067 1067 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1068 1068 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1069 1069 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1070 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1071 - 1048 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1072 1072 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1073 1073 "mileageCoeff": 0, ~/~/ коэффициент пробега 1074 1074 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1098,7 +1098,6 @@ 1098 1098 "retries": 0 ~/~/ Количество попыток 1099 1099 } 1100 1100 ], 1101 - 1102 1102 "sensors": [ ~/~/ Датчики 1103 1103 { 1104 1104 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1139,31 +1139,19 @@ 1139 1139 }, 1140 1140 1141 1141 ~/~/ Характерные для произвольного: 1142 - 1143 1143 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1144 - 1145 1145 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1146 - 1147 1147 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1148 - 1149 1149 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1150 - 1151 1151 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1152 - 1153 1153 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1154 - 1155 1155 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1156 - 1157 1157 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1158 - 1159 1159 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1160 - 1161 1161 ~/~/ "ValueOn": "Вкл.", 1162 - 1163 1163 ~/~/ "ValueOff": "Выкл." 1164 1164 "summaryMaxValue": 0 ~/~/ Макс. значение 1165 1165 } 1166 - 1167 1167 "drivers": [ ~/~/ Водители 1168 1168 { 1169 1169 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1172,7 +1172,6 @@ 1172 1172 "isDefault": true ~/~/ По умолчанию 1173 1173 } 1174 1174 ], 1175 - 1176 1176 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1177 1177 { 1178 1178 "id": "", ~/~/ ID задания ... ... @@ -1189,8 +1189,7 @@ 1189 1189 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1190 1190 } 1191 1191 ], 1192 - 1193 - "statusHistory": [ ~/~/ История статусов 1155 +"statusHistory": [ ~/~/ История статусов 1194 1194 { 1195 1195 "status": 0, 1196 1196 "date": "2023-05-22T09:57:39.562Z", ... ... @@ -1198,7 +1198,6 @@ 1198 1198 "additionalInfo": "string" 1199 1199 } 1200 1200 ] 1201 - 1202 1202 } 1203 1203 ))) 1204 1204 ... ... @@ -1208,6 +1208,144 @@ 1208 1208 (% style="text-align:left" %) 1209 1209 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1210 1210 1172 + 1173 +== **Импортировать историю ТС (Асинхронный запрос)** == 1174 + 1175 +(% class="box successmessage" %) 1176 +((( 1177 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1178 +))) 1179 + 1180 +(% style="color:#000000" %)Метод запроса: **POST** 1181 + 1182 +(% style="color:#000000" %)URL запроса: (%%)**https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1183 + 1184 +(% style="color:#000000" %)Параметр запроса: {__**vehicleid}**__ - идентификатор транспортного средства 1185 + 1186 + 1187 +Ответ: 1188 + 1189 +{ 1190 + 1191 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1192 + 1193 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1194 + 1195 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1196 + 1197 + "Message": "string", ~/~/ Информация о выполнении запроса 1198 + 1199 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1200 + 1201 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1202 + 1203 + "Data": "string" ~/~/ Данные 1204 + 1205 +} 1206 + 1207 + 1208 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1209 + 1210 +(% class="box infomessage" %) 1211 +((( 1212 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1213 +))) 1214 + 1215 +(% style="color:#000000" %)Метод запроса: **GET** 1216 + 1217 +(% style="color:#000000" %)URL запроса: (%%)https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1218 + 1219 +(% style="color:#000000" %)Параметр запроса: {(%%)**requestId(% style="color:#000000" %)__}__(%%)**(% style="color:#000000" %) - (%%)Уникальный идентификатор запроса 1220 + 1221 + 1222 +Ответ: 1223 + 1224 +{ 1225 + 1226 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1227 + 1228 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1229 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1230 + 1231 + "Message": "string", ~/~/ Информация о выполнении запроса 1232 + 1233 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1234 + 1235 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1236 + 1237 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1238 + 1239 + "Data": "string" ~/~/ Данные 1240 + 1241 +} 1242 + 1243 + 1244 +== **Отправить команду на терминал** == 1245 + 1246 +(% class="box successmessage" %) 1247 +((( 1248 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1249 +))) 1250 + 1251 +Команда для отправки на тс. 1252 + 1253 +{ 1254 +"id": "", ~/~/идентификатор произвольного поля 1255 +"command": "", ~/~/ Текст команды 1256 +"retries": "", ~/~/ Количество попыток 1257 +"idTemplate": "" ~/~/ ID шаблона команды 1258 +} 1259 + 1260 + 1261 +== **Получить ответ на отправленную на ТС команду** == 1262 + 1263 +(% class="box infomessage" %) 1264 +((( 1265 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1266 +))) 1267 + 1268 +Идентификатор команды: cmdid 1269 + 1270 +Запрос от терминала на ответ команды 1271 + 1272 +Пример ответ от терминала: 1273 + 1274 +ID= "" ~/~/ идентификатор произвольного поля 1275 +Soft="" ~/~/ версия софта 1276 +GPS=4 ~/~/ тип трекера 1277 +Time=11:05:43 28.06.24 ~/~/ время запроса 1278 +Lat=45.056221 ~/~/ широта 1279 +Lon=39.035938 ~/~/ долгота 1280 +Speed=0.0 ~/~/ скорость 1281 +Course=181.4 ~/~/направление 1282 + 1283 +((( 1284 +== **Список отправленных объекту команд с ответами** == 1285 + 1286 +(% class="box infomessage" %) 1287 +((( 1288 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1289 +))) 1290 + 1291 +Идентификатор ТС: vehicleId 1292 + 1293 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1294 + 1295 +Пример ответа терминала 1296 + 1297 +[ 1298 +{ 1299 +"id": "", ~/~/ идентификатор пользователя 1300 +"commandText": "", ~/~/Текст команды. 1301 +"templateId": "", ~/~/Идентификатор шаблона 1302 +"updated": "", ~/~/ Время отправки 1303 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1304 +"answer": "", ~/~/ Ответ терминала. 1305 +"status": "" ~/~/ Статус отправки 1306 +} 1307 +] 1308 +))) 1309 + 1211 1211 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1212 1212 1213 1213 (% class="box successmessage" %) ... ... @@ -1225,8 +1225,7 @@ 1225 1225 1226 1226 (% style="color:#000000" %)Параметры в теле запроса (JSON): //Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON 1227 1227 1228 -(% style="color:#000000" %){ 1229 - 1327 +(% style="color:#000000" %){(%%) 1230 1230 "parentId": "" , ~/~/ ID клиента 1231 1231 "name": "" , ~/~/ имя ТС 1232 1232 "imei": "" , ~/~/ IMEI ... ... @@ -1247,7 +1247,6 @@ 1247 1247 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1248 1248 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1249 1249 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1250 - 1251 1251 "mileageCalcMethod": 0, 1252 1252 "mileageCoeff": 0, 1253 1253 "locationByCellId": true, ... ... @@ -1280,7 +1280,6 @@ 1280 1280 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1281 1281 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1282 1282 } 1283 - 1284 1284 "drivers": [ ~/~/ Водители 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1295,8 +1295,7 @@ 1295 1295 "retries": 0 1296 1296 } 1297 1297 ], 1298 - 1299 - "sensors": [ ~/~/ Датчики 1394 +"sensors": [ ~/~/ Датчики 1300 1300 { 1301 1301 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1302 1302 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1334,41 +1334,43 @@ 1334 1334 "additionalProp2": "string", 1335 1335 "additionalProp3": "string" 1336 1336 }, 1337 - 1338 1338 ~/~/ Характерные для произвольного: 1339 - 1340 1340 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1341 - 1342 1342 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1343 - 1344 1344 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1345 - 1346 1346 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1347 - 1348 1348 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1349 - 1350 1350 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1351 - 1352 1352 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1353 - 1354 1354 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1355 - 1356 1356 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1357 - 1358 1358 ~/~/ "ValueOn": "Вкл.", 1359 - 1360 1360 ~/~/ "ValueOff": "Выкл." 1361 - "summaryMaxValue": 0 ~/~/ Макс. значение 1444 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1445 + 1446 +((( 1447 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1448 + { 1449 + "from": 0, ~/~/ С какого значения 1450 + "color": "string", ~/~/ Каким цветом 1451 + "text": "string" ~/~/ Текст подписи к этому интервалу 1452 + } 1453 + ] 1362 1362 } 1363 1363 ], 1456 +))) 1457 + 1458 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1459 + 1460 + 1364 1364 "customFields": [ ~/~/ Произвольные поля 1365 1365 { 1366 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1367 - "name": "string", 1368 - "value": "string", 1369 - "forClient": true, 1370 - "forTooltip": true, 1371 - "forReport": true 1463 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1464 + "name": "string", ~/~/ Наименование произвольного поля 1465 + "value": "string", ~/~/ Значение произвольного поля 1466 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1467 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1468 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1372 1372 } 1373 1373 ] 1374 1374 } ... ... @@ -1375,55 +1375,161 @@ 1375 1375 1376 1376 (% style="color:#000000" %)Ответ: 1377 1377 1378 -(% style="color:#000000" %){ 1379 1379 1380 - "vehicleId": "", ~/~/ID ТС 1381 - "parentId": "", ~/~/Guid владельца ТС 1382 - "name": "", ~/~/Имя объекта 1383 - "imei": "", ~/~/IMEI 1384 - "deviceTypeId": "", ~/~/ID типа устройства 1385 - "modelId": "", ~/~/ID модели 1386 - "unitId": "", ~/~/ID подразделения 1387 - "sim1": "", ~/~/SIM1 1388 - "sim2": "", ~/~/SIM2 1389 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1390 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1391 - "counters": { ~/~/Счётчики 1392 - "mileageEnabled": true, 1393 - "motohoursEnabled": true, 1394 - "mileage": "", 1395 - "motohours": 345.0 1396 - }, 1397 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1398 - "id": null, 1399 - "enabled": true, ~/~/флаг включения 1400 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1401 - "login": "", ~/~/ имя учетной записи 1402 - "password": "" ~/~/ пароль учетной записи 1403 - }, 1404 - "inspectionTasks": { ~/~/ задания на ТО 1405 - "id": "", ~/~/ ID задачи 1406 - "enabled": false, ~/~/ Признак включения 1407 - "name": "", ~/~/ Имя задания 1408 - "description": "", ~/~/ Описание задания 1409 - "mileageCondition": "", ~/~/ Условие по пробегу 1410 - "lastMileage": "", ~/~/ Пробег (в метрах) 1411 - "motohoursCondition": "", ~/~/ Условие по моточасам 1412 - "lastMotohours": "", ~/~/ Моточасы 1413 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1414 - "kind": "", ~/~/ Вид периодичности по времени 1415 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1476 +((( 1477 +((( 1478 +((( 1479 +{ 1480 + "vehicleId": 0, ~/~/ ID ТС 1481 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1482 + "name": "string", ~/~/ Имя объекта 1483 + "imei": "string", ~/~/ IMEI 1484 + "deviceTypeId": 0, ~/~/ ID типа устройства 1485 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1486 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1487 + "sim1": "string", ~/~/ SIM1 1488 + "sim2": "string", ~/~/ SIM2 1489 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1490 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1491 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1492 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1493 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1494 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1495 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1496 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1497 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1498 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1499 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1500 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1501 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1502 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1503 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1504 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1505 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1506 + "counters": { ~/~/ Dto для состояний счётчиков 1507 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1508 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1509 + "mileage": 0, ~/~/ Пробег 1510 + "motohours": 0 ~/~/ Моточасы 1511 + }, 1512 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1513 + "id": "string", ~/~/ CMSV6 Идентификатор 1514 + "enabled": true, ~/~/ Признак включения 1515 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1516 + "login": "string", ~/~/ CMSV6 имя учетной записи 1517 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1518 + }, 1519 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1520 + { 1521 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1522 + "enabled": true, ~/~/ Признак включения 1523 + "name": "string", ~/~/ Имя задания 1524 + "description": "string", ~/~/ Описание задания 1525 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1526 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1527 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1528 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1529 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1530 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1531 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1532 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1416 1416 } 1534 + ], 1535 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1536 + { 1537 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1538 + "inputNumber": 0, ~/~/ № входа. 1539 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1540 + "comment": "string", ~/~/ Комментарий 1541 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1542 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1543 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1544 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1545 + } 1546 + ], 1547 + "commandTemplates": [ ~/~/ Список шаблонов команд 1548 + { 1549 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1550 + "name": "string", ~/~/ Название шаблона команд 1551 + "command": "string", ~/~/ Команда на выполнение 1552 + "retries": 0 ~/~/ Лимит попыток отправки 1553 + } 1554 + ], 1555 + "sensors": [ ~/~/ Список датчиков 1556 + { 1557 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1558 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1559 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1560 + "name": "string", ~/~/ Имя датчика 1561 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1562 + "inputNumber": 0, ~/~/ Номер входа 1563 + "pseudonym": "string", ~/~/ Псевдоним 1564 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1565 + "isInverted": true, ~/~/ Признак инверсии 1566 + "disabled": true, ~/~/ Датчик не участвует в обработке 1567 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1568 + "gradesTables": [ ~/~/ Тарировка 1569 + { 1570 + "grades": [ ~/~/ Таблицы тарировки 1571 + { 1572 + "input": 0, ~/~/ Вход 1573 + "output": 0 ~/~/ Выход 1574 + } 1575 + ], 1576 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1577 + } 1578 + ], 1579 + "showInTooltip": true, ~/~/ Отображение в подсказке 1580 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1581 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1582 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1583 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1584 + "expr": "string", ~/~/ Выражение 1585 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1586 + "string" 1587 + ], 1588 + "customParams": { 1589 + "additionalProp1": "string", 1590 + "additionalProp2": "string", 1591 + "additionalProp3": "string" 1592 + }, 1593 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1594 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1595 + { 1596 + "from": 0, ~/~/ С какого значения 1597 + "color": "string", ~/~/ Каким цветом 1598 +))) 1417 1417 1418 -(% style="text-align:left" %) 1419 -(% style="color:#000000" %)} 1600 +((( 1601 + "text": "string" ~/~/ Текст подписи к этому интервалу 1602 + } 1603 + ] 1604 + } 1605 + ], 1606 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1607 + "customFields": [ ~/~/ Список произвольных полей 1608 + { 1609 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1610 + "name": "string", ~/~/ Наименование произвольного поля 1611 + "value": "string", ~/~/ Значение произвольного поля 1612 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1613 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1614 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1615 + } 1616 + ], 1617 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 1618 +} 1619 +))) 1620 +))) 1621 +))) 1420 1420 1623 + 1421 1421 **Валидация:** 1422 1422 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1423 1423 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1424 1424 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1425 1425 1426 -== (% style="color:#000000; font-size:16px" %)**Получение па раметровобъектов**(%%) ==1629 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1427 1427 1428 1428 (% class="box infomessage" %) 1429 1429 ((( ... ... @@ -1430,7 +1430,7 @@ 1430 1430 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1431 1431 ))) 1432 1432 1433 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1636 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1434 1434 1435 1435 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1436 1436 ... ... @@ -1464,9 +1464,12 @@ 1464 1464 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1465 1465 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1466 1466 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1467 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1468 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1469 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1670 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1671 + "unitName": "string", ~/~/ Название подразделения (опционально) 1672 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1673 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1674 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1675 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1470 1470 } 1471 1471 1472 1472 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1473,8 +1473,14 @@ 1473 1473 1474 1474 (% style="color:#000000" %)Ответ: 1475 1475 1476 -(% style="color:#000000" %){ 1682 +(% style="color:#000000" %)[ 1683 +{ 1477 1477 1685 +((( 1686 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1687 +))) 1688 + 1689 +((( 1478 1478 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1479 1479 "name": "" ~/~/ наименование объекта 1480 1480 "imei": "" ~/~/ IMEI объекта ... ... @@ -1500,9 +1500,21 @@ 1500 1500 "forClient": true, ~/~/ право на отображение у клиента 1501 1501 "forTooltip": false, ~/~/ право на отображение в подсказке 1502 1502 "forReport": false ~/~/ право на отображение в отчетах 1503 - }(%%) 1504 -(% style="color:#000000" %)} 1715 +))) 1505 1505 1717 +((( 1718 + } 1719 + ], 1720 + "vehicleGroups": [ ~/~/ Группы ТС 1721 + { 1722 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1723 + "name": "string" ~/~/ Наименование группы ТС 1724 + } 1725 + ] 1726 + } 1727 +] 1728 +))) 1729 + 1506 1506 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1507 1507 1508 1508 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1534,13 +1534,11 @@ 1534 1534 "data": "", ~/~/ Данные 1535 1535 "overwrite": false, ~/~/ Флаг перезаписи 1536 1536 "stage": "", ~/~/ Состояние, может быть null 1537 - 1538 1538 (% style="color:#000000" %)} 1539 1539 1540 1540 (% style="color:#000000" %)Ответ: 1541 1541 1542 -(% style="color:#000000" %){ 1543 - 1765 +(% style="color:#000000" %){(%%) 1544 1544 "status": "", ~/~/ значение статуса 1545 1545 "date": "", ~/~/ Дата смены статуса 1546 1546 "description": "", ~/~/ Описание ... ... @@ -1547,10 +1547,10 @@ 1547 1547 "data": "", ~/~/ Данные 1548 1548 "overwrite": false, ~/~/ Флаг перезаписи 1549 1549 "stage": "", ~/~/ Состояние 1550 - 1551 -(% style="text-align:left" %) 1552 1552 (% style="color:#000000" %) } 1553 1553 1774 +== == 1775 + 1554 1554 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1555 1555 1556 1556 (% class="box warningmessage" %) ... ... @@ -1638,8 +1638,7 @@ 1638 1638 "retries": 0 1639 1639 } 1640 1640 ], 1641 - 1642 - "sensors": [ ~/~/ Датчики 1863 +"sensors": [ ~/~/ Датчики 1643 1643 { 1644 1644 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1645 1645 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1677,95 +1677,215 @@ 1677 1677 "additionalProp2": "string", 1678 1678 "additionalProp3": "string" 1679 1679 }, 1680 - 1681 1681 ~/~/ Характерные для произвольного: 1682 - 1683 1683 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1684 - 1685 1685 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1686 - 1687 1687 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1688 - 1689 1689 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1690 - 1691 1691 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1692 - 1693 1693 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1694 - 1695 1695 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1696 - 1697 1697 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1698 - 1699 1699 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1700 - 1701 1701 ~/~/ "ValueOn": "Вкл.", 1702 - 1703 1703 ~/~/ "ValueOff": "Выкл." 1704 1704 "summaryMaxValue": 0 ~/~/ Макс. значение 1914 + 1915 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1916 + { 1917 + "from": 0, ~/~/ С какого значения 1918 + "color": "string", ~/~/ Каким цветом 1919 + "text": "string" ~/~/ Текст подписи к этому интервалу 1920 + } 1921 + ] 1705 1705 } 1706 1706 ], 1924 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1925 + 1707 1707 "customFields": [ ~/~/ Произвольные поля 1708 - { 1709 - 1710 - "name": "string", 1711 - "value": "string", 1712 - "forClient": true, 1713 - "forTooltip": true, 1714 - "forReport": true 1927 + { 1928 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1929 + "name": "string", ~/~/ Наименование произвольного поля 1930 + "value": "string", ~/~/ Значение произвольного поля 1931 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1932 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1933 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1715 1715 } 1716 1716 ] 1717 1717 } 1718 1718 1938 + 1719 1719 (% style="color:#000000" %)Ответ: 1720 1720 1721 -(% lang="en-US" style="text-align:left" %) 1722 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 1941 +((( 1942 +{ 1943 + "vehicleId": 0, ~/~/ ID ТС 1944 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1945 + "name": "string", ~/~/ Имя объекта 1946 + "imei": "string", ~/~/ IMEI 1947 + "deviceTypeId": 0, ~/~/ ID типа устройства 1948 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1949 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1950 + "sim1": "string", ~/~/ SIM1 1951 + "sim2": "string", ~/~/ SIM2 1952 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1953 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1954 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1955 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1956 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1957 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1958 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1959 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1960 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1961 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1962 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1963 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1964 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1965 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1966 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1967 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1968 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1969 + "counters": { ~/~/ состояний счётчиков 1970 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1971 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1972 + "mileage": 0, ~/~/ Пробег 1973 + "motohours": 0 ~/~/ Моточасы 1974 + }, 1975 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1976 + "id": "string", ~/~/ CMSV6 Идентификатор 1977 + "enabled": true, ~/~/ Признак включения 1978 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 1979 +))) 1723 1723 1724 -(% lang="en-US" style="text-align:left" %) 1725 - "vehicleId": "", ~/~/ ID ТС 1726 - "parentId": "", ~/~/ ID клиента 1727 - "name": "", ~/~/ имя ТС 1728 - "imei": "", ~/~/ IMEI 1729 - "deviceTypeId": "", ~/~/ типа устройства 1730 - "modelId": "", ~/~/ ID модели 1731 - "unitId": "", ~/~/ ID подразделения 1732 - "sim1": "", ~/~/ SIM 1 1733 - "sim2": "", ~/~/ SIM2 1734 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1735 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1736 - "counters": 1737 - { 1738 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1739 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1740 - "mileage": "", ~/~/ пробег 1741 - "motohours": "", ~/~/ моточасы 1742 - } 1743 - "cmsv6Parameters": ~/~/ параметры CMSv6 1981 + 1982 +((( 1983 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1984 + "login": "string", ~/~/ CMSV6 имя учетной записи 1985 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1986 + }, 1987 + "inspectionTasks": [ ~/~/ Задания на ТО 1988 + { 1989 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1990 + "enabled": true, ~/~/ Признак включения 1991 + "name": "string", ~/~/ Имя задания 1992 + "description": "string", ~/~/ Описание задания 1993 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1994 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1995 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1996 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1997 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1998 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 1999 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2000 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2001 + } 2002 + ], 2003 + "drivers": [ ~/~/ Список водителей 2004 + { 2005 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2006 + "inputNumber": 0, ~/~/ № входа. 2007 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2008 + "comment": "string", ~/~/ Комментарий. 2009 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2010 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2011 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2012 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2013 + } 2014 + ], 2015 + "commandTemplates": [ ~/~/ Список шаблонов команд 2016 + { 2017 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2018 + "name": "string", ~/~/ Название шаблона команд 2019 + "command": "string", ~/~/ Команда на выполнение 2020 + "retries": 0 ~/~/ Лимит попыток отправки 2021 + } 2022 + ], 2023 + "sensors": [ ~/~/ Список датчиков 2024 + { 2025 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2026 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2027 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2028 +))) 2029 + 2030 +((( 2031 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2032 +))) 2033 + 2034 +((( 2035 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2036 +))) 2037 + 2038 +((( 2039 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2040 +))) 2041 + 2042 +((( 2043 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2044 +))) 2045 + 2046 +((( 2047 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2048 + "name": "string", ~/~/ Имя датчика 2049 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2050 +))) 2051 + 2052 +((( 2053 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2054 + "inputNumber": 0, ~/~/ Номер входа 2055 + "pseudonym": "string", ~/~/ Псевдоним 2056 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2057 + "isInverted": true, ~/~/ Признак инверсии 2058 + "disabled": true, ~/~/ Датчик не участвует в обработке 2059 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2060 + "gradesTables": [ ~/~/ Тарировка 1744 1744 { 1745 - "id": ~/~/ идентификатор 1746 - "enabled": true, ~/~/ флаг включения 1747 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1748 - "login": "", ~/~/ имя учетной записи 1749 - "password": "", ~/~/ пароль учетной записи 1750 - } 1751 - "inspectionTasks": ~/~/ задания на ТО 2062 + "grades": [ ~/~/ Таблицы тарировки 2063 + { 2064 + "input": 0, ~/~/ Вход 2065 + "output": 0 ~/~/ Выход 2066 + } 2067 + ], 2068 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 2069 + } 2070 + ], 2071 + "showInTooltip": true, ~/~/ Отображение в подсказке 2072 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 2073 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2074 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2075 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2076 + "expr": "string", ~/~/ Выражение 2077 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2078 + "string" 2079 + ], 2080 + "customParams": { ~/~/ Дополнительные настройки 2081 + "additionalProp1": "string", 2082 + "additionalProp2": "string", 2083 + "additionalProp3": "string" 2084 + }, 2085 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2086 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1752 1752 { 1753 - "id": "", ~/~/ ID задания 1754 - "enabled": false, ~/~/ Признак включения 1755 - "name": "", ~/~/ Имя задания 1756 - "description": "", ~/~/ Описание задания 1757 - "mileageCondition": "", ~/~/ Условие по пробегу 1758 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1759 - "motohoursCondition": "", ~/~/ Условие по моточасам 1760 - "lastMotohours": "", ~/~/ Моточасы 1761 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1762 - "kind": "", ~/~/ Вид периодичности по времени 1763 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2088 + "from": 0, ~/~/ С какого значения 2089 + "color": "string", ~/~/ Каким цветом 2090 + "text": "string" ~/~/ Текст подписи к этому интервалу 1764 1764 } 2092 + ] 2093 + } 2094 + ], 2095 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2096 + "customFields": [ ~/~/ Список произвольных полей 2097 + { 2098 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2099 + "name": "string", ~/~/ Наименование произвольного поля 2100 + "value": "string", ~/~/ Значение произвольного поля 2101 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2102 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2103 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2104 + } 2105 + ], 2106 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2107 +} 2108 +))) 1765 1765 1766 -(% lang="en-US" style="text-align:left" %) 1767 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 1768 - 1769 1769 **Валидация:** 1770 1770 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1771 1771 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1804,18 +1804,15 @@ 1804 1804 1805 1805 (% style="color:#000000" %)Метод запроса: **GET** 1806 1806 1807 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/ users/api/v3/devices/types>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]2148 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1808 1808 1809 1809 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1810 1810 1811 1811 (% style="color:#000000" %)Ответ: 1812 1812 1813 -(% style="color:#000000" %){ 1814 - 2154 +(% style="color:#000000" %){(%%) 1815 1815 "deviceTypeId" : "", ~/~/ ID типа устройства 1816 1816 "deviceTypeName" : "" ~/~/ Название типа устройства 1817 - 1818 -(% style="text-align:left" %) 1819 1819 (% style="color:#000000" %)} 1820 1820 1821 1821 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1837,13 +1837,10 @@ 1837 1837 1838 1838 (% style="color:#000000" %)Ответ: 1839 1839 1840 -(% style="color:#000000" %){ 1841 - 2178 +(% style="color:#000000" %){(%%) 1842 1842 "id": "", ~/~/ ID типа датчика 1843 1843 "name": "", ~/~/ Название 1844 1844 "description": "", ~/~/ Описание 1845 - 1846 -(% style="text-align:left" %) 1847 1847 (% style="color:#000000" %)} 1848 1848 1849 1849 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1930,8 +1930,13 @@ 1930 1930 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 1931 1931 |protocolType|Тип протокола 1932 1932 |inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 1933 -|inputNumber|Номер входа 2268 +|inputNumber|((( 2269 +Номер входа 2270 +))) 1934 1934 2272 +(% class="wikigeneratedid" %) 2273 +Перечень ID протоколов в статье - [[ID протоколов для получения типов и номеров входа сырого параметра.>>https://wiki.glonasssoft.ru/bin/view/API/ID%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%82%D0%B8%D0%BF%D0%B0%20%D0%B8%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%B0%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D1%81%D1%8B%D1%80%D0%BE%D0%B3%D0%BE%20%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0/]] 2274 + 1935 1935 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1936 1936 1937 1937 (% class="box infomessage" %) ... ... @@ -2040,10 +2040,12 @@ 2040 2040 { 2041 2041 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 2042 2042 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 2043 - "mileageBegin": 0, ~/~/ Пробег на начало периода 2044 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 2045 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 2046 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2383 + "mileage": 0, ~/~/ Пробег за период, километры 2384 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2385 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2386 + "motohours": 0, ~/~/ Моточасы за период, секунды 2387 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2388 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2047 2047 } 2048 2048 ] 2049 2049 } ... ... @@ -2092,6 +2092,12 @@ 2092 2092 } 2093 2093 ] 2094 2094 2437 +(% class="box warningmessage" %) 2438 +((( 2439 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2440 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2441 +))) 2442 + 2095 2095 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2096 2096 2097 2097 (% class="box infomessage" %) ... ... @@ -2137,6 +2137,96 @@ 2137 2137 } 2138 2138 ] 2139 2139 2488 + 2489 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2490 + 2491 +(% class="box infomessage" %) 2492 +((( 2493 +**POST /api/v3/vehicles/moveStop** 2494 +))) 2495 + 2496 +Метод запроса: **POST** 2497 + 2498 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2499 + 2500 +В заголовках запроса: X-Auth: Токен авторизации 2501 + 2502 + 2503 +Тело запроса: 2504 + 2505 +{ 2506 + "vehicleIds": [ ], ~/~/ Список ID объектов 2507 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2508 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2509 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2510 +} 2511 + 2512 +Ответ: 2513 + 2514 +[ 2515 + { 2516 + "vehicleId": 0, ~/~/ ID объекта 2517 + "vehicleName": "string", ~/~/ Имя объекта 2518 + "moves": [ ~/~/ Событие движения 2519 + { 2520 + "mileage": 0, ~/~/ Пробег, км 2521 + "eventId": 0, ~/~/ Идентификатор события 2522 + "eventName": "string", ~/~/ Название события 2523 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2524 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2525 + "duration": 0 ~/~/ Продолжительность события, секунд 2526 + } 2527 + ], 2528 + "stops": [ ~/~/ События стоянок 2529 + { 2530 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2531 + "eventId": 0, ~/~/ Идентификатор события 2532 + "eventName": "string", ~/~/ Название события 2533 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2534 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2535 + "duration": 0 ~/~/ Продолжительность события, секунд 2536 + } 2537 + ] 2538 + } 2539 +] 2540 + 2541 + 2542 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2543 + 2544 +(% class="box infomessage" %) 2545 +((( 2546 +**POST /api/v3/vehicles/getlastdata** 2547 +))) 2548 + 2549 +Метод запроса: **POST** 2550 + 2551 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2552 + 2553 +В заголовках запроса: X-Auth: Токен авторизации 2554 + 2555 + 2556 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2557 + 2558 +Ответ: 2559 + { 2560 + "vehicleId": 0, ~/~/Идентификатор объекта. 2561 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2562 + "vehicleNumber": "string",~/~/Номер объекта. 2563 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2564 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2565 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2566 + "speed": 0,~/~/Скорость объекта. 2567 + "course": 0,~/~/Курс движения [0;360] 2568 + "latitude": 0,~/~/Широта [-90°;90°]. 2569 + "longitude": 0,~/~/Долгота [-180°;180°]. 2570 + "address": "string",~/~/Адрес. 2571 + "geozones": [ ~/~/Сведения по геозонам. 2572 + { 2573 + "id": 0, 2574 + "name": "string" 2575 + } 2576 + 2577 + 2140 2140 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2141 2141 2142 2142 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2444,6 +2444,32 @@ 2444 2444 2445 2445 Success 2446 2446 2885 + 2886 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2887 + 2888 +(% class="box warningmessage" %) 2889 +((( 2890 +**PUT** /api/v3/notifications/prolongation 2891 +))) 2892 + 2893 +Метод позволяет продлить уведомления. 2894 + 2895 +Метод запроса **PUT** 2896 + 2897 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2898 + 2899 +В заголовках запроса: X-Auth: Токен авторизации. 2900 + 2901 +Тело запроса: 2902 + 2903 +[ 2904 + 2905 +0 2906 + 2907 +] 2908 + 2909 +где 0 идентификатор ids. 2910 + 2447 2447 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2448 2448 2449 2449 (% class="box errormessage" %) ... ... @@ -3634,7 +3634,7 @@ 3634 3634 **POST /api/v3/vehicles/import/{agentId}** 3635 3635 ))) 3636 3636 3637 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4101 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3638 3638 3639 3639 В пути указывается **agentId** - id клиента. 3640 3640 ... ... @@ -3646,7 +3646,7 @@ 3646 3646 3647 3647 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3648 3648 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3649 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4113 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3650 3650 3651 3651 В теле использовать тип **form-data,** тип значения** file** 3652 3652 ... ... @@ -3813,7 +3813,7 @@ 3813 3813 3814 3814 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3815 3815 3816 -== (% style="color:#000000; font-size:16px" %)**Запрос рейтин ша качества вождения**(%%) ==4280 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 3817 3817 3818 3818 (% class="box infomessage" %) 3819 3819 ((( ... ... @@ -3825,64 +3825,67 @@ 3825 3825 Тело запроса: 3826 3826 3827 3827 { 3828 - "vehicleIds": [vehicleId], 3829 - "from": "2023-11-22T09:29:48.051Z", 3830 - "to": "2023-11-22T09:29:48.051Z" 4292 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4293 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4294 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3831 3831 } 3832 3832 3833 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3834 -|vehicleIds|Массив ID объектов 3835 -|from|Дата начала запроса 3836 -|to|Дата окончания запроса 3837 - 3838 3838 Ответ: 3839 3839 3840 3840 { 3841 - "items": [ 4300 + "items": [ ~/~/ Список в разрезе ТС 3842 3842 { 3843 - "from": "2023-11-22T09:29:48.052Z", 3844 - "to": "2023-11-22T09:29:48.052Z", 3845 - "vehicleId": 0, 3846 - "vehicleName": "string", 3847 - "vehicleModel": "string", 3848 - "penalty": 0, 3849 - "score": 0, 3850 - "totalViolations": 0, 3851 - "violationsByType": { 3852 - "overspeedingViolations": 0, 3853 - "accelerationViolations": 0, 3854 - "brakingViolations": 0, 3855 - "turningViolations": 0, 3856 - "dangerousDrivingViolations": 0, 3857 - "sensorViolations": 0 4302 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4303 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4304 + "vehicleId": 0, ~/~/ ID ТС 4305 + "vehicleName": "string", ~/~/ Название ТС 4306 + "vehicleModel": "string", ~/~/ Модель ТС 4307 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4308 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4309 + "totalViolations": 0, ~/~/ Нарушений всего 4310 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4311 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4312 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4313 + "brakingViolations": 0, ~/~/ Нарушений торможения 4314 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4315 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4316 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3858 3858 }, 3859 - "moveTime": 0, 3860 - "mileage": 0, 3861 - "tripsCount": 0, 3862 - "trips": [ 4318 + 4319 +((( 4320 + 4321 +))) 4322 + 4323 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4324 + "mileage": 0, ~/~/ Пробег, м 4325 + "tripsCount": 0, ~/~/ Кол-во рейсов 4326 + "trips": [ ~/~/ Информация по рейсу 3863 3863 { 3864 - "penalty": 0, 3865 - "score": 0, 3866 - "violationsCount": 0, 3867 - "violationsByType": { 3868 - "overspeedingViolations": 0, 3869 - "accelerationViolations": 0, 3870 - "brakingViolations": 0, 3871 - "turningViolations": 0, 3872 - "dangerousDrivingViolations": 0, 3873 - "sensorViolations": 0 4328 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4329 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4330 + "violationsCount": 0, ~/~/ Всего нарушений 4331 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4332 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4333 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4334 + "brakingViolations": 0, ~/~/ Нарушений торможения 4335 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4336 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4337 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3874 3874 }, 3875 - "moveTime": 0, 3876 - "mileage": 0, 3877 - "motohours": 0, 3878 - "maxSpeed": 0, 3879 - "startAddress": "string", 3880 - "endAddress": "string", 3881 - "drivers": [ 4339 + 4340 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4341 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4342 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4343 + "mileage": 0, ~/~/ Пробег, м 4344 + "motohours": 0, ~/~/ Моточасы, секунды 4345 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4346 + "startAddress": "string", ~/~/ Адрес начала рейса 4347 + "endAddress": "string", ~/~/ Адрес конца рейса 4348 + "drivers": [ ~/~/ Список водителей 3882 3882 { 3883 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3884 - "driverName": "string", 3885 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4350 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4351 + "driverName": "string", ~/~/ФИО водителя 4352 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 3886 3886 } 3887 3887 ] 3888 3888 } ... ... @@ -3891,34 +3891,444 @@ 3891 3891 ] 3892 3892 } 3893 3893 3894 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3895 -|from|Дата начала запроса 3896 -|to|Дата окончания 3897 -|vehicleId|ID объекта 3898 -|vehicleName|Имя объекта 3899 -|vehicleModel|Модель объекта 3900 -|penalty|Сумма штрафных баллов 3901 -|score|Оценка 3902 -|totalViolations|Суммарное количество нарушений 3903 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 3904 -|overspeedingViolations|Превышение скорости 3905 -|accelerationViolations|Ускорение 3906 -|brakingViolations|Торможение 3907 -|turningViolations|Резкий поворот 3908 -|dangerousDrivingViolations|Резкое вождение 3909 -|sensorViolations|Нарушение по датчику 3910 -|moveTime|Время в движении 3911 -|mileage|Пробег 3912 -|tripsCount|Количество рейсов 3913 -|motohours|Моточасы 3914 -|maxSpeed|Максимальная скорость 3915 -|startAddress|Адрес начала рейса 3916 -|endAddress|Адрес окончания рейса 3917 -|drivers|Список водителей, которые были на объекте в течениии рейса 3918 -|driverGuid|Guid водителя 3919 -|driverName|Имя водителя 3920 -|driverRfid|Номер Карты-метки 4361 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 3921 3921 4363 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4364 + 4365 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4366 + 4367 +(% class="box infomessage" %) 4368 +((( 4369 +POST /api/v3/fuelcards/transactions 4370 +))) 4371 + 4372 +Метод запроса: POST 4373 + 4374 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4375 +\\В заголовках запроса: X-Auth: Токен авторизации 4376 + 4377 +Параметры в теле запроса (JSON): 4378 + 4379 +{ 4380 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/Начало периода 4381 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/Конец периода 4382 + "ids": [ 4383 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/гуиды топливных карт 4384 + ], 4385 + "timezone": 0 ~/~/Таймзона 4386 +} 4387 + 4388 + 4389 +Ответ: 4390 + { 4391 + "date": "2024-04-11T10:41:02.265Z", ~/~/Дата и время транзакции 4392 + "driver": "string", ~/~/Водители, привязанные к ТК 4393 + "object": "string", ~/~/Наименование ТС 4394 + "amount": 0, ~/~/Количество топлива 4395 + "amountDut": 0, ~/~/Количество по ДУТ 4396 + "amountDiff": 0, ~/~/Разница, л 4397 + "amountDiffPerc": 0, ~/~/Разница, % 4398 + "summa": 0, ~/~/Стоимость, руб 4399 + "serviceName": "string", ~/~/Тип топлива 4400 + "price": 0, ~/~/Цена за литр, руб 4401 + "cardName": "string", ~/~/Наименование ТК 4402 + "cardNum": "string", ~/~/Номер ТК 4403 + "operator": "string", ~/~/Оператор ТК 4404 + "address": "string" ~/~/Адрес АЗС 4405 + } 4406 + 4407 + 4408 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4409 + 4410 + 4411 +== **Получение полных данных о ретрансляторе** == 4412 + 4413 +(% class="box infomessage" %) 4414 +((( 4415 +**GET ** **/api/v3/retranslations/{id}** 4416 +))) 4417 + 4418 +Идентификатор запроса: ID 4419 + 4420 + 4421 +Пример ответа: 4422 + 4423 +{ 4424 +"description": "", ~/~/ Определяет описание 4425 +"subscriberId": "", ~/~/ Подписчик 4426 +"protocolType": 0, ~/~/ Тип протокола 4427 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4428 +"address": "string", ~/~/ Адрес события 4429 +"objects": [ ~/~/Объекты для ретрансляции 4430 +{ 4431 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4432 +"name": "", ~/~/ Наименование объекта ретрансляции 4433 +"imei": "", ~/~/ IMEI объекта 4434 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4435 +} 4436 + ], 4437 +"id": "", ~/~/ идентификатор пользователя 4438 +"parentId": "", ~/~/Guid родителя 4439 +"deleted": "" ~/~/ Признак удаления, Включен, true - включен, false - отключен 4440 +} 4441 + 4442 + 4443 +== **Удаление данных ретранслятора** == 4444 + 4445 +(% class="box infomessage" %) 4446 +((( 4447 +**DELETE** **/api/v3/retranslations/{id}** 4448 +))) 4449 + 4450 +Параметр запроса: ID 4451 + 4452 + 4453 +== **Создание ретранслятора** == 4454 + 4455 +(% class="box infomessage" %) 4456 +((( 4457 +**POST ** **/api/v3/retranslations/{id}** 4458 +))) 4459 + 4460 +Запрос: 4461 + 4462 +{ 4463 +"description": "", ~/~/ Описание 4464 +"subscriberId": "", ~/~/ Подписчик 4465 +"protocolType": 0, ~/~/ Тип протокола 4466 +"address": "", ~/~/ Адрес ретрансляции 4467 +"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен 4468 +"objects": [ ~/~/Объекты для ретрансляции 4469 +{ 4470 +"id": "", ~/~/ идентификатор пользователя 4471 +"imei": "", ~/~/IMEI объекта 4472 +"isEnabled": "" ~/~/ признак включения, Включен, true - включен, false - отключен 4473 +} 4474 + ] 4475 +} 4476 + 4477 + 4478 +Ответ: 4479 + 4480 +{ 4481 +"description": "string", ~/~/ Определяет описание 4482 +"subscriberId": "", ~/~/ идентификатор запроса 4483 +"protocolType": 0, ~/~/ Тип протокола 4484 +"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен 4485 +"address": "", ~/~/ Адрес события 4486 +"objects": [ ~/~/Объекты для ретрансляции 4487 +{ 4488 +"id": "", ~/~/ идентификатор пользователя 4489 +"name": "string", ~/~/ Название уведомления 4490 +"imei": "string", ~/~/IMEI объекта 4491 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4492 +} 4493 + ], 4494 +"id": "", ~/~/ идентификатор пользователя 4495 +"parentId": "", ~/~/ Guid идентификатор родителя 4496 +"deleted": true ~/~/ Признак удаления 4497 +} 4498 + 4499 + 4500 +== **Редактирование ретранслятора** == 4501 + 4502 +(% class="box infomessage" %) 4503 +((( 4504 +**PUT** **/api/v3/retranslations** 4505 +))) 4506 + 4507 +Пример запроса: 4508 + 4509 +{ 4510 +"id": "", ~/~/ идентификатор пользователя 4511 +"description": "string", ~/~/ Определяет описание 4512 +"subscriberId": "", ~/~/ идентификатор запроса 4513 +"protocolType": 0, ~/~/ Тип протокола 4514 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4515 +"address": "string", ~/~/ Адрес события 4516 +"objects": ~/~/Объекты для ретрансляции 4517 +[ 4518 +{ 4519 +"id": "", ~/~/ идентификатор пользователя 4520 +"imei": "", ~/~/IMEI объекта 4521 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4522 +} 4523 + ] 4524 +} 4525 + 4526 + 4527 +Пример ответа: 4528 + 4529 +{ 4530 +"description": "", ~/~/ Определяет описание 4531 +"subscriberId": "", ~/~/ идентификатор запроса 4532 +"protocolType": 0, ~/~/ Тип протокола 4533 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4534 +"address": "string", ~/~/ Адрес события 4535 +"objects": [ ~/~/Объекты для ретрансляции 4536 +{ 4537 +"id": "", ~/~/ идентификатор пользователя 4538 +"name": "string", ~/~/ Название уведомления 4539 +"imei": "", ~/~/IMEI объекта 4540 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4541 +} 4542 + ], 4543 +"id": "", ~/~/ идентификатор пользователя 4544 +"parentId": "", ~/~/ Guid идентификатор родителя 4545 +"deleted": true ~/~/ Признак удаления 4546 +} 4547 + 4548 + 4549 +== **Получение списка ретранслятора клиента** == 4550 + 4551 +(% class="box infomessage" %) 4552 +((( 4553 +**POST /api/v3/retranslations/find** 4554 +))) 4555 + 4556 +Пример запроса: 4557 + 4558 +{ 4559 +"id": "", ~/~/ идентификатор пользователя 4560 +"search": "string", ~/~/Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4561 +"parentId": "" ~/~/ Идентификатор агента, для которого надо получить данные. 4562 +} 4563 + 4564 +Ответ: 4565 + 4566 +[ 4567 +{ 4568 +"description": "", ~/~/ Определяет описание 4569 +"subscriberId": "", ~/~/ идентификатор запроса 4570 +"protocolType": 0, ~/~/ Тип протокола 4571 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4572 +"address": "string", ~/~/ Адрес события 4573 +"id": "", ~/~/ идентификатор пользователя 4574 +"parentId": "", ~/~/ Guid идентификатор родителя 4575 +"deleted": true ~/~/ Признак удаления 4576 +} 4577 +] 4578 + 4579 + 4580 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4581 + 4582 +== **API для отчета по выгрузке комбайнов** == 4583 + 4584 +(% class="box infomessage" %) 4585 +((( 4586 +POST **/api/v3/Reports/harvesterUnloading** 4587 +))) 4588 + 4589 +Пример запроса: 4590 + 4591 +{ 4592 + "byTime": 0, ~/~/ Объединение событий по времени 4593 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4594 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4595 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4596 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4597 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4598 + 0 4599 + ], 4600 + "from": "", ~/~/ Дата и время начало запроса 4601 + "to": "", ~/~/ Дата и время окончания запроса 4602 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4603 +} 4604 + 4605 +Пример ответа: 4606 + 4607 +[ 4608 + { 4609 + "harvesterName": "", ~/~/Комбайн, номер 4610 + "harvesterId": 0, ~/~/Комбайн, id 4611 +"harvesterModel": "", ~/~/ Модель комбайна 4612 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4613 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4614 + "events": [ ~/~/Список событий в разрезе комбайна 4615 + { 4616 + "driverId": "", ~/~/Идентификатор водителя 4617 + "driverName": "", ~/~/Водитель комбайна, ФИО 4618 + "RFID": "", ~/~/ идентификатор карты-метки 4619 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4620 + "vehicleId": 0, ~/~/идентификатор объекта 4621 + "vehicleName": "string", ~/~/ Имя объекта 4622 + "modelName": "string", ~/~/ Имя модели объекта 4623 + "nearestVehicles": [ ~/~/Объекты рядом 4624 + { 4625 + "vehicleId": 0, ~/~/идентификатор объекта 4626 + "vehicleName": "string" ~/~/ Имя объекта 4627 + } 4628 + ], 4629 + "fields": [ ~/~/Поля, где происходила выгрузка 4630 + { 4631 + "id": 0, ~/~/ идентификатор пользователя 4632 + "name": "string" ~/~/ имя пользователя 4633 + } 4634 + ], 4635 + "event": "string", ~/~/Событие 4636 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4637 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4638 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4639 + "cultureName": "string", ~/~/ название культуры 4640 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4641 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4642 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4643 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4644 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4645 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4646 + "issued": 0, ~/~/Выдано, бункеров 4647 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4648 + "latitude": 0, ~/~/Широта 4649 + "longitude": 0, ~/~/ Долгота 4650 + "litresAway": 0, ~/~/Отдано, л 4651 + "m3Away": 0 ~/~/Отдано, м3 4652 + } 4653 + ] 4654 + } 4655 +] 4656 + 4657 + 4658 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 4659 + 4660 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 4661 + 4662 + 4663 +(% class="box infomessage" %) 4664 +((( 4665 +GET api/v3/Vehicles/recyclebin/all 4666 +))) 4667 + 4668 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 4669 + 4670 +Параметр запроса: {parentId} - идентификатор агента 4671 + 4672 +В заголовках запроса: X-Auth: Токен авторизации 4673 + 4674 +Ответ: 4675 + 4676 +[ 4677 + { 4678 + "recordTime": "", ~/~/Время записи 4679 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 4680 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 4681 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 4682 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 4683 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4684 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4685 + "items": [ ~/~/ 4686 +nullable: true ~/~/Детали 4687 + { 4688 + "name": "string", ~/~/наименование столбца 4689 + "value": "string" ~/~/содержание столбца 4690 + } 4691 + ] 4692 + }, 4693 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4694 + "string" 4695 + ] 4696 + } 4697 +] 4698 + 4699 + 4700 +(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 4701 + 4702 +(% class="box infomessage" %) 4703 +((( 4704 +POST/api/v3/Vehicles/recyclebin/erase 4705 +))) 4706 + 4707 +В заголовках запроса: X-Auth: Токен авторизации 4708 + 4709 +Пример запроса: 4710 + 4711 +[ 4712 +0 4713 +] 4714 + 4715 + 4716 +Пример ответа: 4717 + 4718 +[ 4719 +{ 4720 + "recordTime": "", ~/~/Время записи 4721 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 4722 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 4723 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 4724 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 4725 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4726 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4727 + "items": [ ~/~/Детали 4728 + { 4729 + "name": "", ~/~/Имя свойства 4730 + "value": "" ~/~/Значение свойства 4731 + } 4732 + ] 4733 + }, 4734 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4735 + "" 4736 + ] 4737 + } 4738 +] 4739 + 4740 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4741 + 4742 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 4743 + 4744 +(% class="box infomessage" %) 4745 +((( 4746 +POST/api/v3/Vehicles/recyclebin/restore 4747 +))) 4748 + 4749 +В заголовках запроса: X-Auth: Токен авторизации 4750 + 4751 +Параметры в теле запроса (JSON): 4752 + 4753 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 4754 + 4755 +В заголовках запроса: X-Auth: Токен авторизации 4756 + 4757 + 4758 +Пример запроса: 4759 + 4760 +((( 4761 +[ 4762 +))) 4763 + 4764 +((( 4765 + 0 4766 +))) 4767 + 4768 +((( 4769 +] 4770 +))) 4771 + 4772 + 4773 +Пример ответа: 4774 + 4775 +[ 4776 +{ 4777 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 4778 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 4779 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 4780 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 4781 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 4782 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4783 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4784 + "items": [ ~/~/Детали 4785 + { 4786 + "name": "string", ~/~/Имя свойства 4787 + "value": "string" ~/~/Значение свойства 4788 + } 4789 + ] 4790 + }, 4791 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4792 + "string" 4793 + ] 4794 + } 4795 +] 4796 + 4797 + 4798 + 3922 3922 (% class="box" lang="en-US" style="text-align: center;" %) 3923 3923 ((( 3924 3924 (% lang="ru-RU" style="color:#000000; font-family:Liberation Serif,serif; font-size:14pt; font-style:normal; font-variant:normal" %)**По вопросам работы PUBLIC API 3.0 можно обращаться**(% lang="ru-RU" style="color:#000000; font-size:14pt" %)** на [[support@glonasssoft.ru>>mailto:support@glonasssoft.ru]] **