update README
This commit is contained in:
parent
ac745124f6
commit
4b9fe95661
51
README.md
51
README.md
@ -1,22 +1,25 @@
|
||||
# pyzk
|
||||
|
||||
pyzk is an unofficial library of zksoftware (zkteco family) the fingerprint attendance machine.
|
||||
|
||||
# Installation
|
||||
|
||||
[![Build Status](https://travis-ci.org/fananimi/pyzk.svg?branch=master)](https://travis-ci.org/fananimi/pyzk)
|
||||
|
||||
`pyzk` is an unofficial library of zksoftware (zkteco family) attendance machine.
|
||||
|
||||
# Installation
|
||||
|
||||
There is some installation method you can use below:
|
||||
|
||||
* pip
|
||||
```sh
|
||||
pip install -U pyzk
|
||||
```
|
||||
|
||||
or clone and execute:
|
||||
* manual installation (clone and execute)
|
||||
|
||||
```sh
|
||||
python setup.py install
|
||||
```
|
||||
|
||||
or in your project, append the path of this project
|
||||
* clone and append the path of this project
|
||||
|
||||
```python
|
||||
import sys
|
||||
@ -33,36 +36,38 @@ Complete documentation can be found at [Readthedocs](http://pyzk.readthedocs.io/
|
||||
|
||||
Create the ZK object and you will be ready to call api.
|
||||
|
||||
* Basic Usage
|
||||
## Basic Usage
|
||||
|
||||
The following is an example code block how to use pyzk.
|
||||
|
||||
```python
|
||||
from zk import ZK, const
|
||||
|
||||
conn = None
|
||||
# create ZK instance
|
||||
zk = ZK('192.168.1.201', port=4370, timeout=5, password=0, force_udp=False, ommit_ping=False)
|
||||
try:
|
||||
print ('Connecting to device ...')
|
||||
# connect to device
|
||||
conn = zk.connect()
|
||||
print ('Disabling device ...')
|
||||
# disable device, this method ensures no activity on the device while the process is run
|
||||
conn.disable_device()
|
||||
print ('Firmware Version: : {}'.format(conn.get_firmware_version()))
|
||||
# print '--- Get User ---'
|
||||
# another commands will be here!
|
||||
# Example: Get All Users
|
||||
users = conn.get_users()
|
||||
for user in users:
|
||||
privilege = 'User'
|
||||
if user.privilege == const.USER_ADMIN:
|
||||
privilege = 'Admin'
|
||||
|
||||
print ('- UID #{}'.format(user.uid))
|
||||
print ('+ UID #{}'.format(user.uid))
|
||||
print (' Name : {}'.format(user.name))
|
||||
print (' Privilege : {}'.format(privilege))
|
||||
print (' Password : {}'.format(user.password))
|
||||
print (' Group ID : {}'.format(user.group_id))
|
||||
print (' User ID : {}'.format(user.user_id))
|
||||
|
||||
print ("Voice Test ...")
|
||||
# Test Voice: Say Thank You
|
||||
conn.test_voice()
|
||||
print ('Enabling device ...')
|
||||
# re-enable device after all commands already executed
|
||||
conn.enable_device()
|
||||
except Exception as e:
|
||||
print ("Process terminate : {}".format(e))
|
||||
@ -71,6 +76,8 @@ finally:
|
||||
conn.disconnect()
|
||||
```
|
||||
|
||||
## Command List
|
||||
|
||||
* Connect/Disconnect
|
||||
|
||||
```python
|
||||
@ -81,9 +88,9 @@ conn.disconnect()
|
||||
* Disable/Enable Connected Device
|
||||
|
||||
```python
|
||||
# disable (lock) device, ensure no activity while some process run
|
||||
# disable (lock) device, to ensure no user activity in device while some process run
|
||||
conn.disable_device()
|
||||
# re-enable the connected device
|
||||
# re-enable the connected device and allow user activity in device again
|
||||
conn.enable_device()
|
||||
```
|
||||
|
||||
@ -100,7 +107,7 @@ conn.set_time(newtime)
|
||||
```
|
||||
|
||||
|
||||
* Ger Firmware Version and extra information
|
||||
* Ger Firmware Version and Extra Information
|
||||
|
||||
```python
|
||||
conn.get_firmware_version()
|
||||
@ -118,7 +125,7 @@ conn.get_mac()
|
||||
conn.get_pin_width()
|
||||
```
|
||||
|
||||
* Get Device use and free Space
|
||||
* Get Device Usage Space
|
||||
|
||||
```python
|
||||
conn.read_sizes()
|
||||
@ -142,6 +149,7 @@ conn.set_user(uid=1, name='Fanani M. Ihsan', privilege=const.USER_ADMIN, passwor
|
||||
users = conn.get_users()
|
||||
# Delete User
|
||||
conn.delete_user(uid=1)
|
||||
conn.delete_user(user_id=123)
|
||||
```
|
||||
|
||||
* Fingerprints
|
||||
@ -168,7 +176,7 @@ zk.enroll_user('1')
|
||||
```python
|
||||
# Get attendances (will return list of Attendance object)
|
||||
attendances = conn.get_attendance()
|
||||
# Clear attendances record
|
||||
# Clear attendances records
|
||||
conn.clear_attendance()
|
||||
```
|
||||
|
||||
@ -258,7 +266,7 @@ conn.test_voice(index=0) # will say 'Thank You'
|
||||
* Device Maintenance
|
||||
|
||||
```python
|
||||
# DANGER!!! This command will be erase all data in the device (incude: user, attendance report, and finger database)
|
||||
# DANGER!!! This command will be erase all data in the device (incuded: user, attendance report, and finger database)
|
||||
conn.clear_data()
|
||||
# shutdown connected device
|
||||
conn.poweroff()
|
||||
@ -446,3 +454,4 @@ If you have another version tested and it worked, please inform me to update thi
|
||||
* HTTP Rest api
|
||||
* ~~Create real time api (if possible)~~
|
||||
* and much more ...
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user