FERRARI-ELECTRONIC-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY, Integer32, IpAddress FROM SNMPv2-SMI
    PhysAddress FROM RFC1213-MIB
    Opaque, enterprises, Counter32 FROM SNMPv2-SMI
    enterprises FROM RFC1155-SMI
    DisplayString FROM SNMPv2-TC
    TruthValue FROM SNMPv2-TC;


ferrari-electronic  MODULE-IDENTITY
                    LAST-UPDATED "201007060000Z"
                    ORGANIZATION "Ferrari electronic AG"
                    CONTACT-INFO
                        " info@ferrari-electronic.de"
                    DESCRIPTION
                        " The MIB module for OfficeMaster gate"
                    REVISION "201001200000Z"
                    DESCRIPTION
                        "First draft"
                    REVISION "201007050000Z"
                    DESCRIPTION
                        "Added sessions and fmsrv"
                    REVISION "201010220000Z"
                    DESCRIPTION
                        "Fix syntax of IMPORTS"

    ::= { enterprises 17524 }

    common              OBJECT IDENTIFIER ::= { ferrari-electronic 1 }
    hardware            OBJECT IDENTIFIER ::= { ferrari-electronic 2 }
    transmissions       OBJECT IDENTIFIER ::= { ferrari-electronic 3 }
    software            OBJECT IDENTIFIER ::= { ferrari-electronic 4 }
    events              OBJECT IDENTIFIER ::= { ferrari-electronic 5 }

    physicalInterfaces  OBJECT IDENTIFIER ::= { hardware 1 }

    isdn                OBJECT IDENTIFIER ::= { transmissions 1 }

    sessions            OBJECT IDENTIFIER ::= { transmissions 2 }

    bchannels           OBJECT IDENTIFIER ::= { isdn 1 }

    fmsrv               OBJECT IDENTIFIER ::= { software 1 }

    fmsrvComponents     OBJECT IDENTIFIER ::= { fmsrv 2 }



-- the Common Group

Productname OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "Productname"
    ::= { common 1 }

Location OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "Physical location"
    ::= { common 2 }

SoftwareVersion OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "The software version of this managed node."
    ::= { common 3 }

UtilityVersion OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "The utitlity version of this managed node."
    ::= { common 4 }

ModuleVersion OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "The module version of this managed node."
    ::= { common 5 }

TrapMessage OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-only
    STATUS      current
    DESCRIPTION "Text for trap."
      ::= { common 6 }

-- the hardware Group  physicalinterfaces

physicalInterfaceCount OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The number of physical interfaces"
    ::= { physicalInterfaces 1 }

physicalInterfacesTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF PhysicalInterface
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "List of physical interfaces"
    ::= { physicalInterfaces 2 }

physicalInterface   OBJECT-TYPE
    SYNTAX      PhysicalInterface
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Entry containing data about the physical interface"
    INDEX       { physicalInterfaceIndex }
    ::= { physicalInterfacesTable 1 }

PhysicalInterface ::= SEQUENCE {
    physicalInterfaceIndex      INTEGER,
    physicalInterfaceName       OCTET STRING,
    physicalInterfaceType       OCTET STRING,
    physicalInterfaceState      OCTET STRING
}
physicalInterfaceIndex OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "A unique value for each physical interface.  Its value ranges between 1 and the value of physicalInterfaceCount. "
    ::= { physicalInterface 1 }

physicalInterfaceName OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The name of the physical interface."
    ::= { physicalInterface 2 }

physicalInterfaceType OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "T1/E1/FXS etc"
    ::= { physicalInterface 3 }


physicalInterfaceState OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The status of this interface."
    ::= { physicalInterface 4 }


-- the isdn Group bChannel

bChannelCount OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The number of b channels"
    ::= { bchannels 1 }

bChannelTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF BChannel
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "List of b channels"
    ::= { bchannels 2 }

bChannel    OBJECT-TYPE
    SYNTAX      BChannel
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Entry containing data about b channel"
    INDEX       { bChannelIndex }
    ::= { bChannelTable 1 }

BChannel ::= SEQUENCE {
    bChannelIndex                   INTEGER,
    bChannelName                    DisplayString,
    bChannelType                    DisplayString,
    bChannelState                   DisplayString,
    bChannelCalledPartyNumber       DisplayString,
    bChannelCallingPartyNumber1     DisplayString,
    bChannelCallingPartyNumber2     DisplayString,
    bChannelRedirectedNumber        DisplayString
}

bChannelIndex OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION " A unique value for each physical interface.  Its value ranges between 1 and the value of bChannelCount. "
    ::= { bChannel 1 }

bChannelName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The name of this b channel."
    ::= { bChannel 2 }

bChannelType OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "fax/sms/voice ..."
    ::= { bChannel 3 }


bChannelState OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The status of this channel."
    ::= { bChannel 4 }


bChannelCalledPartyNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Called party number of this channel."
    ::= { bChannel 5 }

bChannelCallingPartyNumber1 OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Calling party number for this channel."
    ::= { bChannel 6 }

bChannelCallingPartyNumber2 OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Calling party number for this channel."
    ::= { bChannel 7 }

bChannelRedirectedNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Redirected number."
    ::= { bChannel 8 }


-- the sessions Group

sessionCount OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The number of sessions"
    ::= { sessions 1 }

sessionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SessionSeq
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "List of sessions"
    ::= { sessions 2 }

sessionEntry    OBJECT-TYPE
    SYNTAX      SessionSeq
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Entry containing data about session"
    INDEX       { sessionIndex }
    ::= { sessionTable 1 }

SessionSeq ::= SEQUENCE {
    sessionIndex INTEGER,
    sessionName DisplayString,
    sessionBChannelName DisplayString,
    sessionType DisplayString,
    sessionState DisplayString,
    sessionStartTime DisplayString,
    sessionEndTime DisplayString,
    sessionCalledPartyNumber DisplayString,
    sessionCalledPartyName DisplayString,
    sessionCalledIpPort DisplayString,
    sessionCallingPartyNumber DisplayString,
    sessionCallingPartyName DisplayString,
    sessionCallingIpPort DisplayString,
    sessionInitializationProtocol DisplayString,
    sessionCodec DisplayString,
    sessionQualityPacketlost DisplayString,
    sessionQualityJitter DisplayString,
    sessionQualityDelay DisplayString
}

sessionIndex OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "A unique value for each session. Its value ranges between 1 and the value of sessionCount"
    ::= { sessionEntry 1 }

sessionName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Session ID"
    ::= { sessionEntry 2 }

sessionBChannelName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Name of the associated bChannel"
    ::= { sessionEntry 3 }

sessionType OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Type of session"
    ::= { sessionEntry 4 }

sessionState OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Stae of session"
    ::= { sessionEntry 5 }

sessionStartTime OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Session start time"
    ::= { sessionEntry 6 }

sessionEndTime OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Session end time"
    ::= { sessionEntry 7 }

sessionCalledPartyNumber OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Called party number"
    ::= { sessionEntry 8 }

sessionCalledPartyName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Called party name"
    ::= { sessionEntry 9 }

sessionCalledIpPort OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "IP and Port of called party"
    ::= { sessionEntry 10 }

sessionCallingPartyNumber OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Calling party number"
    ::= { sessionEntry 11 }

sessionCallingPartyName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Calling party name"
    ::= { sessionEntry 12 }

sessionCallingIpPort OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Ip and port of calling party"
    ::= { sessionEntry 13 }

sessionInitializationProtocol OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "TCP / UDP / etc"
    ::= { sessionEntry 14 }

sessionCodec OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Current audio codec"
    ::= { sessionEntry 15 }

sessionQualityPacketlost OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Percentage of lost packets"
    ::= { sessionEntry 16 }

sessionQualityJitter OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Amount of jitter ms"
    ::= { sessionEntry 17 }

sessionQualityDelay OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION "Quality delay ms"
    ::= { sessionEntry 18 }




sessionCountISDNtoSIP OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Counter ISDN to SIP"
    ::= { sessions 3 }

sessionCountSIPtoISDN OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Counter SIP to ISDN"
    ::= { sessions 4 }

sessionCountISDNtoOfficeMaster OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Counter ISDN to OfficeMaster"
    ::= { sessions 5 }

sessionCountOfficeMastertoISDN OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Count OfficeMaster to ISDN"
    ::= { sessions 6 }


-- The software Group  fmsrv

fmsrvJobCount OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Count jobs for fmsrv"
    ::= { fmsrv 1 }

fmsrvComponentsUndev OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Components without own MIB entry"
    ::= { fmsrvComponents 1 }

fmsrvJobCountCurrent OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Count jobs in fmsrv queue"
    ::= { fmsrv 3 }



-- event Group

omgTrap NOTIFICATION-TYPE
    OBJECTS { TrapMessage }
--    OBJECTS { Productname, SoftwareVersion }
    STATUS current
    DESCRIPTION
        "Universal trap for Box"
    ::= { events 1 }

omTrap NOTIFICATION-TYPE
    OBJECTS { TrapMessage }
--    OBJECTS { Productname, SoftwareVersion }
    STATUS current
    DESCRIPTION
        "Universal trap for OfficeMaster software"
    ::= { events 2 }

--secondTrap NOTIFICATION-TYPE
--    OBJECTS { Location }
--    STATUS CURRENT
--    DESCRIPTION
--        "Hello this is secondTrap"
--    ::= { events 2 }

--thirdTrap NOTIFICATION-TYPE
--    OBJECTS { TrapMessage }
--    STATUS CURRENT
--    DESCRIPTION
--        "Hello this is thirdTrap"
--    ::= { events 3 }

END
