-- *****************************************************************
-- WESTERMO-SW6-BLUETOOTH-MIB :
-- SNMP feature configuration of WESTERMO devices with SW6.
--
-- Copyright (c) 2020 by Westermo Network Technologies AB
-- All rights reserved.
-- *****************************************************************

-- *****************************************************************
-- This script has been tested using the SMI checker smilint
-- the tool can be downloaded at
-- http://www.ibr.cs.tu-bs.de/projects/libsmi/smilint.html
-- or use alternatively the online version at:
-- http://www.simpleweb.org/ietf/mibs/validate/
--
-- smilint -m -s -l 6 -i nameLength-32 ./WESTERMO-SW6-BLUETOOTH-MIB
-- Ensure that all needed MIBS are located in the SMIPATH.
-- *****************************************************************

-- **********************************************************************
-- * BLUETOOTH MIB
-- **********************************************************************

WESTERMO-SW6-BLUETOOTH-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, Integer32 FROM SNMPv2-SMI
        DisplayString                          FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP        FROM SNMPv2-CONF
    ;

-- **********************************************************************
-- *  MODULE IDENTITY
-- **********************************************************************
bluetooth MODULE-IDENTITY
    LAST-UPDATED "202608120000Z"

    ORGANIZATION "Westermo Network Technologies AB"
    CONTACT-INFO "E-mail: info@westermo.com"
    DESCRIPTION  "MIB Module for the Westermo Ibex Radio Modem Device - Bluetooth definitions"

    REVISION     "202608120000Z"
    DESCRIPTION  "Release 6.12.1-0"

    ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1)
          westermo(16177) products(1) rt(400) feature(2) 11 }

-- *********************************************************************
-- *  Begin Major sections
-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

--  Configuration
--  =============

    configuration         OBJECT IDENTIFIER ::= { bluetooth 1 }
     cfgBluetooth         OBJECT IDENTIFIER ::= { configuration 1 }


--  Software
--  ========

    software              OBJECT IDENTIFIER ::= { bluetooth 2 }
     swBluetooth          OBJECT IDENTIFIER ::= { software 1 }

--  Conformance Information
--  =======================

    conformance           OBJECT IDENTIFIER ::= { bluetooth 10000 }
     groups               OBJECT IDENTIFIER ::= { conformance 1 }
      groupConfiguration  OBJECT IDENTIFIER ::= { groups 1 }
      groupSoftware       OBJECT IDENTIFIER ::= { groups 2 }
      groupSoftwareMacs   OBJECT IDENTIFIER ::= { groups 3 }

     compliances          OBJECT IDENTIFIER ::= { conformance 2 }

-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-- *  End Major Sections
-- *********************************************************************


-- *********************************************************************
-- *  Begin Object Types
-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

    cfgBtEnabled OBJECT-TYPE
        SYNTAX INTEGER { disabled(0), enabled(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
            "Bluetooth Service Disabled or Enabled

             If the Bluetooth service is **enabled(1)**
             "
        ::= { cfgBluetooth 1 }

    cfgBtApplication OBJECT-TYPE
        SYNTAX INTEGER { none(0), scanner(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
            "Bluetooth Application Selector

             * **none(0)**: No application specified (default)
             * **scanner(1)**: Scanner application
            "

        ::= { cfgBluetooth 2 }

    cfgBtScanner OBJECT IDENTIFIER ::= { cfgBluetooth 100 }

    cfgBtScnWindow OBJECT-TYPE
        SYNTAX      Integer32 (-1..7200)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "**TECHPREVIEW:** Bluetooth Scanner Scan Window

             Defines the scan window duration in seconds for the BLE scanner.
             Values -1 and 0 use the default scanner behavior.
             "
        ::= { cfgBtScanner 1 }

    cfgBtScnMacOutput OBJECT-TYPE
        SYNTAX INTEGER { disabled(0), enabled(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
            "**TECHPREVIEW:** Bluetooth Scanner MAC Output

             Controls whether individual MAC addresses are printed on each
             scan window summary.

             * **disabled(0)**: Only the MAC count is printed (default)
             * **enabled(1)**: MAC addresses are printed along with the count
             "
        ::= { cfgBtScanner 2 }


-- *********************************************************************
-- *  Software
-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

    swBtScanner OBJECT IDENTIFIER ::= { swBluetooth 100 }

    swBtScnMacCount OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "**TECHPREVIEW:** Scanner MAC Count

             Number of unique MAC addresses scanned during the last scan window.
             "
        ::= { swBtScanner 1 }

    swBtScnResultTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwBtScnResultEntrySeq
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "Scanner MAC Result Table"
        ::= { swBtScanner 100 }

    swBtScnResultEntry OBJECT-TYPE
        SYNTAX  SwBtScnResultEntrySeq
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "Entry of Scanner MAC Result Table"
        INDEX { swBtScnResultIndex }
        ::= { swBtScnResultTable 1 }

    SwBtScnResultEntrySeq ::=
        SEQUENCE {
            swBtScnResultIndex Integer32,
            swBtScnMacAddress  DisplayString,
            swBtScnMacType     DisplayString,
            swBtScnName        DisplayString
        }

    swBtScnResultIndex OBJECT-TYPE
        SYNTAX Integer32 (0..1023)
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "Entry Index of Scanner MAC Result Table"
        ::= { swBtScnResultEntry 1 }

    swBtScnMacAddress OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..17))
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
            "**TECHPREVIEW:** Scanned MAC address"
        ::= { swBtScnResultEntry 2 }

    swBtScnMacType OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..16))
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
            "**TECHPREVIEW:** Scanned MAC address type"
        ::= { swBtScnResultEntry 3 }

    swBtScnName OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..255))
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
            "**TECHPREVIEW:** Scanned Bluetooth name"
        ::= { swBtScnResultEntry 4 }


-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-- *  End of   Object Types
-- *********************************************************************

-- *********************************************************************
-- *  Begin GROUPS
-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

    groupCfgBluetooth OBJECT-GROUP
        OBJECTS {
        cfgBtEnabled,
        cfgBtApplication,
        cfgBtScnWindow,
        cfgBtScnMacOutput
        }
        STATUS  current
        DESCRIPTION
           "Bluetooth configuration properties"
        ::= { groupConfiguration 1 }

    groupSwBluetooth OBJECT-GROUP
        OBJECTS {
            swBtScnMacCount,
            swBtScnMacAddress,
            swBtScnMacType,
            swBtScnName
            }
        STATUS  current
        DESCRIPTION
            "Bluetooth Status Information"
        ::= { groupSoftware 1 }

-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-- *  End GROUPS
-- *********************************************************************

-- *********************************************************************
-- *  Begin COMPLIANCE STATEMENTS
-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

    compliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "Implementation Requirements for DT50 bindings"
    MODULE  -- this module
        MANDATORY-GROUPS {
            groupCfgBluetooth,
            groupSwBluetooth
        }
    ::= { compliances 1 }

-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-- *  End COMPLIANCE STATEMENTS
-- *********************************************************************

-- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-- *  End of MIB DEFINITION
-- *********************************************************************
END


-- *********************************************************************
-- *********************************************************************
