-- ZyXEL Communications Corporation
-- Private Enterprise MIB definition 
  
-- This file describes the ZyXEL Communications Corporation Enterprise MIB.
-- It contains ZyXEL products OIDs, and common managed objects.

-- $Log: ZYXEL-SYSTEM-MIB.mib $ 
-- Revision 1.9  2016/04/20 04:11:52  Lun 
-- change zyDateTimeServerIpAddress syntax to OCTET STRING. 
-- Revision 1.8  2013/12/06 07:09:02  ccho 
-- remove uncessary imports 
-- Revision 1.7  2013/11/20 06:55:30  ccho 
-- renaming identifier name for SMI.V2 
-- Revision 1.6  2013/11/06 05:42:45  ccho 
-- fix mib style 
-- Revision 1.5  2013/06/26 07:14:20  Mandy 
-- Support notified trap for error recovered 
-- Revision 1.4  2012/09/19 08:16:58  Kevin 
-- if it's leaf node, revise the vender name from zyxel to zy 
-- Revision 1.3  2012/08/22 09:49:54  Kevin 
-- clean warning for SNMPc 
-- Revision 1.2  2012/07/05 06:24:57  Kevin 
-- 1. upgrade from SNMP to SNMPv2  
-- 2. clean warning 
-- Revision 1.1  2012/05/30 07:50:50  Kevin 
-- Initial revision 

ZYXEL-SYSTEM-MIB DEFINITIONS ::= BEGIN

    IMPORTS
	OBJECT-TYPE
		FROM SNMPv2-SMI			-- RFC2578	
		
	MODULE-IDENTITY
		FROM SNMPv2-SMI

	RowStatus, MacAddress, DisplayString
		FROM SNMPv2-TC			-- RFC2579                        
	
	EnabledStatus
		FROM  P-BRIDGE-MIB
 	
    IpAddress
        FROM SNMPv2-SMI

    InetAddressType
    	FROM INET-ADDRESS-MIB
   
   	InetAddress
   		FROM INET-ADDRESS-MIB

    NOTIFICATION-TYPE
        FROM SNMPv2-SMI

	esMgmt			
		FROM ZYXEL-ES-SMI;

	zyxelSystem MODULE-IDENTITY
		LAST-UPDATED	"201801100000Z"
		ORGANIZATION "Enterprise Solution ZyXEL"     
		CONTACT-INFO
			""	   
		DESCRIPTION
			"The subtree for system"
		::= { esMgmt 82 }

	zyxelDateTimeSetup  		OBJECT IDENTIFIER ::= { zyxelSystem 1 }
	zyxelSysInfo     			OBJECT IDENTIFIER ::= { zyxelSystem 2 }
	zyxelDateTimeTrapNotifications	OBJECT IDENTIFIER ::= { zyxelSystem 3 }
	
-- *******************************************************************
-- *
-- * zyxelDateTimeSetup
-- *
-- *******************************************************************

