Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/01/28 12:59
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!17 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 19 + 20 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 21 + 22 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 23 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 26 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 27 +((( 28 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 29 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 30 +))) 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" %) 56 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 57 + "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 68 +(% class="wikigeneratedid" %) 69 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[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}]]) 70 + 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 { ... ... @@ -356,6 +356,21 @@ 356 356 357 357 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 358 358 364 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 365 + 366 +(% class="box warningmessage" %) 367 +((( 368 +**PUT /api/v3/agents/{id}/changeStatus/{status}** 369 +))) 370 + 371 +Метод позволяет изменить статус клиента, указанного в запросе. 372 + 373 +В пути указывается GUID клиента и статус клиента. 374 + 375 +**status **- значение 0 - заблокирован, 1 - активен. 376 + 377 +Ответ: Code 204 378 + 359 359 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Пользователи**(%%) = 360 360 361 361 == (% style="color:#000000; font-size:16px" %)**Добавление пользователя**(%%) == ... ... @@ -407,7 +407,6 @@ 407 407 ], 408 408 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 409 409 } 410 - 411 411 { 412 412 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 413 413 "lastName": "string", ... ... @@ -421,12 +421,8 @@ 421 421 422 422 (% style="text-align:left" %) 423 423 (% style="color:#000000; font-weight:normal" %)Ответ: 424 - 425 -(% style="text-align:left" %) 426 -(% style="color:#000000; font-weight:normal" %){ 427 - 428 -(% style="text-align:left" %) 429 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 443 +{ 444 + "id": "" , ~/~/ ID пользователя 430 430 "lastName": "" , ~/~/ Фамилия , 431 431 "firstName": "" , ~/~/ Имя 432 432 "position": "" , ~/~/ Должность ... ... @@ -443,11 +443,9 @@ 443 443 "kind": "" , ~/~/ тип аутентификации 444 444 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 445 445 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 461 +} 446 446 447 -(% style="text-align:left" %) 448 -(% style="color:#000000; font-weight:normal" %)} 449 449 450 - 451 451 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 452 452 453 453 (% class="box infomessage" %) ... ... @@ -467,19 +467,16 @@ 467 467 468 468 (% style="color:#000000" %)Параметры в теле запроса (JSON): 469 469 470 -(% style="color:#000000" %){ 471 - 483 +(% style="color:#000000" %){(%%) 472 472 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 473 473 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 474 474 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 475 475 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 476 - 477 477 (% style="color:#000000" %)} 478 478 479 479 (% style="color:#000000" %)Ответ: 480 480 481 481 (% style="color:#000000" %){ (%%) 482 - 483 483 "id": "" , ~/~/ идентификатор пользователя 484 484 "lastName": "" , ~/~/ фамилия 485 485 "firstName": "" , ~/~/ имя ... ... @@ -493,7 +493,6 @@ 493 493 "sessionDuration":"", ~/~/ длительность сессии в минутах 494 494 "status": "1", ~/~/ статус пользователя 495 495 "lastLogged": "", ~/~/ дата/время последней авторизации 496 - 497 497 (% style="color:#000000" %)} 498 498 499 499 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -567,10 +567,8 @@ 567 567 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 568 568 569 569 (% lang="en-US" style="text-align:left" %) 570 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 571 - 572 -(% lang="en-US" style="text-align:left" %) 573 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 579 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 580 + "id": "" , ~/~/ ID пользователя 574 574 "lastName": "" , ~/~/ фамилия 575 575 "firstName": "" , ~/~/ имя 576 576 "position": "" , ~/~/ должность ... ... @@ -592,9 +592,7 @@ 592 592 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 593 593 }, 594 594 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 595 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 596 - 597 -(% lang="en-US" style="text-align:left" %) 602 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 598 598 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 599 599 600 600 (% lang="en-US" style="text-align:left" %) ... ... @@ -601,10 +601,8 @@ 601 601 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 602 602 603 603 (% lang="en-US" style="text-align:left" %) 604 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 605 - 606 -(% lang="en-US" style="text-align:left" %) 607 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 609 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 610 + "id": "" , ~/~/ идентификатор пользователя 608 608 "lastName": "" , ~/~/ фамилия 609 609 "firstName": "" , ~/~/ имя 610 610 "position": "" , ~/~/ должность ... ... @@ -625,10 +625,8 @@ 625 625 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 626 626 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 627 627 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 631 +} 628 628 629 -(% lang="en-US" style="text-align:left" %) 630 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 631 - 632 632 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 633 633 634 634 (% class="box warningmessage" %) ... ... @@ -648,12 +648,10 @@ 648 648 649 649 (% style="color:#000000" %)Параметры в теле запроса (JSON): 650 650 651 -(% style="color:#000000" %){ 652 - 652 +(% style="color:#000000" %){(%%) 653 653 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 654 654 "description": "" , ~/~/ описание 655 655 "data": "" , ~/~/ данные, связанные со сменой статуса 656 - 657 657 (% style="color:#000000" %)} 658 658 659 659 (% style="text-align:left" %) ... ... @@ -675,7 +675,7 @@ 675 675 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 676 676 677 677 [ 678 - 677 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 679 679 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 680 680 ] 681 681 ... ... @@ -981,7 +981,7 @@ 981 981 982 982 Ответ: В случае успеха **Success 200** 983 983 984 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 983 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 985 985 986 986 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 987 987 ... ... @@ -1017,19 +1017,15 @@ 1017 1017 "deviceTypeName": "", ~/~/ Название типа устройства 1018 1018 "sim1": "", ~/~/ Номер SIM1 1019 1019 "sim2": "", ~/~/ Номер SIM2 1020 - 1021 1021 "parentId": "", ~/~/ ID клиента-родителя 1022 1022 "parentName": "", ~/~/ Наименование клиента-родителя 1023 1023 "modelId": "", ~/~/ ID модели объекта 1024 1024 "modelName": "", ~/~/ Имя модели объекта 1025 - 1026 1026 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1027 1027 "unitName": "string", ~/~/ Наименование подразделения 1028 1028 "status": 0, ~/~/ Статус объекта 1029 - 1030 1030 "createdAt": "", ~/~/ Дата создания объекта 1031 1031 }, 1032 - 1033 1033 "customFields": [ ~/~/ Произвольные поля 1034 1034 { 1035 1035 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1052,8 +1052,7 @@ 1052 1052 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1053 1053 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1054 1054 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1055 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1056 - 1050 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1057 1057 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1058 1058 "mileageCoeff": 0, ~/~/ коэффициент пробега 1059 1059 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1083,7 +1083,6 @@ 1083 1083 "retries": 0 ~/~/ Количество попыток 1084 1084 } 1085 1085 ], 1086 - 1087 1087 "sensors": [ ~/~/ Датчики 1088 1088 { 1089 1089 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1124,31 +1124,19 @@ 1124 1124 }, 1125 1125 1126 1126 ~/~/ Характерные для произвольного: 1127 - 1128 1128 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1129 - 1130 1130 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1131 - 1132 1132 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1133 - 1134 1134 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1135 - 1136 1136 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1137 - 1138 1138 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1139 - 1140 1140 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1141 - 1142 1142 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1143 - 1144 1144 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1145 - 1146 1146 ~/~/ "ValueOn": "Вкл.", 1147 - 1148 1148 ~/~/ "ValueOff": "Выкл." 1149 1149 "summaryMaxValue": 0 ~/~/ Макс. значение 1150 1150 } 1151 - 1152 1152 "drivers": [ ~/~/ Водители 1153 1153 { 1154 1154 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1157,7 +1157,6 @@ 1157 1157 "isDefault": true ~/~/ По умолчанию 1158 1158 } 1159 1159 ], 1160 - 1161 1161 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1162 1162 { 1163 1163 "id": "", ~/~/ ID задания ... ... @@ -1174,8 +1174,7 @@ 1174 1174 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1175 1175 } 1176 1176 ], 1177 - 1178 - "statusHistory": [ ~/~/ История статусов 1157 +"statusHistory": [ ~/~/ История статусов 1179 1179 { 1180 1180 "status": 0, 1181 1181 "date": "2023-05-22T09:57:39.562Z", ... ... @@ -1183,7 +1183,6 @@ 1183 1183 "additionalInfo": "string" 1184 1184 } 1185 1185 ] 1186 - 1187 1187 } 1188 1188 ))) 1189 1189 ... ... @@ -1193,6 +1193,73 @@ 1193 1193 (% style="text-align:left" %) 1194 1194 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1195 1195 1174 + 1175 +== **Отправить команду на терминал** == 1176 + 1177 +(% class="box successmessage" %) 1178 +((( 1179 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1180 +))) 1181 + 1182 +Команда для отправки на тс. 1183 + 1184 +{ 1185 +"id": "", ~/~/идентификатор произвольного поля 1186 +"command": "", ~/~/ Текст команды 1187 +"retries": "", ~/~/ Количество попыток 1188 +"idTemplate": "" ~/~/ ID шаблона команды 1189 +} 1190 + 1191 + 1192 +== **Получить ответ на отправленную на ТС команду** == 1193 + 1194 +(% class="box infomessage" %) 1195 +((( 1196 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1197 +))) 1198 + 1199 +Идентификатор команды: cmdid 1200 + 1201 +Запрос от терминала на ответ команды 1202 + 1203 +Пример ответ от терминала: 1204 + 1205 +ID= "" ~/~/ идентификатор произвольного поля 1206 +Soft="" ~/~/ версия софта 1207 +GPS=4 ~/~/ тип трекера 1208 +Time=11:05:43 28.06.24 ~/~/ время запроса 1209 +Lat=45.056221 ~/~/ широта 1210 +Lon=39.035938 ~/~/ долгота 1211 +Speed=0.0 ~/~/ скорость 1212 +Course=181.4 ~/~/направление 1213 + 1214 +((( 1215 +== **Список отправленных объекту команд с ответами** == 1216 + 1217 +(% class="box infomessage" %) 1218 +((( 1219 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1220 +))) 1221 + 1222 +Идентификатор ТС: vehicleId 1223 + 1224 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1225 + 1226 +Пример ответа терминала 1227 + 1228 +[ 1229 +{ 1230 +"id": "", ~/~/ идентификатор пользователя 1231 +"commandText": "", ~/~/Текст команды. 1232 +"templateId": "", ~/~/Идентификатор шаблона 1233 +"updated": "", ~/~/ Время отправки 1234 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1235 +"answer": "", ~/~/ Ответ терминала. 1236 +"status": "" ~/~/ Статус отправки 1237 +} 1238 +] 1239 +))) 1240 + 1196 1196 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1197 1197 1198 1198 (% class="box successmessage" %) ... ... @@ -1210,8 +1210,7 @@ 1210 1210 1211 1211 (% style="color:#000000" %)Параметры в теле запроса (JSON): //Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON 1212 1212 1213 -(% style="color:#000000" %){ 1214 - 1258 +(% style="color:#000000" %){(%%) 1215 1215 "parentId": "" , ~/~/ ID клиента 1216 1216 "name": "" , ~/~/ имя ТС 1217 1217 "imei": "" , ~/~/ IMEI ... ... @@ -1232,7 +1232,6 @@ 1232 1232 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1233 1233 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1234 1234 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1235 - 1236 1236 "mileageCalcMethod": 0, 1237 1237 "mileageCoeff": 0, 1238 1238 "locationByCellId": true, ... ... @@ -1265,7 +1265,6 @@ 1265 1265 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1266 1266 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1267 1267 } 1268 - 1269 1269 "drivers": [ ~/~/ Водители 1270 1270 { 1271 1271 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1280,8 +1280,7 @@ 1280 1280 "retries": 0 1281 1281 } 1282 1282 ], 1283 - 1284 - "sensors": [ ~/~/ Датчики 1325 +"sensors": [ ~/~/ Датчики 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1287 1287 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1319,41 +1319,43 @@ 1319 1319 "additionalProp2": "string", 1320 1320 "additionalProp3": "string" 1321 1321 }, 1322 - 1323 1323 ~/~/ Характерные для произвольного: 1324 - 1325 1325 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1326 - 1327 1327 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1328 - 1329 1329 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1330 - 1331 1331 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1332 - 1333 1333 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1334 - 1335 1335 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1336 - 1337 1337 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1338 - 1339 1339 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1340 - 1341 1341 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1342 - 1343 1343 ~/~/ "ValueOn": "Вкл.", 1344 - 1345 1345 ~/~/ "ValueOff": "Выкл." 1346 - "summaryMaxValue": 0 ~/~/ Макс. значение 1375 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1376 + 1377 +((( 1378 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1379 + { 1380 + "from": 0, ~/~/ С какого значения 1381 + "color": "string", ~/~/ Каким цветом 1382 + "text": "string" ~/~/ Текст подписи к этому интервалу 1383 + } 1384 + ] 1347 1347 } 1348 1348 ], 1387 +))) 1388 + 1389 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1390 + 1391 + 1349 1349 "customFields": [ ~/~/ Произвольные поля 1350 1350 { 1351 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1352 - "name": "string", 1353 - "value": "string", 1354 - "forClient": true, 1355 - "forTooltip": true, 1356 - "forReport": true 1394 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1395 + "name": "string", ~/~/ Наименование произвольного поля 1396 + "value": "string", ~/~/ Значение произвольного поля 1397 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1398 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1399 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1357 1357 } 1358 1358 ] 1359 1359 } ... ... @@ -1360,55 +1360,161 @@ 1360 1360 1361 1361 (% style="color:#000000" %)Ответ: 1362 1362 1363 -(% style="color:#000000" %){ 1364 1364 1365 - "vehicleId": "", ~/~/ID ТС 1366 - "parentId": "", ~/~/Guid владельца ТС 1367 - "name": "", ~/~/Имя объекта 1368 - "imei": "", ~/~/IMEI 1369 - "deviceTypeId": "", ~/~/ID типа устройства 1370 - "modelId": "", ~/~/ID модели 1371 - "unitId": "", ~/~/ID подразделения 1372 - "sim1": "", ~/~/SIM1 1373 - "sim2": "", ~/~/SIM2 1374 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1375 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1376 - "counters": { ~/~/Счётчики 1377 - "mileageEnabled": true, 1378 - "motohoursEnabled": true, 1379 - "mileage": "", 1380 - "motohours": 345.0 1381 - }, 1382 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1383 - "id": null, 1384 - "enabled": true, ~/~/флаг включения 1385 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1386 - "login": "", ~/~/ имя учетной записи 1387 - "password": "" ~/~/ пароль учетной записи 1388 - }, 1389 - "inspectionTasks": { ~/~/ задания на ТО 1390 - "id": "", ~/~/ ID задачи 1391 - "enabled": false, ~/~/ Признак включения 1392 - "name": "", ~/~/ Имя задания 1393 - "description": "", ~/~/ Описание задания 1394 - "mileageCondition": "", ~/~/ Условие по пробегу 1395 - "lastMileage": "", ~/~/ Пробег (в метрах) 1396 - "motohoursCondition": "", ~/~/ Условие по моточасам 1397 - "lastMotohours": "", ~/~/ Моточасы 1398 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1399 - "kind": "", ~/~/ Вид периодичности по времени 1400 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1407 +((( 1408 +((( 1409 +((( 1410 +{ 1411 + "vehicleId": 0, ~/~/ ID ТС 1412 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1413 + "name": "string", ~/~/ Имя объекта 1414 + "imei": "string", ~/~/ IMEI 1415 + "deviceTypeId": 0, ~/~/ ID типа устройства 1416 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1417 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1418 + "sim1": "string", ~/~/ SIM1 1419 + "sim2": "string", ~/~/ SIM2 1420 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1421 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1422 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1423 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1424 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1425 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1426 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1427 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1428 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1429 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1430 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1431 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1432 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1433 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1434 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1435 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1436 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1437 + "counters": { ~/~/ Dto для состояний счётчиков 1438 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1439 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1440 + "mileage": 0, ~/~/ Пробег 1441 + "motohours": 0 ~/~/ Моточасы 1442 + }, 1443 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1444 + "id": "string", ~/~/ CMSV6 Идентификатор 1445 + "enabled": true, ~/~/ Признак включения 1446 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1447 + "login": "string", ~/~/ CMSV6 имя учетной записи 1448 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1449 + }, 1450 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1451 + { 1452 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1453 + "enabled": true, ~/~/ Признак включения 1454 + "name": "string", ~/~/ Имя задания 1455 + "description": "string", ~/~/ Описание задания 1456 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1457 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1458 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1459 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1460 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1461 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1462 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1463 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1401 1401 } 1465 + ], 1466 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1467 + { 1468 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1469 + "inputNumber": 0, ~/~/ № входа. 1470 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1471 + "comment": "string", ~/~/ Комментарий 1472 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1473 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1474 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1475 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1476 + } 1477 + ], 1478 + "commandTemplates": [ ~/~/ Список шаблонов команд 1479 + { 1480 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1481 + "name": "string", ~/~/ Название шаблона команд 1482 + "command": "string", ~/~/ Команда на выполнение 1483 + "retries": 0 ~/~/ Лимит попыток отправки 1484 + } 1485 + ], 1486 + "sensors": [ ~/~/ Список датчиков 1487 + { 1488 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1489 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1490 + "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 1491 + "name": "string", ~/~/ Имя датчика 1492 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1493 + "inputNumber": 0, ~/~/ Номер входа 1494 + "pseudonym": "string", ~/~/ Псевдоним 1495 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1496 + "isInverted": true, ~/~/ Признак инверсии 1497 + "disabled": true, ~/~/ Датчик не участвует в обработке 1498 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1499 + "gradesTables": [ ~/~/ Тарировка 1500 + { 1501 + "grades": [ ~/~/ Таблицы тарировки 1502 + { 1503 + "input": 0, ~/~/ Вход 1504 + "output": 0 ~/~/ Выход 1505 + } 1506 + ], 1507 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1508 + } 1509 + ], 1510 + "showInTooltip": true, ~/~/ Отображение в подсказке 1511 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1512 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1513 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1514 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1515 + "expr": "string", ~/~/ Выражение 1516 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1517 + "string" 1518 + ], 1519 + "customParams": { 1520 + "additionalProp1": "string", 1521 + "additionalProp2": "string", 1522 + "additionalProp3": "string" 1523 + }, 1524 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1525 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1526 + { 1527 + "from": 0, ~/~/ С какого значения 1528 + "color": "string", ~/~/ Каким цветом 1529 +))) 1402 1402 1403 -(% style="text-align:left" %) 1404 -(% style="color:#000000" %)} 1531 +((( 1532 + "text": "string" ~/~/ Текст подписи к этому интервалу 1533 + } 1534 + ] 1535 + } 1536 + ], 1537 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1538 + "customFields": [ ~/~/ Список произвольных полей 1539 + { 1540 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1541 + "name": "string", ~/~/ Наименование произвольного поля 1542 + "value": "string", ~/~/ Значение произвольного поля 1543 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1544 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1545 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1546 + } 1547 + ], 1548 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 1549 +} 1550 +))) 1551 +))) 1552 +))) 1405 1405 1554 + 1406 1406 **Валидация:** 1407 1407 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1408 1408 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1409 1409 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1410 1410 1411 -== (% style="color:#000000; font-size:16px" %)**Получение па раметровобъектов**(%%) ==1560 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1412 1412 1413 1413 (% class="box infomessage" %) 1414 1414 ((( ... ... @@ -1415,7 +1415,7 @@ 1415 1415 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1416 1416 ))) 1417 1417 1418 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1567 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1419 1419 1420 1420 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1421 1421 ... ... @@ -1449,9 +1449,12 @@ 1449 1449 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1450 1450 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1451 1451 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1452 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1453 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1454 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1601 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1602 + "unitName": "string", ~/~/ Название подразделения (опционально) 1603 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1604 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1605 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1606 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1455 1455 } 1456 1456 1457 1457 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1458,8 +1458,14 @@ 1458 1458 1459 1459 (% style="color:#000000" %)Ответ: 1460 1460 1461 -(% style="color:#000000" %){ 1613 +(% style="color:#000000" %)[ 1614 +{ 1462 1462 1616 +((( 1617 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1618 +))) 1619 + 1620 +((( 1463 1463 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1464 1464 "name": "" ~/~/ наименование объекта 1465 1465 "imei": "" ~/~/ IMEI объекта ... ... @@ -1485,9 +1485,21 @@ 1485 1485 "forClient": true, ~/~/ право на отображение у клиента 1486 1486 "forTooltip": false, ~/~/ право на отображение в подсказке 1487 1487 "forReport": false ~/~/ право на отображение в отчетах 1488 - }(%%) 1489 -(% style="color:#000000" %)} 1646 +))) 1490 1490 1648 +((( 1649 + } 1650 + ], 1651 + "vehicleGroups": [ ~/~/ Группы ТС 1652 + { 1653 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1654 + "name": "string" ~/~/ Наименование группы ТС 1655 + } 1656 + ] 1657 + } 1658 +] 1659 +))) 1660 + 1491 1491 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1492 1492 1493 1493 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1519,13 +1519,11 @@ 1519 1519 "data": "", ~/~/ Данные 1520 1520 "overwrite": false, ~/~/ Флаг перезаписи 1521 1521 "stage": "", ~/~/ Состояние, может быть null 1522 - 1523 1523 (% style="color:#000000" %)} 1524 1524 1525 1525 (% style="color:#000000" %)Ответ: 1526 1526 1527 -(% style="color:#000000" %){ 1528 - 1696 +(% style="color:#000000" %){(%%) 1529 1529 "status": "", ~/~/ значение статуса 1530 1530 "date": "", ~/~/ Дата смены статуса 1531 1531 "description": "", ~/~/ Описание ... ... @@ -1532,10 +1532,10 @@ 1532 1532 "data": "", ~/~/ Данные 1533 1533 "overwrite": false, ~/~/ Флаг перезаписи 1534 1534 "stage": "", ~/~/ Состояние 1535 - 1536 -(% style="text-align:left" %) 1537 1537 (% style="color:#000000" %) } 1538 1538 1705 +== == 1706 + 1539 1539 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1540 1540 1541 1541 (% class="box warningmessage" %) ... ... @@ -1623,8 +1623,7 @@ 1623 1623 "retries": 0 1624 1624 } 1625 1625 ], 1626 - 1627 - "sensors": [ ~/~/ Датчики 1794 +"sensors": [ ~/~/ Датчики 1628 1628 { 1629 1629 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1630 1630 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1662,95 +1662,215 @@ 1662 1662 "additionalProp2": "string", 1663 1663 "additionalProp3": "string" 1664 1664 }, 1665 - 1666 1666 ~/~/ Характерные для произвольного: 1667 - 1668 1668 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1669 - 1670 1670 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1671 - 1672 1672 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1673 - 1674 1674 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1675 - 1676 1676 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1677 - 1678 1678 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1679 - 1680 1680 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1681 - 1682 1682 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1683 - 1684 1684 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1685 - 1686 1686 ~/~/ "ValueOn": "Вкл.", 1687 - 1688 1688 ~/~/ "ValueOff": "Выкл." 1689 1689 "summaryMaxValue": 0 ~/~/ Макс. значение 1845 + 1846 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1847 + { 1848 + "from": 0, ~/~/ С какого значения 1849 + "color": "string", ~/~/ Каким цветом 1850 + "text": "string" ~/~/ Текст подписи к этому интервалу 1851 + } 1852 + ] 1690 1690 } 1691 1691 ], 1855 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1856 + 1692 1692 "customFields": [ ~/~/ Произвольные поля 1693 - { 1694 - 1695 - "name": "string", 1696 - "value": "string", 1697 - "forClient": true, 1698 - "forTooltip": true, 1699 - "forReport": true 1858 + { 1859 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1860 + "name": "string", ~/~/ Наименование произвольного поля 1861 + "value": "string", ~/~/ Значение произвольного поля 1862 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1863 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1864 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1700 1700 } 1701 1701 ] 1702 1702 } 1703 1703 1869 + 1704 1704 (% style="color:#000000" %)Ответ: 1705 1705 1706 -(% lang="en-US" style="text-align:left" %) 1707 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 1872 +((( 1873 +{ 1874 + "vehicleId": 0, ~/~/ ID ТС 1875 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1876 + "name": "string", ~/~/ Имя объекта 1877 + "imei": "string", ~/~/ IMEI 1878 + "deviceTypeId": 0, ~/~/ ID типа устройства 1879 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1880 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1881 + "sim1": "string", ~/~/ SIM1 1882 + "sim2": "string", ~/~/ SIM2 1883 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1884 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1885 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1886 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1887 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1888 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1889 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1890 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1891 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1892 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1893 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1894 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1895 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 1896 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1897 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1898 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1899 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1900 + "counters": { ~/~/ состояний счётчиков 1901 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1902 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1903 + "mileage": 0, ~/~/ Пробег 1904 + "motohours": 0 ~/~/ Моточасы 1905 + }, 1906 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1907 + "id": "string", ~/~/ CMSV6 Идентификатор 1908 + "enabled": true, ~/~/ Признак включения 1909 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 1910 +))) 1708 1708 1709 -(% lang="en-US" style="text-align:left" %) 1710 - "vehicleId": "", ~/~/ ID ТС 1711 - "parentId": "", ~/~/ ID клиента 1712 - "name": "", ~/~/ имя ТС 1713 - "imei": "", ~/~/ IMEI 1714 - "deviceTypeId": "", ~/~/ типа устройства 1715 - "modelId": "", ~/~/ ID модели 1716 - "unitId": "", ~/~/ ID подразделения 1717 - "sim1": "", ~/~/ SIM 1 1718 - "sim2": "", ~/~/ SIM2 1719 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1720 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1721 - "counters": 1722 - { 1723 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1724 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1725 - "mileage": "", ~/~/ пробег 1726 - "motohours": "", ~/~/ моточасы 1727 - } 1728 - "cmsv6Parameters": ~/~/ параметры CMSv6 1912 + 1913 +((( 1914 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1915 + "login": "string", ~/~/ CMSV6 имя учетной записи 1916 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1917 + }, 1918 + "inspectionTasks": [ ~/~/ Задания на ТО 1919 + { 1920 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1921 + "enabled": true, ~/~/ Признак включения 1922 + "name": "string", ~/~/ Имя задания 1923 + "description": "string", ~/~/ Описание задания 1924 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1925 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1926 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1927 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1928 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1929 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 1930 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 1931 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1932 + } 1933 + ], 1934 + "drivers": [ ~/~/ Список водителей 1935 + { 1936 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1937 + "inputNumber": 0, ~/~/ № входа. 1938 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 1939 + "comment": "string", ~/~/ Комментарий. 1940 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1941 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1942 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 1943 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 1944 + } 1945 + ], 1946 + "commandTemplates": [ ~/~/ Список шаблонов команд 1947 + { 1948 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1949 + "name": "string", ~/~/ Название шаблона команд 1950 + "command": "string", ~/~/ Команда на выполнение 1951 + "retries": 0 ~/~/ Лимит попыток отправки 1952 + } 1953 + ], 1954 + "sensors": [ ~/~/ Список датчиков 1955 + { 1956 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1957 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1958 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 1959 +))) 1960 + 1961 +((( 1962 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 1963 +))) 1964 + 1965 +((( 1966 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 1967 +))) 1968 + 1969 +((( 1970 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 1971 +))) 1972 + 1973 +((( 1974 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 1975 +))) 1976 + 1977 +((( 1978 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1979 + "name": "string", ~/~/ Имя датчика 1980 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 1981 +))) 1982 + 1983 +((( 1984 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1985 + "inputNumber": 0, ~/~/ Номер входа 1986 + "pseudonym": "string", ~/~/ Псевдоним 1987 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1988 + "isInverted": true, ~/~/ Признак инверсии 1989 + "disabled": true, ~/~/ Датчик не участвует в обработке 1990 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1991 + "gradesTables": [ ~/~/ Тарировка 1729 1729 { 1730 - "id": ~/~/ идентификатор 1731 - "enabled": true, ~/~/ флаг включения 1732 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1733 - "login": "", ~/~/ имя учетной записи 1734 - "password": "", ~/~/ пароль учетной записи 1735 - } 1736 - "inspectionTasks": ~/~/ задания на ТО 1993 + "grades": [ ~/~/ Таблицы тарировки 1994 + { 1995 + "input": 0, ~/~/ Вход 1996 + "output": 0 ~/~/ Выход 1997 + } 1998 + ], 1999 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 2000 + } 2001 + ], 2002 + "showInTooltip": true, ~/~/ Отображение в подсказке 2003 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 2004 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2005 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2006 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2007 + "expr": "string", ~/~/ Выражение 2008 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2009 + "string" 2010 + ], 2011 + "customParams": { ~/~/ Дополнительные настройки 2012 + "additionalProp1": "string", 2013 + "additionalProp2": "string", 2014 + "additionalProp3": "string" 2015 + }, 2016 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2017 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1737 1737 { 1738 - "id": "", ~/~/ ID задания 1739 - "enabled": false, ~/~/ Признак включения 1740 - "name": "", ~/~/ Имя задания 1741 - "description": "", ~/~/ Описание задания 1742 - "mileageCondition": "", ~/~/ Условие по пробегу 1743 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1744 - "motohoursCondition": "", ~/~/ Условие по моточасам 1745 - "lastMotohours": "", ~/~/ Моточасы 1746 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1747 - "kind": "", ~/~/ Вид периодичности по времени 1748 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2019 + "from": 0, ~/~/ С какого значения 2020 + "color": "string", ~/~/ Каким цветом 2021 + "text": "string" ~/~/ Текст подписи к этому интервалу 1749 1749 } 2023 + ] 2024 + } 2025 + ], 2026 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2027 + "customFields": [ ~/~/ Список произвольных полей 2028 + { 2029 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2030 + "name": "string", ~/~/ Наименование произвольного поля 2031 + "value": "string", ~/~/ Значение произвольного поля 2032 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2033 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2034 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2035 + } 2036 + ], 2037 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2038 +} 2039 +))) 1750 1750 1751 -(% lang="en-US" style="text-align:left" %) 1752 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 1753 - 1754 1754 **Валидация:** 1755 1755 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1756 1756 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1789,18 +1789,15 @@ 1789 1789 1790 1790 (% style="color:#000000" %)Метод запроса: **GET** 1791 1791 1792 -(% 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]]2079 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1793 1793 1794 1794 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1795 1795 1796 1796 (% style="color:#000000" %)Ответ: 1797 1797 1798 -(% style="color:#000000" %){ 1799 - 2085 +(% style="color:#000000" %){(%%) 1800 1800 "deviceTypeId" : "", ~/~/ ID типа устройства 1801 1801 "deviceTypeName" : "" ~/~/ Название типа устройства 1802 - 1803 -(% style="text-align:left" %) 1804 1804 (% style="color:#000000" %)} 1805 1805 1806 1806 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1822,13 +1822,10 @@ 1822 1822 1823 1823 (% style="color:#000000" %)Ответ: 1824 1824 1825 -(% style="color:#000000" %){ 1826 - 2109 +(% style="color:#000000" %){(%%) 1827 1827 "id": "", ~/~/ ID типа датчика 1828 1828 "name": "", ~/~/ Название 1829 1829 "description": "", ~/~/ Описание 1830 - 1831 -(% style="text-align:left" %) 1832 1832 (% style="color:#000000" %)} 1833 1833 1834 1834 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1872,6 +1872,56 @@ 1872 1872 } 1873 1873 ] 1874 1874 2156 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2157 + 2158 +(% class="box infomessage" style="text-align: left;" %) 2159 +((( 2160 +**POST /api/v3/terminalMessages/mapping** 2161 +))) 2162 + 2163 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2164 + 2165 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2166 + 2167 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2168 + 2169 +{ 2170 + "protocolType": 0, 2171 + "params": ["string"] 2172 +} 2173 + 2174 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2175 +|protocolType|ID типа протокола 2176 +|params|((( 2177 +Массив наименований параметров в сообщении 2178 +))) 2179 + 2180 +Ответ: 2181 + 2182 +{ 2183 + "protocolType": 0, 2184 + "mapping": { 2185 + "additionalProp1": { 2186 + "inputType": 0, 2187 + "inputNumber": 0 2188 + }, 2189 + "additionalProp2": { 2190 + "inputType": 0, 2191 + "inputNumber": 0 2192 + } 2193 + } 2194 +} 2195 + 2196 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2197 +|protocolType|Тип протокола 2198 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2199 +|inputNumber|((( 2200 +Номер входа 2201 +))) 2202 + 2203 +(% class="wikigeneratedid" %) 2204 +Перечень 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/]] 2205 + 1875 1875 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1876 1876 1877 1877 (% class="box infomessage" %) ... ... @@ -1896,6 +1896,11 @@ 1896 1896 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1897 1897 } 1898 1898 2230 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2231 +|vehicleId|ID объекта 2232 +|from|Дата и время начала периода запроса 2233 +|to|Дата и время окончания периода запроса 2234 + 1899 1899 Ответ: 1900 1900 1901 1901 [ ... ... @@ -1902,25 +1902,43 @@ 1902 1902 { 1903 1903 "messages": [ 1904 1904 { 1905 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1906 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1907 - "speed": 0, ~/~/ Скорость, км/ч 1908 - "altitude": 0, ~/~/ Высота, м 1909 - "latitude": 0, ~/~/ Широта [-90°;90°] 1910 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1911 - "satellites": 0, ~/~/ Кол-во спутников 1912 - "voltage": 0, ~/~/ Напряжение 1913 - "parameters": { ~/~/ список параметров датчиков передаваемых терминалом 2241 + "deviceTime": "2023-11-29T07:40:44.052Z", 2242 + "serverTime": "2023-11-29T07:40:44.052Z", 2243 + "speed": 0, 2244 + "altitude": 0, 2245 + "latitude": 0, 2246 + "longitude": 0, 2247 + "satellites": 0, 2248 + "course": 0, 2249 + "voltage": 0, 2250 + "parameters": { 1914 1914 "additionalProp1": "string", 1915 1915 "additionalProp2": "string", 1916 1916 "additionalProp3": "string" 1917 1917 }, 1918 - "photoCount": 0 ~/~/ Кол-во фото 2255 + "photoCount": 0, 2256 + "lbsCorrectedCoords": true, 2257 + "protocolType": 0 1919 1919 } 1920 1920 ] 1921 1921 } 1922 1922 ] 1923 1923 2263 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2264 +|deviceTime|Время сообщения терминала 2265 +|serverTime|Время когда сообщение поступило на сервер 2266 +|speed|Скорость 2267 +|altitude|Высота над уровнем моря 2268 +|latitude|Широта 2269 +|longitude|Долгота 2270 +|satellites|Кол-во спутников 2271 +|course|Курс 2272 +|voltage|Бортовое напряжение 2273 +|parameters|Список параметров и их значений 2274 +|photoCount|Количество фото 2275 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2276 +|protocolType|ID типа протокола 2277 + 1924 1924 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 1925 1925 1926 1926 == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == ... ... @@ -1957,10 +1957,12 @@ 1957 1957 { 1958 1958 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 1959 1959 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 1960 - "mileageBegin": 0, ~/~/ Пробег на начало периода 1961 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 1962 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 1963 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2314 + "mileage": 0, ~/~/ Пробег за период, километры 2315 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2316 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2317 + "motohours": 0, ~/~/ Моточасы за период, секунды 2318 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2319 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 1964 1964 } 1965 1965 ] 1966 1966 } ... ... @@ -2009,6 +2009,12 @@ 2009 2009 } 2010 2010 ] 2011 2011 2368 +(% class="box warningmessage" %) 2369 +((( 2370 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2371 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2372 +))) 2373 + 2012 2012 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2013 2013 2014 2014 (% class="box infomessage" %) ... ... @@ -2054,6 +2054,96 @@ 2054 2054 } 2055 2055 ] 2056 2056 2419 + 2420 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2421 + 2422 +(% class="box infomessage" %) 2423 +((( 2424 +**POST /api/v3/vehicles/moveStop** 2425 +))) 2426 + 2427 +Метод запроса: **POST** 2428 + 2429 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2430 + 2431 +В заголовках запроса: X-Auth: Токен авторизации 2432 + 2433 + 2434 +Тело запроса: 2435 + 2436 +{ 2437 + "vehicleIds": [ ], ~/~/ Список ID объектов 2438 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2439 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2440 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2441 +} 2442 + 2443 +Ответ: 2444 + 2445 +[ 2446 + { 2447 + "vehicleId": 0, ~/~/ ID объекта 2448 + "vehicleName": "string", ~/~/ Имя объекта 2449 + "moves": [ ~/~/ Событие движения 2450 + { 2451 + "mileage": 0, ~/~/ Пробег, км 2452 + "eventId": 0, ~/~/ Идентификатор события 2453 + "eventName": "string", ~/~/ Название события 2454 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2455 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2456 + "duration": 0 ~/~/ Продолжительность события, секунд 2457 + } 2458 + ], 2459 + "stops": [ ~/~/ События стоянок 2460 + { 2461 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2462 + "eventId": 0, ~/~/ Идентификатор события 2463 + "eventName": "string", ~/~/ Название события 2464 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2465 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2466 + "duration": 0 ~/~/ Продолжительность события, секунд 2467 + } 2468 + ] 2469 + } 2470 +] 2471 + 2472 + 2473 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2474 + 2475 +(% class="box infomessage" %) 2476 +((( 2477 +**POST /api/v3/vehicles/getlastdata** 2478 +))) 2479 + 2480 +Метод запроса: **POST** 2481 + 2482 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2483 + 2484 +В заголовках запроса: X-Auth: Токен авторизации 2485 + 2486 + 2487 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2488 + 2489 +Ответ: 2490 + { 2491 + "vehicleId": 0, ~/~/Идентификатор объекта. 2492 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2493 + "vehicleNumber": "string",~/~/Номер объекта. 2494 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2495 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2496 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2497 + "speed": 0,~/~/Скорость объекта. 2498 + "course": 0,~/~/Курс движения [0;360] 2499 + "latitude": 0,~/~/Широта [-90°;90°]. 2500 + "longitude": 0,~/~/Долгота [-180°;180°]. 2501 + "address": "string",~/~/Адрес. 2502 + "geozones": [ ~/~/Сведения по геозонам. 2503 + { 2504 + "id": 0, 2505 + "name": "string" 2506 + } 2507 + 2508 + 2057 2057 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2058 2058 2059 2059 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2361,6 +2361,32 @@ 2361 2361 2362 2362 Success 2363 2363 2816 + 2817 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2818 + 2819 +(% class="box warningmessage" %) 2820 +((( 2821 +**PUT** /api/v3/notifications/prolongation 2822 +))) 2823 + 2824 +Метод позволяет продлить уведомления. 2825 + 2826 +Метод запроса **PUT** 2827 + 2828 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2829 + 2830 +В заголовках запроса: X-Auth: Токен авторизации. 2831 + 2832 +Тело запроса: 2833 + 2834 +[ 2835 + 2836 +0 2837 + 2838 +] 2839 + 2840 +где 0 идентификатор ids. 2841 + 2364 2364 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2365 2365 2366 2366 (% class="box errormessage" %) ... ... @@ -3551,7 +3551,7 @@ 3551 3551 **POST /api/v3/vehicles/import/{agentId}** 3552 3552 ))) 3553 3553 3554 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4032 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3555 3555 3556 3556 В пути указывается **agentId** - id клиента. 3557 3557 ... ... @@ -3563,7 +3563,7 @@ 3563 3563 3564 3564 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3565 3565 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3566 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4044 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3567 3567 3568 3568 В теле использовать тип **form-data,** тип значения** file** 3569 3569 ... ... @@ -3586,7 +3586,7 @@ 3586 3586 |name|Имя созданного объекта 3587 3587 |errors|Ошибки и их описание 3588 3588 3589 -== (% style="color:#000000; font-size:16px" %)**Импорт об ъектов**(%%) ==4067 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) == 3590 3590 3591 3591 (% class="box infomessage" %) 3592 3592 ((( ... ... @@ -3730,7 +3730,7 @@ 3730 3730 3731 3731 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3732 3732 3733 -== (% style="color:#000000; font-size:16px" %)**Запрос рейтин ша качества вождения**(%%) ==4211 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 3734 3734 3735 3735 (% class="box infomessage" %) 3736 3736 ((( ... ... @@ -3742,64 +3742,67 @@ 3742 3742 Тело запроса: 3743 3743 3744 3744 { 3745 - "vehicleIds": [vehicleId], 3746 - "from": "2023-11-22T09:29:48.051Z", 3747 - "to": "2023-11-22T09:29:48.051Z" 4223 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4224 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4225 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3748 3748 } 3749 3749 3750 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3751 -|vehicleIds|Массив ID объектов 3752 -|from|Дата начала запроса 3753 -|to|Дата окончания запроса 3754 - 3755 3755 Ответ: 3756 3756 3757 3757 { 3758 - "items": [ 4231 + "items": [ ~/~/ Список в разрезе ТС 3759 3759 { 3760 - "from": "2023-11-22T09:29:48.052Z", 3761 - "to": "2023-11-22T09:29:48.052Z", 3762 - "vehicleId": 0, 3763 - "vehicleName": "string", 3764 - "vehicleModel": "string", 3765 - "penalty": 0, 3766 - "score": 0, 3767 - "totalViolations": 0, 3768 - "violationsByType": { 3769 - "overspeedingViolations": 0, 3770 - "accelerationViolations": 0, 3771 - "brakingViolations": 0, 3772 - "turningViolations": 0, 3773 - "dangerousDrivingViolations": 0, 3774 - "sensorViolations": 0 4233 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4234 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4235 + "vehicleId": 0, ~/~/ ID ТС 4236 + "vehicleName": "string", ~/~/ Название ТС 4237 + "vehicleModel": "string", ~/~/ Модель ТС 4238 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4239 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4240 + "totalViolations": 0, ~/~/ Нарушений всего 4241 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4242 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4243 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4244 + "brakingViolations": 0, ~/~/ Нарушений торможения 4245 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4246 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4247 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3775 3775 }, 3776 - "moveTime": 0, 3777 - "mileage": 0, 3778 - "tripsCount": 0, 3779 - "trips": [ 4249 + 4250 +((( 4251 + 4252 +))) 4253 + 4254 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4255 + "mileage": 0, ~/~/ Пробег, м 4256 + "tripsCount": 0, ~/~/ Кол-во рейсов 4257 + "trips": [ ~/~/ Информация по рейсу 3780 3780 { 3781 - "penalty": 0, 3782 - "score": 0, 3783 - "violationsCount": 0, 3784 - "violationsByType": { 3785 - "overspeedingViolations": 0, 3786 - "accelerationViolations": 0, 3787 - "brakingViolations": 0, 3788 - "turningViolations": 0, 3789 - "dangerousDrivingViolations": 0, 3790 - "sensorViolations": 0 4259 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4260 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4261 + "violationsCount": 0, ~/~/ Всего нарушений 4262 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4263 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4264 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4265 + "brakingViolations": 0, ~/~/ Нарушений торможения 4266 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4267 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4268 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3791 3791 }, 3792 - "moveTime": 0, 3793 - "mileage": 0, 3794 - "motohours": 0, 3795 - "maxSpeed": 0, 3796 - "startAddress": "string", 3797 - "endAddress": "string", 3798 - "drivers": [ 4270 + 4271 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4272 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4273 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4274 + "mileage": 0, ~/~/ Пробег, м 4275 + "motohours": 0, ~/~/ Моточасы, секунды 4276 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4277 + "startAddress": "string", ~/~/ Адрес начала рейса 4278 + "endAddress": "string", ~/~/ Адрес конца рейса 4279 + "drivers": [ ~/~/ Список водителей 3799 3799 { 3800 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3801 - "driverName": "string", 3802 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4281 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4282 + "driverName": "string", ~/~/ФИО водителя 4283 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 3803 3803 } 3804 3804 ] 3805 3805 } ... ... @@ -3808,34 +3808,444 @@ 3808 3808 ] 3809 3809 } 3810 3810 3811 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3812 -|from|Дата начала запроса 3813 -|to|Дата окончания 3814 -|vehicleId|ID объекта 3815 -|vehicleName|Имя объекта 3816 -|vehicleModel|Модель объекта 3817 -|penalty|Сумма штрафных баллов 3818 -|score|Оценка 3819 -|totalViolations|Суммарное количество нарушений 3820 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 3821 -|overspeedingViolations|Превышение скорости 3822 -|accelerationViolations|Ускорение 3823 -|brakingViolations|Торможение 3824 -|turningViolations|Резкий поворот 3825 -|dangerousDrivingViolations|Резкое вождение 3826 -|sensorViolations|Нарушение по датчику 3827 -|moveTime|Время в движении 3828 -|mileage|Пробег 3829 -|tripsCount|Количество рейсов 3830 -|motohours|Моточасы 3831 -|maxSpeed|Максимальная скорость 3832 -|startAddress|Адрес начала рейса 3833 -|endAddress|Адрес окончания рейса 3834 -|drivers|Список водителей, которые были на объекте в течениии рейса 3835 -|driverGuid|Guid водителя 3836 -|driverName|Имя водителя 3837 -|driverRfid|Номер Карты-метки 4292 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 3838 3838 4294 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4295 + 4296 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4297 + 4298 +(% class="box infomessage" %) 4299 +((( 4300 +POST /api/v3/fuelcards/transactions 4301 +))) 4302 + 4303 +Метод запроса: POST 4304 + 4305 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4306 +\\В заголовках запроса: X-Auth: Токен авторизации 4307 + 4308 +Параметры в теле запроса (JSON): 4309 + 4310 +{ 4311 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/Начало периода 4312 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/Конец периода 4313 + "ids": [ 4314 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/гуиды топливных карт 4315 + ], 4316 + "timezone": 0 ~/~/Таймзона 4317 +} 4318 + 4319 + 4320 +Ответ: 4321 + { 4322 + "date": "2024-04-11T10:41:02.265Z", ~/~/Дата и время транзакции 4323 + "driver": "string", ~/~/Водители, привязанные к ТК 4324 + "object": "string", ~/~/Наименование ТС 4325 + "amount": 0, ~/~/Количество топлива 4326 + "amountDut": 0, ~/~/Количество по ДУТ 4327 + "amountDiff": 0, ~/~/Разница, л 4328 + "amountDiffPerc": 0, ~/~/Разница, % 4329 + "summa": 0, ~/~/Стоимость, руб 4330 + "serviceName": "string", ~/~/Тип топлива 4331 + "price": 0, ~/~/Цена за литр, руб 4332 + "cardName": "string", ~/~/Наименование ТК 4333 + "cardNum": "string", ~/~/Номер ТК 4334 + "operator": "string", ~/~/Оператор ТК 4335 + "address": "string" ~/~/Адрес АЗС 4336 + } 4337 + 4338 + 4339 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4340 + 4341 + 4342 +== **Получение полных данных о ретрансляторе** == 4343 + 4344 +(% class="box infomessage" %) 4345 +((( 4346 +**GET ** **/api/v3/retranslations/{id}** 4347 +))) 4348 + 4349 +Идентификатор запроса: ID 4350 + 4351 + 4352 +Пример ответа: 4353 + 4354 +{ 4355 +"description": "", ~/~/ Определяет описание 4356 +"subscriberId": "", ~/~/ Подписчик 4357 +"protocolType": 0, ~/~/ Тип протокола 4358 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4359 +"address": "string", ~/~/ Адрес события 4360 +"objects": [ ~/~/Объекты для ретрансляции 4361 +{ 4362 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4363 +"name": "", ~/~/ Наименование объекта ретрансляции 4364 +"imei": "", ~/~/ IMEI объекта 4365 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4366 +} 4367 + ], 4368 +"id": "", ~/~/ идентификатор пользователя 4369 +"parentId": "", ~/~/Guid родителя 4370 +"deleted": "" ~/~/ Признак удаления, Включен, true - включен, false - отключен 4371 +} 4372 + 4373 + 4374 +== **Удаление данных ретранслятора** == 4375 + 4376 +(% class="box infomessage" %) 4377 +((( 4378 +**DELETE** **/api/v3/retranslations/{id}** 4379 +))) 4380 + 4381 +Параметр запроса: ID 4382 + 4383 + 4384 +== **Создание ретранслятора** == 4385 + 4386 +(% class="box infomessage" %) 4387 +((( 4388 +**POST ** **/api/v3/retranslations/{id}** 4389 +))) 4390 + 4391 +Запрос: 4392 + 4393 +{ 4394 +"description": "", ~/~/ Описание 4395 +"subscriberId": "", ~/~/ Подписчик 4396 +"protocolType": 0, ~/~/ Тип протокола 4397 +"address": "", ~/~/ Адрес ретрансляции 4398 +"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен 4399 +"objects": [ ~/~/Объекты для ретрансляции 4400 +{ 4401 +"id": "", ~/~/ идентификатор пользователя 4402 +"imei": "", ~/~/IMEI объекта 4403 +"isEnabled": "" ~/~/ признак включения, Включен, true - включен, false - отключен 4404 +} 4405 + ] 4406 +} 4407 + 4408 + 4409 +Ответ: 4410 + 4411 +{ 4412 +"description": "string", ~/~/ Определяет описание 4413 +"subscriberId": "", ~/~/ идентификатор запроса 4414 +"protocolType": 0, ~/~/ Тип протокола 4415 +"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен 4416 +"address": "", ~/~/ Адрес события 4417 +"objects": [ ~/~/Объекты для ретрансляции 4418 +{ 4419 +"id": "", ~/~/ идентификатор пользователя 4420 +"name": "string", ~/~/ Название уведомления 4421 +"imei": "string", ~/~/IMEI объекта 4422 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4423 +} 4424 + ], 4425 +"id": "", ~/~/ идентификатор пользователя 4426 +"parentId": "", ~/~/ Guid идентификатор родителя 4427 +"deleted": true ~/~/ Признак удаления 4428 +} 4429 + 4430 + 4431 +== **Редактирование ретранслятора** == 4432 + 4433 +(% class="box infomessage" %) 4434 +((( 4435 +**PUT** **/api/v3/retranslations** 4436 +))) 4437 + 4438 +Пример запроса: 4439 + 4440 +{ 4441 +"id": "", ~/~/ идентификатор пользователя 4442 +"description": "string", ~/~/ Определяет описание 4443 +"subscriberId": "", ~/~/ идентификатор запроса 4444 +"protocolType": 0, ~/~/ Тип протокола 4445 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4446 +"address": "string", ~/~/ Адрес события 4447 +"objects": ~/~/Объекты для ретрансляции 4448 +[ 4449 +{ 4450 +"id": "", ~/~/ идентификатор пользователя 4451 +"imei": "", ~/~/IMEI объекта 4452 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4453 +} 4454 + ] 4455 +} 4456 + 4457 + 4458 +Пример ответа: 4459 + 4460 +{ 4461 +"description": "", ~/~/ Определяет описание 4462 +"subscriberId": "", ~/~/ идентификатор запроса 4463 +"protocolType": 0, ~/~/ Тип протокола 4464 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4465 +"address": "string", ~/~/ Адрес события 4466 +"objects": [ ~/~/Объекты для ретрансляции 4467 +{ 4468 +"id": "", ~/~/ идентификатор пользователя 4469 +"name": "string", ~/~/ Название уведомления 4470 +"imei": "", ~/~/IMEI объекта 4471 +"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен 4472 +} 4473 + ], 4474 +"id": "", ~/~/ идентификатор пользователя 4475 +"parentId": "", ~/~/ Guid идентификатор родителя 4476 +"deleted": true ~/~/ Признак удаления 4477 +} 4478 + 4479 + 4480 +== **Получение списка ретранслятора клиента** == 4481 + 4482 +(% class="box infomessage" %) 4483 +((( 4484 +**POST /api/v3/retranslations/find** 4485 +))) 4486 + 4487 +Пример запроса: 4488 + 4489 +{ 4490 +"id": "", ~/~/ идентификатор пользователя 4491 +"search": "string", ~/~/Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4492 +"parentId": "" ~/~/ Идентификатор агента, для которого надо получить данные. 4493 +} 4494 + 4495 +Ответ: 4496 + 4497 +[ 4498 +{ 4499 +"description": "", ~/~/ Определяет описание 4500 +"subscriberId": "", ~/~/ идентификатор запроса 4501 +"protocolType": 0, ~/~/ Тип протокола 4502 +"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен 4503 +"address": "string", ~/~/ Адрес события 4504 +"id": "", ~/~/ идентификатор пользователя 4505 +"parentId": "", ~/~/ Guid идентификатор родителя 4506 +"deleted": true ~/~/ Признак удаления 4507 +} 4508 +] 4509 + 4510 + 4511 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4512 + 4513 +== **API для отчета по выгрузке комбайнов** == 4514 + 4515 +(% class="box infomessage" %) 4516 +((( 4517 +POST **/api/v3/Reports/harvesterUnloading** 4518 +))) 4519 + 4520 +Пример запроса: 4521 + 4522 +{ 4523 + "byTime": 0, ~/~/ Объединение событий по времени 4524 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4525 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4526 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4527 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4528 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4529 + 0 4530 + ], 4531 + "from": "", ~/~/ Дата и время начало запроса 4532 + "to": "", ~/~/ Дата и время окончания запроса 4533 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4534 +} 4535 + 4536 +Пример ответа: 4537 + 4538 +[ 4539 + { 4540 + "harvesterName": "", ~/~/Комбайн, номер 4541 + "harvesterId": 0, ~/~/Комбайн, id 4542 +"harvesterModel": "", ~/~/ Модель комбайна 4543 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4544 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4545 + "events": [ ~/~/Список событий в разрезе комбайна 4546 + { 4547 + "driverId": "", ~/~/Идентификатор водителя 4548 + "driverName": "", ~/~/Водитель комбайна, ФИО 4549 + "RFID": "", ~/~/ идентификатор карты-метки 4550 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4551 + "vehicleId": 0, ~/~/идентификатор объекта 4552 + "vehicleName": "string", ~/~/ Имя объекта 4553 + "modelName": "string", ~/~/ Имя модели объекта 4554 + "nearestVehicles": [ ~/~/Объекты рядом 4555 + { 4556 + "vehicleId": 0, ~/~/идентификатор объекта 4557 + "vehicleName": "string" ~/~/ Имя объекта 4558 + } 4559 + ], 4560 + "fields": [ ~/~/Поля, где происходила выгрузка 4561 + { 4562 + "id": 0, ~/~/ идентификатор пользователя 4563 + "name": "string" ~/~/ имя пользователя 4564 + } 4565 + ], 4566 + "event": "string", ~/~/Событие 4567 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4568 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4569 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4570 + "cultureName": "string", ~/~/ название культуры 4571 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4572 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4573 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4574 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4575 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4576 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4577 + "issued": 0, ~/~/Выдано, бункеров 4578 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4579 + "latitude": 0, ~/~/Широта 4580 + "longitude": 0, ~/~/ Долгота 4581 + "litresAway": 0, ~/~/Отдано, л 4582 + "m3Away": 0 ~/~/Отдано, м3 4583 + } 4584 + ] 4585 + } 4586 +] 4587 + 4588 + 4589 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 4590 + 4591 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 4592 + 4593 + 4594 +(% class="box infomessage" %) 4595 +((( 4596 +GET api/v3/Vehicles/recyclebin/all 4597 +))) 4598 + 4599 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 4600 + 4601 +Параметр запроса: {parentId} - идентификатор агента 4602 + 4603 +В заголовках запроса: X-Auth: Токен авторизации 4604 + 4605 +Ответ: 4606 + 4607 +[ 4608 + { 4609 + "recordTime": "", ~/~/Время записи 4610 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 4611 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 4612 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 4613 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 4614 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4615 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4616 + "items": [ ~/~/ 4617 +nullable: true ~/~/Детали 4618 + { 4619 + "name": "string", ~/~/наименование столбца 4620 + "value": "string" ~/~/содержание столбца 4621 + } 4622 + ] 4623 + }, 4624 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4625 + "string" 4626 + ] 4627 + } 4628 +] 4629 + 4630 + 4631 +(% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины** 4632 + 4633 +(% class="box infomessage" %) 4634 +((( 4635 +POST/api/v3/Vehicles/recyclebin/erase 4636 +))) 4637 + 4638 +В заголовках запроса: X-Auth: Токен авторизации 4639 + 4640 +Пример запроса: 4641 + 4642 +[ 4643 +0 4644 +] 4645 + 4646 + 4647 +Пример ответа: 4648 + 4649 +[ 4650 +{ 4651 + "recordTime": "", ~/~/Время записи 4652 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 4653 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 4654 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 4655 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 4656 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4657 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4658 + "items": [ ~/~/Детали 4659 + { 4660 + "name": "", ~/~/Имя свойства 4661 + "value": "" ~/~/Значение свойства 4662 + } 4663 + ] 4664 + }, 4665 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4666 + "" 4667 + ] 4668 + } 4669 +] 4670 + 4671 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 4672 + 4673 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 4674 + 4675 +(% class="box infomessage" %) 4676 +((( 4677 +POST/api/v3/Vehicles/recyclebin/restore 4678 +))) 4679 + 4680 +В заголовках запроса: X-Auth: Токен авторизации 4681 + 4682 +Параметры в теле запроса (JSON): 4683 + 4684 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 4685 + 4686 +В заголовках запроса: X-Auth: Токен авторизации 4687 + 4688 + 4689 +Пример запроса: 4690 + 4691 +((( 4692 +[ 4693 +))) 4694 + 4695 +((( 4696 + 0 4697 +))) 4698 + 4699 +((( 4700 +] 4701 +))) 4702 + 4703 + 4704 +Пример ответа: 4705 + 4706 +[ 4707 +{ 4708 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 4709 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 4710 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 4711 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 4712 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 4713 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 4714 + "details": { ~/~/Список деталей объекта, помещённого в корзину 4715 + "items": [ ~/~/Детали 4716 + { 4717 + "name": "string", ~/~/Имя свойства 4718 + "value": "string" ~/~/Значение свойства 4719 + } 4720 + ] 4721 + }, 4722 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 4723 + "string" 4724 + ] 4725 + } 4726 +] 4727 + 4728 + 4729 + 3839 3839 (% class="box" lang="en-US" style="text-align: center;" %) 3840 3840 ((( 3841 3841 (% 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]] **