Page 1 sur 1

Lire données envoyée par Webhook sur The Thing Network

Posté : 26 mars 2024, 15:43
par RemsTV
J'aimerais récupérer les données envoyées depuis mon cloud The Thing Network en utilisant une API et un webhook, puis les afficher.
Voici la configuration pour envoyer le JSON, mais au niveau du codage, je bloque. J'ai essayé..."

file_get_contents('php://input')


JSON envoyée de mon cloud :

{
"uplink_message": {
"decoded_payload": {
"humidite_ext": 41.08,
"pression_ext": 986.25,
"temperature_couvin": 23,
"temperature_ext": 23.03
}
}
}

Codage :
<?php

namespace App\Controllers\Api;

use CodeIgniter\RESTful\ResourceController;
use App\Models\Mliresdonnees;

class LiresDonnees extends ResourceController
{
    protected $modelName = 'App\Models\Mliresdonnees'; // Correction du nom du modèle
    protected $model;
    protected $format = 'json';

    // Fonction pour récupérer les données
    public function index()
    {
    }
}

Re: Lire données envoyée par Webhook sur The Thing Network

Posté : 26 mars 2024, 21:49
par two3d
Tu récupère les données reçues :
$donnees = file_get_contents('php://input');

// Vérifier si des données ont été reçues
if(empty($donnees))
	exit('Aucune donnée reçue.');

// Traiter les données du webhook
$donnees = json_decode($donnees);

Re: Lire données envoyée par Webhook sur The Thing Network

Posté : 27 mars 2024, 09:09
par RemsTV
Après modification du codage
J'obtiens une page blanche avec rien dessus en utilisant posteman je n'obtiens aucune donnée reçue.
Dans la console de mon cloud The Thing Network, je n'ai plus d'erreur.


Code :

Code : Tout sélectionner

<?php namespace App\Controllers\Api; use CodeIgniter\RESTful\ResourceController; use App\Models\Mdonnee; class InsererDonnees extends ResourceController { protected $modelName = 'App\Models\Mdonnee'; protected $model; protected $format = 'json'; public function index() { } public function create() { $donnees = file_get_contents('php://input'); header('content-type:application/json'); // Traiter les données du webhook $donnees = json_decode($donnees); // Vérifier si des données ont été reçues if (empty($donnees)) exit('Aucune donnée reçue.'); } }

Re: Lire données envoyée par Webhook sur The Thing Network

Posté : 27 mars 2024, 10:24
par two3d
Essayes de récupérer les données avec un code simple puis ensuite l’implémenter dans une classe.

https://www.thethingsindustries.com/doc ... /webhooks/