diff --git a/includes/polling/fanspeeds.inc.php b/includes/polling/fanspeeds.inc.php new file mode 100755 index 0000000000..d05c51e4c7 --- /dev/null +++ b/includes/polling/fanspeeds.inc.php @@ -0,0 +1,42 @@ += $fanspeed['fan_limit']) { + $updated = ", `service_changed` = '" . time() . "' "; + if($device['sysContact']) { $email = $device['sysContact']; } else { $email = $config['email_default']; } + $msg = "Fan Alarm: " . $device['hostname'] . " " . $fanspeed['fan_descr'] . " is " . $fan . " (Limit " . $fanspeed['fan_limit']; + $msg .= ") at " . date('l dS F Y h:i:s A'); + mail($email, "Fan Alarm: " . $device['hostname'] . " " . $fanspeed['fan_descr'], $msg, $config['email_headers']); + echo("Alerting for " . $device['hostname'] . " " . $fanspeed['fan_descr'] . "\n"); + eventlog('Fan speed ' . $fanspeed['fan_descr'] . " under threshold: " . $fanspeed['fan_current'] . " rpm (> " . $fanspeed['fan_limit'] . " rpm)", $device['device_id']); + } + + mysql_query("UPDATE fanspeed SET fan_current = '$fan' WHERE fan_id = '" . $fanspeed['fan_id'] . "'"); +} + +?> diff --git a/poll-device.php b/poll-device.php index d5e665cc32..984395f568 100755 --- a/poll-device.php +++ b/poll-device.php @@ -103,6 +103,7 @@ while ($device = mysql_fetch_array($device_query)) { $sysLocation = str_replace("\"","", $sysLocation); include("includes/polling/temperatures.inc.php"); + include("includes/polling/fanspeeds.inc.php"); include("includes/polling/device-netstats.inc.php"); include("includes/polling/ipSystemStats.inc.php"); include("includes/polling/ports.inc.php");