idrac6

    2.0.3 • Public • Published

    iDrac6 NodeJS Library

    A basic library to interact with an idrac6 remote managment system written in TypeScript for JavaScript and TypeScript usage.

    Warning: This is a pure ESM package now. Read more here: Pure ESM package

    If you still need this package as commonjs module, use any v1 version of this package.

    JavaScript Example:

    import { iDrac6 } from 'idrac6';
    
    const idrac = new iDrac6({
        username: "",
        pasword: "",
        address: "https://ip",
        newAuth: true, // On older idrac6 version you can set this to false. On the newest idrac6 version (2.92) you need to set this to true.
        sessionOptions: {
            saveSession: true, // This module can save your session and reuse it automatically
            path: "./session.json",
        },
    });
    
    (async () => {
        const powerState = await idrac.getPowerState();
        if (powerState === iDrac6.POWER_STATES.ON) {
            // Server is currently on
            await idrac.sendPowerAction(iDrac6.POWER_ACTIONS.SHUTDOWN); // Shutdown the server
        } else if (powerState === iDrac6.POWER_STATES.OFF) {
            // Server is currently offline
            await idrac.sendPowerAction(iDrac6.POWER_ACTIONS.ON); // Turn the server on
        } else if (powerState === iDrac6.POWER_STATES.INVALID) {
            // Server returned invalid power state
            await idrac.sendPowerAction(iDrac6.POWER_ACTIONS.OFF); // Force turn off the server. Is like pressing the button for 5 seconds.
        }
        const temperature = await idrac.getTemperature();
    })();

    TypeScript Example

    import { iDrac6, PowerActions, PowerState, iDracTemperature } from 'idrac6';
    
    const idrac = new iDrac6({
        username: "",
        pasword: "",
        address: "https://ip",
        sessionOptions: {
            saveSession: true, // This module can save your session and reuse it automatically
            path: "./session.json",
        },
    });
    
    (async () => {
        const powerState: PowerState = await idrac.getPowerState();
        if (powerState === PowerState.ON) {
            // Server is currently on
            await idrac.sendPowerAction(PowerActions.SHUTDOWN); // Shutdown the server
        } else if (powerState === PowerState.OFF) {
            // Server is currently offline
            await idrac.sendPowerAction(PowerActions.ON); // Turn the server on
        } else if (powerState === PowerState.INVALID) {
            // Server returned invalid power state
            await idrac.sendPowerAction(PowerActions.OFF); // Force turn off the server. Is like pressing the button for 5 seconds.
        }
        const temperature: iDracTemperature = await idrac.getTemperature();
    })();

    Keywords

    none

    Install

    npm i idrac6

    DownloadsWeekly Downloads

    1

    Version

    2.0.3

    License

    MIT

    Unpacked Size

    91.4 kB

    Total Files

    39

    Last publish

    Collaborators

    • thenoim
    • dunklestoast