-- zyxelDateTimeServerType
        zyDateTimeServerType OBJECT-TYPE
        SYNTAX  INTEGER {
        	none(1),
			daytime(2),
			time(3),
			ntp(4)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The time service protocol that your timeserver uses."
        ::= { zyxelDateTimeSetup 1 }
        
-- zyxelDateTimeZone
        zyDateTimeZone OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The time difference between UTC and your time zone. Ex: +01"
        ::= { zyxelDateTimeSetup 3 }

-- zyxelDateTimeNewDateYear
        zyDateTimeNewDateYear OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new date in year."
        ::= { zyxelDateTimeSetup 4 }

-- zyxelDateTimeNewDateMonth
        zyDateTimeNewDateMonth OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new date in month."
        ::= { zyxelDateTimeSetup 5 }

-- zyxelDateTimeNewDateDay
        zyDateTimeNewDateDay OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new date in day."
        ::= { zyxelDateTimeSetup 6 }
        
-- zyxelDateTimeNewTimeHour
        zyDateTimeNewTimeHour OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new time in hour."
        ::= { zyxelDateTimeSetup 7 }

-- zyxelDateTimeNewTimeMinute	
        zyDateTimeNewTimeMinute OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new time in minute."
        ::= { zyxelDateTimeSetup 8 }

-- zyxelDateTimeNewTimeSecond
        zyDateTimeNewTimeSecond OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The new time in second."
        ::= { zyxelDateTimeSetup 9 }

-- zyxelDateTimeDaylightSavingTimeSetup OBJECT-TYPE
		zyxelDateTimeDaylightSavingTimeSetup OBJECT IDENTIFIER ::= { zyxelDateTimeSetup 10 }
	
        zyDaylightSavingTimeState OBJECT-TYPE
        SYNTAX  EnabledStatus
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"Enable/Disable Daylight Saving Time service for the switch. 
						Daylight saving is a period from late spring to early fall when many countries set their clocks ahead of normal local time by one hour to give more daytime light in the evening."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 1 }

        zyDaylightSavingTimeStartDateWeek OBJECT-TYPE
        SYNTAX  INTEGER {
         	first(1),
         	second(2),
         	third(3),
         	fourth(4),
         	last(5)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"Start week of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 2 }

        zyDaylightSavingTimeStartDateDay OBJECT-TYPE
        SYNTAX  INTEGER {
         		sunday(0),
         		monday(1),
         		tuesday(2),
         		wednesday(3),
         		thursday(4),
         		friday(5),
         		saturday(6)         		
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"Start day of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 3 }

        zyDaylightSavingTimeStartDateMonth OBJECT-TYPE
        SYNTAX  INTEGER {
         		january(1),
         		february(2),
         		march(3),
         		april(4),
         		may(5),
         		june(6),
         		july(7),
         		august(8),
         		september(9),
         		october(10),
         		november(11),
         		december(12)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"Start month of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 4 }

        zyDaylightSavingTimeStartDateHour OBJECT-TYPE
        SYNTAX  INTEGER 
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"Start time of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 5 }

        zyDaylightSavingTimeEndDateWeek OBJECT-TYPE
        SYNTAX  INTEGER {
         		first(1),
         		second(2),
         		third(3),
         		fourth(4),
         		last(5)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"End week of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 6 }

        zyDaylightSavingTimeEndDateDay OBJECT-TYPE
        SYNTAX  INTEGER {
         		sunday(0),
         		monday(1),
         		tuesday(2),
         		wednesday(3),
         		thursday(4),
         		friday(5),
         		saturday(6)         		
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"End day of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 7 }

        zyDaylightSavingTimeEndDateMonth OBJECT-TYPE
        SYNTAX  INTEGER {
         		january(1),
         		february(2),
         		march(3),
         		april(4),
         		may(5),
         		june(6),
         		july(7),
         		august(8),
         		september(9),
         		october(10),
         		november(11),
         		december(12)
        }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"End month of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 8 }

        zyDaylightSavingTimeEndDateHour OBJECT-TYPE
        SYNTAX  INTEGER 
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
						"End time of Daylight Saving Time service."
        ::= { zyxelDateTimeDaylightSavingTimeSetup 9 }

	zyDateTimeServerInetAddressType OBJECT-TYPE
        SYNTAX     InetAddressType
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "The type of Internet address of this date time server."
        ::= { zyxelDateTimeSetup 11 }
	
	zyDateTimeServerInetAddress OBJECT-TYPE
        SYNTAX     InetAddress
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "The Internet address of this date time server."
        ::= { zyxelDateTimeSetup 12 }                                                         
     
    zyDateTimeZoneHourMinute OBJECT-TYPE
        SYNTAX  OCTET STRING
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The time difference between UTC and your time zone. 
                    Time zone offset is half of hour.
                    Display Hint 1a1d:1d   e.g. + 8 30
                    field  octets  contents                  range
                    -----  ------  --------                  -----
                      1       1    direction from UTC        '0x2b'(+) / '0x2d'(-)
                      2       2    hours from UTC            0x0,0x1,0x2,0x3..0x9,0xa,0xb,0xc
                      3       3    minutes from UTC          '0x00'(00) / '0x1e'(30)"
        ::= { zyxelDateTimeSetup 13 }

   zyDateTimeSyncInterval OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                    "The interval (minutes) of synchronization with time server"
        ::= { zyxelDateTimeSetup 14 }

-- *******************************************************************
-- *
-- * zyxelSysInfo
-- *
-- *******************************************************************

-- zyxelSysSwPlatformMajorVers
        zySysSwPlatformMajorVers OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software platform major version, e.g. 3."
        ::= { zyxelSysInfo 1 }

-- zyxelSysSwPlatformMinorVers       
        zySysSwPlatformMinorVers OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software platform minor version, e.g. 50."
        ::= { zyxelSysInfo 2 }
        
-- zyxelSysSwModelString
        zySysSwModelString OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software model letters, e.g. TJ."
        ::= { zyxelSysInfo 3 }
 
-- zyxelSysSwVersionControlNbr
		zySysSwVersionControlNbr OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software version control number, e.g. 0."
        ::= { zyxelSysInfo 4 }
       
-- zyxelSysSwDay
		zySysSwDay OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software compilation day, e.g. 19."
        ::= { zyxelSysInfo 5 }

-- zyxelSysSwMonth
        zySysSwMonth OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software compilation month, e.g. 8."
        ::= { zyxelSysInfo 6 }

-- zyxelSysSwYear		
        zySysSwYear OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Software compilation year, e.g. 2004."
        ::= { zyxelSysInfo 7 }

-- zyxelSysHwMajorVers
        zySysHwMajorVers OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Hardware major version, e.g. 1."
        ::= { zyxelSysInfo 8 }

-- zyxelSysHwMinorVers
		zySysHwMinorVers OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Hardware minor version, e.g. 0."
        ::= { zyxelSysInfo 9 }

-- zyxelSysSerialNumber
        zySysSerialNumber OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Serial number."
        ::= { zyxelSysInfo 10 }

-- zyxelSysSwBootUpImage		
        zySysSwBootUpImage OBJECT-TYPE
        SYNTAX  INTEGER{
			image1(1),
			image2(2)
		}
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "Current system boot up image. You can change the boot up image of next rebooting by setting sysMgmtBootupImage."
        ::= { zyxelSysInfo 11 }	
		
-- zySysServiceStatus
        zySysServiceStatus OBJECT-TYPE
        SYNTAX  DisplayString
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "This field displays the service that available on the device."
        ::= { zyxelSysInfo 12 }

--zySysRegisterMacAddress
        zySysRegisterMacAddress OBJECT-TYPE
        SYNTAX  MacAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                    "The MAC address which this system register at MYZYXEL.COM."
        ::= { zyxelSysInfo 13 }

-- *******************************************************************
-- *
-- * zyxelDateTimeTrapNotifications
-- *
-- *******************************************************************

-- zyxelDateTimeTrapTimeServerNotReachable
        zyDateTimeTrapTimeServerNotReachable	NOTIFICATION-TYPE
        STATUS  current
        DESCRIPTION
                    "Real time clock is not up to date. It has not been configured manually or time server is unreachable."
        ::= { zyxelDateTimeTrapNotifications 1 }

        zyDateTimeTrapTimeServerNotReachableRecovered	NOTIFICATION-TYPE
        STATUS  current
        DESCRIPTION
                    "Real time clock is up to date."
        ::= { zyxelDateTimeTrapNotifications 2 }
		
END  
