Skip to content

Skripten / Logik

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

16.5k Topics 213.4k Posts

NEWS

Subcategories


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Topics
    49k Posts
    P
    @ArnoD sagte in E3DC Hauskraftwerk steuern: @azzkikrboy Hierfür brauchst du den Adapter ‚Energiefluss-erweitert‘. Damit lässt sich der Energiefluss richtig schick grafisch darstellen. Die Konfiguration ist zwar etwas zeitaufwendig, aber die Mühe lohnt sich definitiv für das Design! ;) [image: 1770554279240-video-project.gif] Sieht sehr gut aus, hab ich bei mir auch mal ausprobiert. Leider funktioniert das nicht mit der Android VIS-App. Lösung wäre nur der Kiosk Browser aber das ist mir zu umständlich. Schade :-(
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Topics
    79k Posts
    L
    Ja, sollte gehen.
  • Hilfe für Skripterstellung mit Node-RED

    953 13k
    953 Topics
    13k Posts
    Marc BergM
    Es gibt in der Verson 1.3.0 einen neuen Node: iob-setObject (Stand 10.02.26 noch beta) Mit dem neuen Node kann man ioBroker-Objektdefinitionen (Metadaten) direkt schreiben und ändern. Hauptfunktionen: Instanz-Konfigurationen ändern - z.B. MQTT publish-Pattern, Intervalle, etc. Objekt-Eigenschaften aktualisieren - Namen, Rollen, Einheiten, Min/Max-Werte ändern es gibt zwei Modi: Merge-Modus : Ändert nur die angegebenen Eigenschaften, alle anderen bleiben erhalten Replace-Modus: Überschreibt das komplette Objekt Typischer Workflow: Objekt mit iob-getobject holen Mit Change-Node gewünschte Properties ändern Mit iob-setobject zurückschreiben
  • Pylontech Tasmota Script

    34
    1
    0 Votes
    34 Posts
    5k Views
    Ralla66R
    @lucky51179 Script umschreiben oder Display über IO am einzelnen ESP betreiben Link Link Link
  • Objekt per exec versenden

    16
    0 Votes
    16 Posts
    370 Views
    mickymM
    OK dann hast Du ja nun eine Lösung.
  • Addition in Blockly ist ein Takt verpätet

    16
    0 Votes
    16 Posts
    1k Views
    M
    @haus-automatisierung Jetzt Funktioniert es :-) Vielen lieben Dank!
  • iot Datenpunkt für eine Szene erstellen

    5
    0 Votes
    5 Posts
    391 Views
    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 Votes
    127 Posts
    12k Views
    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 Votes
    16 Posts
    755 Views
    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 Votes
    2 Posts
    155 Views
    M
    Bitte nicht antwortet da Doppelthread Ist im Bereich IOBroker / Allgemein
  • Tür-Überwachung

    12
    0 Votes
    12 Posts
    711 Views
    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 Votes
    4 Posts
    215 Views
    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 Votes
    111 Posts
    11k Views
    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 Votes
    11 Posts
    2k Views
    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 Votes
    5 Posts
    505 Views
    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 Votes
    7 Posts
    465 Views
    Damrak2022D
    @mickym Okay, danke an Euch
  • 0 Votes
    230 Posts
    78k Views
    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 Votes
    1 Posts
    188 Views
    No one has replied
  • Hilfe: Senec Speicher - Tibber / einfache Steuerung

    1
    1
    0 Votes
    1 Posts
    624 Views
    No one has replied
  • Betriebststunden Verdichter Heizung Tagesstunden berechnen

    2
    0 Votes
    2 Posts
    230 Views
    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 Votes
    15 Posts
    798 Views
    M
    Danke das hat geklappt
  • Gesamtleistung berechnen per Blockly Skript

    7
    1
    0 Votes
    7 Posts
    647 Views
    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 Votes
    10 Posts
    769 Views
    O
    @paul53 Danke .. und nochwas dazugelernt ... genau sowas hatte ich gesucht

437

Online

32.6k

Users

82.3k

Topics

1.3m

Posts