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/zkteco
The 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();