DKSF-253-5-X-A-X DEFINITIONS ::= BEGIN
 
IMPORTS
        enterprises
                FROM RFC1155-SMI
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Counter32,
        Gauge32,
        Counter64,
        Integer32,
        TimeTicks,
        mib-2,
        NOTIFICATION-TYPE 
                FROM SNMPv2-SMI 
        TEXTUAL-CONVENTION,
        DisplayString,
        TruthValue,
        TimeStamp
                FROM SNMPv2-TC 
        snmpTraps 
                FROM SNMPv2-MIB ;
                
 
netPing MODULE-IDENTITY 
        LAST-UPDATED "201411190000Z"   
        ORGANIZATION "Alentis Electronics" 
        CONTACT-INFO 
                "developers@netping.ru" 
        DESCRIPTION 
                "MIB for NetPing remote sensing and control" 
                
        REVISION "201411190000Z"   
        DESCRIPTION 
                "npElecMeter branch updated"                 
                
        REVISION "201406120000Z"   
        DESCRIPTION 
                "npIoSinglePulseDuration, npIoSinglePulseStart variables, npReboot branch added" 
                
        REVISION "201102040000Z"   
        DESCRIPTION 
                "Renamed to DKSF 253, 4th IO line is added" 

                REVISION "201008300000Z"   
        DESCRIPTION 
                "bugfix ioTrap variables" 
                
        REVISION "201008200000Z"   
        DESCRIPTION 
                "additional ioTrap variables"  
                
                REVISION "201008130000Z"   
        DESCRIPTION 
                "ioTrap variable definitions reordered for SNMPc compatibility"                 
                
        REVISION "201008110000Z"   
        DESCRIPTION 
                "ioTrap definition added" 
                
        REVISION "201007080000Z"   
        DESCRIPTION 
                "ioLine pulse counter and npElecMeter branch added" 
 
        REVISION "201004140000Z"   
        DESCRIPTION 
                "SMIv2-style rewrite" 
                
        ::= { lightcom 50 }


                
lightcom OBJECT IDENTIFIER::={enterprises 25728 }

npIo  OBJECT IDENTIFIER::={lightcom 8900}
     
npIoTable       OBJECT-TYPE 
    SYNTAX     SEQUENCE OF NpIoEntry 
    MAX-ACCESS     not-accessible 
    STATUS     current 
    DESCRIPTION  "Digital Input/output Table"     
    ::= { npIo 1 } 

npIoEntry        OBJECT-TYPE 
    SYNTAX     NpIoEntry
    MAX-ACCESS     not-accessible 
    STATUS     current 
    DESCRIPTION  "Digital Input/output Table Row"     
    INDEX     { npIoLineN } 
    ::= { npIoTable 1 } 

NpIoEntry   ::= SEQUENCE { 
    npIoLineN    INTEGER,
    npIoLevelIn  INTEGER,
    npIoLevelOut INTEGER,
    npIoMemo     DisplayString,
    npIoPulseCounter    Counter32,
    npIoSinglePulseDuration INTEGER,
    npIoSinglePulseStart    INTEGER    
    } 

npIoLineN      OBJECT-TYPE 
    SYNTAX     INTEGER (1..4)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Number of IO line, from 1 to max supported" 
    ::= { npIoEntry 1 }

npIoLevelIn    OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Input level, 0 or 1" 
    ::= { npIoEntry 2 }
    
npIoLevelOut   OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-write 
    STATUS     current 
    DESCRIPTION  "Output level, 0 or 1" 
    ::= { npIoEntry 3 }    

npIoMemo    OBJECT-TYPE 
    SYNTAX     DisplayString 
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "IO line memo" 
    ::= { npIoEntry 6 }
    
npIoPulseCounter   OBJECT-TYPE 
    SYNTAX     Counter32
    MAX-ACCESS     read-write 
    STATUS     current 
    DESCRIPTION  "Pulse Counter (counts positive fronts)
                  Write 0 to reset." 
    ::= { npIoEntry 9 }    

npIoSinglePulseDuration   OBJECT-TYPE 
    SYNTAX     INTEGER (100..25500)
    MAX-ACCESS    read-write 
    STATUS     current 
    DESCRIPTION  "Set duration of single pulse on IO output line,
                  100ms to 25500ms, min. step is 100ms" 
    ::= { npIoEntry 12 }     

npIoSinglePulseStart    OBJECT-TYPE     
    SYNTAX     INTEGER
    MAX-ACCESS    read-write 
    STATUS     current 
    DESCRIPTION  "Write 1 to start single pulse on IO output. 
                  Output will be inverted for time, specified by npIoSinglePulseDuration"
    ::= { npIoEntry 13 }     
 
npIoTraps      OBJECT IDENTIFIER::={npIo 2} 
npIoTrapPrefix OBJECT IDENTIFIER::={npIoTraps 0} 

