Welcome to pyzk’s documentation!¶
pyzk is an unofficial library of zksoftware the fingerprint attendance machine. It’s easy to use and no need to understand how to communicate to device. Just create ZK instance and you will ready to use api.
Installation¶
You can install from two different options
- from pypi
$ pip install pyzk
- from original repository
Go to https://github.com/fananimi/pyzk and clone the latest source code by using git, and then just execute the setup.py file.
$ python setup.py install
Basic Usage¶
from zk import ZK, const
conn = None
zk = ZK('192.168.1.10', port=4370, timeout=5)
try:
print 'Connecting to device ...'
conn = zk.connect()
print 'Disabling device ...'
conn.disable_device()
print 'Firmware Version: : {}'.format(conn.get_firmware_version())
# print '--- Get User ---'
users = conn.get_users()
for user in users:
privilege = 'User'
if user.privilege == const.USER_ADMIN:
privilege = 'Admin'
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 ..."
conn.test_voice()
print 'Enabling device ...'
conn.enable_device()
except Exception, e:
print "Process terminate : {}".format(e)
finally:
if conn:
conn.disconnect()
API Ussage¶
Connect/Disconnect
conn = zk.connect()
conn.disconnect()
Disable/Enable Connected Device
conn.disable_device()
conn.enable_device()
Ger Firmware Version
conn.get_firmware_version()
User Operation
# Create user
conn.set_user(uid=1, name='Fanani M. Ihsan', privilege=const.USER_ADMIN, password='12345678', group_id='', user_id='123')
# Get all users (will return list of User object)
users = conn.get_users()
# Delete User
conn.delete_user(uid=1)
Attendance Record
# Get attendances (will return list of Attendance object)
attendances = conn.get_attendance()
# Clear attendances record
conn.clear_attendance()
Test voice
conn.test_voice()
Device Maintenance
# shutdown connected device
conn.power_off()
# restart connected device
conn.restart()
Technical Documentation¶
We open to everyone for contribute in this project. Please refer Communication_protocol_manual_CMD.pdf before you starting write your code.