diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..8c9fcfe9f81e081ae39aed8de2fe28c88fb4a357 Binary files /dev/null and b/.DS_Store differ diff --git a/GW-V2/ttn_webhook.php b/GW-V2/ttn_webhook.php new file mode 100644 index 0000000000000000000000000000000000000000..8fe6363bcc15a2521e1dd42edd1fb4de3239efa0 --- /dev/null +++ b/GW-V2/ttn_webhook.php @@ -0,0 +1,50 @@ +<?php +// Récupération des données envoyées par TTN +$json = file_get_contents('php://input'); +$data = json_decode($json); + +// Affichage des données reçues pour debug +echo "Données reçues :\n"; +print_r($data); +echo "\n"; + +// Vérification de la structure des données reçues +if (!isset($data) || !isset($data->analog_in_1) || !isset($data->analog_in_2)) { + echo "Erreur : Données invalides. Vérifiez que les champs analog_in_1 et analog_in_2 sont présents."; + return; +} + +// Création des données à envoyer vers Sensor Community +$post = new stdClass(); +$post->sensordatavalues = [ + (object)[ + "value_type" => "P1", + "value" => $data->analog_in_1 + ], + (object)[ + "value_type" => "P2", + "value" => $data->analog_in_2 + ] +]; + +// Initialisation de la requête cURL +$ch = curl_init("http://api.sensor.community/v1/push-sensor-data/"); +curl_setopt($ch, CURLOPT_POST, 1); +curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); +curl_setopt($ch, CURLOPT_HTTPHEADER, array( + "X-Sensor: esp32-900881266", // Valeur fixe + "X-PIN: 1", + "Content-Type: application/json", + "User-Agent: ttn-forwarder/1.0" +)); +curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post)); + +// Exécution de la requête et gestion des erreurs +$output = curl_exec($ch); +if ($output === false) { + echo "Erreur cURL : " . curl_error($ch); +} else { + echo "Réponse de Sensor Community : " . $output; +} +curl_close($ch); +?>