Browse Source

Docs If Cmts para la consulta SNMP Docsis sobre CMTS

root 12 năm trước cách đây
mục cha
commit
7e18799d50
1 tập tin đã thay đổi với 133 bổ sung0 xóa
  1. 133 0
      OSS_SNMP/MIBS/DocsIfCmts.php

+ 133 - 0
OSS_SNMP/MIBS/DocsIfCmts.php

@@ -0,0 +1,133 @@
+<?php
+
+namespace OSS_SNMP\MIBS;
+
+class DocsIfCmts extends \OSS_SNMP\MIB {
+
+    const OID_docsIfCmtsCmStatusMacAddress	= "1.3.6.1.2.1.10.127.1.3.3.1.2";
+    //const OID_docsIfCmtsCmStatusTable  		= "1.3.6.1.2.1.10.127.1.3.3";
+    const OID_docsIfCmtsCmStatusUpChannelIfIndex =  "1.3.6.1.2.1.10.127.1.3.3.1.5";
+    const OID_docsIfCmtsCmStatusDownChannelIfIndex = "1.3.6.1.2.1.10.127.1.3.3.1.4";
+    const OID_docsIfCmtsCmStatusIpAddress	= "1.3.6.1.2.1.10.127.1.3.3.1.3";
+    const OID_docsQosCmtsIfIndex		= "1.3.6.1.2.1.10.127.7.1.11.1.3";
+    const OID_docsIfCmtsCmStatusIndex		= "1.3.6.1.2.1.10.127.1.3.3.1.1";
+    const OID_docsQosServiceFlowOctets		= "1.3.6.1.2.1.10.127.7.1.4.1.2";
+    const OID_docsQosServiceFlowDirection	= "1.3.6.1.2.1.10.127.7.1.3.1.7";
+    const OID_docsIfCmtsCmStatusRxPower		= "1.3.6.1.2.1.10.127.1.3.3.1.6";
+    const OID_docsIfCmtsCmStatusValue		= "1.3.6.1.2.1.10.127.1.3.3.1.9";
+    const OID_docsQos3CmtsIfIndex		= "1.3.6.1.4.1.4491.2.1.21.1.11.1.3";
+    const OID_docsQos3ServiceFlowOctets 	= "1.3.6.1.4.1.4491.2.1.21.1.4.1.2";
+    const OID_docsQos3ServiceFlowDirection	= "1.3.6.1.4.1.4491.2.1.21.1.3.1.7";
+    const OID_docsIfSigQSignalNoise		= "1.3.6.1.2.1.10.127.1.1.4.1.5";
+    const OID_docsIfSigQMicroreflections        = "1.3.6.1.2.1.10.127.1.1.4.1.6";
+
+    public function docsQos3ServiceFlowDirection(){
+	try{
+	    $rtr = array();
+            foreach($this->getSNMP()->realWalk(self::OID_docsQos3ServiceFlowDirection) as $k => $v){
+		$k_prim = preg_split("|\.|",$k);
+		$rtr[$k_prim[15].".".$k_prim[16]] = $this->getSNMP()->parseSnmpValue($v);
+	    }
+	    return $rtr;
+
+	}catch (\Exception $e){ 
+	    echo "ouch!".$e->getMessage()."\n";
+	    return array();
+	}
+    }
+
+   public function docsQos3CmtsIfIndex(){
+	try{
+	    $rtr = array();
+            foreach($this->getSNMP()->realWalk(self::OID_docsQos3CmtsIfIndex) as $k => $v){
+		$k_prim = preg_split("|\.|",$k);
+		$k_mac = sprintf("%02x:%02x:%02x:%02x:%02x:%02x",
+				 $k_prim[15], $k_prim[16], $k_prim[17], $k_prim[18], $k_prim[19], $k_prim[20]);
+		$rtr[$k_mac][] = $this->getSNMP()->parseSnmpValue($v). ".".$k_prim[21];
+	    }
+	    return $rtr;
+	}catch (\Exception $e){ 
+	    echo "ouch!".$e->getMessage()."\n";
+	    return array();
+	}
+   }
+
+   public function docsQos3ServiceFlowOctets(){
+	try{
+	    $rtr = array();
+	    foreach($this->getSNMP()->realWalk(self::OID_docsQos3ServiceFlowOctets) as $k => $v){
+		$k_prim = preg_split("|\.|",$k);
+		$rtr[$k_prim[15].".".$k_prim[16]] = $this->getSNMP()->parseSnmpValue($v);
+	    }
+	    return $rtr;
+	}catch (\Exception $e){ 
+	    echo "ouch! ".$e->getMessage()."\n";
+	    return array();
+	}
+   }
+
+    public function docsQosServiceFlowDirection(){
+	return $this->getSNMP()->walk1d(self::OID_docsQosServiceFlowDirection);
+    }
+
+    public function docsQosCmtsIfIndex(){
+	try{
+	    $rtr = array();
+            foreach($this->getSNMP()->realWalk(self::OID_docsQosCmtsIfIndex) as $k => $v){
+		$k_prim = preg_split("|\.|",$k);
+		$k_mac = sprintf("%02x:%02x:%02x:%02x:%02x:%02x",
+				 $k_prim[14], $k_prim[15], $k_prim[16], $k_prim[17], $k_prim[18], $k_prim[19]);
+		$rtr[$k_mac][] = $k_prim[20]; //$this->getSNMP()->parseSnmpValue($v);
+
+	    }
+	    return $rtr;
+	}catch (\Exception $e){ 
+	    echo "ouch!".$e->getMessage()."\n";
+	    return array();
+	}
+    }
+
+    public function docsQosServiceFlowOctets(){
+	return $this->getSNMP()->walk1d(self::OID_docsQosServiceFlowOctets);
+    }
+
+
+    public function docsIfCmtsCmStatusMacAddress()
+    {
+        return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusMacAddress);
+    }
+
+    //public function docsIfCmtsCmStatusIndex(){
+    //    return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusDownChannelIfIndex);
+    //}
+
+    //public function docsIfCmtsCmStatusUpChannelIfIndex(){
+    //	return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusUpChannelIfIndex);
+    //}
+
+    //public function docsIfCmtsCmStatusDownChannelIfIndex(){
+    //	return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusDownChannelIfIndex);
+    //}
+
+    //public function docsIfCmtsCmStatusIpAddress(){
+    //    return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusIpAddress);
+    //}
+
+
+    //public function docsIfCmtsCmStatusValue(){	
+    //    return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusValue);
+    //}
+
+    public function docsIfCmtsCmStatusRxPower(){
+	return $this->getSNMP()->walk1d(self::OID_docsIfCmtsCmStatusRxPower);
+    }
+
+    public function docsIfSigQSignalNoise(){
+	return $this->getSNMP()->walk1d(self::OID_docsIfSigQSignalNoise);
+    }
+
+    public function docsIfSigQMicroreflections(){
+	return $this->getSNMP()->walk1d(self::OID_docsIfSigQMicroreflections);
+    }
+
+}