Skip to content

🙉 Javascript library to communicate with Anviz devices

License

Notifications You must be signed in to change notification settings

sergiss/anviz-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jun 24, 2022
c93ea03 · Jun 24, 2022

History

7 Commits
Jun 24, 2022
Jun 3, 2022
Jun 3, 2022
Jun 3, 2022
May 28, 2022
Jun 3, 2022
Jun 3, 2022
Jun 3, 2022
Jun 3, 2022

Repository files navigation

Anviz-protocol

Javascript library to communicate with Anviz devices.

Tested with FacePass 7

Features:

  • Real Time Mode (Record Events)
  • Get/Set Device Id
  • Get/Set Device Info1
  • Get/Set Device Info2
  • Get Serial Number
  • Get/Set Date Time
  • Get Record Information
  • Get Records
  • Clear Records
  • Get/Set User Info
  • Get/Set FP Template
  • Open Lock

How to use:

    const { Device, UserInfo } = require("./index.js");

    const host = '192.168.0.110'; // Device IP
    var device = new Device(host);

    device.listener = {

        onRecord: (record)=> {
            console.log(record);
            console.log(new Date(record.dateTime));
            device.clearAllRecordsSign();
            device.openLock();
        },

        onError: (e)=> {
            console.log(e);
        },

        onConnectionLost: () => {
            console.log("Connection lost");
        }

    }

    device.connect(); // Open connection

    device.getSerialNumber((serialNumber)=> {
        console.log("Serial: " + serialNumber);
    });

    // Set local date time
    device.setDateTime(new Date());

    device.getRecordInformation((info)=> {
        // console.log(info);
    });

    device.getDeviceInfo1((info)=> {
        info.volume = 0;
        // info.language = 4; // 4 spanish
        device.setDeviceInfo1(info);
    });

    device.getDeviceInfo2((info)=> {
        // console.log(info);
        info.realTimeModeSetting = 1; // enable real time mode
        info.relayMode  = 3; // 0 control lock, 1 scheduled bell, 3 disabled
        info.lockDelay  = 2; // 2 seconds
        device.setDeviceInfo2(info);
        // Notify records
        device.getNewRecords((records)=> {
            for(let i = 0; i < records.length; ++i) {
                device.listener.onRecord(records[i]);
            }
            device.clearAllRecordsSign();
        });
        
    });

    ...

    device.disconnect(); // Close connection

www.sergiosoriano.com

About

🙉 Javascript library to communicate with Anviz devices

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published