pyztk/README.md

97 lines
1.9 KiB
Markdown
Raw Normal View History

2016-05-24 08:11:36 +07:00
# pyzk
2016-05-26 23:58:14 +07:00
[![Build Status](https://travis-ci.org/fananimi/pyzk.svg?branch=master)](https://travis-ci.org/fananimi/pyzk)
2016-05-24 08:11:36 +07:00
2016-05-26 12:51:04 +07:00
pyzk is unofficial library of zksoftware the fingerprint attendance machine.
2016-05-26 23:27:05 +07:00
# Installation
`pip install pyzk`
# Api Usage
2016-05-26 12:51:04 +07:00
2016-05-26 22:15:03 +07:00
Create ZK object and you will ready to call api.
2016-05-26 12:51:04 +07:00
2016-05-26 22:15:03 +07:00
* Basic Usage
2016-05-26 12:51:04 +07:00
```
import zk
2016-05-26 13:06:33 +07:00
from zk import const
2016-05-26 12:51:04 +07:00
zk = zk.ZK(ip='192.168.1.201', port=4370, timeout=5)
try:
zk.connect()
2016-05-26 22:11:19 +07:00
# disable (lock) the device, make sure no activity when process run
2016-05-26 12:51:04 +07:00
zk.disable_device()
# Do another task here
firmware = zk.get_firmware_version()
print 'Firmware Version: : {}'.format(firmware.get('data'))
2016-05-26 13:05:17 +07:00
users = zk.get_users()
if users.get('status'):
for user in users.get('data'):
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)
2016-05-26 12:51:04 +07:00
# don't forget to re-enable device
zk.enable_device()
except Exception, e:
print "Process terminate : {}".format(e)
finally:
if zk.is_connect:
zk.disconnect()
```
* Ger Firmware Version
```
zk.get_firmware_version()
```
* Create User
```
zk.set_user(uid=1, name='Fanani M. Ihsan', privilege=const.USER_ADMIN, password='12345678', group_id='', user_id='123')
```
2016-05-26 13:05:17 +07:00
* Get User
```
users = zk.get_users()
```
2016-05-26 12:51:04 +07:00
* Test voice
```
zk.test_voice()
```
* Shutdown Device
```
zk.power_off()
```
* Restart
```
zk.restart()
2016-05-26 12:55:18 +07:00
```
# Todo
2016-05-26 22:15:03 +07:00
* Create better documentation
2016-05-26 12:55:18 +07:00
* Clear user
* Finger template downloader & uploader
2016-05-26 22:11:19 +07:00
* Get attendance record
2016-05-26 22:15:03 +07:00
* Clear attendance record
2016-05-26 12:55:18 +07:00
* HTTP Rest api
2016-05-26 22:15:03 +07:00
* Create real time api (if possible)
* and much more ...