+ Antworten
Seite 2 von 2 ErsteErste 1 2
Ergebnis 11 bis 19 von 19
  1. #11
    Registriert seit
    Feb 2017
    Beiträge
    2,140

    $_POST ist ein Array, also musst du gar nichts JSON decodieren, sondern kannst direkt darauf zugreifen. Also in deinem Fall beispielsweise

    PHP-Code:
    $Nachricht $_POST['message'];
    $Name $_POST['event']['name']; 

  2. #12
    Registriert seit
    Feb 2018
    Beiträge
    109

    Das wäre ja einfach. Aber leider kommt die Fehlermeldung "Undefined index: message in ...". Das wird als Antwort geschickt, wenn ich den HTTP-Request abschicke.

  3. #13
    Registriert seit
    Feb 2018
    Beiträge
    109

    Zitat Zitat von Ubari Beitrag anzeigen
    Ich habe jetzt nochmal den Sender überprüft, da wird etwas ausgesendet. Mit HTTP_POST wird folgendes übermittelt:
    Code:
    {
      "id": 52799,
      "message": "Nachricht",
      "startDate": "2020-09-22T07:31:44.948Z",
      "event": {
        "id": 43988,
        "name": "Name",
        "startDate": "2020-09-22T07:31:44.948Z"
      },
      "organizationID": 5714,
      "Resources": {
        "scenes": [8467],
        "users": [
          14402]
      },
      "creatorName": "Admin",
      "creatorID": 11604,
      "creatorType": "admin"
    }
    Mit meinen rudimentären Erfahrungen zu JSON würde ich z.B.:
    PHP-Code:
    <?php

    //???wie empfange ich aus dem Webhook den Datensatz und schreibe ihn in $data??? oder anders???

    $json json_decode($data);
    $Nachricht $json->'message';
    $Name = ($json->'event'->'name';
    setvaluestring(23205$Nachricht);
    setvaluestring(29801$Name);
    Die Frage ist, ob das so richtig ist und vorallem wie ich den Datensatz empfange, um ihn weiter zu verarbeiten?
    *nach oben schieb*
    Die Frage ist , wie ich die Daten in IPS empfangen und weiterverarbeiten kann?

  4. #14
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    10,561

    Und die Antwort hast du schon bekommen.
    Benutze das Script aus der Doku, dann siehst du welche Daten in welcher Variable liegen.
    PHP-Code:
    IPS_LogMessage("WebHook GET"print_r($_GETtrue)); IPS_LogMessage("WebHook POST"print_r($_POSTtrue)); IPS_LogMessage("WebHook IPS"print_r($_IPStrue)); IPS_LogMessage("WebHook RAW"file_get_contents("php://input")); 
    Michael
    on Win10VM (ESXi): I7, 32GB RAM, HW-RAID5, 2xSat | HW: pivccu + ca.130 Geräte (ca.550ch), EM1000, CUL, 1Wire, FritzBox Cable, Android Phone + Tablet, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, RoundCube, Win2016 Ess., MediaPortal, Kodi

  5. #15
    Registriert seit
    Feb 2018
    Beiträge
    109

    In Webhook POST steht:
    Code:
    Array
    (
        [{
    __"id":_52799,
    __"message":_"Nachricht",
    __"startDate":_"2020-09-22T07:31:44_948Z",
    __"event":_{
    ____"id":_43988,
    ____"name":_"Name",
    ____"startDate":_"2020-09-22T07:31:44_948Z"
    __},
    __"organizationID":_5714,
    __"Resources":_{
    ____"scenes":_] => Array
            (
                [8467] => 
            )
    
    )

  6. #16
    Registriert seit
    Feb 2018
    Beiträge
    109

    Es scheint beim Sender noch etwas falsch zu sein. Denn die Daten stehen nur im RAW, das Array von POST ist leer und somit gibt es keine Variablen. Da muss ich mich erstmal mit dem Sender auseinander setzen.

  7. #17
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    10,561

    RAW ist nicht unbedingt verkehrt, aber du Ausgabe oben passt irgendwie nicht.
    Michael
    on Win10VM (ESXi): I7, 32GB RAM, HW-RAID5, 2xSat | HW: pivccu + ca.130 Geräte (ca.550ch), EM1000, CUL, 1Wire, FritzBox Cable, Android Phone + Tablet, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, RoundCube, Win2016 Ess., MediaPortal, Kodi

  8. #18
    Registriert seit
    Feb 2018
    Beiträge
    109

    Ja, die Ausgabe passt wahrscheinlich nicht weil ich da ein bisschen was durcheinander gebracht habe. Ich hatte die RAW-Ausgabe zur Simulation über webhook.site nochmal ausgesendet. Da kommt dieser Quatsch zustande.

    Vom eigentlichen Sender kommt in RAW folgendes an:
    Code:
    {
      "id": 52799,
      "message": "Nachricht",
      "startDate": "2020-09-22T07:31:44.948Z",
      "event": {
        "id": 43988,
        "name": "Name",
        "startDate": "2020-09-22T07:31:44.948Z"
      },
      "organizationID": 5714,
      "Resources": {
        "scenes": [8467],
        "users": [
          14402]
      },
      "creatorName": "Admin",
      "creatorID": 11604,
      "creatorType": "admin"
    }
    Wie kann man das weiterverarbeiten?
    Ich bleibe trotzdem noch dran, warum beim Sender nichts in dem POST-Array ausgesendet wird.

  9. #19
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    10,561

    Weil es dir keine Daten in der Formatierung eines Formulars sendet, sondern einfach einen String.
    Also nimm das aus RAW und mit json_decode kommst du dann an dein Ziel
    Michael
    on Win10VM (ESXi): I7, 32GB RAM, HW-RAID5, 2xSat | HW: pivccu + ca.130 Geräte (ca.550ch), EM1000, CUL, 1Wire, FritzBox Cable, Android Phone + Tablet, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, RoundCube, Win2016 Ess., MediaPortal, Kodi

Ähnliche Themen

  1. KNX Gruppenadresse http Aufruf
    Von Andreas83 im Forum Skripte, PHP, SQL
    Antworten: 3
    Letzter Beitrag: 27.12.19, 00:00
  2. Antworten: 4
    Letzter Beitrag: 27.12.18, 22:30
  3. Problem: Aufruf einer public function aus ApplyChanges() Funktion (Modulerstellung)
    Von ubittner im Forum Entwicklung mit PHP-SDK/Delphi-SDK
    Antworten: 7
    Letzter Beitrag: 22.10.17, 16:09
  4. Antworten: 1
    Letzter Beitrag: 21.10.17, 17:58
  5. HTTP Aufruf in einem Skript
    Von theoldphilip im Forum Skripte, PHP, SQL
    Antworten: 5
    Letzter Beitrag: 03.07.16, 12:29