CP-SYSTEM-MIB DEFINITIONS ::= BEGIN

-- Cradlepoint System MIB Release 1.1

-- Copyright 2008-2019 by CradlePoint, Inc.  All rights reserved

-- This Specification is supplied "AS IS", CradlePoint makes no warranty,
-- either expressed or implied, as to the use, operation, condition,
-- or performance of the Specification.


IMPORTS
     wipipeSystem
	FROM WIPIPE-MIB

     sysObjectID
	FROM SNMPv2-MIB
     ;

-- This file defines SNMP objects for system related parameters

cradlepointTraps      OBJECT IDENTIFIER ::= { wipipeSystem 1 } 

cpuUtilization OBJECT-TYPE
            SYNTAX     INTEGER (0..100)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                    "The current CPU utilization in percentage, averaged over 
                        cpuUtilizationDuration."
            ::= { wipipeSystem 2 }

cpuThresholdHigh OBJECT-TYPE
            SYNTAX     INTEGER (2..100)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                  "cpuUtilizationHigh trap is generated after the CPU utilization
                         goes above this threshold."
            ::= { wipipeSystem 3 }

cpuThresholdLow OBJECT-TYPE
            SYNTAX     INTEGER (1..99)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                  "cpuUtilizationLow trap is generated after the CPU utilization
                         goes below this threshold."
            ::= { wipipeSystem 4 }

cpuUtilizationDuration OBJECT-TYPE
            SYNTAX     INTEGER
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                    "The duration in seconds over which the CPU utilization 
                        is being reported."
            ::= { wipipeSystem 5 }

memoryUtilization OBJECT-TYPE
            SYNTAX     INTEGER (0..100)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                  "The current memory utilization in percentage."
            ::= { wipipeSystem 6 }

memoryThresholdHigh OBJECT-TYPE
            SYNTAX     INTEGER (2..100)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                  "memoryUtilizationHigh trap is generated after the memory utilization
                         goes above this threshold."
            ::= { wipipeSystem 7 }

memoryThresholdLow OBJECT-TYPE
            SYNTAX     INTEGER (1..99)
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
                  "memoryUtilizationLow trap is generated after the memory utilization
                         goes below this threshold."
            ::= { wipipeSystem 8 }


memoryUtilizationDuration OBJECT-TYPE
            SYNTAX     INTEGER
            MAX-ACCESS read-only
            STATUS     current
            DESCRIPTION
            "The duration in seconds over which the memory utilization 
                        is being reported."
            ::= { wipipeSystem 9 }

loginHostAddress OBJECT-TYPE
    SYNTAX     OCTET STRING
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The IP address of the host that attempted the login.
         (This could be IPv4 or IPv6 address displayed as a string.)"
    ::= { wipipeSystem 10 }

loginUsername OBJECT-TYPE
    SYNTAX     OCTET STRING
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The Username that attempted the login." 
    ::= { wipipeSystem 11 }


wanStatusChangeReason OBJECT-TYPE
    SYNTAX     OCTET STRING
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Reason that caused the WAN status change." 
    ::= { wipipeSystem 12 }

wanStatus      OBJECT-TYPE
    SYNTAX       INTEGER {
                     plugged(1),  
                     unplugged(2),
                     connected(3),
                     disconnected(4),
                     standby(5)
		}
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Current status of the WAN." 
    ::= { wipipeSystem 13 }

wanType      OBJECT-TYPE
    SYNTAX       INTEGER {
                     ethernet(1),    -- Ethernet WAN port
                     wwan(2),        -- Wireless WAN
                     modem(3),       -- Cellular Modem
                     sdwan(4),       -- SD WAN
                }
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Type of WAN." 
    ::= { wipipeSystem 14 }


wanInterfaceName OBJECT-TYPE
    SYNTAX     OCTET STRING
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The interface that caused the WAN status change." 
    ::= { wipipeSystem 15 }



cpTestTrapCount OBJECT-TYPE
   SYNTAX      ZeroBasedCounter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
      "The count to track how many times the test trap was sent."
   ::= { wipipeSystem 16 }


configChange NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName }
    STATUS  current
    DESCRIPTION
            "One or more configuration changes were attempted on the
             router. The configuration changes may or may not have
             succeeded depending on validation checks in the router."
    ::= { cradlepointTraps 1 }


loginFailure NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, loginHostAddress, loginUsername }
    STATUS  current
    DESCRIPTION
            "Login Failure Trap."
    ::= { cradlepointTraps 2 }

loginSuccess NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, loginHostAddress, loginUsername }
    STATUS  current
    DESCRIPTION
            "Login success trap."
    ::= { cradlepointTraps 3 }


cpuUtilizationHigh NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, cpuThresholdHigh, cpuUtilization,
                 cpuUtilizationDuration }
    STATUS  current
    DESCRIPTION
            "CPU utilization moved above the high threshold."
    ::= { cradlepointTraps 4 }


cpuUtilizationLow NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, cpuThresholdLow, cpuUtilization,
                cpuUtilizationDuration }
    STATUS  current
    DESCRIPTION
            "CPU utilization moved below the low threshold."
    ::= { cradlepointTraps 5 }


memoryUtilizationHigh NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, memoryThresholdHigh, memoryUtilization,
                memoryUtilizationDuration }
    STATUS  current
    DESCRIPTION
            "Memory utilization moved above the high threshold."
    ::= { cradlepointTraps 6 }

memoryUtilizationLow NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName , memoryThresholdLow, memoryUtilization,
                memoryUtilizationDuration}
    STATUS  current
    DESCRIPTION
            "Memory utilization moved below the low threshold."
    ::= { cradlepointTraps 7 }

wanStatusChange NOTIFICATION-TYPE
    OBJECTS { sysObjectID, sysName, wanStatus, wanStatusChangeReason, 
                wanType, wanInterfaceName }
    STATUS  current
    DESCRIPTION
            "WAN status change trap."
    ::= { cradlepointTraps 8 }


cpTestTrap NOTIFICATION-TYPE
   OBJECTS { 
      sysObjectID, sysName, cpTestTrapCount
   }
   STATUS             current
   DESCRIPTION
      "Generated by the user to test the SNMP trap infrastructure."
  ::= { cradlepointTraps 9 }

END



