README
A modern, powerful, and fully-featured PHP client for SIGUR Public REST API v1.6.7.60.
Современный и полнофункциональный PHP-клиент для SIGUR Public REST API v1.6.7.60.
🌍 Contents / Оглавление
English Version
🌟 Features
- Full employee management
- Card operations (UID, W26, W34, W37, W58, W58DEC)
- Access rules, zones, access points
- Raw and parsed events
- Guest creation (cards, QR codes)
- Batch operations
- Auto token refresh
- Clean & intuitive PHP API
📦 Installation
composer require basiliy-wolf/sigur-api-client
Requirements
- PHP >= 7.4
- cURL extension
- JSON extension
🚀 Quick Start
use SigurApi\SigurApiClient;
$client = new SigurApiClient(
'http://192.168.0.108:9500',
'username',
'password'
);
$client->testConnection();
$departments = $client->getDepartments(['limit' => 10]);
📘 API Methods Overview
Employees
| Method |
Description |
| getEmployees |
List employees |
| getEmployee |
Get employee by ID |
| createEmployee |
Create employee |
| updateEmployee |
Update employee |
| deleteEmployee |
Delete employee |
| blockEmployee |
Block employee |
| unblockEmployee |
Unblock employee |
| assignCardsToEmployees |
Attach card(s) |
Cards
| Method |
Description |
| getCards |
List cards |
| getCard |
Get card |
| createCard |
Create card |
| updateCard |
Update card |
| deleteCard |
Delete card |
| createMultipleCards |
Bulk create |
| deleteMultipleCards |
Bulk delete |
Access Control
| Method |
Description |
| getAccessRules |
List rules |
| createAccessRule |
Create rule |
| updateAccessRule |
Update rule |
| deleteAccessRule |
Delete rule |
Events
| Method |
Description |
| getEvents |
Raw events |
| getParsedEvents |
Parsed events |
Guests
| Method |
Description |
| createGuestsWithCards |
Guest + card |
| createGuestsWithQrCodes |
Guest + QR code |
System
| Method |
Description |
| testConnection |
Test API availability |
| getTokenInfo |
Token metadata |
📝 Usage Examples
Create employee with card
$employee = $client->createEmployee([
'name' => 'John Smith',
'departmentId' => 1,
'positionId' => 2,
'tabId' => 'EMP001'
]);
$card = $client->createCard([
'value' => 'AABBCCDDEEFF',
'format' => 'W26'
]);
$client->assignCardsToEmployees([[
'employeeId' => $employee['id'],
'cardId' => $card['id'],
'format' => 'W26'
]]);
❗ Error Handling
try {
$client->getEmployee(999999);
} catch (SigurApiException $e) {
echo "Error: {$e->getMessage()}";
}
🧪 Testing
composer test
🔒 Security
- Auto-refresh tokens
- TLS support
- Input validation
🤝 Contributing
Pull requests are welcome!
📄 License
MIT License
Russian Version
🌟 Возможности
- Управление сотрудниками
- Операции с картами (UID, W26, W34, W37, W58 и др.)
- Правила доступа, зоны, точки
- Сырые и разобранные события
- Гости (карты, QR-коды)
- Пакетные операции
- Автоматическое обновление токена
- Удобный PHP-интерфейс
📦 Установка
composer require basiliy-wolf/sigur-api-client
Требования
🚀 Быстрый старт
$client = new SigurApiClient(
'http://192.168.0.108:9500',
'login',
'password'
);
$client->testConnection();
$departments = $client->getDepartments(['limit' => 10]);
📘 Обзор методов API
Сотрудники
| Метод |
Описание |
| getEmployees |
Список сотрудников |
| getEmployee |
Получить сотрудника по ID |
| createEmployee |
Создать сотрудника |
| updateEmployee |
Обновить сотрудника |
| deleteEmployee |
Удалить сотрудника |
| blockEmployee |
Заблокировать |
| unblockEmployee |
Разблокировать |
| assignCardsToEmployees |
Привязать карту |
Карты
| Метод |
Описание |
| getCards |
Список карт |
| getCard |
Получить карту |
| createCard |
Создать карту |
| updateCard |
Обновить карту |
| deleteCard |
Удалить карту |
| createMultipleCards |
Массовое создание |
| deleteMultipleCards |
Массовое удаление |
Контроль доступа
| Метод |
Описание |
| getAccessRules |
Список правил |
| createAccessRule |
Создать правило |
| updateAccessRule |
Обновить правило |
| deleteAccessRule |
Удалить правило |
События
| Метод |
Описание |
| getEvents |
Сырые события |
| getParsedEvents |
Разобранные события |
Гости
| Метод |
Описание |
| createGuestsWithCards |
Гость + карта |
| createGuestsWithQrCodes |
Гость + QR-код |
Система
| Метод |
Описание |
| testConnection |
Проверка соединения |
| getTokenInfo |
Информация о токене |
📝 Примеры
$employee = $client->createEmployee([
'name' => 'Иван Иванов',
'departmentId' => 1
]);
$card = $client->createCard([
'value' => 'AABBCCDDEEFF',
'format' => 'W26'
]);
$client->assignCardsToEmployees([[
'employeeId' => $employee['id'],
'cardId' => $card['id']
]]);
❗ Обработка ошибок
try {
$client->getEmployee(999999);
} catch (SigurApiException $e) {
echo "Ошибка: {$e->getMessage()}";
}
🧪 Тестирование
composer test
🔒 Безопасность
- Автообновление токенов
- TLS
- Валидация
🤝 Вклад
Pull Request’ы приветствуются!
📄 Лицензия
MIT