zklib-ts 1.0.4 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +18 -9
- package/dist/index.es.js +18 -9
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1328,17 +1328,26 @@ class ZTCP {
|
|
|
1328
1328
|
}
|
|
1329
1329
|
async getSerialNumber() {
|
|
1330
1330
|
const keyword = '~SerialNumber';
|
|
1331
|
+
let serialNumber = '';
|
|
1332
|
+
let count = 10;
|
|
1331
1333
|
try {
|
|
1332
1334
|
// Execute the command to get serial number
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
.
|
|
1340
|
-
|
|
1341
|
-
|
|
1335
|
+
/**
|
|
1336
|
+
* @dev implemented a counter and a while loop because sometimes serial number parses wrong for some reason
|
|
1337
|
+
* */
|
|
1338
|
+
while (serialNumber.length !== 13 && count > 0) {
|
|
1339
|
+
const data = await this.executeCmd(COMMANDS.CMD_OPTIONS_RRQ, keyword);
|
|
1340
|
+
// Extract and format the serial number from the response data
|
|
1341
|
+
const SN = data.slice(8) // Skip the first 8 bytes (header)
|
|
1342
|
+
.toString('utf-8') // Convert buffer to string
|
|
1343
|
+
.replace(`${keyword}=`, '') // Remove the keyword prefix
|
|
1344
|
+
.replace('=', '') // Remove sometines last number is a character equal to = or unknow character
|
|
1345
|
+
.replace(/\u0000/g, ''); // Remove null characters
|
|
1346
|
+
if (serialNumber.length !== 13 && this.verbose) {
|
|
1347
|
+
console.warn('Serial number length not equal to 13, check');
|
|
1348
|
+
}
|
|
1349
|
+
count--;
|
|
1350
|
+
serialNumber = SN;
|
|
1342
1351
|
}
|
|
1343
1352
|
return serialNumber;
|
|
1344
1353
|
}
|
package/dist/index.es.js
CHANGED
|
@@ -1307,17 +1307,26 @@ class ZTCP {
|
|
|
1307
1307
|
}
|
|
1308
1308
|
async getSerialNumber() {
|
|
1309
1309
|
const keyword = '~SerialNumber';
|
|
1310
|
+
let serialNumber = '';
|
|
1311
|
+
let count = 10;
|
|
1310
1312
|
try {
|
|
1311
1313
|
// Execute the command to get serial number
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
.
|
|
1319
|
-
|
|
1320
|
-
|
|
1314
|
+
/**
|
|
1315
|
+
* @dev implemented a counter and a while loop because sometimes serial number parses wrong for some reason
|
|
1316
|
+
* */
|
|
1317
|
+
while (serialNumber.length !== 13 && count > 0) {
|
|
1318
|
+
const data = await this.executeCmd(COMMANDS.CMD_OPTIONS_RRQ, keyword);
|
|
1319
|
+
// Extract and format the serial number from the response data
|
|
1320
|
+
const SN = data.slice(8) // Skip the first 8 bytes (header)
|
|
1321
|
+
.toString('utf-8') // Convert buffer to string
|
|
1322
|
+
.replace(`${keyword}=`, '') // Remove the keyword prefix
|
|
1323
|
+
.replace('=', '') // Remove sometines last number is a character equal to = or unknow character
|
|
1324
|
+
.replace(/\u0000/g, ''); // Remove null characters
|
|
1325
|
+
if (serialNumber.length !== 13 && this.verbose) {
|
|
1326
|
+
console.warn('Serial number length not equal to 13, check');
|
|
1327
|
+
}
|
|
1328
|
+
count--;
|
|
1329
|
+
serialNumber = SN;
|
|
1321
1330
|
}
|
|
1322
1331
|
return serialNumber;
|
|
1323
1332
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zklib-ts",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "Unofficial zkteco library allows Node.js developers to easily interface with ZK BioMetric Fingerprint Attendance Devices",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.es.js",
|