1.0.4 • Published 6 months ago

nrcjs v1.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

nrcjs

nrcjs is a js package for working with NRC devices. It provides a convenient interface to connect to an NRC device, send commands, and retrieve information from the device.

🔥 Installation

You can install nrcjs using pip:

npm i nrcjs

🪧 Usage

Here is an example of how to use nrcjs to connect to an NRC device and control the relays:

const NrcDevice = require('nrcjs');

const ip = '192.168.1.200';
const port = 23;
const username = "admin";
const password = "admin";

(async () => {
    const nrc = new NrcDevice([ip, port, username, password]);
    
    try {
        await nrc.connect();
        
        if (await nrc.login()) {
            await nrc.relayContact(1, 500);
            await nrc.relayContact(2, 1000);
            await nrc.relayOff(1);
            await nrc.relayOn(2);
            
            console.log("Relays Status (hex):", await nrc.getRelaysValues());
            console.log("Relay 1 Status:", await nrc.getRelayValue(1));
            console.log("Relay 2 Status:", await nrc.getRelayValue(2));
            
            try {
                console.log("SW Inputs Status (hex):", await nrc.getSwInputsValues());
                console.log("SW 1 Status:", await nrc.getSwInputValue(1));
                console.log("SW 2 Status:", await nrc.getSwInputValue(2));
                console.log("SW 3 Status:", await nrc.getSwInputValue(3));
            } catch (e) {
                console.log("Error:", e);
            }
            
            try {
                console.log("HV Inputs Status (hex):", await nrc.getHvInputsValues());
                console.log("HV 1 Status:", await nrc.getHvInputValue(1));
                console.log("HV 2 Status:", await nrc.getHvInputValue(2));
                console.log("HV 3 Status:", await nrc.getHvInputValue(3));
            } catch (e) {
                console.log("Error:", e);
            }
        } else {
            console.log("Error in login");
        }
    } catch (e) {
        console.error("Connection error:", e);
    } finally {
        nrc.disconnect();
    }
})();
1.0.4

6 months ago

1.0.3

6 months ago

1.0.2

6 months ago

1.0.1

6 months ago

1.0.0

6 months ago