Библиотека python для работы с API
SAUK RFID API Python Library
Библиотека для работы с WEB-API устройства SAUK через Ethernet или Wi-Fi. Позволяет управлять всеми функциями устройства, включая настройку RFID-параметров, работу с сетью, управление периферией и многое другое.
Установка
Установите необходимые зависимости:
pip install requests
Основные возможности
- Управление RFID-конфигурацией
- Инвентаризация меток
- Системные команды
- Настройка сети (Wi-Fi/Ethernet)
- Конфигурация периферии
- Параметры идентификации меток
- Работа с таблицей доступа
- Управление датой и временем
Использование
Инициализация
from sauk_api import SAUK_API sauk = SAUK_API(base_url=
"http://192.168.10.1")
1. RFID Configuration Methods (Конфигурация RFID)
- Получить текущую конфигурацию RFID:
config = sauk.get_rfid_config()
- Включить непрерывное сканирование:
sauk.enable_infinite_inventory(True)
- Установить мощность для антенны 1:
sauk.set_antenna_power(1, 23)
- Настроить частоты:
sauk.set_frequency_settings(start=866300,
space=60, quantity=3)
- Установить время удержания триггера:
sauk.set_min_hold_ms(5000)
2. Inventory Methods (Инвентаризация)
- Выполнить однократное сканирование:
tags = sauk.inventory_once()
- Получить список меток из таблицы идентификации:
tag_list = sauk.get_tag_list()
- Очистить таблицу идентификации:
sauk.clear_tag_list()
3. System Methods (Системные команды)
- Перезагрузить устройство:
sauk.reboot_device()
- Получить версию прошивки:
version = sauk.get_version()
- Подать звуковой сигнал:
sauk.beep_device()
- Получить системный журнал:
log = sauk.get_message_log()
- Завершить сеанс пользователя:
sauk.logout()
4. WiFi and Network Methods (Работа с сетью)
- Сканировать доступные Wi-Fi сети:
networks = sauk.scan_wifi_networks()
- Подключиться к Wi-Fi сети:
sauk.connect_wifi("my_ssid", "my_password")
- Получить информацию о сети:
net_info = sauk.get_network_info()
- Активировать режим точки доступа:
sauk.enable_wifi_access_point(True)
5. Periphery Configuration Methods (Конфигурация периферии)
- Получить текущую конфигурацию периферии:
periphery_config = sauk.
get_periphery_config()
- Настроить реле:
sauk.set_relay_config(1, enable=True,
timer=5000)
- Настроить интерфейс Wiegand:
sauk.set_wiegand_config(1, enable=True,
type_=26, shift_bytes=1, source=1)
- Калибровка температурного датчика:
sauk.set_temperature_calibration(-2)
6. Tag Identity Methods (Параметры идентификации меток)
- Получить текущие параметры идентификации:
tag_identity =
sauk.get_tag_identity_config()
- Установить время сна метки:
sauk.set_valid_time(10000)
- Установить время удержания в таблице:
sauk.set_hold_time(30000)
- Настроить фильтр по RSSI:
sauk.set_rssi_filter(-70, enable=True)
- Настроить фильтр по EPC:
sauk.set_epc_filter(1,
"E2003411B8020114A418C2AE", enable=True)
- Настроить пароль доступа:
sauk.set_access_password(0x12345678)
- Настроить уведомления по UART:
sauk.set_notification_uart(
enable=True,
speed=9600,
json_format=1,
add_prefix="PRE", add_suffix="SUF",
add_crlf=True,
add_epcl=True,
add_epc=True,
add_tidl=True,
add_tid=True, add_ant=True,
add_rssi=True,
notify_alive=True
)
- Настроить уведомления по IP:
sauk.set_notification_ip("192.168.10.100",
5000, timeout=2000, enable=True)
7. Access Table Methods (Работа с таблицей доступа)
- Получить полную таблицу доступа:
access_table = sauk.get_access_table()
- Добавить запись в таблицу доступа:
sauk.modify_access_table( epc="E2003411B8020114A418C2AE", name="Device1", group=1, access=1, keya="FFFFFFFFFFFF", keyb="FFFFFFFFFFFF" )
- Получить часть таблицы доступа:
part_table = sauk.get_access_table_part
(start=0, end=10)
8. DateTime Methods (Работа с датой и временем)
- Получить текущее время:
current_time = sauk.get_datetime()
- Установить новое время:
sauk.set_datetime(1, 1, 2024, 12, 0, 0)
Примечания
- Все методы возвращают результат в формате JSON или `None` в случае ошибки.
- Для настройки параметров можно использовать как отдельные методы, так и общий метод `set_*_config()` с передачей нужных параметров.
- При работе с уведомлениями можно гибко настраивать формат данных и дополнительные параметры.
- Для работы с таблицей доступа предусмотрены методы как для полного получения, так и для частичного запроса данных.
Примеры использования
1. Работа с RFID конфигурацией
# Получить текущую конфигурацию RFID
config = sauk.get_rfid_config() print
("Current RFID Config:", config) # Включить непрерывное сканирование
sauk.enable_infinite_inventory(True) # Установить мощность для антенны 1
sauk.set_antenna_power(1, 23) # Настроить частоты sauk.set_frequency_
settings(start=866300, space=60,
quantity=3) # Установить время удержания триггера
sauk.set_min_hold_ms(5000)
2. Инвентаризация меток
# Выполнить однократное сканирование tags = sauk.inventory_once() print("Scanned Tags:", tags) # Получить список меток из таблицы
идентификации tag_list = sauk.get_tag_list() print("Tag List:", tag_list) # Очистить таблицу идентификации sauk.clear_tag_list()
3. Системные команды
# Перезагрузить устройство sauk.reboot_device() # Получить версию прошивки version = sauk.get_version() print("Firmware Version:", version) # Подать звуковой сигнал sauk.beep_device() # Получить системный журнал log = sauk.get_message_log() print("System Log:", log)
4. Работа с сетью
# Сканировать доступные Wi-Fi сети networks = sauk.scan_wifi_networks() print("Available Networks:", networks) # Подключиться к Wi-Fi сети sauk.connect_wifi("my_ssid", "my_password") # Получить информацию о сети net_info = sauk.get_network_info() print("Network Info:", net_info) # Активировать режим точки доступа sauk.enable_wifi_access_point(True)
5. Конфигурация периферии
# Получить текущую конфигурацию периферии periphery_config =
sauk.get_periphery_config() print("Periphery Config:",
periphery_config) # Настроить реле sauk.set_relay_config(1, enable=True,
timer=5000) # Настроить интерфейс Wiegand sauk.set_wiegand_config(1,
enable=True, type_=26, shift_bytes=1,
source=1) # Калибровка температурного датчика sauk.set_temperature_calibration(-2)
6. Настройка параметров идентификации меток
# Получить текущие параметры идентификации tag_identity =
sauk.get_tag_identity_config() print("Tag Identity Config:", tag_identity) # Установить время сна метки sauk.set_valid_time(10000) # Установить время удержания в таблице sauk.set_hold_time(30000) # Настроить фильтр по RSSI sauk.set_rssi_filter(-70, enable=True) # Настроить фильтр по EPC sauk.set_epc_filter(1,
"E2003411B8020114A418C2AE", enable=True) # Настроить пароль доступа sauk.set_access_password(0x12345678) # Настроить уведомления по UART sauk.set_notification_uart( enable=True, speed=9600, json_format=1, add_prefix="PRE", add_suffix="SUF", add_crlf=True, add_epcl=True, add_epc=True, add_tidl=True, add_tid=True, add_ant=True, add_rssi=True, notify_alive=True ) # Настроить уведомления по IP sauk.set_notification_ip("192.168.10.100",
5000, timeout=2000, enable=True)
7. Работа с таблицей доступа
# Получить полную таблицу доступа access_table = sauk.get_access_table() print("Access Table:", access_table) # Добавить запись в таблицу доступа sauk.modify_access_table( epc="E2003411B8020114A418C2AE", name="Device1", group=1, access=1, keya="FFFFFFFFFFFF", keyb="FFFFFFFFFFFF" ) # Получить часть таблицы доступа part_table =
sauk.get_access_table_part(start=0,
end=10) print("Access Table Part:", part_table)
8. Работа с датой и временем
# Получить текущее время current_time = sauk.get_datetime() print("Current Time:", current_time) # Установить новое время sauk.set_datetime(1, 1, 2024, 12, 0, 0)
SAUK© 2020 – 2025. Все тексты и изображения, представленные на сайте, являются интеллектуальной собственностью SAUK. Могут быть использованы только по письменному согласию SAUK. SAUK® является зарегистрированным торговым знаком.