Get Battery Status from Console with PHPCLI
Hahahaha, aku jadi inget ucapan... duh, ucapan siapa ya, lupa aku.
Problem / Limitasi akan membuat seseorang menjadi kreatif.
Contohnya ini (narsis boleh dong, blog sendiri koq
), karena main game mode fullscreen, gak bisa liat status baterai di Tray menu. Tapi masih bisa liat console (again, dengan sihir dari yakuake). tapi kalo lagi main males dong di ganggu dengan liat barus status yang panjang, mending to the point aja. Maka, jadilah script berikut ini. dia akan membaca /proc/acpi/battery/BAT1/info dan /proc/acpi/battery/BAT1/state untuk menghasilkan nilai berapa persen sisa baterai laptop sekarang.
Silahkan diambil dan dimodif sesuai kebutuhan.
#!/usr/bin/php
<?php
//read_bat_status.php
$debug = false;
$bat_infox = file('/proc/acpi/battery/BAT1/info');
if($debug) print_r($bat_infox);
foreach($bat_infox as $idx => $bat_info){
$bat_infox[$idx] = explode(':', $bat_info);
}
if($debug) print_r($bat_infox);
$lfCapacity = 0;
foreach($bat_infox as $idx => $bat_info){
if($bat_infox[$idx][0] == 'last full capacity'){
$lfCapacity = trim($bat_infox[$idx][1]);
}
}
if($debug) echo '$lfCapacity : '.$lfCapacity."\n";
$bat_statex = file('/proc/acpi/battery/BAT1/state');
if($debug) print_r($bat_statex);
foreach($bat_statex as $idx => $bat_state){
$bat_statex[$idx] = explode(':', $bat_state);
}
if($debug) print_r($bat_statex);
$rmCapacity = 0;
foreach($bat_statex as $idx => $bat_state){
if($bat_statex[$idx][0] == 'remaining capacity'){
$rmCapacity = trim($bat_statex[$idx][1]);
}
}
if($debug) echo '$rmCapacity : '.$rmCapacity."\n";
$currPercent = ($rmCapacity * 100) / $lfCapacity;
echo 'Battery Power Remaining : '.$currPercent." %\n";
?>
Cara penggunaannya, tinggal php read_bat_status.php. Tapi sebelumnya install dulu ya paket php-cli dengan sudo apt-get install php5-cli.





