ciao miki io per le temperatre con esp8266 con reqsdm faccio così:
Codice: Seleziona tutto
} elseif ($argv[1] == 'esptemp') {
$outstr = exec('curl -s http://192.168.0.193/json?tasknr=2 | egrep \'"Temperature":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
$outstr = "20($outstr*°C)";
} elseif ($argv[1] == 'espdht22t') {
$outstr = exec('curl -s http://192.168.0.193/json?tasknr=3 | egrep \'"Temperature":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
$outstr = "21($outstr*°C)";
} elseif ($argv[1] == 'espdht22u') {
$outstr = exec('curl -s http://192.168.0.193/json?tasknr=3 | egrep \'"Humidity":\' | egrep -o \'[0-9]*(\.)?[0-9]*\'');
$outstr = "22($outstr*%)";
questa è la parte di codice in cui recupero la temperatura
nel task 2 ho un ds18b20
nel task 3 ho un dht22
funziona tutto regolamentre
Codice: Seleziona tutto
} else {
die("Usage: reqsdm (tensione|corrente|cospi|esptemp,espdht22u,espdht22t,DStemp9,DStemp10,DStemp11)\n");
}
echo "$outstr";
questi sono i paramentri che passa il mio reqsdm che poi richiamo in metern per avere i valori
tornando invece al mio problema, ho sentito Jeanmarc che mi ha detto:
Hi,
Maybe use json_decode instead of more | egrep
Codice: Seleziona tutto
<?php
$somedata = file_get_contents(/dev/shm/metern22.txt);
$dataarray = json_decode($somedata, true);
//print_r($dataarray);
echo "you want $dataarray['Total'] right";
?>
Sorry but i don't have much free time right now.. you need to change the shell_exec($cmd) with the exemple
che però onestamente non ho capito come dovrei sostituire il poolerpulse.php con il codice php da lui proposto
grazie