FAQ EPC SNMP mit php

Aus Gude Systems GmbH
Version vom 7. März 2013, 20:25 Uhr von Mb (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Der EPC kann ab Firmware 2.2.0 als SNMP-agent abgefragt werden. Sie können daher mit Hilfe der SNMP-Funktionen snmpget und snmpset von PHP den EPC steuern und abfragen.


<html>
<body>

<?php
  $agent = "gudeads.no-ip.org:16100";
  $community['public'] = 'public';
  $community['private'] = 'private';

  // switch PowerPort if requested
  if ($_GET['p'] > 0)
    snmpset($agent, $community['private'], "1.3.6.1.4.1.28507.1.1.1.1.3.".$_GET['p'], 'i', $_GET['s']);

  // collect all powerport names and states
  for ($i=0; $i<8; $i++) {
    $name[$i]  = snmpget($agent, $community['public'], "1.3.6.1.4.1.28507.1.1.1.1.2.".($i+1));
    $state[$i] = snmpget($agent, $community['public'], "1.3.6.1.4.1.28507.1.1.1.1.3.".($i+1));
  }
?>

<?php
  for ($i=0; $i<8; $i++) {
    printf ("$name[$i] is %s\n", (($state[$i] == "INTEGER: 1")?"on":"off"));
    ?>
    <form>
    <input type="submit" value="Toggle">
    <input type="hidden" name="p" value="<?php echo $i+1 ?>">
    <input type="hidden" name="s" value="<?php if ($state[$i] == "INTEGER: 1") echo '0'; else echo '1'; ?>">
    </form>
    <?php
  }
?>

</body>
</html>