# php-zkteco — Native PHP Biometric Integration & ADMS Push

Canonical page: https://taharafi.com/work/php-zkteco/
Author: Taha Rafi

v2.1: Laravel-ready biometric integration with TCP/UDP, attendance writing, ADMS push, and signed webhooks.

## Overview
Created and maintain an open-source PHP library that connects ZKTeco biometric terminals directly to business software. The v2.1.0 release adds Laravel auto-discovery, a service provider, Facade, and publishable configuration, alongside a PHP 8.0-8.4 CI matrix. Its native socket engine supports both polling and push workflows without an external C SDK or Python bridge.

## Technologies
PHP 8.x, Laravel 8-12, TCP / UDP Sockets, ADMS Push, HMAC-SHA256, Composer

## Engineering
- Dual TCP/UDP Engine: Direct socket communication with biometric terminals and native CommKey authentication for protected devices.
- Attendance Write & Selective Deletion: Direct hardware ATT_LOG writing (CMD_SET_DATA 3001) and selective attendance deletion (CMD_TIME_ATTLOG_DELE 10005).
- Push & Cloud Workflows: Built-in ADMS server, cloud POST synchronization, and HMAC-SHA256 signed webhooks connect device events to application workflows.
- Laravel Integration: Auto-discovered service provider, ZKTeco Facade, and publishable configuration for Laravel 8-12.
- Automated Compatibility Checks: GitHub Actions CI matrix covers PHP 8.0, 8.1, 8.2, 8.3, and 8.4.

## Deliverables
- Composer / Packagist Package
- Laravel Service Provider & Facade
- ADMS Push Server & Signed Webhooks
- Device Protocol Documentation & Examples
- PHP 8.0-8.4 CI Matrix

## Sources
Repository: https://github.com/taha-rafi/php-zkteco
Website or package: https://packagist.org/packages/taha-rafi/php-zkteco
Contact: connect@taharafi.com
