mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 10:28:13 +00:00
newdevice: Add basic support for CradlePoint WiPipe Cellular Broadband Routers (#6695)
* Add basic support for CradlePoint Ceullular Broadband Rotuers new file: html/images/os/cradlepoint.png new file: includes/definitions/wipipe.yaml new file: includes/discovery/sensors/dbm/wipipe.inc.php new file: includes/discovery/sensors/pre-cache/wipipe.inc.php new file: includes/discovery/sensors/state/wipipe.inc.php new file: includes/polling/os/wipipe.inc.php * Added snmprec test file * Updated definitions file * Updated copyright blocks and comments * Added WIPIPE-MIB# * renamed: tests/snmpsim/wipipe.smmprec -> tests/snmpsim/wipipe.snmprec * copied: html/images/os/cradlepoint.png -> html/images/logos/cradlepoint.png modified: html/images/os/cradlepoint.png modified: includes/definitions/wipipe.yaml modified: includes/discovery/sensors/pre-cache/wipipe.inc.php modified: includes/polling/os/wipipe.inc.php * Changes requested by laf modified: includes/discovery/sensors/dbm/wipipe.inc.php modified: includes/discovery/sensors/pre-cache/wipipe.inc.php modified: includes/polling/os/wipipe.inc.php * Reworked devFWUpgradeStatus state sensor modified: includes/discovery/sensors/state/wipipe.inc.php * Fixed hardware/OS version detection modified: includes/polling/os/wipipe.inc.php * moved mib file to correct location
This commit is contained in:
parent
e70e3763d2
commit
8c8d591d67
BIN
html/images/logos/cradlepoint.png
Normal file
BIN
html/images/logos/cradlepoint.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 25 KiB |
BIN
html/images/os/cradlepoint.png
Normal file
BIN
html/images/os/cradlepoint.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
9
includes/definitions/wipipe.yaml
Normal file
9
includes/definitions/wipipe.yaml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
os: wipipe
|
||||||
|
text: 'CradlePoint WiPipe'
|
||||||
|
type: network
|
||||||
|
icon: cradlepoint
|
||||||
|
mib_dir:
|
||||||
|
- cradlepoint
|
||||||
|
discovery:
|
||||||
|
- sysObjectId:
|
||||||
|
- .1.3.6.1.4.1.20992.
|
48
includes/discovery/sensors/dbm/wipipe.inc.php
Normal file
48
includes/discovery/sensors/dbm/wipipe.inc.php
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* LibreNMS Interface Modem Signal Strength dBm module for the CradlePoint WiPipe Platform
|
||||||
|
*
|
||||||
|
* © 2017 Chris A. Evans <thecityofguanyu@outlook.com>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version. Please see LICENSE.txt at the top level of
|
||||||
|
* the source code distribution for details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
echo 'CradlePoint WiPipe';
|
||||||
|
|
||||||
|
$multiplier = 1;
|
||||||
|
$divisor = 1;
|
||||||
|
|
||||||
|
foreach ($pre_cache['wipipe_oids'] as $index => $entry) {
|
||||||
|
// Modem Signal Strength
|
||||||
|
if ($entry['mdmSignalStrength']) {
|
||||||
|
$oid = '.1.3.6.1.4.1.20992.1.2.2.1.4.' . $index;
|
||||||
|
// Get Modem Model & Phone Number for description
|
||||||
|
$modemdesc = $entry['mdmDescr'];
|
||||||
|
$modemmdn = $entry['mdmMDN'];
|
||||||
|
$descr = "Signal Strength - " . $modemdesc . " - " . $modemmdn;
|
||||||
|
$currentsignal = $entry['mdmSignalStrength'];
|
||||||
|
// Discover Sensor
|
||||||
|
discover_sensor(
|
||||||
|
$valid['sensor'],
|
||||||
|
'dbm',
|
||||||
|
$device,
|
||||||
|
$oid,
|
||||||
|
'mdmSignalStrength.'.$index,
|
||||||
|
'wipipe',
|
||||||
|
$descr,
|
||||||
|
$divisor,
|
||||||
|
$multiplier,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
$currentsignal,
|
||||||
|
'snmp'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
16
includes/discovery/sensors/pre-cache/wipipe.inc.php
Normal file
16
includes/discovery/sensors/pre-cache/wipipe.inc.php
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* LibreNMS Sensor pre-cache module for the CradlePoint WiPipe
|
||||||
|
*
|
||||||
|
* © 2017 Chris A. Evans <thecityofguanyu@outlook.com>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version. Please see LICENSE.txt at the top level of
|
||||||
|
* the source code distribution for details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
echo 'Caching WIPIPE-MIB';
|
||||||
|
$pre_cache['wipipe_oids'] = snmpwalk_cache_multi_oid($device, 'mdmEntry', array(), 'WIPIPE-MIB');
|
91
includes/discovery/sensors/state/wipipe.inc.php
Normal file
91
includes/discovery/sensors/state/wipipe.inc.php
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Sensor State discovery module for the CradlePoint WiPipe Platform
|
||||||
|
*
|
||||||
|
* © 2017 Chris A. Evans <thecityofguanyu@outlook.com>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version. Please see LICENSE.txt at the top level of
|
||||||
|
* the source code distribution for details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
echo "CradlePoint WiPipe";
|
||||||
|
|
||||||
|
foreach ($pre_cache['wipipe_oids'] as $index => $entry) {
|
||||||
|
// Modem Connection Status
|
||||||
|
if ($entry['mdmStatus']) {
|
||||||
|
$cur_oid = '.1.3.6.1.4.1.20992.1.2.2.1.5.';
|
||||||
|
//Create State Index
|
||||||
|
$state_name = 'mdmStatus';
|
||||||
|
$state_index_id = create_state_index($state_name);
|
||||||
|
//Create State Translation
|
||||||
|
if ($state_index_id) {
|
||||||
|
$states = array(
|
||||||
|
array($state_index_id,'established',0,1,0) ,
|
||||||
|
array($state_index_id,'establishing',0,2,0) ,
|
||||||
|
array($state_index_id,'ready',0,3,0) ,
|
||||||
|
array($state_index_id,'error',0,4,2) ,
|
||||||
|
array($state_index_id,'disconnected',0,5,2) ,
|
||||||
|
array($state_index_id,'disconnecting',0,6,1) ,
|
||||||
|
array($state_index_id,'suspended',0,7,2) ,
|
||||||
|
array($state_index_id,'empty',0,8,3) ,
|
||||||
|
array($state_index_id,'notconfigured',0,9,3) ,
|
||||||
|
array($state_index_id,'userstopped',0,10,1)
|
||||||
|
);
|
||||||
|
foreach ($states as $value) {
|
||||||
|
$insert = array(
|
||||||
|
'state_index_id' => $value[0],
|
||||||
|
'state_descr' => $value[1],
|
||||||
|
'state_draw_graph' => $value[2],
|
||||||
|
'state_value' => $value[3],
|
||||||
|
'state_generic_value' => $value[4]
|
||||||
|
);
|
||||||
|
dbInsert($insert, 'state_translations');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Get Modem Model & Phone Number for description
|
||||||
|
$modemdesc = $entry['mdmDescr'];
|
||||||
|
$modemmdn = $entry['mdmMDN'];
|
||||||
|
$descr = "mdmStatus - " . $modemdesc . " - " . $modemmdn;
|
||||||
|
//Discover Sensors
|
||||||
|
discover_sensor($valid['sensor'], 'state', $device, $cur_oid.$index, $index, $state_name, $descr, '1', '1', null, null, null, null, $entry['mdmStatus'], 'snmp', $index);
|
||||||
|
//Create Sensor To State Index
|
||||||
|
create_sensor_to_state_index($device, $state_name, $index);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Device Firmware Upgrade Status
|
||||||
|
$upgradestatus = snmpwalk_cache_oid($device, 'devFWUpgradeStatus', array(), 'WIPIPE-MIB');
|
||||||
|
foreach ($upgradestatus as $index => $entry) {
|
||||||
|
$cur_oid = '.1.3.6.1.4.1.20992.1.1.4.';
|
||||||
|
//Create State Index
|
||||||
|
$state_name = 'devFWUpgradeStatus';
|
||||||
|
$state_index_id = create_state_index($state_name);
|
||||||
|
//Create State Translation
|
||||||
|
if ($state_index_id) {
|
||||||
|
$states = array(
|
||||||
|
array($state_index_id,'idle',0,1,0) ,
|
||||||
|
array($state_index_id,'upgrading',0,2,0) ,
|
||||||
|
array($state_index_id,'uptodate',0,3,0) ,
|
||||||
|
array($state_index_id,'updateAvail',0,4,1) ,
|
||||||
|
array($state_index_id,'failure',0,5,2)
|
||||||
|
);
|
||||||
|
foreach ($states as $value) {
|
||||||
|
$insert = array(
|
||||||
|
'state_index_id' => $value[0],
|
||||||
|
'state_descr' => $value[1],
|
||||||
|
'state_draw_graph' => $value[2],
|
||||||
|
'state_value' => $value[3],
|
||||||
|
'state_generic_value' => $value[4]
|
||||||
|
);
|
||||||
|
dbInsert($insert, 'state_translations');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$descr = "Firmware Upgrade Status";
|
||||||
|
//Discover Sensors
|
||||||
|
discover_sensor($valid['sensor'], 'state', $device, $cur_oid.$index, $index, $state_name, $descr, '1', '1', null, null, null, null, $entry['devFWUpgradeStatus'], 'snmp', $index);
|
||||||
|
//Create Sensor To State Index
|
||||||
|
create_sensor_to_state_index($device, $state_name, $index);
|
||||||
|
}
|
18
includes/polling/os/wipipe.inc.php
Normal file
18
includes/polling/os/wipipe.inc.php
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* LibreNMS OS Polling module for the CradlePoint WiPipe Platform
|
||||||
|
*
|
||||||
|
* © 2017 Chris A. Evans <thecityofguanyu@outlook.com>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version. Please see LICENSE.txt at the top level of
|
||||||
|
* the source code distribution for details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Rip hardware and firmware version from sysDescr string -- example: Cradlepoint CBA850, Firmware Version 6.2.0.dd92f49
|
||||||
|
preg_match('/(.*) ([\w\d]+), (.*) ([\w\d\.]+)/', $poll_device['sysDescr'], $wipipe_data);
|
||||||
|
$hardware = $wipipe_data[2];
|
||||||
|
$version = $wipipe_data[4];
|
520
mibs/cradlepoint/WIPIPE-MIB
Normal file
520
mibs/cradlepoint/WIPIPE-MIB
Normal file
@ -0,0 +1,520 @@
|
|||||||
|
WIPIPE-MIB DEFINITIONS ::= BEGIN
|
||||||
|
|
||||||
|
-- WiPipe MIB Release 1.13
|
||||||
|
|
||||||
|
-- Copyright 2008-2016 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
|
||||||
|
enterprises
|
||||||
|
FROM RFC1155-SMI
|
||||||
|
OBJECT-TYPE
|
||||||
|
FROM RFC-1212;
|
||||||
|
|
||||||
|
-- ===============================================================================================
|
||||||
|
|
||||||
|
-- textual conventions
|
||||||
|
|
||||||
|
DisplayString ::=
|
||||||
|
OCTET STRING
|
||||||
|
-- This data type is used to model textual information taken
|
||||||
|
-- from the NVT ASCII character set. By convention, objects
|
||||||
|
-- with this syntax are declared as having
|
||||||
|
|
||||||
|
--
|
||||||
|
-- SIZE (0..255)
|
||||||
|
|
||||||
|
PhysAddress ::=
|
||||||
|
OCTET STRING
|
||||||
|
-- This data type is used to model media addresses. For many
|
||||||
|
-- types of media, this will be in a binary representation.
|
||||||
|
-- For example, an ethernet address would be represented as
|
||||||
|
-- a string of 6 octets.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- groups in WIPIPE
|
||||||
|
|
||||||
|
wipipe OBJECT IDENTIFIER ::= { enterprises 20992 }
|
||||||
|
|
||||||
|
wipipeMgmt OBJECT IDENTIFIER ::= { wipipe 1 }
|
||||||
|
|
||||||
|
wipipeProd OBJECT IDENTIFIER ::= { wipipe 2 }
|
||||||
|
|
||||||
|
mbr1000 OBJECT IDENTIFIER ::= { wipipeProd 1 }
|
||||||
|
|
||||||
|
ctr500 OBJECT IDENTIFIER ::= { wipipeProd 2 }
|
||||||
|
|
||||||
|
mbr800 OBJECT IDENTIFIER ::= { wipipeProd 3 }
|
||||||
|
|
||||||
|
mbr1100 OBJECT IDENTIFIER ::= { wipipeProd 4 }
|
||||||
|
|
||||||
|
mbr1200 OBJECT IDENTIFIER ::= { wipipeProd 5 }
|
||||||
|
|
||||||
|
mbr900 OBJECT IDENTIFIER ::= { wipipeProd 6 }
|
||||||
|
|
||||||
|
cba250 OBJECT IDENTIFIER ::= { wipipeProd 7 }
|
||||||
|
|
||||||
|
cba750 OBJECT IDENTIFIER ::= { wipipeProd 8 }
|
||||||
|
|
||||||
|
cx111 OBJECT IDENTIFIER ::= { wipipeProd 9 }
|
||||||
|
|
||||||
|
mbr1400 OBJECT IDENTIFIER ::= { wipipeProd 10 }
|
||||||
|
|
||||||
|
mbr1200b OBJECT IDENTIFIER ::= { wipipeProd 11 }
|
||||||
|
|
||||||
|
cbr400 OBJECT IDENTIFIER ::= { wipipeProd 12 }
|
||||||
|
|
||||||
|
cbr450 OBJECT IDENTIFIER ::= { wipipeProd 13 }
|
||||||
|
|
||||||
|
ibr600 OBJECT IDENTIFIER ::= { wipipeProd 14 }
|
||||||
|
|
||||||
|
ibr650 OBJECT IDENTIFIER ::= { wipipeProd 15 }
|
||||||
|
|
||||||
|
mbr1400v2 OBJECT IDENTIFIER ::= { wipipeProd 16 }
|
||||||
|
|
||||||
|
cba750b OBJECT IDENTIFIER ::= { wipipeProd 17 }
|
||||||
|
|
||||||
|
aer2100 OBJECT IDENTIFIER ::= { wipipeProd 18 }
|
||||||
|
|
||||||
|
ibr1150 OBJECT IDENTIFIER ::= { wipipeProd 19 }
|
||||||
|
|
||||||
|
ibr1100 OBJECT IDENTIFIER ::= { wipipeProd 20 }
|
||||||
|
|
||||||
|
cba850 OBJECT IDENTIFIER ::= { wipipeProd 21 }
|
||||||
|
|
||||||
|
ibr350 OBJECT IDENTIFIER ::= { wipipeProd 22 }
|
||||||
|
|
||||||
|
aer3100 OBJECT IDENTIFIER ::= { wipipeProd 23 }
|
||||||
|
|
||||||
|
aer1600 OBJECT IDENTIFIER ::= { wipipeProd 24 }
|
||||||
|
|
||||||
|
ibr650b OBJECT IDENTIFIER ::= { wipipeProd 25 }
|
||||||
|
|
||||||
|
aer3150 OBJECT IDENTIFIER ::= { wipipeProd 26 }
|
||||||
|
|
||||||
|
aer1650 OBJECT IDENTIFIER ::= { wipipeProd 27 }
|
||||||
|
|
||||||
|
aer2150 OBJECT IDENTIFIER ::= { wipipeProd 28 }
|
||||||
|
|
||||||
|
ibr600b OBJECT IDENTIFIER ::= { wipipeProd 29 }
|
||||||
|
|
||||||
|
ibr950 OBJECT IDENTIFIER ::= { wipipeProd 30 }
|
||||||
|
|
||||||
|
ibr900 OBJECT IDENTIFIER ::= { wipipeProd 31 }
|
||||||
|
|
||||||
|
wipipeDevice OBJECT IDENTIFIER ::= { wipipeMgmt 1 }
|
||||||
|
|
||||||
|
wipipeCellMdm OBJECT IDENTIFIER ::= { wipipeMgmt 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- the WiPipe Device Management group
|
||||||
|
|
||||||
|
devFWVersion OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..255))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual description providing the firmware
|
||||||
|
version currently running on the device.
|
||||||
|
It is mandatory that this only contain
|
||||||
|
printable ASCII characters.
|
||||||
|
@GET-FUNC=snmp_get_devFWVersion"
|
||||||
|
::= { wipipeDevice 1 }
|
||||||
|
|
||||||
|
devFWUpgrade OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
none (1),
|
||||||
|
auto (2),
|
||||||
|
manual (3)
|
||||||
|
}
|
||||||
|
ACCESS read-write
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Initiate a FW upgrade on the device.
|
||||||
|
none - No upgrade is being performed or initiated.
|
||||||
|
auto - If no other upgrade is begin performed, when this value
|
||||||
|
is written then an automatic upgrade will be performed.
|
||||||
|
When an automatic upgrade is done then the device will
|
||||||
|
pull the most current FW image from the Wipipe server
|
||||||
|
and install it.
|
||||||
|
If this value is read then the router is performing an
|
||||||
|
automatic upgrade and the devFWUpgradeStatus object should
|
||||||
|
be read for further information.
|
||||||
|
manual - If no other upgrade is begin performed, when this value
|
||||||
|
is written then a manual upgrade will be performed.
|
||||||
|
When an manual upgrade is done it will use the URL set
|
||||||
|
in the devFWUpgradeURL object as the place to get the
|
||||||
|
firmware image and install. If the devFWUpgradeURL object
|
||||||
|
is not set then no upgrade will be performed.
|
||||||
|
If this value is read then the router is performing an
|
||||||
|
manual upgrade and the devFWUpgradeStatus object should
|
||||||
|
be read for further information. -
|
||||||
|
@SET-FUNC=snmp_set_devFWUpgrade
|
||||||
|
@GET-FUNC=snmp_get_devFWUpgrade"
|
||||||
|
::= { wipipeDevice 2 }
|
||||||
|
|
||||||
|
devFWUpgradeURL OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..255))
|
||||||
|
ACCESS read-write
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Set the URL that points to the firmware image that will be used
|
||||||
|
when doing a manual firmware upgrade.
|
||||||
|
@SET-FUNC=snmp_set_devFWUpgradeURL
|
||||||
|
@GET-FUNC=snmp_get_devFWUpgradeURL"
|
||||||
|
::= { wipipeDevice 3 }
|
||||||
|
|
||||||
|
devFWUpgradeStatus OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
idle (1),
|
||||||
|
upgrading (2),
|
||||||
|
uptodate (3),
|
||||||
|
updateAvail (4),
|
||||||
|
failure (5)
|
||||||
|
}
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Show the result of the FW upgrade command.
|
||||||
|
idle = there is no upgrade in process.
|
||||||
|
upgrading = the new FW is being downloaded and written to flash.
|
||||||
|
uptodate = the device is already at the latest FW. Nothing to upgrade.
|
||||||
|
updateAvail - the device has an automatic update available.
|
||||||
|
failure = some sort of failure occurred during the upgrade.
|
||||||
|
The FW will not be upgraded.
|
||||||
|
NOTE - while the FW image is being written to flash interrupts are
|
||||||
|
disabled so no status will be returned at this time.
|
||||||
|
User should get the FW version string in order to determine if the
|
||||||
|
unit has been updated successfully.
|
||||||
|
@GET-FUNC=snmp_get_devFWUpgradeStatus"
|
||||||
|
::= { wipipeDevice 4 }
|
||||||
|
|
||||||
|
|
||||||
|
devGpioConfigInput OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
none (1),
|
||||||
|
input (2),
|
||||||
|
reboot (3),
|
||||||
|
ignitionSensing (4)
|
||||||
|
}
|
||||||
|
ACCESS read-write
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Set the Input GPIO config on the connector.
|
||||||
|
none - ignore input value.
|
||||||
|
input - read the input value.
|
||||||
|
reboot - if the input is held low for 10 seconds,
|
||||||
|
reboot the router.
|
||||||
|
ignition_sensing - if the input is held low for 300 seconds,
|
||||||
|
power off the router. IBR11x0 series feature.
|
||||||
|
@SET-FUNC=snmp_set_devGpioConfigInput
|
||||||
|
@GET-FUNC=snmp_get_devGpioConfigInput"
|
||||||
|
::= { wipipeDevice 5 }
|
||||||
|
|
||||||
|
devGpioReadInput OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (0..1)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Read the Input GPIO value on the connector.
|
||||||
|
0 - low.
|
||||||
|
1 - high.
|
||||||
|
@SET-FUNC=snmp_set_devGpioReadInput
|
||||||
|
@GET-FUNC=snmp_get_devGpioReadInput"
|
||||||
|
::= { wipipeDevice 6 }
|
||||||
|
|
||||||
|
devGpioConfigOutput OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
low (1),
|
||||||
|
high (2),
|
||||||
|
routerRunning (3),
|
||||||
|
modemConnected (4)
|
||||||
|
}
|
||||||
|
ACCESS read-write
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Set the output GPIO config on the connector.
|
||||||
|
low - Default low output value.
|
||||||
|
high - high output value.
|
||||||
|
routerRunning - high output value once the router completes
|
||||||
|
its boot process.
|
||||||
|
modemConnected - high output value when the modem completes a
|
||||||
|
data connection
|
||||||
|
@SET-FUNC=snmp_set_devGpioConfigOutput
|
||||||
|
@GET-FUNC=snmp_get_devGpioConfigOutput"
|
||||||
|
::= { wipipeDevice 7 }
|
||||||
|
|
||||||
|
devGpioReadOutput OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (0..1)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"Read the Output GPIO value on the connector.
|
||||||
|
0 - low.
|
||||||
|
1 - high.
|
||||||
|
@SET-FUNC=snmp_set_devGpioReadOutput
|
||||||
|
@GET-FUNC=snmp_get_devGpioReadOutput"
|
||||||
|
::= { wipipeDevice 8 }
|
||||||
|
|
||||||
|
-- The WiPipe Cellular Modem Management Group
|
||||||
|
|
||||||
|
mdmNumber OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (0..10)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The number of Cellular Modems (regardless of their
|
||||||
|
current state) present on this system.
|
||||||
|
@GET-FUNC=snmp_get_mdmNumber"
|
||||||
|
::= { wipipeCellMdm 1 }
|
||||||
|
|
||||||
|
|
||||||
|
mdmTable OBJECT-TYPE
|
||||||
|
SYNTAX SEQUENCE OF MdmEntry
|
||||||
|
ACCESS not-accessible
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A list of Modem entries. The number of entries is
|
||||||
|
given by the value of ifNumber."
|
||||||
|
::= { wipipeCellMdm 2 }
|
||||||
|
|
||||||
|
mdmEntry OBJECT-TYPE
|
||||||
|
SYNTAX MdmEntry
|
||||||
|
ACCESS not-accessible
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"An entry containing management information applicable to a
|
||||||
|
particular modem.
|
||||||
|
@ROW-FUNC=snmp_get_mdmTable_row"
|
||||||
|
INDEX { mdmIndex }::= { mdmTable 1 }
|
||||||
|
|
||||||
|
MdmEntry ::=
|
||||||
|
SEQUENCE {
|
||||||
|
mdmIndex INTEGER,
|
||||||
|
mdmDescr DisplayString,
|
||||||
|
mdmPort DisplayString,
|
||||||
|
mdmSignalStrength INTEGER,
|
||||||
|
mdmStatus INTEGER,
|
||||||
|
mdmECIO INTEGER,
|
||||||
|
mdmSerialNumber DisplayString,
|
||||||
|
mdmFirmwareVersion DisplayString,
|
||||||
|
mdmMDN DisplayString,
|
||||||
|
mdmSERDIS DisplayString,
|
||||||
|
mdmPROF DisplayString,
|
||||||
|
mdmCINR INTEGER,
|
||||||
|
mdmSINR INTEGER,
|
||||||
|
mdmRSRP INTEGER,
|
||||||
|
mdmRSRQ INTEGER,
|
||||||
|
mdmROAM INTEGER,
|
||||||
|
mdmRFBAND DisplayString,
|
||||||
|
mdmHOMECARRIER DisplayString,
|
||||||
|
mdmIMSI DisplayString,
|
||||||
|
mdmIMEI DisplayString,
|
||||||
|
mdmAPN DisplayString,
|
||||||
|
mdmRFCHANNEL DisplayString
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
mdmIndex OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (0..10)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A unique value, greater than zero, for each cellular modem. It
|
||||||
|
is recommended that values are assigned contiguously
|
||||||
|
starting from 1. The value for each interface sub-layer
|
||||||
|
must remain constant at least from one re-initialization of
|
||||||
|
the entity's network management system to the next re-
|
||||||
|
initialization."
|
||||||
|
::= { mdmEntry 1 }
|
||||||
|
|
||||||
|
mdmDescr OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..255))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string containing information about the
|
||||||
|
modem."
|
||||||
|
::= { mdmEntry 2 }
|
||||||
|
|
||||||
|
mdmPort OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..255))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string containing information about what
|
||||||
|
port the modem is installed in."
|
||||||
|
::= { mdmEntry 3 }
|
||||||
|
|
||||||
|
mdmSignalStrength OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-120..-30)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems signal strength, given in
|
||||||
|
dBm's."
|
||||||
|
::= { mdmEntry 4 }
|
||||||
|
|
||||||
|
mdmStatus OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER {
|
||||||
|
established (1),
|
||||||
|
establishing (2),
|
||||||
|
ready (3),
|
||||||
|
error (4),
|
||||||
|
disconnected (5),
|
||||||
|
disconnecting (6),
|
||||||
|
suspended (7),
|
||||||
|
empty (8),
|
||||||
|
notconfigured (9),
|
||||||
|
userstopped (10)
|
||||||
|
}
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string containing infomation of the state
|
||||||
|
of the modem."
|
||||||
|
::= { mdmEntry 5 }
|
||||||
|
|
||||||
|
mdmECIO OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-120..0)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems Ec/Io ratio given in dBm's."
|
||||||
|
::= { mdmEntry 6 }
|
||||||
|
|
||||||
|
mdmSerialNumber OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string representing the unique serial number of the device."
|
||||||
|
::= { mdmEntry 7 }
|
||||||
|
|
||||||
|
mdmFirmwareVersion OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..64))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string representing the current firmware version of the modem.
|
||||||
|
Not all modems report this value."
|
||||||
|
::= { mdmEntry 8 }
|
||||||
|
|
||||||
|
mdmMDN OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string representing the unique Mobile Directory Number of the device."
|
||||||
|
::= { mdmEntry 9 }
|
||||||
|
|
||||||
|
mdmSERDIS OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string representing the Service Display of the device."
|
||||||
|
::= { mdmEntry 10 }
|
||||||
|
|
||||||
|
mdmPROF OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"A textual string representing the Profile of the device."
|
||||||
|
::= { mdmEntry 11 }
|
||||||
|
|
||||||
|
mdmCINR OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-120..0)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems CINR ratio given in dBm's."
|
||||||
|
::= { mdmEntry 12 }
|
||||||
|
|
||||||
|
mdmSINR OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-20..40)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems SINR ratio given in dBm's."
|
||||||
|
::= { mdmEntry 13 }
|
||||||
|
|
||||||
|
mdmRSRP OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-120..100)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems RSRP given in dBm's."
|
||||||
|
::= { mdmEntry 14 }
|
||||||
|
|
||||||
|
mdmRSRQ OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (-120..50)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems RSRQ given in dBm's."
|
||||||
|
::= { mdmEntry 15 }
|
||||||
|
|
||||||
|
mdmROAM OBJECT-TYPE
|
||||||
|
SYNTAX INTEGER (0..2)
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems Roaming Status."
|
||||||
|
::= { mdmEntry 16 }
|
||||||
|
|
||||||
|
mdmRFBAND OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems RF band."
|
||||||
|
::= { mdmEntry 17 }
|
||||||
|
|
||||||
|
mdmHOMECARRIER OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems Home Carrier."
|
||||||
|
::= { mdmEntry 18 }
|
||||||
|
|
||||||
|
mdmIMSI OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems IMSI."
|
||||||
|
::= { mdmEntry 19 }
|
||||||
|
|
||||||
|
mdmIMEI OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems IMEI."
|
||||||
|
::= { mdmEntry 20 }
|
||||||
|
|
||||||
|
mdmAPN OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems APN."
|
||||||
|
::= { mdmEntry 21 }
|
||||||
|
|
||||||
|
mdmRFCHANNEL OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString (SIZE (0..32))
|
||||||
|
ACCESS read-only
|
||||||
|
STATUS mandatory
|
||||||
|
DESCRIPTION
|
||||||
|
"The cellular modems RF Channel."
|
||||||
|
::= { mdmEntry 22 }
|
||||||
|
|
||||||
|
END
|
2
tests/snmpsim/wipipe.snmprec
Normal file
2
tests/snmpsim/wipipe.snmprec
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
1.3.6.1.2.1.1.1.0|4|Cradlepoint CBA850, Firmware Version 6.2.0.dd92f49
|
||||||
|
1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.20992.2.21
|
Loading…
Reference in New Issue
Block a user