mirror of
				https://github.com/librenms/librenms.git
				synced 2024-10-07 16:52:45 +00:00 
			
		
		
		
	* refactor: advanced sensor states
mark create_state_index($state_name) as E_USER_DEPRECATED?
* fix: minor corrections
* fix: mib has partialSync(9) and incompatibleVersion(8)
* fix: corrected netagent2upsstate - Sleeping(5)
* fix: NetAgent2 upsThreePhaseUPSStatusInverterOperating correction
* refactor: array() be gone
* Refactoring includes/discovery/sensors/state/extendair.inc.php with arrays
And tidying up array formatting in other files
* fix: minor typo
* standardising array item names
removed redundant "if ($state_index_id !== null) {"
* workaround: procurve & serverscheck
a sensor is causing create_state_index($state) to return null.
The updated code doesn't allow for this and thus a hybrid is being used.
* standardised naming of state info. Caused a typo $state_name instead of $status_name
$state_name is the standard
* converted compas to square arrays
* Converted APC states using preg_match to new create_state_index() call
* Update boss.inc.php
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * commander-plus.inc.php
 | 
						|
 *
 | 
						|
 * LibreNMS state discovery module for Commander Plus
 | 
						|
 *
 | 
						|
 * 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.
 | 
						|
 *
 | 
						|
 * This program is distributed in the hope that it will be useful,
 | 
						|
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
 | 
						|
 * GNU General Public License for more details.
 | 
						|
 *
 | 
						|
 * You should have received a copy of the GNU General Public License
 | 
						|
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
						|
 *
 | 
						|
 * @package    LibreNMS
 | 
						|
 * @link       http://librenms.org
 | 
						|
 * @copyright  2017 Neil Lathwood
 | 
						|
 * @author     Neil Lathwood <gh+n@laf.io>
 | 
						|
 */
 | 
						|
 | 
						|
$start_oid = '.1.3.6.1.4.1.18642.1.2.4';
 | 
						|
$state_table = snmpwalk_cache_oid($device, '.1.3.6.1.4.1.18642.1.2.4', [], 'CCPOWER-MIB');
 | 
						|
$x = 1;
 | 
						|
foreach ($state_table[0] as $state_name => $state_value) {
 | 
						|
    //Create State Translation
 | 
						|
    $states = [
 | 
						|
        ['value' => 1, 'generic' => 2, 'graph' => 1, 'descr' => 'inactive'],
 | 
						|
        ['value' => 2, 'generic' => 0, 'graph' => 1, 'descr' => 'active'],
 | 
						|
    ];
 | 
						|
    create_state_index($state_name, $states);
 | 
						|
 | 
						|
    $descr = $state_name;
 | 
						|
    discover_sensor($valid['sensor'], 'state', $device, $start_oid.'.'.$x.'.0', $state_name, $state_name, $descr, 1, 1, null, null, null, null, $state_value, 'snmp');
 | 
						|
 | 
						|
    //Create Sensor To State Index
 | 
						|
    create_sensor_to_state_index($device, $state_name, $state_name);
 | 
						|
    $x++;
 | 
						|
}
 | 
						|
 | 
						|
unset($state_table, $start_oid);
 |