Основные функции

Этот скрипт предоставляет API, которое обрабатывает операции связанные с управлением встроенными списками и записями, такие как создание, получение, обновление и удаление списков и записей.

Установка

  • Перейти в автоматизацию, нажать «Загрузить пример» и выбрать «Из файла», указав путь к скрипту.

  • Снять галочку «Включить скрипт» и нажать сохранить.

  • Выполнить настройку и нажать "Сохранить и запустить".

Работа со списками

Создать список

Endpoint `POST /s/autotrassir/create_list`

Параметры:

  • list_name (str): Имя создаваемого списка.
  • reaction (int): Тип реакции (по умолчанию 1). Возможные варианты:
    • 0 - чёрный список
    • 1 - информационный список
    • 2 - белый список
  • server_guid (str): Необязательный GUID сервера.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "NewList", "reaction": 1, "server_guid": "server123"}' https://<host>/s/autotrassir/create_list


Ответы:

  • 200 OK: Список успешно создан.
  • 400 Bad Request: Список уже существует или данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось создать список.

Получить списки

Endpoint `GET /s/autotrassir/get_lists`

Параметры:

  • server_guid (str): Необязательный GUID сервера.

Пример CURL-запроса:

curl -X GET https://<host>/s/autotrassir/get_lists?server_guid=server123


Ответы:

  • 200 OK: Списки успешно получены.
  • 400 Bad Request: Неверный GUID сервера.

Удалить список

Endpoint `POST /s/autotrassir/delete_list`

Параметры:

  • list_name (str): Название удаляемого списка.
  • server_guid (str): Необязательный GUID сервера.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "name", "server_guid": "server123"}' https://<host>/s/autotrassir/delete_list


Ответы:

  • 200 OK: Список успешно удален.
  • 400 Bad Request: Список не существует или данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось удалить список.

Работа с записями

Создать запись

Endpoint `POST /s/autotrassir/create_record`

Параметры:

  • list_name (str): Название списка.
  • plate (str): Номерной знак автомоблия.
  • comment (str): Комментарий, возможно пустой. 
  • time_threshold (long): Временной порог действия записи. Если запись не ограничена по времени, установите значение 0. Если ограничена, укажите время окончания в формате unix timestamp.
  • passes_initial (int): Начальное количество проездов для записи. Если запись не ограничена по количеству проездов, установите значение -1. Если ограничена, укажите начальное количество проездов.
  • passes_left (int): Количество оставшихся проездов по записи.
  • disabled (int): Флаг отключения (1 или 0).
  • arbitrary_data (dict): Поле для хранения из скриптов произвольных данных, ассоциированных с записью.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "name", "plate": "ABC123", "comment": "Test", "time_threshold": 1622547800, "passes_initial": 10, "passes_left": 5, "disabled": 0, "arbitrary_data": {"key": "value"}}' https://<host>/s/autotrassir/create_record


Ответы:

  • 200 OK: Запись успешно создана.
  • 400 Bad Request: Запись уже существует или данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось создать запись.

Получить записи

Endpoint `GET /s/autotrassir/get_records`

Параметры:

  • server_guid (str): Необязательный GUID сервера.
  • list_name (str): Название списка.

Пример CURL-запроса:
 

curl -X GET https://<host>/s/autotrassir/get_records?server_guid=server123&list_name=name

Ответы:

  • 200 OK: Записи успешно получены.
  • 400 Bad Request: Неверный идентификатор списка или GUID сервера.

Удалить запись

Endpoint `POST /s/autotrassir/delete_record`

Параметры:

  • list_name (str): Название списка.
  • plate (str): Номерной знак.
  • server_guid (str): Необязательный GUID сервера.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "name", "plate": "ABC123", "server_guid": "server123"}' https://<host>/s/autotrassir/delete_record


Ответы:

  • 200 OK: Запись успешно удалена.
  • 400 Bad Request: Запись не существует или данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось удалить запись.

Обновить запись

Endpoint `POST /s/autotrassir/update_record`

Параметры:

  • list_name (str): Название списка.
  • old_plate (str): Старый номерной знак.
  • plate (str): Новый номерной знак.
  • comment (str): Комментарий, возможно пустой.
  • time_threshold (long): Временной порог действия записи. Если запись не ограничена по времени, установите значение 0. Если ограничена, укажите время окончания в формате unix timestamp.
  • passes_initial (int): Начальное количество проездов для записи. Если запись не ограничена по количеству проездов, установите значение -1. Если ограничена, укажите начальное количество проездов.
  • passes_left (int): Количество оставшихся проездов по записи.
  • disabled (int): Флаг отключения (1 или 0).
  • arbitrary_data (dict): Поле для хранения из скриптов произвольных данных, ассоциированных с записью.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "name", "old_plate": "ABC123", "plate": "XYZ789", "comment": "Updated Test", "time_threshold": 1622547800, "passes_initial": 10, "passes_left": 5, "disabled": 0, "arbitrary_data": {"key": "value"}}' https://<host>/s/autotrassir/update_record


Ответы:

  • 200 OK: Запись успешно обновлена.
  • 400 Bad Request: Запись не существует или данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось обновить запись.

Вставить или обновить запись

Endpoint `POST /s/autotrassir/upsert_record`

Параметры:

  • list_name (str): Название списка.
  • plate (str): Номерной знак автомоблия.
  • comment (str): Комментарий, возможно пустой. 
  • time_threshold (long): Временной порог действия записи. Если запись не ограничена по времени, установите значение 0. Если ограничена, укажите время окончания в формате unix timestamp.
  • passes_initial (int): Начальное количество проездов для записи. Если запись не ограничена по количеству проездов, установите значение -1. Если ограничена, укажите начальное количество проездов.
  • passes_left (int): Количество оставшихся проездов по записи.
  • disabled (int): Флаг отключения (1 или 0).
  • arbitrary_data (dict): Поле для хранения из скриптов произвольных данных, ассоциированных с записью.
  • server_guid (str): Необязательный GUID сервера.

Пример CURL-запроса:

curl -X POST -d '{"list_name": "name", "plate": "ABC123", "comment": "Upsert Test", "time_threshold": 1622547800, "passes_initial": 10, "passes_left": 5, "disabled": 0, "arbitrary_data": {"key": "value"}, "server_guid": "server123"}' https://<host>/s/autotrassir/upsert_record


Ответы:

  • 200 OK: Запись успешно вставлена или обновлена.
  • 400 Bad Request: Данные неверны.
  • 500 Internal Server Error: Внутренняя ошибка, не удалось вставить или обновить запись.



  • Нет меток