+ Antworten
Ergebnis 1 bis 6 von 6
  1. #1
    Registriert seit
    May 2017
    Beiträge
    123

    Standard Status im Webfront setzen (String to Boolean) klappt nicht.

    Hallo,

    ich hätte da mal ein Problemchen.
    Ich habe ein Script, mit dem ich über ebusd meine Wärmepumpe auslese (und mit anderen Scripten dann auch steuern kann).

    Hier ein Ausschnitt aus dem Lese-Script, mit dem ich den Status der Warmwasser-Zirkulation auslesen kann.
    Das Ergebnis ist "on" oder off" und damit ein String. Ich denke ich muss das konvertieren, aber es klappt nicht.

    Die Boolean Variable 42485 soll den Status (An/aus) auf dem WebFront visualisieren.

    PHP-Code:
        $Zirkulationspumpe 42485;
        
    $Zirkulationspumpe shell_exec('ebusctl --port=8889 r -f CirPump');

        if (
    $Zirkulationspumpe == "on") { 
        
    SetValueBoolean(42485true);
        }
        else 
    SetValueBoolean(42485false);
        
    IPS_Sleep(1000); 
    Wäre cool, wenn mir hier jemand weiterhelfen könnte.

  2. #2
    Registriert seit
    Mar 2008
    Ort
    Ruesselsheim
    Beiträge
    3,591

    Hallo
    Als erstes ist mir unklar warum in der ersten Zeile die Variable auf "42485" gesetzt wird und
    dann in der naechsten Zeile ueberschrieben wird. Was solls.
    Bist du sicher , dass das "shell_exec" ein "on" zurueckliefert ?
    Kein Leerzeichen oder aehnliches mit dabei ?
    Wird immer auf FALSE gesetzt ?
    Schreib mal ein IPS_Logmessage(__FILE__,"[".$Zirkulationspumpe."]");
    um festzustellen ob Leerzeichen davor oder danach sind.
    Wenn ja mal ein "TRIM" einfuegen.

  3. #3
    Registriert seit
    Oct 2014
    Beiträge
    619

    Wenn über var_dump on und off kommt, könnte dies helfen, habe ich jetzt aber nicht getestet.

    Code:
    filter_var('on', FILTER_VALIDATE_BOOLEAN);    // true
    Code:
     filter_var('off', FILTER_VALIDATE_BOOLEAN);      // false

    Gesendet von iPhone mit Tapatalk

  4. #4
    Registriert seit
    May 2017
    Beiträge
    123

    Zitat Zitat von 1007 Beitrag anzeigen
    Hallo
    Als erstes ist mir unklar warum in der ersten Zeile die Variable auf "42485" gesetzt wird und
    dann in der naechsten Zeile ueberschrieben wird. Was solls.
    Bist du sicher , dass das "shell_exec" ein "on" zurueckliefert ?
    Kein Leerzeichen oder aehnliches mit dabei ?
    Wird immer auf FALSE gesetzt ?
    Schreib mal ein IPS_Logmessage(__FILE__,"[".$Zirkulationspumpe."]");
    um festzustellen ob Leerzeichen davor oder danach sind.
    Wenn ja mal ein "TRIM" einfuegen.
    Hallo,

    bzgl. setzen der Variable auf einen Wert - ich dachte bis gerade das ich die ID der Variable angeben muss. Mea culpa. Hatte ich irgendwo mal so gelesen.

    Die Rückgabewerte der shell_exec sind entweder "on" oder "off".
    Ich habe jetzt im Logfile (Danke für den Tipp) rausgefunden, das aktuell hinter "off" zahlreiche Leerzeichen kommen".
    Das habe ich jetzt mal mit TRIM entfernt, jetzt bekomme ich nur noch off in eckigen Klammern zurück. Werde das mal beobachten da die Zirkulation aktuell nicht läuft.

  5. #5
    Registriert seit
    Mar 2008
    Ort
    Ruesselsheim
    Beiträge
    3,591

    Zitat Zitat von Peter1984 Beitrag anzeigen
    Hallo,

    bzgl. setzen der Variable auf einen Wert - ich dachte bis gerade das ich die ID der Variable angeben muss. Mea culpa. Hatte ich irgendwo mal so gelesen.

    Die Rückgabewerte der shell_exec sind entweder "on" oder "off".
    Ich habe jetzt im Logfile (Danke für den Tipp) rausgefunden, das aktuell hinter "off" zahlreiche Leerzeichen kommen".
    Das habe ich jetzt mal mit TRIM entfernt, jetzt bekomme ich nur noch off in eckigen Klammern zurück. Werde das mal beobachten da die Zirkulation aktuell nicht läuft.
    Die eckigen Klammern kommen ja von dem Ips_logmessage damit man sehen kann was vor oder danach ist. Sollte so funktionieren.



    Gesendet von iPad mit Tapatalk

  6. #6
    Registriert seit
    May 2017
    Beiträge
    123

    Funktioniert jetzt auch, herzlichen Dank!

Ähnliche Themen

  1. String mit Suffix über Webfront beschreiben geht nicht mehr !
    Von KahmannFrilla im Forum Allgemeine Diskussion
    Antworten: 4
    Letzter Beitrag: 13.09.18, 06:35
  2. Login ins Webfront klappt nicht (mehr)
    Von APieroth im Forum WebFront
    Antworten: 5
    Letzter Beitrag: 05.08.13, 11:46
  3. Alle Boolean Variablen einer Kategorie setzen
    Von Lega im Forum Skripte, PHP, SQL
    Antworten: 2
    Letzter Beitrag: 08.02.13, 18:16
  4. Notifications - Senden vom Boolean Status mit Namen der sendenden Variablen
    Von mac106 im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 1
    Letzter Beitrag: 20.12.12, 00:01
  5. Boolean als Status anzeigen
    Von sn00py im Forum WebFront
    Antworten: 2
    Letzter Beitrag: 27.06.11, 13:48