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
    P
    @ArnoD currentConsumptionW1 und currentConsumptionW2 gibt es nicht. Muss die Variable nicht vorher definiert werden? Wird auf jeden Fall nicht kompiliert. Edit1: Es ist oben bei dir falsch drin gestanden. jetzt funktioniert es. Edit2: Hier das Ergebnis der Ausgabe: [image: 1763910030947-58b6a068-b1c4-483f-8ae1-462e552a6b16-image.png]
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    H
    ... der Blick in das Protokoll brachte die "Erhellung"
  • 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
  • Node module state? Grundlagenfrage.

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    648 Aufrufe
    Niemand hat geantwortet
  • Popup und Counter bei Bewegung

    Verschoben
    15
    0 Stimmen
    15 Beiträge
    4k Aufrufe
    S
    Hallo Pix, bisher habe ich es leider noch nicht hinbekommen den View automatisch zu wechseln. Kannst du mir nochmal helfen? Vielleicht hilft mir das auch bei meinem anderen Fred :-) Gruß Sven Gesendet von iPhone mit Tapatalk
  • HM Aktoren in Reihenfolge schalten

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    647 Aufrufe
    paul53P
    @Marcolotti: …Elektroheizungen nacheinander jeweils z.B. für 15 Minuten einzuschalten. ` Wie man das nacheinander erfolgende Einschalten realisieren kann, kannst Du an http://forum.iobroker.de/viewtopic.php?f=21&t=2458&sid=3e38fb413418030b99a6f3f2df06c556&sid=3e38fb413418030b99a6f3f2df06c556#p21662 sehen. @Marcolotti: Vielleicht wäre es gar sinnvoller das HM Wandthermostat anzusprechen. Manche Zimmer erfordern vielleicht ein Heizen garnicht, weil die Temperatur stimmt. ` Der WT stellt selbst fest, ob Heizen erforderlich ist. Allerdings sollte die Elektroheizung nur eingeschaltet werden, wenn der Temperatur-Istwert um einen bestimmten Betrag (z.B. 0,3 K) unter dem Sollwert des betreffenden Raumes liegt. Damit dies möglichst häufig der Fall ist, macht es Sinn, den WT(Gruppen)-Sollwert aller betreffenden Räume um 0,5 K oder 1 K abzusenken. Der Vergleich für die Elektroheizung muss dann aber mit dem WT-Sollwert + Absenkwert erfolgen.
  • Best practice: Verzögert schalten

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    R
    die Random Funktion ist gut zu kennen, danke. Bei mir hat jeder Rolladen seine eigene Verzögerungszeit fix zugewiesen :)
  • [geloest] Loeschen von States -

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    3k Aufrufe
    blauholstenB
    @Bluefox: @blauholsten: Hi, das mit der each…. klappt! Danke. Aber deleteState klappt nicht. Es kommt immer ....cannot delete State "…..", not exists obwohl das State definitiv existiert. Versuch mal von github die neue Version. Hi, habe jetzt die Version 2.03 JS. Das mit delete klappt trotzdem nicht! Diesmal aber als Warnung und nicht als Error. Kann das jemand bestätigen?
  • Flow für WeatherUnderground

    Verschoben
    5
    1
    0 Stimmen
    5 Beiträge
    3k Aufrufe
    OstfrieseUnterwegsO
    Prima.
  • Rechnen mit 2 Objekten

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    P
    Tausend Dank euch allen! Ich hab es jetzt mit Schedule eingebunden Ist das so in Ordnung? createState("sdcard_root_free",0); function memBerechnen(){ var sdcard_root_free = getState("rpi.0.sdcard.sdcard_root_total"/*rpi.0.sdcard.sdcard_root_total*/).val - getState("rpi.0.sdcard.sdcard_root_used"/*rpi.0.sdcard.sdcard_root_used*/).val; log("sdcard_root_free: " + sdcard_root_free); setState("sdcard_root_free",sdcard_root_free); } schedule('*/10 * * * *', memBerechnen); 10-Min Rythmus reicht mir vollkommen! Gruß Johnny
  • Sayit-Script + Schedule

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    coyoteC
    Ich häng mich hier mal kurz rein. Also ich verstehe nicht ganz warum du am Ende setState ("sonos.0.root.192_168_178_218.favorites_set", 'Radio'); machst, du speicherst doch vorher den aktuellen Sender, da schreib ihn doch einfach wieder rein. Ich mach das z.B. so var idSonosfav = getState("sonos.0.root.192_168_66_40.favorites_set").val; var idSonosplay = getState ("sonos.0.root.192_168_66_40.state_simple").val; if (obj.newState.val ==="green" && idSonosplay === true) { setState (idSayIt, "Alles in Ordnung, der CO2 Gehalt liegt bei" + getState('hm-rega.0.1968').val); setTimeout(function () { setState ("sonos.0.root.192_168_66_40.favorites_set", idSonosfav); }, 9000); });
  • Variable Zeit/Schedule Funktion

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    4k Aufrufe
    coyoteC
    Ja ich werde mir dein Script nochmal genauer ansehen. Hab da noch nicht so den Durchblick ;-) Ich probiere einfach mal aus Gesendet von meinem Nexus 5X mit Tapatalk
  • Probleme seit update

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    N
    Ich würde erstmal node-red in der aktuellen Version drüber installierten. Unter Linux geht das mit den folgenden Kommandos cd /opt/iobroker/node_modules/iobroker.node-red iobroker stop node-red.0 npm install –unsafe-perm node-red iobroker start node-red.0 Gesendet von meinem SM-G900F mit Tapatalk
  • Länge/Breite in Javascript Adapter einbinden

    Verschoben
    25
    0 Stimmen
    25 Beiträge
    4k Aufrufe
    ruhr70R
    @Bluefox: Du hast es nicht ganz verstanden. Asynchron heißt: es wird als Auftrag gespeichert und irgendwann später ausgeführt. Und wenn es fertig ist, dann wird die ready Funktion ausgeführt. "Irgendwann später" heißt, wenn er nichts zu tun haben wird und bei dir muss er was tun, nämlich, log ausgeben. ` Ich danke Dir für Deine Erklärung. Das Ergebnis spielt sich ja auch im Log wieder. Das bedeutet aber doch, dass ich um eine setTimeout() Funktion nicht drumherum komme, wenn ich den geschriebenen Datenpunkt im weiteren Verlauf benötige oder? Mit setTimeout() habe ich das jetzt realisiert. Hatte die Hoffnung, dass es auch "eleganter" geht.
  • Funktion wird bei Scriptstart ausgeführt, warum?

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    675 Aufrufe
    R
    dankeschön
  • Script beenden

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    5k Aufrufe
    BluefoxB
    @paul53: Eine JS-Funktion kann mit https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Statements/break beendet werden. ` Mit break kann es nicht funktionieren. Weil break nur in den Schleifen funktioniert. ruhr70 hat gute Lösung vorgeschlagen.
  • Email bei Tür wird geöffnet

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    825 Aufrufe
    C
    super danke , hat geklappt
  • [gelöst] Globale Scripte

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    2k Aufrufe
    OstfrieseUnterwegsO
    Danke, so mache ich das.
  • Programmierphilosophie - wie geh ich's an?

    Verschoben
    10
    1
    0 Stimmen
    10 Beiträge
    2k Aufrufe
    P
    Eine Riesenerleichterung! Danke! :lol: Gruß Pix
  • Hilfe beim skripten

    Verschoben
    47
    0 Stimmen
    47 Beiträge
    6k Aufrufe
    R
    Ich meinte zum testen hatte ich eine true/false variable verwendet Gesendet von meinem HUAWEI CRR-L09 mit Tapatalk
  • oder Verknüpfung

    Verschoben Gelöst javascript
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    paul53P
    @stephan61: buegeleisen und trigger haben den Wert 0 oder 1 ` Dann sollte auch das funktionieren (implizite Typwandlung): if (buegeleisen || trigger) { setState(idSayIt, "Achtung Bügeleisen ist an "); }
  • Javascript.0.scriptEnable ?

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    671 Aufrufe
    P
    Hallo Stephan, das ist richtig. Genau dafür ist das gedacht. Du kannst Skripte damit aktivieren/deaktivieren (zB aus VIS oder per Skript oder Szenenadapter). Beispiele: Skript zur Kontrolle des Rollladens Balkontür abschalten, während die Balkontür offen steht (Aussperrschutz). Skript zur Überwachung der Fenster und Türen einschalten, wenn Abwesenheit Theoretisch lässt sich das alles auch innerhalb des Skriptes programmieren. Für Einsteiger ist ScriptEnable aber sicher der übersichtlichere Weg, vor allem, da Skripte per VIS-Widget aktiviert/Deaktiviert werden können. Gruß Pix
  • Gelösst Ansage Fenster offen

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    S
    habe den Fehler gefunden ich habe die text Datei vom Script Fenster zählen genommen in dieser Textdatei werden zwischen den textestellen ein als zeilenumbruch eingefügt das führte zu der komischen Ansage . Habe nun in dem Script Fenster eine 2 textdatei erzeugt mit einem Und als trenner und jetzt ist die Ansage in Ordnung Gruß Stephan

872

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge