added historical data capturing curl.php

This commit is contained in:
user 2020-10-14 21:44:05 +02:00
parent 7838aee055
commit 92006102ac
2 changed files with 48 additions and 4 deletions

View File

@ -127,7 +127,46 @@ function makeMarker(int $id){ // generate appropriate markers based on latest JS
} }
function appendJSON($filename, $data){ // create historical json data for documentation over time
// read the file if present
$handle = @fopen($filename, 'r+');
// create the file if needed
if ($handle === null)
{
$handle = fopen($filename, 'w+');
}
if ($handle)
{
// seek to the end
fseek($handle, 0, SEEK_END);
// are we at the end of is the file empty
if (ftell($handle) > 0)
{
// move back a byte
fseek($handle, -1, SEEK_END);
// add the trailing comma
fwrite($handle, ',', 1);
// add the new json string
fwrite($handle, json_encode($data) . ']');
}
else
{
// write the first event inside an array
fwrite($handle, json_encode(array($data)));
}
// close the handle on the file
fclose($handle);
}
}
//// make date time file------ //// make date time file------
@ -249,14 +288,18 @@ function callAPI($url){
map.addLayer(Stamen_Toner); map.addLayer(Stamen_Toner);
//for each scooter in $scooters array, request status and construct marker //the magic: for each scooter in $scooters array, request status and construct marker
<?php <?php
$filename = "./latestData.json"; $filename = "./latestData.json"; //latest locations, 1 entry per scooter
$filename_history = "./historicalData.json"; //historical locations
// check how old the latest json is // check how old the latest json is
if (time()-filemtime($filename) > 60) { if (time()-filemtime($filename) > 60) { //if older than 60 seconds
$arrayToEcho = saveLatestJSON(); $arrayToEcho = saveLatestJSON();
//append to historical json
appendJSON($filename_history, $arrayToEcho);
$latestData = json_encode($arrayToEcho, JSON_FORCE_OBJECT); // force object accepts 0 as a key for the array and not NULL $latestData = json_encode($arrayToEcho, JSON_FORCE_OBJECT); // force object accepts 0 as a key for the array and not NULL
file_put_contents($filename, $latestData, LOCK_EX); file_put_contents($filename, $latestData, LOCK_EX);

1
website/historicalData.json Executable file
View File

@ -0,0 +1 @@
[[{"ID":0,"lastPos":"52.57619, 13.358061","lastLocationUpdate":"2020-10-09T08:00:29Z","isRentable":true,"state":"ACTIVE","name":"artist name 0","title":"title 0","desc":"desciption 0"},{"ID":1,"lastPos":"52.55619, 13.358061","lastLocationUpdate":"2020-10-09T08:00:29Z","isRentable":true,"state":"ACTIVE","name":"artist name 1","title":"title 1","desc":"desciption 1"},{"ID":2,"lastPos":"52.53619, 13.358061","lastLocationUpdate":"2020-10-09T08:00:29Z","isRentable":true,"state":"ACTIVE","name":"artist name 2","title":"title 2","desc":"desciption 2"}]]