Bonjour,
Je suis novice en la matière,
Ci-joint le PHP de mon capteur de température qui fonctionne très bien avec le réseau Lorawan, je précise qu’il s’agit routage.
J’ai un capteur ultrason LoraWan qui 'doit mesurer" la hauteur d’eau se situant à une hauteur de 2m et je désire que ce même script relève la hauteur d’eau et ça ne fonctionne pas.
Dans l’attente,
Merci
Serge

<?php
/* ** receive data from telemesure.net service
/

define("MODE", "POST"); //use GET, POST or EXTENDED
define("FILENAME", "log/clientrawobjenious.txt"); //name of the file

if(MODE === "GET")
{
$id = $_GET["id"]; // transmitter ID
$data = $_GET["data"]; // payload
file_put_contents(FILENAME, "$id,$data\n", FILE_APPEND | LOCK_EX);

} else if ( MODE === "POST"){
$id = $_POST["id"]; // transmitter ID
$data = $_POST["data"]; // payload
$data = hexdec(mb_strimwidth($data, 2, 4, ""))/10;
$id = date("Y-m-d H:i:s");
if($data > 6000){$data = $data-6553.6;$data = round($data, 1);}
file_put_contents(FILENAME, "$id, $data\n", FILE_APPEND | LOCK_EX);

} else if ( MODE === "EXTENDED") {
$id = $_POST["id"]; // transmitter ID
$data = $_POST["data"]; // payload
$node_ref = $_POST["node_ref"]; // id of the receiver
$link_quality= $_POST["link_quality"]; // level of the link quality
$rssi= $_POST["rssi"]; // intensity of signal
$lat= $_POST["lat"]; // geo latitude
$lng= $_POST["lng"]; // geo longitude
file_put_contents(FILENAME, "$id,$data\n", FILE_APPEND | LOCK_EX);
file_put_contents(FILENAME, ">>FROM:$node_ref LinkQuality:$link_quality Rssi:$rssi lat=$lat lng=$lng\n", FILE_APPEND | LOCK_EX);
}

?>

2 réponses


Bonjour.
Pour commencer, ta condition est totalement inutile étant donné que tu définies ta constante MODE à POST, tu rentreras donc toujours dans la seconde condition.
Ensuite, tu dis que ça ne fonctionne pas, mais si tu ne nous dit si tu as une erreur qui t'es retourné ou non et si c'est le cas, il nous faut le message d'erreur, sinon je ne vois pas comment nous pourrions t'aider.
Il nous faut donc plus de précisions sur le fait que ça ne fonctionne pas.

Bonjour et merci 'Lartak",
Je n'ai pas de message d'erreur, j'ai constamment ces lignes :

Sun-05-19 13:03:38, 51.2
Sun-05-19 13:33:37, 51.2
Sun-05-19 14:03:37, 51.2
Sun-05-19 14:33:37, 51.2
Sun-05-19 15:03:38, 51.2
Sun-05-19 15:33:37, 51.2
Sun-05-19 16:03:37, 51.2
Sun-05-19 16:33:37, 51.2

Je précise que ces valeurs sont fausses car mon capteur se situant à 2 mètres doit par obligation indiquer 0cm car en phase d'essai.

Cordialement,
Serge