@@ 273-330 (lines=58) @@ | ||
270 | * |
|
271 | * @return void |
|
272 | */ |
|
273 | private function _power() |
|
274 | { |
|
275 | $ar_buf = array(); |
|
276 | foreach ($this->_lines as $line) { |
|
277 | $data = array(); |
|
278 | if (preg_match("/(.*):(.*)\((.*)=(.*),(.*)=(.*)\)(.*)/", $line, $data)) { |
|
279 | ; |
|
280 | } elseif (preg_match("/(.*):(.*)\((.*)=(.*)\)(.*)/", $line, $data)) { |
|
281 | ; |
|
282 | } else { |
|
283 | preg_match("/(.*):(.*)/", $line, $data); |
|
284 | } |
|
285 | if (count($data) > 1) { |
|
286 | $temp = substr(trim($data[2]), -2); |
|
287 | switch ($temp) { |
|
288 | case " W": |
|
289 | array_push($ar_buf, $line); |
|
290 | } |
|
291 | } |
|
292 | } |
|
293 | foreach ($ar_buf as $line) { |
|
294 | $data = array(); |
|
295 | /* not tested yet |
|
296 | if (preg_match("/(.*):(.*) W[ ]*\((.*)=(.*) W,(.*)=(.*) W\)(.*)\)/", $line, $data)) { |
|
297 | ; |
|
298 | } elseif (preg_match("/(.*):(.*) W[ ]*\((.*)=(.*) W,(.*)=(.*) W\)(.*)/", $line, $data)) { |
|
299 | ; |
|
300 | } else |
|
301 | */ |
|
302 | if (preg_match("/(.*):(.*) W[ ]*\((.*)=(.*) W\)(.*)/", $line, $data)) { |
|
303 | ; |
|
304 | } elseif (preg_match("/(.*):(.*) W[ \t]+/", $line, $data)) { |
|
305 | ; |
|
306 | } else { |
|
307 | preg_match("/(.*):(.*) W$/", $line, $data); |
|
308 | } |
|
309 | foreach ($data as $key=>$value) { |
|
310 | if (preg_match("/^\+?([0-9\.]+).?$/", trim($value), $newvalue)) { |
|
311 | $data[$key] = trim($newvalue[1]); |
|
312 | } else { |
|
313 | $data[$key] = trim($value); |
|
314 | } |
|
315 | } |
|
316 | $dev = new SensorDevice(); |
|
317 | $dev->setName($data[1]); |
|
318 | $dev->setValue($data[2]); |
|
319 | ||
320 | if (isset($data[6]) && $data[2] <= $data[6]) { |
|
321 | $dev->setMax(max($data[4], $data[6])); |
|
322 | } elseif (isset($data[4]) && $data[2] <= $data[4]) { |
|
323 | $dev->setMax($data[4]); |
|
324 | } |
|
325 | if (preg_match("/\sALARM(\s*)$/", $line)) { |
|
326 | $dev->setEvent("Alarm"); |
|
327 | } |
|
328 | $this->mbinfo->setMbPower($dev); |
|
329 | } |
|
330 | } |
|
331 | ||
332 | /** |
|
333 | * get current information |
|
@@ 337-394 (lines=58) @@ | ||
334 | * |
|
335 | * @return void |
|
336 | */ |
|
337 | private function _current() |
|
338 | { |
|
339 | $ar_buf = array(); |
|
340 | foreach ($this->_lines as $line) { |
|
341 | $data = array(); |
|
342 | if (preg_match("/(.*):(.*)\((.*)=(.*),(.*)=(.*)\)(.*)/", $line, $data)) { |
|
343 | ; |
|
344 | } elseif (preg_match("/(.*):(.*)\((.*)=(.*)\)(.*)/", $line, $data)) { |
|
345 | ; |
|
346 | } else { |
|
347 | preg_match("/(.*):(.*)/", $line, $data); |
|
348 | } |
|
349 | if (count($data) > 1) { |
|
350 | $temp = substr(trim($data[2]), -2); |
|
351 | switch ($temp) { |
|
352 | case " A": |
|
353 | array_push($ar_buf, $line); |
|
354 | } |
|
355 | } |
|
356 | } |
|
357 | foreach ($ar_buf as $line) { |
|
358 | $data = array(); |
|
359 | /* not tested yet |
|
360 | if (preg_match("/(.*):(.*) A[ ]*\((.*)=(.*) A,(.*)=(.*) A\)(.*)\)/", $line, $data)) { |
|
361 | ; |
|
362 | } elseif (preg_match("/(.*):(.*) A[ ]*\((.*)=(.*) A,(.*)=(.*) A\)(.*)/", $line, $data)) { |
|
363 | ; |
|
364 | } else |
|
365 | */ |
|
366 | if (preg_match("/(.*):(.*) A[ ]*\((.*)=(.*) A\)(.*)/", $line, $data)) { |
|
367 | ; |
|
368 | } elseif (preg_match("/(.*):(.*) A[ \t]+/", $line, $data)) { |
|
369 | ; |
|
370 | } else { |
|
371 | preg_match("/(.*):(.*) A$/", $line, $data); |
|
372 | } |
|
373 | foreach ($data as $key=>$value) { |
|
374 | if (preg_match("/^\+?([0-9\.]+).?$/", trim($value), $newvalue)) { |
|
375 | $data[$key] = trim($newvalue[1]); |
|
376 | } else { |
|
377 | $data[$key] = trim($value); |
|
378 | } |
|
379 | } |
|
380 | $dev = new SensorDevice(); |
|
381 | $dev->setName($data[1]); |
|
382 | $dev->setValue($data[2]); |
|
383 | ||
384 | if (isset($data[6]) && $data[2] <= $data[6]) { |
|
385 | $dev->setMax(max($data[4], $data[6])); |
|
386 | } elseif (isset($data[4]) && $data[2] <= $data[4]) { |
|
387 | $dev->setMax($data[4]); |
|
388 | } |
|
389 | if (preg_match("/\sALARM(\s*)$/", $line)) { |
|
390 | $dev->setEvent("Alarm"); |
|
391 | } |
|
392 | $this->mbinfo->setMbCurrent($dev); |
|
393 | } |
|
394 | } |
|
395 | ||
396 | /** |
|
397 | * get the information |