Meteoclimatic

Bricolaje y otras manualidades => Creacion de páginas personales meteorológicas => Mensaje iniciado por: CarlosLSev en 19 de Febrero del 2021, 19:21:59 pm

Título: Consulta temperatura interior
Publicado por: CarlosLSev en 19 de Febrero del 2021, 19:21:59 pm
Hola quiero crear unas estadísticas o tendencias pero con la temperatura interior
Para eso puedo utilizar
<?php echo $WX['intemp'];?>
Que se actualiza cada 5 minutos usandoo Cutags.php
O utilizar este código usando realtime.txt que se actualiza cada 10seg.
 <?php

$realtime = "../realtime.txt";                 // Este es el archivo, ../ es para indicar que está en la carpeta padre.
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);

$dato = explode(" ", $linea);
?>

 <?php echo $dato[22]." "?>
El valor se muestra, pero el actual
Lo que no puedo es grabar que cada 1 minuto por ejemplo guarde el valor como hace en tendencias en este caso es cada 5.

Gracias
Título: Re:Consulta temperatura interior
Publicado por: jmviper en 19 de Febrero del 2021, 22:52:41 pm
Hola Carlos

Los datos de temperatura si está subiéndolos MX a tu servidor estarán disponibles en el json tempdata.json. Una vez que lo tengas ya podrás hacer lo que quieras con él con PHP. En él está la temperatura exterior y la interior entre otras.

Por ejemplo este sencillo código PHP coge la temperatura interior del json de mi MX y la presenta cada 5 minutos:

Código: [Seleccionar]
<?php

$json 
"intercambio/tempdata.json";

$datos json_decode(file_get_contents($json));

$intemp $datos->{'intemp'};

$res "";

foreach (
$intemp as $valor){
$fecha $valor[0] / 1000;
if ($fecha 300 == 0$res .= gmdate('d-m-Y H:i'$fecha).' '.$valor[1].'&deg;C<br>';
}

echo 
$res;


?>

Resultado:

http://www.meteoarchena.es/tempinterior.php

es solo una pequeña muestra de usar los json que sube Cumulus MX y aprovechar sus datos para crear gráficos o tendencias que queramos.

Hacerlo con el realtime.txt implicaría grabar cada 5 minutos sus datos (o del Cutags.php) y para ello tendrías que crear un crontab si puedes en el servidor o una petición http desde tu ordenador a un archivo PHP que haga el proceso de grabación con el programador de tareas o con el crontab de Linux.

Más fácil lo de del json.

Título: Re:Consulta temperatura interior
Publicado por: CarlosLSev en 19 de Febrero del 2021, 23:26:44 pm
 plau2
Me sorprendes, mil gracias de nuevo, ya te debo unas cervezas. Acababa de averiguar que ese fichero contenía el histórico de ese y otros valores, pero de ahí a eso...
¿Es posible acortar listado e invertirlo?

¿Es posible crear gráficos tal que así ? http://kocher.es/graficos-highcharts/mini_temperatura.php
Título: Re:Consulta temperatura interior
Publicado por: jmviper en 20 de Febrero del 2021, 00:23:38 am
Citar

¿Es posible acortar listado e invertirlo?


En programación todo es posible:

Código: [Seleccionar]
<?php

$json 
"intercambio/tempdata.json";

$datos json_decode(file_get_contents($json));

$intemp array_reverse($datos->{'intemp'});

$res "";

$ultimo reset($intemp)[0] / 1000;

foreach (
$intemp as $valor){
$fecha $valor[0] / 1000;
if ($fecha 300 == and $ultimo $fecha 43200$res .= gmdate('d-m-Y H:i'$fecha).' '.$valor[1].'&deg;C<br>';
}

echo 
$res;


?>

Invertido y de las últimas 12 horas en vez de 24.

Hay muchas funciones en PHP que hacen estas cosas y más. Es un lenguaje muy potente.

Citar

¿Es posible crear gráficos tal que así ? http://kocher.es/graficos-highcharts/mini_temperatura.php


Claro, el json ya lo tienes. Sería pasárselo vía Ajax a ese gráfico de highcharts para que lo dibujase.

Título: Re:Consulta temperatura interior
Publicado por: CarlosLSev en 20 de Febrero del 2021, 19:45:20 pm
Gracias eres un artista!!