npIoTrapLineN OBJECT-TYPE 
    SYNTAX     INTEGER (1..4)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, Number of IO line" 
    ::= { npIoTraps 1 }

npIoTrapLevelIn OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, new Input level, 0 or 1" 
    ::= { npIoTraps 2 }

npIoTrapMemo OBJECT-TYPE 
    SYNTAX     DisplayString 
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, IO line memo" 
    ::= { npIoTraps 6 }
    
npIoTrapLevelIn1 OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, current Input level Line 1, value 0 or 1" 
    ::= { npIoTraps 21 }  

npIoTrapLevelIn2 OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, current Input level Line 2, value 0 or 1" 
    ::= { npIoTraps 22 }

npIoTrapLevelIn3 OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, current Input level Line 3, value 0 or 1" 
    ::= { npIoTraps 23 }
    
npIoTrapLevelIn4 OBJECT-TYPE 
    SYNTAX     INTEGER (0..1)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Trap data, current Input level Line 4, value 0 or 1" 
    ::= { npIoTraps 24 }

    
npIoTrap NOTIFICATION-TYPE
OBJECTS { 
          npIoTrapLineN,
          npIoTrapLevelIn,
          npIoTrapMemo,
          npIoTrapLevelIn1,
          npIoTrapLevelIn2,
          npIoTrapLevelIn3,
          npIoTrapLevelIn4
        }
STATUS  current
DESCRIPTION
        "Input state of IO line is changed"
::= { npIoTrapPrefix 1 }


    
npElecMeter  OBJECT IDENTIFIER::={lightcom 9700}
     
npElecTable       OBJECT-TYPE 
    SYNTAX     SEQUENCE OF NpElecEntry 
    MAX-ACCESS     not-accessible 
    STATUS     current 
    DESCRIPTION  "Electricity Meter Table"     
    ::= { npElecMeter 1 } 

npElecEntry        OBJECT-TYPE 
    SYNTAX     NpElecEntry
    MAX-ACCESS     not-accessible 
    STATUS     current 
    DESCRIPTION  "Electricity Meter Table Table Row"     
    INDEX     { npElecIndex } 
    ::= { npElecTable 1 } 

NpElecEntry   ::= SEQUENCE { 
    npElecIndex           INTEGER,
    npElecPulsesPerKwh    INTEGER,
    npElecPower           Gauge32,
    npElecEnergy          Counter32, 
    npElecEnergy100       Counter32    
    } 

npElecIndex      OBJECT-TYPE 
    SYNTAX     INTEGER (1..4)
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Number of elec.meter, associated with IO line" 
    ::= { npElecEntry 1 }

npElecPulsesPerKwh      OBJECT-TYPE 
    SYNTAX     INTEGER
    MAX-ACCESS     read-write 
    STATUS     current 
    DESCRIPTION  "Pulses on IO line input per 1 kWh of consumed energy" 
    ::= { npElecEntry 2 }    
    
npElecPower    OBJECT-TYPE 
    SYNTAX     Gauge32
    MAX-ACCESS     read-only 
    STATUS     current 
    DESCRIPTION  "Power, Watts, based on pulse rate/interval, 5 minute average" 
    ::= { npElecEntry 3 }      
    
npElecEnergy    OBJECT-TYPE 
    SYNTAX     Counter32
    MAX-ACCESS     read-write 
    STATUS     current 
    DESCRIPTION  "Energy counter, kWh, based on pulse count
                  Write 0 to clear (npElecEnergy, npElecEnergy100 and npIoPulseCounter at once)" 
    ::= { npElecEntry 4 } 
 
npElecEnergy100    OBJECT-TYPE 
    SYNTAX     Counter32
    MAX-ACCESS     read-write 
    STATUS     current 
    DESCRIPTION  "Energy counter, kWh*100, based on pulse count
                  Write 0 to clear (npElecEnergy, npElecEnergy100 and npIoPulseCounter at once)" 
    ::= { npElecEntry 5 } 
    
    
npReboot OBJECT IDENTIFIER::={ lightcom 911 }   

npSoftReboot OBJECT-TYPE 
    SYNTAX     INTEGER
    MAX-ACCESS read-write 
    STATUS     current 
    DESCRIPTION  "Write 1 to reboot device after 
                  current operations completition" 
    ::= { npReboot 1 }

npResetStack OBJECT-TYPE 
    SYNTAX     INTEGER
    MAX-ACCESS read-write 
    STATUS     current 
    DESCRIPTION  "Write 1 to re-initialize network 
                  stack" 
    ::= { npReboot 2 }    

npForcedReboot OBJECT-TYPE 
    SYNTAX     INTEGER
    MAX-ACCESS read-write 
    STATUS     current 
    DESCRIPTION  "Write 1 to immediate forced reboot" 
    ::= { npReboot 3 }     
    
END
