Beiträge von Wiesel1988

    So, nach ein bisschen hin und her probieren mit den Datentypen der Variablen klappt es jetzt.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Viel Spaß beim nutzen,wenn es jemand braucht, ich werd mir die Variable auf die Mediola Oberfläche legen um einen Überblick zu haben, wioe lange die Pumpe noch läuft, falls meine Frau diese angemacht hat.

    Hallo zusammen,

    über eure Anleitung den Shelly in die CCU einzufügen bin ich bei euch gelandet und ihr habt mir bei einigen Dingen auch schon geholfen, deshalb hoffe ich ihr könnt mir hier auch helfen.

    Ich habe mir über das Wochenende einen Kopf gemacht, wie ich innerhalb der CCU erfahren kann, wie lang der Timer des Shelly noch läuft. Über eine Dokumentation der http Request bin ich auf den Befehl relay/0?

    Mit dem Befehl bekommt man unter anderem die verbleibende Timerdauer in Sekunden angezeigt.

    Daher habe ich mir folgendes Script geschrieben:

    Soweit funktioniert auch alles, nur was er absolut nicht macht ist eine Multiplikation der Variable sec100 mit 6 um wieder auf die genauen Sekunden zu kommen. Ich meine das eine Integer ganz normal multipliziert werden sollte aber es passiert leider nichts.

    Ja ich weiß, dass ich durch dieses vorgehen ein Delta von 6 Sekunden habe aber bei einer Aktualisierung von 30s ist das vernachlässigbar.

    Es geht bestimmt auch kürzer mit dem Script aber als "Neuling" bin ich schon glücklich, dass ich soweit gekommen bin.

    Genau die Tabelle habe ich gestern Abend gesucht, weil beim stöbern bin ich schon mal drüber gestolpert.

    66er

    Habe eben mal den Code angepasst:

    Code
    var url1 = "http://192.168.178.54/settings/relay/0?turn~3don~26timer~3d";
    var Zeit = dom.GetObject("Laufzeit_Poolpumpe").Value();
    var Zeit1 = Zeit * 60;
    
    var url = url1 # Zeit1;
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '"#url#"'");
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_RUNS").State(1);

    Da passiert nur leider nichts.

    Habe jetzt noch nen anderes Problem, dass ich den Shelly nach einmaligen setzen des Timers nicht mehr in den Dauerlauf bekomme.

    Gibt es einen Befehl, der den Timer wieder deaktiviert?

    Jo, habe mir aber eben die Syntax von dem Befehl angeschaut, der ist anders als der im Lexikon abgesehen von der HM synatx mit ~3d usw...

    Mal zusammenfassend, was ich jetzt noch rausgefunden habe:

    Die Änderung der Relais Nummerierung hat leider nichts gebracht.

    Was allerdings geht, ist die Zeit direkt über den http Befehl zu senden. Allerdings wird dann nur der Timer gesetzt und nicht eingeschaltet, den Einschaltbefehl muss man hinterher senden, ganz wie bei Homematic.

    Ich schaffe es aber trotzdem nicht den Befehl per cuxd an den Shelly zu senden.


    Aktualisierung:

    nennt mich do...oder so aber es läuft jetzt.

    Man muss nach dem Auto off Befehl noch einen Einschaltbefehl hinter jagen, ich hatte es so verstanden, dass das automatisch mit dem Befehl passiert.

    Habt tausend Dank, dass ihr mir bei meinen Gedankengängen geholfen habt. 66er und neo-v

    Hier mal die funktionierende Konfiguration:

    Code
    var url1 = "http://192.168.178.54/settings/relay/0?auto_off~3d";
    var Zeit = dom.GetObject("Laufzeit_Poolpumpe").Value();
    var Zeit1 = Zeit * 60;
    
    var url = url1 # Zeit1;
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '"#url#"'");
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_RUNS").State(1);

    Und das dazugehörige Programm:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Hallo zusammen,

    ich habe mir mal erlaubt, das obige Skript etwas abzuändern, um die Zeit über ein Variable einzufügen:

    Code
    var url1 = "http://192.168.178.54/settings/relay/1?auto_off~3d";
    var Zeit = dom.GetObject("Laufzeit_Poolpumpe").Value();
    var Zeit1 = Zeit * 60;
    
    var url = url1 # Zeit1;
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '"#url#"'");
    
    dom.GetObject("CUxD.CUX2801001:1.CMD_RUNS").State(1);

    Die URL wird richtig beschrieben und auch das Programm wird bei einem Tastendruck der virtuellen Fernbedienung ausgeführt, nur kommt am Shelly nichts an.

    Hier mal ein Auszug aus dem Systemprotokoll

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Mir sagt das leider nichts, bin was CuXd und Skripte angeht noch Grünschnabel.

    Der Shelly 1PM lässt sich aber soweit steuern und auch die Leistung wird an eine Variable übertragen.

    Danke euch schon mal.