<
From version < 115.1 >
edited by Илья Крайнов
on 2023/11/14 14:29
To version < 123.1 >
edited by Илья Крайнов
on 2023/11/28 12:43
>
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Content
... ... @@ -1921,61 +1921,6 @@
1921 1921   }
1922 1922  ]
1923 1923  
1924 -== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) ==
1925 -
1926 -(% class="box infomessage" %)
1927 -(((
1928 -**POST /api/v3/vehicles/export/history**
1929 -)))
1930 -
1931 -Метод возвращает список сообщений терминала объекта за выбранный период.
1932 -
1933 -(% style="text-align: left;" %)
1934 -Метод запроса **POST**
1935 -
1936 -(% style="text-align: left;" %)
1937 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/export/history
1938 -
1939 -(% style="text-align: left;" %)
1940 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1941 -
1942 -{
1943 - "vehicleId": 0, ~/~/ ID объекта
1944 - "asArchive": true, ~/~/ true - Архивировать файл, False - не архивировать
1945 - "from": "2023-09-27T12:17:45.973Z", ~/~/ Дата и время начала запроса
1946 - "to": "2023-09-27T12:17:45.973Z" ~/~/ Дата и время окончания запроса
1947 -}
1948 -
1949 -Ответ:
1950 -
1951 -Получаете файл. Сообщение: Code 200/Success
1952 -
1953 -== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) ==
1954 -
1955 -(% class="box infomessage" %)
1956 -(((
1957 -**GET /api/v3/vehicles/export/history/status**
1958 -)))
1959 -
1960 -Метод возвращает список сообщений терминала объекта за выбранный период.
1961 -
1962 -(% style="text-align: left;" %)
1963 -Метод запроса **GET**
1964 -
1965 -(% style="text-align: left;" %)
1966 -(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/export/history/status
1967 -
1968 -(% style="text-align: left;" %)
1969 -(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации
1970 -
1971 -Ответ:
1972 -
1973 -{
1974 - "activity": true, ~/~/ статус экспорт, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется.
1975 - "progress": 0, ~/~/ прогресс экспорта, от 0 до 100%.
1976 - "message": "string" ~/~/ текст описывающий статус.
1977 -}
1978 -
1979 1979  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) =
1980 1980  
1981 1981  == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) ==
... ... @@ -3084,7 +3084,6 @@
3084 3084  |Number|Название/номер агрегата
3085 3085  |Description|Текст примечания агрегата
3086 3086  
3087 -
3088 3088  = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Карты-метки**(%%) =
3089 3089  
3090 3090  == (% style="color:#000000; font-size:16px" %)**Получить список карт-меток определенного клиента**(%%) ==
... ... @@ -3106,13 +3106,19 @@
3106 3106   {
3107 3107   "name": "string",
3108 3108   "number": 0,
3109 - "period": 0, ~/~/ Частота трансляции радиометки
3053 + "period": 0,
3110 3110   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3111 3111   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3112 - "deleted": true
3113 3113   }
3114 3114  ]
3115 3115  
3059 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3060 +|parentId|ID клиента
3061 +|name|Название карты-метки
3062 +|number|Номер
3063 +|period|Период запросов в секундах (работает только для агрегатов)
3064 +|id|ID карты-метки
3065 +
3116 3116  == (% style="color:#000000; font-size:16px" %)**Получить данные карты-метки**(%%) ==
3117 3117  
3118 3118  (% class="box infomessage" %)
... ... @@ -3128,13 +3128,19 @@
3128 3128   {
3129 3129   "name": "string",
3130 3130   "number": 0,
3131 - "period": 0, ~/~/ Частота трансляции радиометки
3081 + "period": 0,
3132 3132   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3133 3133   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3134 - "deleted": true
3135 3135   }
3136 3136  ]
3137 3137  
3087 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3088 +|name|Название карты-метки
3089 +|number|Номер
3090 +|period|Период запросов в секундах (работает только для агрегатов)
3091 +|id|ID карты-метки
3092 +|parentId|ID клиента
3093 +
3138 3138  == (% style="color:#000000; font-size:16px" %)**Добавить карту-метку**(%%) ==
3139 3139  
3140 3140  (% class="box successmessage" %)
... ... @@ -3149,7 +3149,6 @@
3149 3149   "number": 0,
3150 3150   "period": 0,
3151 3151   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3152 - "deleted": true
3153 3153  }
3154 3154  
3155 3155  Ответ:
... ... @@ -3160,9 +3160,15 @@
3160 3160   "period": 0,
3161 3161   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3162 3162   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3163 - "deleted": true
3164 3164  }
3165 3165  
3120 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3121 +|name|Название карты-метки
3122 +|number|Номер
3123 +|period|Период запросов в секундах (работает только для агрегатов)
3124 +|id|ID карты-метки
3125 +|parentId|ID клиента
3126 +
3166 3166  == (% style="color:#000000; font-size:16px" %)**Редактировать карту-метку**(%%) ==
3167 3167  
3168 3168  (% class="box warningmessage" %)
... ... @@ -3178,7 +3178,6 @@
3178 3178   "period": 0,
3179 3179   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3180 3180   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3181 - "deleted": true
3182 3182  }
3183 3183  
3184 3184  Ответ:
... ... @@ -3189,9 +3189,15 @@
3189 3189   "period": 0,
3190 3190   "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3191 3191   "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3192 - "deleted": true
3193 3193  }
3194 3194  
3154 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3155 +|name|Название карты-метки
3156 +|number|Номер
3157 +|period|Период запросов в секундах (работает только для агрегатов)
3158 +|id|ID карты-метки
3159 +|parentId|ID клиента
3160 +
3195 3195  == (% style="color:#000000; font-size:16px" %)**Удалить карту-метку**(%%) ==
3196 3196  
3197 3197  (% class="box errormessage" %)
... ... @@ -3440,6 +3440,8 @@
3440 3440  **PUT /api/v3/Billing/client/balance**
3441 3441  )))
3442 3442  
3409 +Устанавливает указанное значение баланса не создавая операции пополнение/снятие.
3410 +
3443 3443  Тело запроса:
3444 3444  
3445 3445  {
... ... @@ -3453,6 +3453,50 @@
3453 3453  |(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3454 3454  |(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
3455 3455  
3424 +== (% style="color:#000000; font-size:16px" %)**Пополнить баланс**(%%) ==
3425 +
3426 +(% class="box warningmessage" %)
3427 +(((
3428 +**PUT /api/v3/billing/client/balance/deposit**
3429 +)))
3430 +
3431 +Создает операцию **Пополнение **с указанной суммой
3432 +
3433 +Тело запроса:
3434 +
3435 +{
3436 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3437 + "Balance": 0
3438 +}
3439 +
3440 +Ответ: Success
3441 +
3442 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3443 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3444 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
3445 +
3446 +== (% style="color:#000000; font-size:16px" %)**Списать с баланса**(%%) ==
3447 +
3448 +Создает операцию **Списание **с указанной суммой
3449 +
3450 +(% class="box warningmessage" %)
3451 +(((
3452 +**PUT /api/v3/billing/client/balance/withdraw**
3453 +)))
3454 +
3455 +Тело запроса:
3456 +
3457 +{
3458 + "ClientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3459 + "Balance": 0
3460 +}
3461 +
3462 +Ответ: Success
3463 +
3464 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3465 +|(% style="width:215px" %)ClientId|(% style="width:861px" %)Идентификатор клиента
3466 +|(% style="width:215px" %)Balance|(% style="width:861px" %)Значение баланса
3467 +
3456 3456  == (% style="color:#000000; font-size:16px" %)**Изменить ограничения клиента**(%%) ==
3457 3457  
3458 3458  (% class="box warningmessage" %)
... ... @@ -3525,6 +3525,305 @@
3525 3525  |PeriodValue|Значение периода.
3526 3526  |PeriodType|Определяет тип периода действия услуги в тарифном плане, 0 - Дни, 1 - Месяцы
3527 3527  
3540 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Импорт и Экспорт**(%%) =
3541 +
3542 +(% class="box warningmessage" %)
3543 +(((
3544 +Для тестирования запросов **Импорта **в Postman необходимо скачать его на ПК. Версия в браузере не позволяет загружать файлы в тело запроса.
3545 +)))
3546 +
3547 +== (% style="color:#000000; font-size:16px" %)**Импорт объектов**(%%) ==
3548 +
3549 +(% class="box infomessage" %)
3550 +(((
3551 +**POST /api/v3/vehicles/import/{agentId}**
3552 +)))
3553 +
3554 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.**
3555 +
3556 +В пути указывается **agentId** - id клиента.
3557 +
3558 +**Заголовок**
3559 +
3560 +**X-Auth: [токен авторизации]**
3561 +
3562 +**Параметры**
3563 +
3564 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3565 +|withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать.
3566 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1 - Замена, 2 - Слияние, 3 - Добавление
3567 +
3568 +В теле использовать тип **form-data,** тип значения** file**
3569 +
3570 +**Ключи**
3571 +
3572 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3573 +|data|В значении передаем файл объекта, формат **xml** или **wlp **
3574 +|csv|В значении передаем файл датчиков, формат **csv**
3575 +
3576 +Ответ:
3577 +
3578 +{
3579 + "vehicleId": 0,
3580 + "name": "string",
3581 + "errors": ["string"]
3582 +}
3583 +
3584 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3585 +|vehicleId|ID созданного объекта
3586 +|name|Имя созданного объекта
3587 +|errors|Ошибки и их описание
3588 +
3589 +== (% style="color:#000000; font-size:16px" %)**Импорт сообщений**(%%) ==
3590 +
3591 +(% class="box infomessage" %)
3592 +(((
3593 +**POST** **/api/v3/vehicles/import/history/{vehicleId}**
3594 +)))
3595 +
3596 +(% class="wikigeneratedid" %)
3597 +Позволяет импортировать сообщения в выбранный объект. Сообщения должны иметь формат **wln** или **json**. Также они могут быть упакованы и переданы в виде в **zip-архива**.
3598 +
3599 +(% class="wikigeneratedid" %)
3600 +В пути указывается **vehicleId **- id объекта.
3601 +
3602 +**Заголовок**
3603 +
3604 +**X-Auth: [токен авторизации]**
3605 +
3606 +В теле использовать тип **form-data.**
3607 +
3608 +Ключи:
3609 +
3610 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3611 +|**history**|В значении передавать файл с историей
3612 +
3613 +В случае, если загружается история из файла **wln **можно выполнять подмену названий параметров. В ключе вы указываете название параметра из файла, в значении указываете значение на которое нужно заменить.
3614 +
3615 +Ответ:
3616 +
3617 +{
3618 + "results": [
3619 + {
3620 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3621 + "vehicleId": 0,
3622 + "errors": [
3623 + "string"
3624 + ],
3625 + "firstMessageDate": "2023-11-28T09:27:58.949Z",
3626 + "lastMessageDate": "2023-11-28T09:27:58.949Z",
3627 + "producedCount": 0,
3628 + "msgCount": 0
3629 + }
3630 + ]
3631 +}
3632 +
3633 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3634 +|results|Результаты импорта в разрезе ТС
3635 +|vehicleGuid|Guid ТС
3636 +|vehicleId|ID ТС
3637 +|errors|Список ошибок импорта истории (если пустой - нет ошибок)
3638 +|firstMessageDate|Дата первого импортированного сообщения (UTC)
3639 +|lastMessageDate|Дата последнего импортированного сообщения (UTC)
3640 +|producedCount|Кол-во успешно отправленных в шину данных сообщений
3641 +|msgCount|Кол-во обработанных сообщений всего
3642 +
3643 +== (% style="color:#000000; font-size:16px" %)**Статус импорта сообщений**(%%) ==
3644 +
3645 +(% class="box infomessage" %)
3646 +(((
3647 +**GET /api/v3/vehicles/import/history/status**
3648 +)))
3649 +
3650 +Запрос статуса импорта истории. Может потребоваться в случае импорта истории за большой период.
3651 +
3652 +Ответ:
3653 +
3654 +{
3655 + "activity": true,
3656 + "progress": 0,
3657 + "message": "string"
3658 +}
3659 +
3660 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3661 +|activity|Активен ли экспорт/импорт истории сейчас, true - да, false - нет
3662 +|progress|Guid ТС
3663 +
3664 +== (% style="color:#000000; font-size:16px" %)**Экспорт объектов**(%%) ==
3665 +
3666 +(% class="box infomessage" %)
3667 +(((
3668 +**POST /api/v3/vehicles/export**
3669 +)))
3670 +
3671 +Запрос позволяет экспортировать файлы с настройками объектов. В запросе передается массив id объектов.
3672 +
3673 +Тело запроса:
3674 +
3675 +[
3676 + id
3677 +]
3678 +
3679 +Ответ: Success 200, получаете файлы с настройками.
3680 +
3681 +== (% style="color:#000000; font-size:16px" %)**Экспорт сообщений**(%%) ==
3682 +
3683 +(% class="box infomessage" %)
3684 +(((
3685 +**POST /api/v3/vehicles/export/history**
3686 +)))
3687 +
3688 +Метод возвращает список сообщений терминала объекта за выбранный период.
3689 +
3690 +Тело запроса:
3691 +
3692 +{
3693 + "vehicleId": 0,
3694 + "asArchive": true,
3695 + "from": "2023-09-27T12:17:45.973Z",
3696 + "to": "2023-09-27T12:17:45.973Z"
3697 +}
3698 +
3699 +Ответ:
3700 +
3701 +Получаете файл. Сообщение: Code 200/Success
3702 +
3703 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3704 +|vehicleId|ID объекта
3705 +|asArchive|true - Архивировать файл, False - не архивировать
3706 +|from|Дата и время начала запроса
3707 +|to|Дата и время окончания запроса
3708 +
3709 +== (% style="color:#000000; font-size:16px" %)**Статус экспорта сообщений**(%%) ==
3710 +
3711 +(% class="box infomessage" %)
3712 +(((
3713 +**GET /api/v3/vehicles/export/history/status**
3714 +)))
3715 +
3716 +Метод возвращает список сообщений терминала объекта за выбранный период.
3717 +
3718 +Ответ:
3719 +
3720 +{
3721 + "activity": true,
3722 + "progress": 0,
3723 + "message": "string"
3724 +}
3725 +
3726 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание**
3727 +|activity|Статус экспорта, где true - экспорт в процессе выполнения, false - в данный момент ничего не экспортируется.
3728 +|progress|Прогресс экспорта, от 0 до 100%
3729 +|message|Текст описывающий статус
3730 +
3731 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) =
3732 +
3733 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинша качества вождения**(%%) ==
3734 +
3735 +(% class="box infomessage" %)
3736 +(((
3737 +**POST /api/v3/EcoDriving/rating**
3738 +)))
3739 +
3740 +Позволяет получить данные рейтинга нарушений выбранных объектов за указанный период времени. Данные, выдаваемые этим запросом аналогичны тем, что вы можете увидеть в окне **Качество вождения** в мониторинге. В массиве **items **передается список объектов из рейтинга качества вождения, в **trips **передается информация по отдельным рейсам объекта.
3741 +
3742 +Тело запроса:
3743 +
3744 +{
3745 + "vehicleIds": [vehicleId],
3746 + "from": "2023-11-22T09:29:48.051Z",
3747 + "to": "2023-11-22T09:29:48.051Z"
3748 +}
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 +Ответ:
3756 +
3757 +{
3758 + "items": [
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
3775 + },
3776 + "moveTime": 0,
3777 + "mileage": 0,
3778 + "tripsCount": 0,
3779 + "trips": [
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
3791 + },
3792 + "moveTime": 0,
3793 + "mileage": 0,
3794 + "motohours": 0,
3795 + "maxSpeed": 0,
3796 + "startAddress": "string",
3797 + "endAddress": "string",
3798 + "drivers": [
3799 + {
3800 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
3801 + "driverName": "string",
3802 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
3803 + }
3804 + ]
3805 + }
3806 + ]
3807 + }
3808 + ]
3809 +}
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|Номер Карты-метки
3838 +
3528 3528  (% class="box" lang="en-US" style="text-align: center;" %)
3529 3529  (((
3530 3530  (% 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 г.