Class: Zklib

Inherits:
Object
  • Object
show all
Includes:
AttendanceManagement, ConnectionManagement, DataManagement, DeviceManagement, FaceManagement, Helper, PINManagement, PlatformManagement, SSRManagement, SerialManagement, TimeManagement, UserManagement, VersionManagement, WorkCodeManagement
Defined in:
lib/zklib.rb,
lib/zklib/helper.rb,
lib/zklib/version.rb,
lib/zklib/pin_management.rb,
lib/zklib/ssr_management.rb,
lib/zklib/data_management.rb,
lib/zklib/face_management.rb,
lib/zklib/time_management.rb,
lib/zklib/user_management.rb,
lib/zklib/device_management.rb,
lib/zklib/serial_management.rb,
lib/zklib/version_management.rb,
lib/zklib/platform_management.rb,
lib/zklib/work_code_management.rb,
lib/zklib/attendance_management.rb,
lib/zklib/connection_management.rb

Defined Under Namespace

Modules: AttendanceManagement, ConnectionManagement, DataManagement, DeviceManagement, FaceManagement, Helper, PINManagement, PlatformManagement, SSRManagement, SerialManagement, TimeManagement, UserManagement, VersionManagement, WorkCodeManagement

Constant Summary collapse

USHRT_MAX =

Max unsigned short value

65535
ATTENDANCE_DATA_SIZE =

Data structures’ size

40
USER_DATA_SIZE =
72
CMD_CONNECT =

Commands

1000
CMD_EXIT =
1001
CMD_ENABLEDEVICE =
1002
CMD_DISABLEDEVICE =
1003
CMD_RESTART =
1004
CMD_POWEROFF =
1005
CMD_ACK_OK =
2000
CMD_ACK_ERROR =
2001
CMD_ACK_DATA =
2002
CMD_PREPARE_DATA =
1500
CMD_DATA =
1501
CMD_FREE_DATA =
1502
CMD_REFRESHDATA =
1013
CMD_REFRESHOPTION =
1014
CMD_USERTEMP_RRQ =
9
CMD_ATTLOG_RRQ =
13
CMD_CLEAR_DATA =
14
CMD_CLEAR_ATTLOG =
15
CMD_WRITE_LCD =
66
CMD_GET_TIME =
201
CMD_SET_TIME =
202
CMD_VERSION =
1100
CMD_DEVICE =
11
CMD_CLEAR_ADMIN =
20
CMD_DELETE_USER =
18
CMD_SET_USER =
8
LEVEL_USER =

User levels

0
LEVEL_ADMIN =
14
LOGIN_BY_PASSWORD =

Login states

0
LOGIN_BY_FINGERPRINT =
1
STATE_FIRST_PACKET =

Communication states

1
STATE_PACKET =
2
STATE_FINISHED =
3
VERSION =
"1.0.0"

Constants included from WorkCodeManagement

WorkCodeManagement::WORK_CODE_KEYWORD

Constants included from VersionManagement

VersionManagement::OS_VERSION_KEYWORD, VersionManagement::PLATFORM_VERSION_KEYWORD, VersionManagement::SSR_VERSION_KEYWORD

Constants included from SSRManagement

SSRManagement::SSR_KEYWORD

Constants included from SerialManagement

SerialManagement::SERIAL_KEYWORD

Constants included from PlatformManagement

PlatformManagement::PLATFORM_KEYWORD

Constants included from PINManagement

PINManagement::PIN_WIDTH_KEYWORD

Constants included from FaceManagement

FaceManagement::TURN_FACE_OFF_KEYWORD, FaceManagement::TURN_FACE_ON_KEYWORD

Constants included from DeviceManagement

DeviceManagement::DEVICE_NAME_KEYWORD, DeviceManagement::DISABLE_DEVICE_KEYWORD

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from WorkCodeManagement

#get_work_code

Methods included from VersionManagement

#get_firmware_version, #get_os_version, #get_platform_version

Methods included from UserManagement

#clear_admins, #clear_users, #create_user, #decode_user_data, #delete_user, #get_user_count, #get_users

Methods included from TimeManagement

#get_time, #set_time

Methods included from SSRManagement

#get_ssr

Methods included from SerialManagement

#get_serial_number

Methods included from PlatformManagement

#get_platform

Methods included from PINManagement

#get_pin_width

Methods included from FaceManagement

#turn_face_off, #turn_face_on

Methods included from DeviceManagement

#disable_device, #enable_device, #get_device_name, #power_off_device, #restart_device

Methods included from DataManagement

#free_data, #refresh_data

Methods included from ConnectionManagement

#connect, #disconnect

Methods included from AttendanceManagement

#clear_attendances, #decode_attendance_data, #get_attendance_count, #get_attendances

Methods included from Helper

#check_valid, #create_checksum, #create_header, #decode_time, #decode_user_data, #encode_time, #execute_cmd, #receive_nonblock

Constructor Details

#initialize(options) ⇒ Zklib

param options Init options

|_ ip      Attendance machine IP
|_ port    Attendance machine UDP port
|_ inport  Client UDP port


115
116
117
118
119
120
121
122
123
# File 'lib/zklib.rb', line 115

def initialize(options)
  @ip         = options[:ip]
  @port       = options[:port]
  @inport     = options[:inport]
  @socket     = nil
  @reply_id   = USHRT_MAX - 1
  @data_recv  = ''
  @session_id = 0
end

Instance Attribute Details

#data_recvObject

Returns the value of attribute data_recv.



103
104
105
# File 'lib/zklib.rb', line 103

def data_recv
  @data_recv
end

#exttrynumberObject

Returns the value of attribute exttrynumber.



103
104
105
# File 'lib/zklib.rb', line 103

def exttrynumber
  @exttrynumber
end

#id_comObject

Returns the value of attribute id_com.



103
104
105
# File 'lib/zklib.rb', line 103

def id_com
  @id_com
end

#inportObject (readonly)

Returns the value of attribute inport.



100
101
102
# File 'lib/zklib.rb', line 100

def inport
  @inport
end

#ipObject (readonly)

Returns the value of attribute ip.



100
101
102
# File 'lib/zklib.rb', line 100

def ip
  @ip
end

#portObject (readonly)

Returns the value of attribute port.



100
101
102
# File 'lib/zklib.rb', line 100

def port
  @port
end

#reply_idObject

Returns the value of attribute reply_id.



103
104
105
# File 'lib/zklib.rb', line 103

def reply_id
  @reply_id
end

#session_idObject

Returns the value of attribute session_id.



103
104
105
# File 'lib/zklib.rb', line 103

def session_id
  @session_id
end

#socketObject

Returns the value of attribute socket.



103
104
105
# File 'lib/zklib.rb', line 103

def socket
  @socket
end