TELTONIKA-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY,
    Integer32, Opaque, enterprises, Counter32           FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, DisplayString, TruthValue       FROM SNMPv2-TC
	NetworkAddress                                      FROM RFC1155-SMI;

teltonika MODULE-IDENTITY
    LAST-UPDATED "202004060000Z"
    ORGANIZATION "TELTONIKA"
    CONTACT-INFO "TELTONIKA"
    DESCRIPTION
            "The MIB module for TELTONIKA TRB14X devices.
            "
    REVISION      "202004060000Z"
    DESCRIPTION
            "Initial version"
    ::= { enterprises 48690 }


device                  OBJECT IDENTIFIER ::= { teltonika 1 }
mobile                  OBJECT IDENTIFIER ::= { teltonika 2 }
notifications           OBJECT IDENTIFIER ::= { teltonika 3 }
io                      OBJECT IDENTIFIER ::= { teltonika 6 }
mobileNotifications     OBJECT IDENTIFIER ::= { notifications 1 }
ioNotifications         OBJECT IDENTIFIER ::= { notifications 2 }


serial OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Device serial number"
    ::= { device 1 }

routerName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Device name"
    ::= { device 2 }

productCode OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Device product code"
    ::= { device 3 }

batchNumber OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Device batch number"
    ::= { device 4 }

hardwareRevision OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Device hardware revision"
    ::= { device 5 }

fwVersion OBJECT-TYPE
	SYNTAX      DisplayString (SIZE (0..255))
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
			"Router firmware version"
	::= { device 6 }

--
--GSM
--

modemNum  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of modems (regardless of their
            current state) present on this system."
    ::= { mobile 1 }

-- the modems table

modemTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ModemEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A list of modem entries.  The number of entries is
            given by the value of ifNumber."
    ::= { mobile 2 }

modemEntry OBJECT-TYPE
    SYNTAX      ModemEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An entry containing information of a particular interface."
    INDEX   { mIndex }
    ::= { modemTable 1 }

ModemEntry ::=
    SEQUENCE {
        mIndex              INTEGER,
        mDescr              DisplayString,
        mImei               DisplayString,
        mModel              DisplayString,
        mManufacturer       DisplayString,
        mRevision           DisplayString,
        mSerial             DisplayString,
        mIMSI               DisplayString,
        mSimState           DisplayString,
        mPinState           DisplayString,
        mNetState           DisplayString,
        mSignal             INTEGER,
        mOperator           DisplayString,
        mOperatorNumber     DisplayString,
        mConnectionState    DisplayString,
        mConnectionType     DisplayString,
        mTemperature        INTEGER,
        mCellID             DisplayString,
        mSINR               DisplayString,
        mRSRP               DisplayString,
        mRSRQ               DisplayString,
        mSent               INTEGER,
        mReceived           INTEGER,
        mIP                 DisplayString,
        mSentToday          INTEGER,
        mReceivedToday      INTEGER
    }

mIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A unique value, greater than zero, for each modem."
    ::= { modemEntry 1 }

mDescr OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A textual string containing information about the
            modem."
    ::= { modemEntry 2 }

mImei OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem IMEI"
    ::= { modemEntry 3 }

mModel OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem model"
    ::= { modemEntry 4 }

mManufacturer OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem manufacturer"
    ::= { modemEntry 5 }

mRevision OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem revision"
    ::= { modemEntry 6 }

mSerial OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Serial number"
    ::= { modemEntry 7 }

mIMSI OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "IMSI"
    ::= { modemEntry 8 }

mSimState OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "SIM status"
    ::= { modemEntry 9 }

mPinState OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "PIN status"
    ::= { modemEntry 10 }

mNetState OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Mobile network registration status"
    ::= { modemEntry 11 }

mSignal OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Signal level"
    ::= { modemEntry 12 }

mOperator OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Operator currently in use"
    ::= { modemEntry 13 }

mOperatorNumber OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Operator number (MCC+MNC)"
    ::= { modemEntry 14 }

mConnectionState OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Sata session connection state"
    ::= { modemEntry 15 }

mConnectionType OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Data session connection type"
    ::= { modemEntry 16 }

mTemperature OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem temperature"
    ::= { modemEntry 17 }

mCellID OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "CELL ID"
    ::= { modemEntry 18 }

mSINR OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "LTE SINR level"
    ::= { modemEntry 19 }

mRSRP OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "LTE RSRP level"
    ::= { modemEntry 20 }

mRSRQ OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "LTE RSRQ level"
    ::= { modemEntry 21 }

mSent OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total bytes sent."
    ::= { modemEntry 22 }

mReceived OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Total bytes received."
    ::= { modemEntry 23 }

mIP OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Modem IP address(es)"
    ::= { modemEntry 24 }

mSentToday OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Bytes sent today."
    ::= { modemEntry 25 }

mReceivedToday OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Bytes received today."
    ::= { modemEntry 26 }

--
-- I/O
--

ioCount  OBJECT-TYPE
	SYNTAX      INTEGER
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
			"Count of I/O"
	::= { io 1 }

ioTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF IO_Entry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A list of I/O.  The number of entries is given by the value of ioCount."
    ::= { io 2 }

ioEntry OBJECT-TYPE
    SYNTAX      IO_Entry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An entry containing information of a particular I/O."
    INDEX   { ioIndex }
    ::= { ioTable 1 }

IO_Entry ::=
    SEQUENCE {
        ioIndex         INTEGER,
        ioSystemName    DisplayString,
        ioName          DisplayString,
        ioType          DisplayString,
        ioBidirectional INTEGER,
        ioState         DisplayString,
        ioInput         INTEGER,
        ioInverted      INTEGER,
        ioCurrent       DisplayString,
        ioPercentage    DisplayString
    }

ioIndex OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A unique value, greater than zero, for each session."
    ::= { ioEntry 1 } 

ioSystemName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The name of the I/O."
    ::= { ioEntry 2 } 

ioName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The name of the I/O, as displayed in WebUI."
    ::= { ioEntry 3 } 

ioType OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A description of I/O type."
    ::= { ioEntry 4 } 

ioBidirectional OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Is I/O bidirectional?"
    ::= { ioEntry 5 } 

ioState OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "State of I/O."
    ::= { ioEntry 6 } 

ioInput OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Is I/O an input?"
    ::= { ioEntry 7 } 

ioInverted OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Is value of I/O inverted?"
    ::= { ioEntry 8 } 

ioCurrent OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Current amount flowing though ACL."
    ::= { ioEntry 9 } 

ioPercentage OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Percentage of ACL."
    ::= { ioEntry 10 } 

--
-- Traps
--

signalChnageNotification NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "Signal strength trap"
    ::= { mobileNotifications 1 }

connectionTypeNotification NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "Connection type trap"
    ::= { mobileNotifications 2 }

digitalInputNotification NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "Digital input trap"
    ::= { ioNotifications 1 }

digitalOutputNotification NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "Digital output trap"
    ::= { ioNotifications 2 }

END

