<
From version < 103.2 >
edited by Илья Крайнов
on 2023/08/02 09:50
To version < 111.1 >
edited by Илья Крайнов
on 2023/10/18 17:09
>
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Content
... ... @@ -682,6 +682,225 @@
682 682  (% style="text-align:left" %)
683 683  (% style="color:#000000" %)**Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200».**
684 684  
685 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Модель объекта**(%%) =
686 +
687 +== (% style="color:#000000; font-size:16px" %)**Получение информации о модели объекта**(%%) ==
688 +
689 +(% class="box infomessage" %)
690 +(((
691 +(% lang="en-US" %)**GET /api/v3/models/{Id}**
692 +)))
693 +
694 +Метод возвращает полную информацию о модели объекта.
695 +
696 +(% style="color:#000000" %)Метод запроса: **GET**
697 +
698 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/(% lang="en-US" %)v3/models/(% style="color:#000000" %){(%%)ID}
699 +
700 +(% style="color:#000000" %)Параметр запроса: {__**id}**__ - идентификатор модели объекта
701 +
702 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
703 +
704 +(% style="color:#000000" %)Ответ:
705 +
706 +(% style="color:#000000" %){
707 + "parentName": "string",
708 + "name": "string",
709 + "picture": "string",
710 + "minspeed": 0,
711 + "maxspeed": 0,
712 + "width": 0,
713 + "imbeddedtrailer": true,
714 + "fueloutlay": 0,
715 + "hoppercapacity": 0,
716 + "hopperdischargespeed": 0,
717 + "modelType": 0,
718 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
719 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
720 + "deleted": true
721 +}
722 +
723 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
724 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта
725 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта
726 +|(% style="width:215px" %)(% style="color:#000000" %)picture|(% style="width:861px" %)Название иконки транспорта
727 +|(% style="width:215px" %)(% style="color:#000000" %)minspeed|(% style="width:861px" %)Минимальная технологическая скорость обработки поля, в км/ч
728 +|(% style="width:215px" %)(% style="color:#000000" %)maxspeed|(% style="width:861px" %)Максимальная технологическая скорость обработки поля, в км/ч
729 +|(% style="width:215px" %)(% style="color:#000000" %)width|(% style="width:861px" %)Ширина агрегата, в метрах
730 +|(% style="width:215px" %)(% style="color:#000000" %)imbeddedtrailer|(% style="width:861px" %)Опция: Содержит встроенный агрегат
731 +|(% style="width:215px" %)(% style="color:#000000" %)fueloutlay|(% style="width:861px" %)-
732 +|(% style="width:215px" %)(% style="color:#000000" %)hoppercapacity|(% style="width:861px" %)Объем бункера
733 +|(% style="width:215px" %)(% style="color:#000000" %)hopperdischargespeed|(% style="width:861px" %)Скорость выгрузки из бункера, л/сек
734 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car
735 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта
736 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта
737 +|(% style="width:215px" %)(% style="color:#000000" %)deleted|(% style="width:861px" %)Признак удаления, тип: boolean
738 +
739 +== (% style="color:#000000; font-size:16px" %)**Просмотр списка моделей**(%%) ==
740 +
741 +(% class="box successmessage" %)
742 +(((
743 +(% lang="en-US" %)**POST /api/v3/models/find**
744 +)))
745 +
746 +(% style="color:#000000" %)Метод позволяет получить список всех моделей клиента, указанного в запросе.
747 +
748 +(% style="color:#000000" %)Метод запроса: **POST**
749 +
750 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/models/find
751 +
752 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
753 +
754 +(% style="color:#000000" %)Параметры в теле запроса (JSON):{
755 +
756 +(% style="color:#000000" %) "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
757 +}
758 +
759 +(% style="color:#000000" %)Ответ:
760 +
761 +(% style="color:#000000" %)[
762 + {
763 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
764 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
765 + "parentName": "string",
766 + "name": "string",
767 + "modelType": 0
768 + }
769 +]
770 +
771 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
772 +|(% style="width:215px" %)(% style="color:#000000" %)parentName|(% style="width:861px" %)Имя клиента, которому принадлежит модель объекта
773 +|(% style="width:215px" %)(% style="color:#000000" %)name|(% style="width:861px" %)Имя модели объекта
774 +|(% style="width:215px" %)(% style="color:#000000" %)modelType|(% style="width:861px" %)Определяет тип модели объекта: 0 - None, 1 - Agro, 2 - Cargo, 3 - Car
775 +|(% style="width:215px" %)(% style="color:#000000" %)id|(% style="width:861px" %)ID модели объекта
776 +|(% style="width:215px" %)(% style="color:#000000" %)parentId|(% style="width:861px" %)ID клиента, которому принадлежит модель объекта
777 +
778 +== (% style="color:#000000; font-size:16px" %)**Добавление модели**(%%) ==
779 +
780 +(% class="box successmessage" %)
781 +(((
782 +(% lang="en-US" %)**POST /api/v3/models**
783 +)))
784 +
785 +(% style="color:#000000" %)Метод позволяет добавить объект, указанный в запросе.
786 +
787 +(% style="color:#000000" %)Метод запроса: **POST**
788 +
789 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/(% lang="en-US" %)models
790 +
791 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
792 +
793 +(% style="color:#000000" %)Параметры в теле запроса (JSON):
794 +
795 +{
796 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
797 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
798 + "deleted": true,
799 + "extId": "string",
800 + "name": "string",
801 + "picture": "string",
802 + "minspeed": 0,
803 + "maxspeed": 0,
804 + "width": 0,
805 + "imbeddedtrailer": true,
806 + "fueloutlay": 0,
807 + "hoppercapacity": 0,
808 + "hopperdischargespeed": 0,
809 + "modelType": 0
810 +}
811 +
812 +Ответ:
813 +
814 +{
815 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
816 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
817 + "deleted": true,
818 + "extId": "string",
819 + "name": "string",
820 + "picture": "string",
821 + "minspeed": 0,
822 + "maxspeed": 0,
823 + "width": 0,
824 + "imbeddedtrailer": true,
825 + "fueloutlay": 0,
826 + "hoppercapacity": 0,
827 + "hopperdischargespeed": 0,
828 + "modelType": 0
829 +}
830 +
831 +
832 +== (% style="color:#000000; font-size:16px" %)**Редактирование модели**(%%) ==
833 +
834 +(% class="box warningmessage" %)
835 +(((
836 +(% style="color:#000000" %)// //(% lang="en-US" %)**PUT /api/v3/models**
837 +)))
838 +
839 +(% style="color:#000000" %)Метод позволяет изменить статус пользователя, указанного в запросе.
840 +
841 +(% style="color:#000000" %)Метод запроса: **PUT**
842 +
843 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/(% lang="en-US" %)api/v3/models
844 +
845 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
846 +
847 +(% style="color:#000000" %)Параметры в теле запроса (JSON):
848 +
849 +{
850 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
851 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
852 + "deleted": true,
853 + "extId": "string",
854 + "name": "string",
855 + "picture": "string",
856 + "minspeed": 0,
857 + "maxspeed": 0,
858 + "width": 0,
859 + "imbeddedtrailer": true,
860 + "fueloutlay": 0,
861 + "hoppercapacity": 0,
862 + "hopperdischargespeed": 0,
863 + "modelType": 0
864 +}
865 +
866 +Ответ:
867 +
868 +{
869 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
870 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
871 + "deleted": true,
872 + "extId": "string",
873 + "name": "string",
874 + "picture": "string",
875 + "minspeed": 0,
876 + "maxspeed": 0,
877 + "width": 0,
878 + "imbeddedtrailer": true,
879 + "fueloutlay": 0,
880 + "hoppercapacity": 0,
881 + "hopperdischargespeed": 0,
882 + "modelType": 0
883 +}
884 +
885 +== (% style="color:#000000; font-size:16px" %)**Удаление модели**(%%) ==
886 +
887 +(% class="box errormessage" %)
888 +(((
889 +(% lang="en-US" %)**DELETE /api/v3/models/{Id}**
890 +)))
891 +
892 +(% style="color:#000000" %)Метод позволяет удалить пользователя. Метод позволяет удалить пользователя, указанного в строке запроса.
893 +
894 +(% style="color:#000000" %)Метод запроса: **DELETE**
895 +
896 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru(% lang="en-US" %)/api/v3/models/{Id}
897 +
898 +(% style="color:#000000" %)Параметр запроса: {**__id__**} - id модели
899 +
900 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
901 +
902 +Ответ: В случае успеха **Success 200**
903 +
685 685  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) =
686 686  
687 687  == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) ==
... ... @@ -1504,95 +1504,6 @@
1504 1504  (% style="text-align:left" %)
1505 1505  (% style="color:#000000" %)}
1506 1506  
1507 -
1508 -(% style="text-align:left" %)
1509 -(% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**
1510 -
1511 -== (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) ==
1512 -
1513 -(% class="box infomessage" %)
1514 -(((
1515 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/find**
1516 -)))
1517 -
1518 -(% style="color:#000000" %)Метод позволяет получить список геообъектов клиента. Возвращает массив геообъектов со всей информацией о них.
1519 -
1520 -(% style="color:#000000" %)Метод запроса: **POST**
1521 -
1522 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/users/api/v3/gis/find>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]
1523 -
1524 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1525 -
1526 -(% style="text-align:left" %)
1527 -Тело запроса:
1528 -
1529 -(% style="text-align:left" %)
1530 -{
1531 - "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
1532 -}
1533 -
1534 -(% style="text-align:left" %)
1535 -Ответ:
1536 -
1537 -[
1538 - {
1539 - "id": 0, ~/~/ Идентификатор объекта геозоны
1540 - "name": "string", ~/~/ Название объекта геозоны
1541 - "type": 0, ~/~/ Тип объекта геозоны
1542 - "fname": "string", ~/~/ Имя файла
1543 - "parentId": "string", ~/~/ Идентификатор клиента
1544 - "radius": 0, ~/~/ Радиус геообъекта
1545 - "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета
1546 - "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета
1547 - "description": "string", ~/~/ Описание
1548 - "area": 0, ~/~/ Площадь, м^^2^^
1549 - "perimetr": 0, ~/~/ Периметр, м
1550 - "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания
1551 - }
1552 -]
1553 -
1554 -== (% style="color: rgb(0, 0, 0); font-size: 16px" %)**Запрос пересечений по объектам**(%%) ==
1555 -
1556 -(% class="box infomessage" %)
1557 -(((
1558 -(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles**
1559 -)))
1560 -
1561 -(% style="color:#000000" %)Метод позволяет получить список геообъектов пересеченных выбранными объектами за выбранный период.
1562 -
1563 -(% style="color:#000000" %)Метод запроса: **POST**
1564 -
1565 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]
1566 -
1567 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1568 -
1569 -(% style="text-align:left" %)
1570 -Тело запроса:
1571 -
1572 -{
1573 - "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса
1574 - "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания
1575 - "ids": [ ], ~/~/ Массив id объектов
1576 - "byTime": 0, ~/~/ Настройки фильтрации по времени 
1577 - "byDist": 0, ~/~/
1578 - "filterByTime": 0, ~/~/
1579 - "filterByHalfPerimeter": true ~/~/
1580 -}
1581 -
1582 -Ответ:
1583 -[
1584 - {
1585 - "geozoneId": 0,
1586 - "geozoneName": "string",
1587 - "startDate": "2023-08-02T06:13:18.554Z",
1588 - "endDate": "2023-08-02T06:13:18.554Z",
1589 - "duration": 0,
1590 - "vehicleId": 0,
1591 - "vehicleName": "string"
1592 - }
1593 -]
1594 -
1595 -
1596 1596  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) =
1597 1597  
1598 1598  == (% style="color:#000000; font-size:16px" %)**Получение списка типов датчиков**(%%) ==
... ... @@ -1711,6 +1711,322 @@
1711 1711   }
1712 1712  ]
1713 1713  
1844 +== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) ==
1845 +
1846 +(% class="box infomessage" %)
1847 +(((
1848 +**POST /api/v3/vehicles/export/history**
1849 +)))
1850 +
1851 +Метод возвращает список сообщений терминала объекта за выбранный период.
1852 +
1853 +(% style="text-align: left;" %)
1854 +Метод запроса **POST**
1855 +
1856 +(% style="text-align: left;" %)
1857 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/export/history
1858 +
1859 +(% style="text-align: left;" %)
1860 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1861 +
1862 +{
1863 + "vehicleId": 0, ~/~/ ID объекта
1864 + "asArchive": true, ~/~/ true - Архивировать файл, False - не архивировать
1865 + "from": "2023-09-27T12:17:45.973Z", ~/~/ Дата и время начала запроса
1866 + "to": "2023-09-27T12:17:45.973Z" ~/~/ Дата и время окончания запроса
1867 +}
1868 +
1869 +Ответ:
1870 +
1871 +Получаете файл. Сообщение: Code 200/Success
1872 +
1873 +== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) ==
1874 +
1875 +(% class="box infomessage" %)
1876 +(((
1877 +**GET /api/v3/vehicles/export/history/status**
1878 +)))
1879 +
1880 +Метод возвращает список сообщений терминала объекта за выбранный период.
1881 +
1882 +(% style="text-align: left;" %)
1883 +Метод запроса **GET**
1884 +
1885 +(% style="text-align: left;" %)
1886 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/export/history/status
1887 +
1888 +(% style="text-align: left;" %)
1889 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1890 +
1891 +Ответ:
1892 +
1893 +{
1894 + "activity": true, ~/~/ статус экспорт, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется.
1895 + "progress": 0, ~/~/ прогресс экспорта, от 0 до 100%.
1896 + "message": "string" ~/~/ текст описывающий статус.
1897 +}
1898 +
1899 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) =
1900 +
1901 +== (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) ==
1902 +
1903 +(% class="box infomessage" %)
1904 +(((
1905 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/mileageAndMotohours**
1906 +)))
1907 +
1908 +(% style="color:#000000" %)Метод запроса: **POST**
1909 +
1910 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/mileageAndMotohours
1911 +
1912 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1913 +
1914 +(% style="text-align:left" %)
1915 +Тело запроса:
1916 +
1917 +{
1918 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой.
1919 + "vehicleIds": [0], ~/~/ Список ID объектов
1920 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода
1921 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода
1922 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3
1923 +}
1924 +
1925 +Ответ:
1926 +
1927 +[
1928 + {
1929 + "vehicleId": 0, ~/~/ ID объекта
1930 + "name": "string", ~/~/ Имя ТС
1931 + "periods": [ ~/~/ Периоды
1932 + {
1933 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 
1934 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 
1935 + "mileageBegin": 0, ~/~/ Пробег на начало периода
1936 + "mileageEnd": 0, ~/~/ Пробег на окончание периода
1937 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода
1938 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода
1939 + }
1940 + ]
1941 + }
1942 +]
1943 +
1944 +== (% style="color:#000000; font-size:16px" %)**Получение данных о расходе транспортного средства**(%%) ==
1945 +
1946 +(% class="box infomessage" %)
1947 +(((
1948 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelConsumption**
1949 +)))
1950 +
1951 +(% style="color:#000000" %)Метод запроса: **POST**
1952 +
1953 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelConsumption
1954 +
1955 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1956 +
1957 +(% style="text-align:left" %)
1958 +Тело запроса:
1959 +
1960 +{
1961 + "sampling": 0, ~/~/ Частота дискретизации в секундах, минимум 60 секунд. Весь период разбивает на подпериоды с указанной частотой.
1962 + "vehicleIds": [0], ~/~/ Список ID объектов
1963 + "from": "2023-08-09T14:23:14.572Z", ~/~/ Начало периода
1964 + "to": "2023-08-09T14:23:14.572Z", ~/~/ Окончание периода
1965 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3
1966 +}
1967 +
1968 +Ответ:
1969 +
1970 +[
1971 + {
1972 + "vehicleId": 0, ~/~/ ID объекта
1973 + "name": "string", ~/~/ Имя ТС
1974 + "periods": [ ~/~/ Периоды
1975 + {
1976 + "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 
1977 + "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 
1978 + "fuelLevelStart": 0, ~/~/ Уровень топлива на начало периода
1979 + "fuelLevelEnd": 0, ~/~/ Уровень топлива на конец периода
1980 + "fuelConsumption": 0, ~/~/ Расход топлива
1981 + "fuelConsumptionMove": 0 ~/~/ Расход топлива в движении
1982 + }
1983 + ]
1984 + }
1985 +]
1986 +
1987 +== (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) ==
1988 +
1989 +(% class="box infomessage" %)
1990 +(((
1991 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/vehicles/fuelInOut**
1992 +)))
1993 +
1994 +(% style="color:#000000" %)Метод запроса: **POST**
1995 +
1996 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/fuelInOut
1997 +
1998 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1999 +
2000 +(% style="text-align:left" %)
2001 +Тело запроса:
2002 +
2003 +{
2004 + "vehicleIds": [0], ~/~/ Список ID объектов
2005 + "from": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время начало запроса
2006 + "to": "2023-08-09T14:27:44.772Z", ~/~/ Дата и время окончания запроса
2007 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3
2008 +}
2009 +
2010 +Ответ:
2011 +
2012 +[
2013 + {
2014 + "start": "2023-08-09T14:27:44.773Z", ~/~/ Начало периода
2015 + "end": "2023-08-09T14:27:44.773Z", ~/~/ Окончание периода
2016 + "vehicleId": 0, ~/~/ ID объекта
2017 + "name": "string", ~/~/ Имя объекта
2018 + "model": "string", ~/~/ Модель объекта
2019 + "fuels": [ ~/~/ Массив данным по заправкам и сливам
2020 + {
2021 + "event": 0, ~/~/ Тип события 20 - TankFuelIn - заправка, 21 - TankFuelOut - слив
2022 + "startDate": "2023-08-09T14:27:44.773Z", ~/~/ Начало
2023 + "endDate": "2023-08-09T14:27:44.773Z", ~/~/ Окончание
2024 + "valueFuel": 0, ~/~/ Количество
2025 + "fuelStart": 0, ~/~/ Уровень топлива на начало события
2026 + "fuelEnd": 0 ~/~/ Уровень топливо на конец события
2027 + }
2028 + ]
2029 + }
2030 +]
2031 +
2032 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) =
2033 +
2034 +== (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) ==
2035 +
2036 +(% class="box infomessage" %)
2037 +(((
2038 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/find**
2039 +)))
2040 +
2041 +(% style="color:#000000" %)Метод позволяет получить список геообъектов клиента. Возвращает массив геообъектов со всей информацией о них.
2042 +
2043 +(% style="color:#000000" %)Метод запроса: **POST**
2044 +
2045 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/find
2046 +
2047 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2048 +
2049 +(% style="text-align:left" %)
2050 +Тело запроса:
2051 +
2052 +(% style="text-align:left" %)
2053 +{
2054 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
2055 +}
2056 +
2057 +(% style="text-align:left" %)
2058 +Ответ:
2059 +
2060 +[
2061 + {
2062 + "id": 0, ~/~/ Идентификатор объекта геозоны
2063 + "name": "string", ~/~/ Название объекта геозоны
2064 + "type": 0, ~/~/ Тип объекта геозоны
2065 + "fname": "string", ~/~/ Имя файла
2066 + "parentId": "string", ~/~/ Идентификатор клиента
2067 + "radius": 0, ~/~/ Радиус геообъекта
2068 + "beginCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата начала расчета
2069 + "endCalc": "2023-08-01T07:54:54.893Z", ~/~/ Дата окончания расчета
2070 + "description": "string", ~/~/ Описание
2071 + "area": 0, ~/~/ Площадь, м^^2^^
2072 + "perimetr": 0, ~/~/ Периметр, м
2073 + "createDate": "2023-08-01T07:54:54.893Z", ~/~/ Дата создания
2074 + }
2075 +]
2076 +
2077 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по объектам**(%%) ==
2078 +
2079 +(% class="box infomessage" %)
2080 +(((
2081 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/vehicles**
2082 +)))
2083 +
2084 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных объектов со всеми геообъектами за выбранный период.
2085 +
2086 +(% style="color:#000000" %)Метод запроса: **POST**
2087 +
2088 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/vehicles
2089 +
2090 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2091 +
2092 +(% style="text-align:left" %)
2093 +Тело запроса:
2094 +
2095 +{
2096 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса
2097 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания
2098 + "ids": [ ], ~/~/ Массив id объектов
2099 + "byTime": 0, ~/~/ Объединение событий по времени 
2100 + "byDist": 0, ~/~/ Объединение событий по расстоянию
2101 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
2102 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра
2103 +}
2104 +
2105 +Ответ:
2106 +[
2107 + {
2108 + "geozoneId": 0, ~/~/ ID геообъекта
2109 + "geozoneName": "string", ~/~/ Название геообъекта
2110 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда
2111 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда
2112 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте
2113 + "vehicleId": 0, ~/~/ ID объекта
2114 + "vehicleName": "string" ~/~/ Имя объекта
2115 + }
2116 +]
2117 +
2118 +== (% style="color:#000000; font-size:16px" %)**Запрос пересечений по геообъектам**(%%) ==
2119 +
2120 +(% class="box infomessage" %)
2121 +(((
2122 +(% style="color:#000000; line-height:100%" %)** **(% lang="en-US" %)**POST **(%%)**/api/v3/gis/intersections/geozones**
2123 +)))
2124 +
2125 +(% style="color:#000000" %)Метод позволяет получить список пересечений выбранных геообъектов со всеми объектами за выбранный период.
2126 +
2127 +(% style="color:#000000" %)Метод запроса: **POST**
2128 +
2129 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/gis/intersections/geozones
2130 +
2131 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
2132 +
2133 +(% style="text-align:left" %)
2134 +Тело запроса:
2135 +
2136 +{
2137 + "startDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата начала запроса
2138 + "endDate": "2023-08-02T06:13:18.551Z", ~/~/ Дата окончания
2139 + "ids": [ ], ~/~/ Массив id геообъектов
2140 + "byTime": 0, ~/~/ Объединение событий по времени 
2141 + "byDist": 0, ~/~/ Объединение событий по расстоянию
2142 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения
2143 + "filterByHalfPerimeter": true ~/~/ Фильтрация событий по пробегу половины периметра
2144 +}
2145 +
2146 +Ответ:
2147 +
2148 +[
2149 + {
2150 + "geozoneId": 0, ~/~/ ID геообъекта
2151 + "geozoneName": "string", ~/~/ Название геообъекта
2152 + "startDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата въезда
2153 + "endDate": "2023-08-02T06:13:18.554Z", ~/~/ Дата выезда
2154 + "duration": 0, ~/~/ Продолжительность нахождения в геообъекте
2155 + "vehicleId": 0, ~/~/ ID объекта
2156 + "vehicleName": "string" ~/~/ Имя объекта
2157 + }
2158 +]
2159 +
1714 1714  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Уведомления**(%%) =
1715 1715  
1716 1716  == (% style="color:#000000; font-size:16px" %)**Запрос списка уведомлений клиента**(%%) ==
... ... @@ -2509,7 +2509,6 @@
2509 2509   }
2510 2510  ]
2511 2511  
2512 -
2513 2513  == (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) ==
2514 2514  
2515 2515  (% class="box infomessage" %)
... ... @@ -2561,7 +2561,6 @@
2561 2561   "deleted": true
2562 2562  }
2563 2563  
2564 -
2565 2565  == (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) ==
2566 2566  
2567 2567  (% class="box warningmessage" %)
... ... @@ -2591,7 +2591,6 @@
2591 2591   "deleted": true
2592 2592  }
2593 2593  
2594 -
2595 2595  == (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) ==
2596 2596  
2597 2597  (% class="box errormessage" %)
... ... @@ -2606,6 +2606,324 @@
2606 2606  Success
2607 2607  
2608 2608  
3052 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Биллинг**(%%) =
3053 +
3054 +== (% style="color:#000000; font-size:16px" %)**Узнать баланс клиента**(%%) ==
3055 +
3056 +(% class="box infomessage" %)
3057 +(((
3058 +**GET /api/v3/Billing/client/balance/{clientId}**
3059 +)))
3060 +
3061 +Параметр запроса: **clientId **- идентификатор клиента.
3062 +
3063 +Ответ:
3064 +
3065 +{
3066 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3067 + "Balance": 0
3068 +}
3069 +
3070 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3071 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3072 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
3073 +
3074 +== (% style="color:#000000; font-size:16px" %)**Узнать ограничения клиента**(%%) ==
3075 +
3076 +(% class="box infomessage" %)
3077 +(((
3078 +**GET /api/v3/Billing/client/constraint/{clientId}**
3079 +)))
3080 +
3081 +Параметр запроса: **clientId **- идентификатор клиента.
3082 +
3083 +Ответ:
3084 +
3085 +{
3086 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3087 + "CalculationType": 0,
3088 + "PermissibleBalance": 0,
3089 + "DefermentDays": 0,
3090 + "SendUiNotifications": true,
3091 + "SendEmailNotifications": true,
3092 + "IsPrivate": true,
3093 +}
3094 +
3095 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3096 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3097 +|(% style="width:215px" %)CalculationType|(% style="width:861px" %)Определяет тип расчёта, 0 - Деньги, 1 - Дни
3098 +|(% style="width:215px" %)PermissibleBalance|(% style="width:861px" %)Допустимый баланс
3099 +|(% style="width:215px" %)DefermentDays|(% style="width:861px" %)Отсрочка, количество дней.
3100 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено
3101 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено
3102 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
3103 +
3104 +== (% style="color:#000000; font-size:16px" %)**Узнать состояние тарифного плана клиента**(%%) ==
3105 +
3106 +(% class="box infomessage" %)
3107 +(((
3108 +**GET /api/v3/Billing/client/plan/{clientId}**
3109 +)))
3110 +
3111 +Параметры запроса:
3112 +
3113 +**clientId **- идентификатор клиента.
3114 +
3115 +**planId **- идентификатор тарифного плана.
3116 +
3117 +Ответ:
3118 +
3119 +{
3120 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3121 + "Plan": { **~/~/ Описание тарифного плана**
3122 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3123 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3124 + "Name": "string",
3125 + "IsArchived": true,
3126 + "Constraint": {
3127 + "CalculationType": 0,
3128 + "PermissibleBalance": 0,
3129 + "DefermentDays": 0
3130 + },
3131 + "Features": [ **~/~/ Описание шаблона услуг тарифного плана**
3132 + {
3133 + "Feature": "string",
3134 + "IsFactual": true,
3135 + "Limit": 0,
3136 + "Price": 0,
3137 + "PeriodValue": 0,
3138 + "PeriodType": 0
3139 + }
3140 + ]
3141 + },
3142 + "DebitDate": "2023-10-18T12:46:24.213Z",
3143 + "Features": [ **~/~/ Описание услуг тарифного плана как есть**
3144 + {
3145 + "Feature": "string",
3146 + "IsEnabled": true,
3147 + "IsPrivate": true,
3148 + "IsFactual": true,
3149 + "Limit": 0,
3150 + "Price": 0,
3151 + "DebitDate": "2023-10-18T12:46:24.213Z",
3152 + "PeriodValue": 0,
3153 + "PeriodType": 0
3154 + }
3155 + ]
3156 +}
3157 +
3158 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3159 +|ClientId|Идентификатор клиента
3160 +|Id|Идентификатор тарифного плана
3161 +|OwnerId|Идентификатор клиента-владельца
3162 +|Name|Наименование тарифного плана
3163 +|IsArchived|Признак, определяющий архивный тарифный план
3164 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
3165 +|PermissibleBalance|Допустимый баланс
3166 +|DefermentDays|Отсрочка, количество дней
3167 +|Feature|Код услуги
3168 +|IsEnabled|Признак, определяющий активирована ли услуга
3169 +|IsPrivate|Признак, определяющий, являются ли параметры по услуге тарифа частными т.е. персональными для клиента, либо определяются тарифным планом.
3170 +|IsFactual|Признак, определяющий расчёт по факту
3171 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
3172 +|Price|Цена за единицу.
3173 +|DebitDate|Следующий момент времени списания с баланса за услугу.
3174 +|PeriodValue|Значение периода.
3175 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
3176 +
3177 +== (% style="color:#000000; font-size:16px" %)**Получить тарифные планы принадлежащие клиенту**(%%) ==
3178 +
3179 +(% class="box infomessage" %)
3180 +(((
3181 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}**
3182 +)))
3183 +
3184 +Параметр запроса: **clientId **- идентификатор клиента.
3185 +
3186 +Ответ:
3187 +
3188 +[
3189 + {
3190 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3191 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3192 + "Name": "string",
3193 + "IsArchived": true,
3194 + "Constraint": {
3195 + "CalculationType": 0,
3196 + "PermissibleBalance": 0,
3197 + "DefermentDays": 0
3198 + },
3199 + "Features": [
3200 + {
3201 + "Feature": "string",
3202 + "IsFactual": true,
3203 + "Limit": 0,
3204 + "Price": 0,
3205 + "PeriodValue": 0,
3206 + "PeriodType": 0
3207 + }
3208 + ]
3209 + }
3210 +]
3211 +
3212 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3213 +|ClientId|Идентификатор клиента
3214 +|Id|Идентификатор тарифного плана
3215 +|OwnerId|Идентификатор клиента-владельца
3216 +|Name|Наименование тарифного плана
3217 +|IsArchived|Признак, определяющий архивный тарифный план
3218 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
3219 +|PermissibleBalance|Допустимый баланс
3220 +|DefermentDays|Отсрочка, количество дней
3221 +|Feature|Код услуги
3222 +|IsFactual|Признак, определяющий расчёт по факту
3223 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
3224 +|Price|Цена за единицу.
3225 +|PeriodValue|Значение периода.
3226 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
3227 +
3228 +== (% style="color:#000000; font-size:16px" %)**Получить список доступных тарифных планов**(%%) ==
3229 +
3230 +(% class="box infomessage" %)
3231 +(((
3232 +**GET /api/v3/Billing/client/constraint/getowned/{clientId}**
3233 +)))
3234 +
3235 +Параметр запроса: **clientId **- идентификатор клиента.
3236 +
3237 +Ответ:
3238 +
3239 +[
3240 + {
3241 + "Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3242 + "OwnerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3243 + "Name": "string",
3244 + "IsArchived": true,
3245 + "Constraint": {
3246 + "CalculationType": 0,
3247 + "PermissibleBalance": 0,
3248 + "DefermentDays": 0
3249 + },
3250 + "Features": [
3251 + {
3252 + "Feature": "string",
3253 + "IsFactual": true,
3254 + "Limit": 0,
3255 + "Price": 0,
3256 + "PeriodValue": 0,
3257 + "PeriodType": 0
3258 + }
3259 + ]
3260 + }
3261 +]
3262 +
3263 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3264 +|ClientId|Идентификатор клиента
3265 +|Id|Идентификатор тарифного плана
3266 +|OwnerId|Идентификатор клиента-владельца
3267 +|Name|Наименование тарифного плана
3268 +|IsArchived|Признак, определяющий архивный тарифный план
3269 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
3270 +|PermissibleBalance|Допустимый баланс
3271 +|DefermentDays|Отсрочка, количество дней
3272 +|Feature|Код услуги
3273 +|IsFactual|Признак, определяющий расчёт по факту
3274 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
3275 +|Price|Цена за единицу.
3276 +|PeriodValue|Значение периода.
3277 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
3278 +
3279 +== (% style="color:#000000; font-size:16px" %)**Изменить баланс**(%%) ==
3280 +
3281 +(% class="box warningmessage" %)
3282 +(((
3283 +**PUT /api/v3/Billing/client/balance**
3284 +)))
3285 +
3286 +Тело запроса:
3287 +
3288 +{
3289 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3290 + "Balance": 0
3291 +}
3292 +
3293 +Ответ: Success
3294 +
3295 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3296 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3297 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
3298 +
3299 +== (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) ==
3300 +
3301 +(% class="box warningmessage" %)
3302 +(((
3303 +**PUT /api/v3/Billing/client/constraint**
3304 +)))
3305 +
3306 +Тело запроса:
3307 +
3308 +{
3309 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3310 + "CalculationType": 0,
3311 + "PermissibleBalance": 0,
3312 + "DefermentDays": 0,
3313 + "SendUiNotifications": true,
3314 + "SendEmailNotifications": true,
3315 + "IsPrivate": true,
3316 +}
3317 +
3318 +Ответ: Success
3319 +
3320 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3321 +|ClientId|Идентификатор клиента
3322 +|CalculationType|Определяет тип расчёта, 0 - Деньги, 1 - Дни
3323 +|PermissibleBalance|Допустимый баланс
3324 +|DefermentDays|(((
3325 +Отсрочка, количество дней
3326 +)))
3327 +|(% style="width:215px" %)SendUiNotifications|(% style="width:861px" %)Оповещение в web-интерфейсе, true - включено, false - выключено
3328 +|(% style="width:215px" %)SendEmailNotifications|(% style="width:861px" %)Оповещение на почту, true - включено, false - выключено
3329 +|(% style="width:215px" %)IsPrivate|(% style="width:861px" %)Признак, определяющий, являются ли параметры ограничений частными т.е. персональными для клиента, либо определяются тарифным планом
3330 +
3331 +== (% style="color:#000000; font-size:16px" %)**Изменить тариф клиента**(%%) ==
3332 +
3333 +(% class="box warningmessage" %)
3334 +(((
3335 +**PUT /api/v3/Billing/client/plan**
3336 +)))
3337 +
3338 +Тело запроса:
3339 +
3340 +{
3341 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3342 + "PlanId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3343 + "Features": [
3344 + {
3345 + "Feature": "string",
3346 + "IsEnabled": true,
3347 + "IsFactual": true,
3348 + "Limit": 0,
3349 + "Price": 0,
3350 + "DebitDate": "2023-10-18T13:26:58.987Z",
3351 + "PeriodValue": 0,
3352 + "PeriodType": 0
3353 + }
3354 + ]
3355 +}
3356 +
3357 +Ответ: Success
3358 +
3359 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3360 +|ClientId|Идентификатор клиента
3361 +|Feature|Код услуги
3362 +|IsEnabled|Признак, определяющий активирована ли услуга
3363 +|IsFactual|Признак, определяющий расчёт по факту
3364 +|Limit|Лимит использования услуги. Значение -1 подразумевает безлимитное использование.
3365 +|Price|Цена за единицу.
3366 +|DebitDate|Следующий момент времени списания с баланса за услугу.
3367 +|PeriodValue|Значение периода.
3368 +|PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
3369 +
2609 2609  (% class="box" lang="en-US" style="text-align: center;" %)
2610 2610  (((
2611 2611  (% 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]] **

Меню

ГЛОНАССSoft wiki - 2024 г.