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
    1.0.19: Der Paramter colorScheme akzeptiert jetzt nicht nur 'default' und ein Farbschema aus der Liste. Jetzt kann jeder beliebige HEX, RGB oder RGBA Wert Verwendung finden. Code, Archiv und Doku angepasst in Post 1. Ro75.
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    paul53P
    @Olli_M sagte: irgendwas stimmt da nicht so ganz Ändere den Faktor für Dauer von 6000 in 60000.
  • 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
  • Addition in Blockly ist ein Takt verpätet

    16
    0 Stimmen
    16 Beiträge
    1k Aufrufe
    M
    @haus-automatisierung Jetzt Funktioniert es :-) Vielen lieben Dank!
  • iot Datenpunkt für eine Szene erstellen

    5
    0 Stimmen
    5 Beiträge
    331 Aufrufe
    geschildG
    @bongo Vielleicht hilft der letzte Post hier weiter. https://forum.iobroker.net/topic/37792/iobroker-iot-alexa-szenen Worin liegt der Unterschied zwischen einer Scene und einer Routine ?
  • Werte aus JS auslesen und in Datenpunkte einfügen

    127
    5
    0 Stimmen
    127 Beiträge
    12k Aufrufe
    Ralla66R
    @fimoknete Bisher sind ja keine Daten per ModbusMaster empfangen worden. Dies könnte ja an der falschen Abfrage der Register / Registerbreite liegen. Um den Weg zu prüfen: Battery < -> RS485/ USB Adapter <-> Rechner Modbus Poll ausführen und alle Register automatisch auslesen. keine Werte zurückgegeben, Verkabelung, Treiber ....... falsch Werte angezeigt. Kabelweg wahrscheinlich i.O, Registerwert 41008 prüfen wenn bei Modbus Poll keine Registerwerte zurück kommen wird das mit dem Adapter auch nicht gehen. Es wäre sehr von Vorteil wenn du mal die Bedienungsanleitung der Battery hier einstellst.
  • Gelöst: Script zur Abfrage der CPU Temp

    javascript
    16
    0 Stimmen
    16 Beiträge
    722 Aufrufe
    T
    @michihorn Auch wenns schon geht: const test = `cpu_thermal-virtual-0 Adapter: Virtual device temp1: +44.3°C (crit = +110.0°C) rpi_volt-isa-0000 Adapter: ISA adapter in0: N/A` const reg = /[0-9\.]+°C/; const result = test.match(reg); if (result) log(result[0]) javascript.0 (619) script.js.Test.Skript_2: 44.3°C
  • conbee

    2
    1
    0 Stimmen
    2 Beiträge
    153 Aufrufe
    M
    Bitte nicht antwortet da Doppelthread Ist im Bereich IOBroker / Allgemein
  • Tür-Überwachung

    12
    0 Stimmen
    12 Beiträge
    644 Aufrufe
    A
    @paul53 Du hast recht, die muss raus. Ist ein überbleibsel aus der Schleife von vorhin.
  • Zeitscripte die nicht laufen möchten

    4
    2
    0 Stimmen
    4 Beiträge
    205 Aufrufe
    M
    Prima habe das mit dem Script von Paul53 gut hinbekommen. Noch mal so zum Verstehen der Blockly script setzte aussenlampe auf wert von objekt aussenlampe; wenn dort der wert false steht ist es dann ein Wert oder ist false kein wirklicher wert? da ja bei falss mache ausenlampe aufgeführt wirt die bei true dann die Aussenlampe ausschaltet. Gruß Mico
  • Dyn. Liste darstellen und als Auswahlliste in VIS, iQontrol

    111
    0 Stimmen
    111 Beiträge
    10k Aufrufe
    liv-in-skyL
    @hoizi1994 das hier ist speziell für ein project (Bluesound Multiroom System ) was für eine anleitung auf github evtl meinst du sowas ? https://forum.iobroker.net/post/1065142 evtl ist es besser einen eigenen thread aufzumachen und etwas genauer zu erklären, was du machen möchtest
  • Shelly 3EM - negative Werte verhindern

    11
    1
    0 Stimmen
    11 Beiträge
    2k Aufrufe
    MartinPM
    Dass die eine Hardware zwischendurch "komische" Werte liefert, während ein baugleiches anderes Exemplar korrekt funktioniert sollte erstmal zu Denken geben ... Von da her würde ich erstmal prüfen, ob die Werte, die der Wärmepumpen-Shelly liefert überhaupt stimmen. Daneben sollte ggfs. auch noch einmal überprüft werden, ob die Installation des WP-Shelly korrekt erfolgt ist. (Stromwandler richtig herum installiert, keine Vertauschungen) Falls das alles schon erfolgt ist, kann man dann als letzte Möglichkeit versuchen, die "faulen Eier" bei den Messwerten auszusortieren ...
  • PV und Infrarotheizung

    5
    1
    0 Stimmen
    5 Beiträge
    475 Aufrufe
    M
    @paul53 er schaltet sie jetzt beim ersten mal am Tag an und auch nach 30 Minuten wieder aus. Anschließend bleibt sie aber aus und geht nicht wieder an obwohl genug Leistung (>500) da ist und die Batterie voll ist (<98).
  • Problem mit Blockly Datum und Uhrzeit wird nicht angezeigt

    7
    1
    0 Stimmen
    7 Beiträge
    384 Aufrufe
    Damrak2022D
    @mickym Okay, danke an Euch
  • [gelöst] in SayIt Wetter und Geburtstagsscript -> Müllkalender mit einbinden

    Verschoben javascript
    230
    1
    0 Stimmen
    230 Beiträge
    75k Aufrufe
    lobomauL
    @tempestas Hi, ich nutze dein Script schon seit einige Jahren. Erstmal Danke dafür! Nun habe ich seit einigen Tagen eine Fehlermeldung. Vielleicht hat sich etwas am JavaScript-Adapter geändert? Am Script selbst habe ich nichts geändert. Kannst du etwas mit dem Fehler anfangen? Fehler: 2023-11-19 18:00:00.096 - error: javascript.0 (3058) Error in callback: ReferenceError: i_search is not defined 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at nthIndex (script.js.common.Telegram.Morgige_Termine:19:18) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at Warnung (script.js.common.Telegram.Morgige_Termine:42:5) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at Object. (script.js.common.Telegram.Morgige_Termine:82:4) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1617:34) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at Job.invoke (/opt/iobroker/node_modules/node-schedule/lib/Job.js:171:15) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at /opt/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at Timeout._onTimeout (/opt/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at listOnTimeout (node:internal/timers:569:17) 2023-11-19 18:00:00.097 - error: javascript.0 (3058) at processTimers (node:internal/timers:512:7) Script: Spoiler // Skript schaut täglich um 18h, ob im Kalender das Wort "Morgen" vorkommt. Wenn ja, wird ein Telegram geschickt mit dem betreffenden Termin bzw Terminen // tempestas 13.2.2018 // Skripteinstellungen var debug = false; // Suchfunktion für Termin-Cutoff function nthIndex(str, pat, n){ var L= str.length, i= -1; while(n-- && i++<L){ i= str.indexOf(pat, i); if (i < 0) break; } i_search =i; } //Funktion function Warnung() { var inhalt = getState("ical.0.data.html").val.toString(); // hier deine Müll-Kalender Instanz eingeben var count = inhalt.split("Morgen").length -1; // wie häufig wird "Morgen" gefunden? var posStart = inhalt.indexOf( 'Morgen', 0); // sucht das erste mal "Morgen" if(debug) log("posStart "+posStart); if(posStart != -1){ // falls "Morgen" gefunden wurde gehts hier weiter var stringShort = inhalt.substring(posStart, inhalt.length); // Abschneiden von allem, was links vom ersten "Morgen" Treffer steht if(debug) log("Gekürzt :" +stringShort); nthIndex(stringShort, '</span></span><br/>', count); // hier wird nun geschaut, wo es rechts abgeschnitten werden muss stringCut = stringShort.slice(0,i_search); // hier wird alles rechts abgeschnitten und so der finale String extrahiert if(debug) log("Fast Final: "+stringCut); // aufbereiten für telegram, entfernen von HTML Tags stringCut = stringCut.replace('</br>',"\n"); // Zeilenumbruch html durch telegram umbruch ersetzen // remove all inside SCRIPT and STYLE tags stringCut=stringCut.replace(/<script.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/script>/gi, ""); stringCut=stringCut.replace(/<style.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/style>/gi, ""); // remove BR tags. stringCut=stringCut.replace(/<br>/gi, ""); stringCut=stringCut.replace(/<br\s\/>/gi, ""); stringCut=stringCut.replace(/<br\/>/gi, ""); // remove all else stringCut=stringCut.replace(/<(?:.|\s)*?>/g, ""); // get rid of html-encoded characters: stringCut=stringCut.replace(/&nbsp;/gi," "); stringCut=stringCut.replace(/&amp;/gi,"&"); stringCut=stringCut.replace(/&quot;/gi,'"'); stringCut=stringCut.replace(/&lt;/gi,'<'); stringCut=stringCut.replace(/&gt;/gi,'>'); sendTo('telegram.0', stringCut); } } // Trigger Schedule schedule('0 18 * * *', function(){ // Täglich um 18h Warnung(); }); // Bei Start Warnung(); JavaScript: 7.1.4. Node.js: v18.17.1 NPM: 9.6.7 JS-controller: 5.0.16
  • BWM steuert Hue-Level nicht

    1
    1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • Hilfe: Senec Speicher - Tibber / einfache Steuerung

    1
    1
    0 Stimmen
    1 Beiträge
    587 Aufrufe
    Niemand hat geantwortet
  • Betriebststunden Verdichter Heizung Tagesstunden berechnen

    2
    0 Stimmen
    2 Beiträge
    208 Aufrufe
    paul53P
    @hoizi1994 sagte: brauche hier einen selbst erstellten Datenpunkt im User oder? Sogar 2 Datenpunkte: "Laufzeit gestern" und "Tagesstand Betriebsstunden". Alternative: Sourceanalytix-Adapter.
  • ein Gute Nacht Script

    15
    0 Stimmen
    15 Beiträge
    791 Aufrufe
    M
    Danke das hat geklappt
  • Gesamtleistung berechnen per Blockly Skript

    7
    1
    0 Stimmen
    7 Beiträge
    572 Aufrufe
    m0nn3M
    @paul53 Okay, Dann euch noch einen schönen Abend und vielen Dank !!!
  • Blockly mit Zigbee/Homatic und CCU Duty Cycle Problem

    10
    1
    0 Stimmen
    10 Beiträge
    656 Aufrufe
    O
    @paul53 Danke .. und nochwas dazugelernt ... genau sowas hatte ich gesucht
  • Suche Hilfe für Visualisierung von mehreren ical Kalendern

    3
    0 Stimmen
    3 Beiträge
    208 Aufrufe
    T
    @bahnuhr Danke Dir. Kannst Du mir sagen, warum ich das Skript nicht zweimal auf eine Instanz laufen lassen kann? Ich hatte die Schriftgröße verändert. Einmal in Klein => schreibt in Datenpunkt A (für die Übersicht auf der Startseite) und einmal in groß => schreibt in Datenpunkt B (für nur den Stundenplan in groß) Ist es eventuell möglich, das Skript so anzupassen, dass es die Daten nur aus bestimmten Kalender(n) der Instanz zieht? Dann könnte ich mit 12 Instanzen sparen :-) Oder sollte ich diese Frage eher hier https://forum.iobroker.net/topic/26782/ical-kalender-farben-anpassen/82?_=1700046036161 reinstellen?
  • Datenpunkte abfragen und andere damit steuern

    4
    1
    0 Stimmen
    4 Beiträge
    325 Aufrufe
    paul53P
    @kvn298 sagte: Status_Brunnenpumpe ist ein String. Laut API-Doku ist liefert das Attribut "ison" einen booleschen Wert.

647

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge