The rats/zkteco package provides easy to use functions to ZKTeco Device activities.
Requires: Laravel >= 6.0
License: MIT or later
You can install the package via composer:
composer require rats/zktecoThe package will automatically register itself.
You have to enable your php socket if it is not enable.
- Create a object of ZKTeco class.
use Rats\Zkteco\Lib\ZKTeco;
// 1 s't parameter is string $ip Device IP Address
// 2 nd parameter is integer $port Default: 4370
$zk = new ZKTeco('192.168.1.201');
// or you can use with port
// $zk = new ZKTeco('192.168.1.201', 8080);
- Call ZKTeco methods
- Connect
// connect
// this return bool
$zk->connect(); - Disconnect
// disconnect
// this return bool
$zk->disconnect(); - Enable Device
// enable
// this return bool/mixed
$zk->enableDevice(); NOTE: You have to call after read/write any info of Device.
- Disable Device
// disable
// this return bool/mixed
$zk->disableDevice(); NOTE: You have to call before read/write any info of Device.
- Device Version
// get device version
// this return bool/mixed
$zk->version(); - Device Os Version
// get device os version
// this return bool/mixed
$zk->osVersion(); - Power Off
// turn off the device
// this return bool/mixed
$zk->shutdown(); - Restart
// restart the device
// this return bool/mixed
$zk->restart(); - Sleep
// sleep the device
// this return bool/mixed
$zk->sleep(); - Resume
// resume the device from sleep
// this return bool/mixed
$zk->resume(); - Voice Test
// voice test of the device "Thank you"
// this return bool/mixed
$zk->testVoice(); - Platform
// get platform
// this return bool/mixed
$zk->platform(); - Firmware Version
// get firmware version
// this return bool/mixed
$zk->fmVersion(); - Work Code
// get work code
// this return bool/mixed
$zk->workCode(); - SSR
// get SSR
// this return bool/mixed
$zk->ssr(); - Pin Width
// get Pin Width
// this return bool/mixed
$zk->pinWidth(); - Serial Number
// get device serial number
// this return bool/mixed
$zk->serialNumber(); - Device Name
// get device name
// this return bool/mixed
$zk->deviceName(); - Get Device Time
// get device time
// return bool/mixed bool|mixed Format: "Y-m-d H:i:s"
$zk->getTime(); - Set Device Time
// set device time
// parameter string $t Format: "Y-m-d H:i:s"
// return bool/mixed
$zk->setTime(); - Get Users
// get User
// this return array[]
$zk->getUser(); - Set Users
// set user
// 1 s't parameter int $uid Unique ID (max 65535)
// 2 nd parameter int|string $userid ID in DB (same like $uid, max length = 9, only numbers - depends device setting)
// 3 rd parameter string $name (max length = 24)
// 4 th parameter int|string $password (max length = 8, only numbers - depends device setting)
// 5 th parameter int $role Default Util::LEVEL_USER
// 6 th parameter int $cardno Default 0 (max length = 10, only numbers
// return bool|mixed
$zk->setUser(); - Clear All Admin
// remove all admin
// return bool|mixed
$zk->clearAdmin(); - Clear All Users
// remove all users
// return bool|mixed
$zk->clearAdmin(); - Remove A User
// remove a user by $uid
// parameter integer $uid
// return bool|mixed
$zk->removeUser(); - Get Attendance Log
// get attendance log
// return array[]
// like as 0 => array:5 [▼
// "uid" => 1 /* serial number of the attendance */
// "id" => "1" /* user id of the application */
// "state" => 1 /* the authentication type, 1 for Fingerprint, 4 for RF Card etc */
// "timestamp" => "2020-05-27 21:21:06" /* time of attendance */
// "type" => 255 /* attendance type, like check-in, check-out, overtime-in, overtime-out, break-in & break-out etc. if attendance type is none of them, it gives 255. */
// ]
$zk->getAttendance(); - Clear Attendance Log
// clear attendance log
// return bool/mixed
$zk->clearAttendance();