Skip to content

Skripten / Logik

Hilfe zu JavaScript, Blockly, TypeScript, Node-RED, Scenes und text2command

16.4k Themen 211.7k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    Ro75R
    Ich habe das Skript aktualisiert. Neuer Stand: 1.0.17. Aktueller Code, Beispiel, Archiv, Code aus meiner Umgebung und Parameterbeschreibung >> ALLES in Post 1. Ro75.
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    Ro75R
    Das "Blinken" ist alles schön und gut. Allerdings, egal welche Variante genutzt wird (habe alle selbst mal probiert und genutzt) - gibt es einen Haken. Alle Varianten sind sehr ressourcenintensiv - sprich die CPU-Last steigt (schon bei einem Blinken) um einiges. Ro75.
  • Hilfe für Skripterstellung mit Node-RED

    952 13k
    952 Themen
    13k Beiträge
    HomoranH
    @fiddle sagte in [Gelöst]: Adapter per {Node Red | JS} (de)aktivieren: Ok, nicht als "Wert" schreiben, sondern als "Befehl". Dann scheint ihn das zu beeindrucken. du zeigst ja nichts, aber es geht mit true/false [image: 1763416200051-screenshot_20251117-224854_firefox.jpg] gesteuert über eigenen DP vom typ Bool
  • Variable in Blockly täglich (zur Uhreit) (zurück)setzen

    Verschoben
    4
    2
    0 Stimmen
    4 Beiträge
    687 Aufrufe
    D
    Leider bin ich mir gar nicht sicher ob die Variabel zurück gesetzt wird. Denn auch bei einer weiteren Variante mit einem Zeitbaustein verhält es sich gleich. Siehe Variante: [image: 8358_geht_nicht_3.png] Soll heißen: Immer wenn ich das Skript so beginne (Siehe Köpfe der Blockly's) läuft das Scrypt gar nicht mehr. Auf eine Bewegung des Tür Sensors wird also nicht mehr reagiert. Habe ich die Blöcke denn richtig kombiniert? Kann da mal Jemand drüber sehen? Nicht das der Fehler noch ganz woanders liegt.
  • Von bis Zeitraum

    Verschoben
    3
    1
    0 Stimmen
    3 Beiträge
    372 Aufrufe
    F
    Hallo zusammen, Ich komme jetzt noch mal drauf zurück und möchte gerne das Script erweitern. Ein Automatisches Ausschalten nach einer Bestimmten Zeit habe ich schon mal rangehängt. Gedanke ist folgender: Ist diese Zeit kurz vorm Ablauf der Zeit soll Alexa fragen ob die Leuchten noch aktiv bleiben sollen oder wenn keine Antwort kommt oder ein Nein ausgehen. ist so eine abfrage den schon möglich bzw. Überhaupt möglich? Ich habe leider nur Grundkenntnisse vom Programmieren und kann mir gut vor stellen das es mit bestimmten Variablen oder einfachen Abfragen möglich ist bzw. ich weiß nicht ob es möglich ist mit Alexa solche Abfragen zumachen. Gruß Fischhai
  • [geloest] Probleme mit cacheSelectorState functionsfilter

    Verschoben
    8
    1
    0 Stimmen
    8 Beiträge
    1k Aufrufe
    F
    Dachte nur, da, wenn ich etwas geändert habe (Gewerke oder ids) hat die Abfrage immer noch die alten Werte angezeigt
  • Zeitsteuerung mit Skriptdauer in Blocky

    Verschoben
    4
    1
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    J
    Kann man, muss aber nicht. Hatte mich eher auf das im Trigger konzentriert und das kann man so machen.
  • *GELÖST* Zeitschaltuhr mit Anwesenheit

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    paul53P
    @SoerenKaiser99: warum dein "und" Block z.B. in dem Falls Objekt nach 12 Uhr anders ausschaut als meiner? ` Mit der rechten Maustaste über dem "und" Block: "externe Eingänge" auswählen. @SoerenKaiser99: gelöst ` Markiere es bitte auch im Betreff des ersten Beitrags.
  • *GELÖST* Astro schaltet zu falschen Zeiten

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    C
    Habe mir jetzt den ntp gezogen, meine Einstellungen im Pi nochmals geprüft und neu gesetzt, im JS-Adapter meine Geokoordinaten hinterlegt und jetzt funktioniert es, danke :)
  • Im Zeitplan (ChronJob) wirken Zeiten öfter und undefiniert.

    Verschoben
    3
    1
    0 Stimmen
    3 Beiträge
    424 Aufrufe
    D
    Stimmt den Zeitblock hatte ich noch vergessen <emoji seq="1f62e">😮</emoji><emoji seq="1f643">🙃</emoji> Sorry, das versteh ich nicht Wie sieht so eine Block Kombi aus In den Morgenstunden hab ich drei verschiedene Bereiche. In denen verschiedene Musik zu verschiedenen Lautstärken laufen soll. In den zwischen Zeiten soll nichts passieren fals z. B. der Kater durchläuft. Auf meine. Methode klingt das nach Chaos Gibt es keine von bis Funktion die eine genaue Zeitspanne definiert?
  • Node Red Chart erstellen mit zwei Temperaturen

    Verschoben
    24
    1
    0 Stimmen
    24 Beiträge
    8k Aufrufe
    G
    @liv-in-sky: kann ich mir nicht erklären - vielleicht haben wir verschiedene versionen von node-red. manchmal werden die nodes ge-up-datet. welche adapter version von node-red benutzt du ? ` Und schon kommt mir eine Idee, aber es erklärt sich mir dann dennoch nicht. :lol: Im Moment benutze ich nur noch die Node-Red Standalone Version 19.1. Mit dieser Version hat sich so einiges verändert: https://nodered.org/blog/2018/08/14/ver … 9-released Interessant finde ich die Möglichkeit mit Evironment variables arbeiten zu können. Aber leider habe ich ich noch keinen blassen Schimmer wie das in der Praxis zu händeln ist. :o Ob der Node Red Adapter für ioBroker auch schon auf den neuesten Stand gebracht wurde weiß ich nicht. Schaut man sich den letzten ChangeLog an, so scheint er bei der Vers.18.7 zu stehen. __Changelog 1.4.0 (2017-08-06) (bluefox) use newer version of node-red 0.18.7 (bluefox) Admin3 dialog implemented (bluefox) RAM settings were added (bluefox) add credentialSecret option__ https://github.com/ioBroker/ioBroker.node-red
  • *GELÖST* Probleme mit An-&Abwesenheit mit zwei Handy-Erkennungen

    Verschoben
    17
    2
    0 Stimmen
    17 Beiträge
    3k Aufrufe
    C
    Es funktioniert, danke an alle :)
  • Fritzbox AB ein- und ausschalten.

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    257 Aufrufe
    Niemand hat geantwortet
  • Gerät zur Uhrzeit schalten

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    353 Aufrufe
    D
    okay trotzdem danke
  • [gelöst] View-Wechsel mit Blockly

    Verschoben
    4
    2
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    nik82N
    Hallo, bei mir funktioniert der erste View-Wechsel nicht. Die HTTP Seite wechselt, aber die Seite bleibt weiß, wenn ich dann nochmal einen Viewwechsel mit den gleichen Daten mache, dann sehe ich die View erst. Habe mich jetzt erstmal damit beholfen: [image: 6616_view.jpg] Liegt auf jedenfall nicht an Blockly, denn auch wenn ich es per Javascript mache, bleibt erstmal die Seite weiß: setState('vis.0.control.instance', 'FFFFFFFF'); setState('vis.0.control.data', '3_OG'); setState('vis.0.control.command', 'changeView'); Jemand eine Idee an was das liegen kann?
  • Alexa-NodeRed-Script

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    G
    Problem gelöst :lol: viewtopic.php?f=32&t=16257&p=170797#p170797
  • NodeRed Scriptstart via Trigger funzt net

    Verschoben
    2
    7
    0 Stimmen
    2 Beiträge
    2k Aufrufe
    G
    Ok Leute. Hab das Kleingedruckte nicht umgesetzt. Für alle Nachbauer: [image: 1935_s6.png] In der "Replace with" Zeile, hab ich den Wert auf "string" gelassen. Das hat gereicht um nicht zu reagieren. Hier müsst Ihr den Wert in der Tabelle auf "Boolean" ändern. Problem gelöst :lol:
  • [Gelöst] On() in schleife

    Verschoben
    14
    0 Stimmen
    14 Beiträge
    956 Aufrufe
    M
    @AlCalzone: Wenn ich das beim Lesen richtig gesehen habe, bringt let dich hier weiter. var ist nicht blockbezogen, d.h. es macht keinen Unterschied const tSrc = "sonoff.0.Aqua" + a + ".POWER" + b; const tTrg = "Aqua.Aqua" + a + ".POWER" + b ".State" ; ` Das funktioniert einwandfrei! Letztendlich aus var -> const. Vielen Dank!
  • Grad Celsius in Fahrenheit umrechen

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    373 Aufrufe
    Niemand hat geantwortet
  • Grundsätzliche Frage zu 'Löschen falls läuft'

    Verschoben
    1
    1
    0 Stimmen
    1 Beiträge
    384 Aufrufe
    Niemand hat geantwortet
  • Probleme mit cacheSelector

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    569 Aufrufe
    F
    So wird bei mir zwar ein State von Radar gefunden, es sollten aber 4 sein(Radar.0 und Radar.1 + jeweils 2 Clients) Sehr seltsam Hier mal zwei Screenshots [image: 706042e3948f69de77cf0b31c1e839dd.png]~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... e839dd.png">https://uploads.tapatalk-cdn.com/20180820/706042e3948f69de77cf0b31c1e839dd.png</link_text>" /> Hier die States. [image: 5bac2b9ca60a2e17166fc851e107a1c1.png]~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... 07a1c1.png">https://uploads.tapatalk-cdn.com/20180820/5bac2b9ca60a2e17166fc851e107a1c1.png</link_text>" /> Es wir aber nur einer gefunden.~~~~
  • Geräte der Node Red Flows werden bei Alexa.Amazon.de nicht gefunden

    Verschoben
    22
    0 Stimmen
    22 Beiträge
    3k Aufrufe
    T
    Bist du mit deinem Problem weiter gekommen? Evtl probiert Node Red separat zu installieren, ohne den ioBroker Adapter?
  • [Gelöst] Verständnisfrage Datenpunkt für setTimeout nutzen?

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    250 Aufrufe
    M
    @apollon77: Best practice ist es die timeout ids in dem Skript Lokal vorzuhalten zb in einem array oder Objekt wo sie gesetzt werden. ` Das macht Sinn! In Meinem Beispiel hätte ich erwartet das beim 2. Aufruf "StartTimer(0, false);" der Bereich "log("CLEAR " + Device[id][0]);" aufgerufen wird da ich beim ersten Aufruf den Timer dem Array Device[1][1] zugeordnet habe. Das geschieht aber nicht. Vermutlich habe ich da noch nen Hänger. Ich bin noch nicht so fit in Javascript, habe ich da was übersehen? Ich muss da mal mehr über die Gültigkeitsbereiche von Javascript lesen :-) Malc var Device = []; Device[0] = ['Device1', null, 0]; Device[1] = ['Device2', null, 0]; StartTimer(0, true); StartTimer(0, false); function StartTimer(id, on) { var d = Device[id][0]; var t = Device[id][1]; var Duration = 2; if (on) { log("Start TImer für " +d ); t = setTimeout(function (){ log("Expired " + d ); clearTimeout(t); t = null; }, Duration * 5 * 1000); } else { log("OFF " + d); if(t) { log("CLEAR " + d); clearTimeout(t); } } Edit: Wenn ich var t = Device[id][1]; (war nur wegen der Lesbarkeit) weglasse und direkt auf das Arrayelement gehe klappt es. Die Deklaration var t = De… ist wohl kein Zeiger, da scheint es doch im Javascript Eigenarten zu geben. var Device = []; Device[0] = ['Device1', null, 0]; Device[1] = ['Device2', null, 0]; Device[2] = ['Device3', null, 0]; StartTimer(0, true); StartTimer(0, false); function StartTimer(id, on) { // log(Device[id][0]); //var t = Device[id][1]; //var t = x; var Duration = 2; if (on) { Device[id][1] = setTimeout(function (){ log("Expired " + Device[id][0]); clearTimeout(Device[id][1]); Device[id][1] = null; }, Duration * 5 * 1000); } else { log("OFF " + Device[id][0]); if(Device[id][1]) { log("CLEAR " + Device[id][0]); clearTimeout(Device[id][1]); } } }

620

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge