Skip to content

Skripten / Logik

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

16.6k Topics 213.9k Posts

NEWS

Subcategories


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Topics
    49k Posts
    H
    @crunchip Passt, vielen Dank...
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Topics
    80k Posts
    Murphy 0M
    @berny-k Ja 3,5 Volt gilt als Kalibrierung. Wenn ich von 3,5 bis 3,6 komplett voll laden lasse dauert das keine 5 Minuten. Macht vom Ladestand kaum einen Unterschied. Was du gelb markiert hast dient mir zur Kontrolle in der Übergangszeit und im Winter wenn der Akku längere Zeit nicht voll wird. Sind 0_userdata Objekte die ich mit iQontrol überwache. Deshalb habe ich für die Wintermonate den Wintermodus eingerichtet. Da wird erst entladen wenn der Akku voll ist. Bei mir so ca. alle 1 bis 2 Wochen. Kommt längere Zeit gar nix vom Dach kalibriere ich den Akku manuell. [image: 1773510045211-img_3941.jpeg] [image: 1773510045230-img_3940.jpeg] Waren jetzt 2 Wochen mit perfekter Sonne, heute nur Regen 😖
  • 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
  • Timer 1 mal im Monat mit Blockly

    Moved
    10
    0 Votes
    10 Posts
    2k Views
    K
    @Hiltex: Warum nutzt Du denn nicht den eingebauten Cron-Wizard? Der funktioniert echt klasse. Da brauchst Du ja nur anklicken, welchen Tag, Monat, Stunde und Minute du haben willst. Ich würde es so machen: Bildschirmfoto 2019-01-11 um 15.41.11.png Das Blockly für den Import: <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="(T=DXb{BDS-y=f5W|0Y." x="-62" y="-12"><field name="COMMENT">Januar</field> <next><block type="schedule" id="*6pZTuZ3vt`IIh3+a.J9"><field name="SCHEDULE">55 23 28 1 *</field> <next><block type="comment" id="q6u2-LcDDgjMjnSXWd=%"><field name="COMMENT">Februar</field> <next><block type="schedule" id="%bJ[qk=D,Vfb)MLv-ct{"><field name="SCHEDULE">55 23 28 2 *</field> <next><block type="comment" id=",*yrh.[^!icv6O1#9od*"><field name="COMMENT">März</field> <next><block type="schedule" id="`=S%e8NrdTjG%0PPO,-`"><field name="SCHEDULE">55 23 28 3 *</field> <next><block type="comment" id="~^3E8fp@i8ll42]dw~=!"><field name="COMMENT">April</field> <next><block type="schedule" id="U:~o:Dbb4,B1|:mv~9e-"><field name="SCHEDULE">55 23 28 4 *</field> <next><block type="comment" id="5G4/C=:F#B~ehD-i[L{5"><field name="COMMENT">Mai</field> <next><block type="schedule" id="6AU0*`)`_!Ro3x{#l9SQ"><field name="SCHEDULE">55 23 28 5 *</field> <next><block type="comment" id="L3LpZ(J`VA50S%,GI[Im"><field name="COMMENT">Juni</field> <next><block type="schedule" id="aY{B9wbA+;.2LC}9i-oi"><field name="SCHEDULE">55 23 28 6 *</field> <next><block type="comment" id="pTbw.o#,KmBG#0ES~xKx"><field name="COMMENT">Juli</field> <next><block type="schedule" id="=swXHD}=kP+{Ot%PS(B@"><field name="SCHEDULE">55 23 28 7 *</field> <next><block type="comment" id="f[;WCaf8p.kvQ7}QIg/M"><field name="COMMENT">August</field> <next><block type="schedule" id=":S]VYc`o{{9iS0Y6ONw6"><field name="SCHEDULE">55 23 28 8 *</field> <next><block type="comment" id="m4m?1jIMi~mPOF1_#~9p"><field name="COMMENT">September</field> <next><block type="schedule" id="PYj+ovDZHURu*0GisSbb"><field name="SCHEDULE">55 23 28 9 *</field> <next><block type="comment" id="lr#[#f,Bdc5M}qPIgG/2"><field name="COMMENT">Oktober</field> <next><block type="schedule" id="VphsPHF6c0F@Lsg,C/Ne"><field name="SCHEDULE">55 23 28 10 *</field> <next><block type="comment" id="HRp9v^w~Qy*HppJ*m#@t"><field name="COMMENT">November</field> <next><block type="schedule" id="0BR;w2qgW^4(i!.hJwuw"><field name="SCHEDULE">55 23 28 11 *</field> <next><block type="comment" id="nA!/k)2}okDE~}uf=/9R"><field name="COMMENT">Dezember</field> <next><block type="schedule" id="bhp/cK266/N3NU!1_3(/"><field name="SCHEDULE">55 23 28 12 *</field></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></xml> ```` ` Hi, danke für die Antwort. Habe den es jetzt mit dem Cron Wizard probiert und es scheint zu funktionieren.
  • [gelöst] Verzögerungswert über VIS setzen

    Moved
    4
    1
    0 Votes
    4 Posts
    453 Views
    HiltexH
    @myol: Nimm doch den Block hier: 1.png Da kannst du für die Verzögerung jeden beliebigen Block einfügen. ` Schöne Lösung. jetzt nicht einen Wert von 600.000 in der Visualisierung eintragen zu müssen, damit man eine Verzögerung von 10 Minuten erhält, kann man ja noch ein wenig multiplizieren (Zahl aus VIS * 60.000 = Minuten)
  • [gelöst] snapshot vom flot/browser

    Moved
    8
    0 Votes
    8 Posts
    427 Views
    H
    danke eigentlich schon, aber heißt das nun, dass es mit phantomjs gar nicht geht am rpi oder nur wenn ich das davor installiere? @Segway: Mal die readme gelesen ??? ` > Prerequire It is used prebuild package of phantomjs. If for your system the prebuild does not exist, you cannot use this adapter. On some linux systems the additional library "libfontconfig" is required. It can be installed as follow: sudo apt-get install libfontconfig
  • Javascript: String auf 3 enthaltene Punkte prüfen

    Moved
    3
    0 Votes
    3 Posts
    311 Views
    R
    oder console.log("192.168.0.0".match(/\./g).length) // 3; let ip = "192.168.0.0"; if (ip.match(/\./g).length == 3) console.log('jupp');
  • IFTTT HTTP Post aus IOBroker kommt nicht an

    Moved
    1
    0 Votes
    1 Posts
    153 Views
    No one has replied
  • Switch-Node und JSON

    Moved
    15
    3
    0 Votes
    15 Posts
    2k Views
    R
    Setz halt einen function-/change-node vor den Eingang des ui-switch, der dir den payload so aufbereitet, dass nur true/false drinsteht. Mach ich immer so
  • Exec Befehle hintereinander ausführen

    Moved
    3
    0 Votes
    3 Posts
    609 Views
    K
    Wenn die Befehle hintereinander abgearbeitet werden sollen und auch die maximale Laufzeit der Befehle bekannt ist, dann könnte timeout() helfen setTimeout(function () { exec('iobroker stop viessmann.0', function (error, stdout, stderr) { console.log('stdout: ' + stdout); }, 1000); // wird nach einer Sekunde ausgeführt setTimeout(function () { exec(Befehl_SchaltzeitenMo, function (error, stdout, stderr) { console.log('stdout: ' + stdout); }, 2000); // wird nach zwei Sekunden ausgeführt Das ist zwar durch die Brust in's Auge. Aber JS kennt nun mal kein delay(), das an dieser Stelle kurz wartet.
  • Hilfe beim Script/Blocky Erstellung

    Moved
    2
    0 Votes
    2 Posts
    337 Views
    paul53P
    Vorschlag, wenn die Schalterwerte tatsächlich "on" und "off" sind: const idSchalter = '...'; // Datenpunkt-ID eintragen ! on({id: idSchalter, change: 'ne', val: 'on'}, function() { setStateDelayed(idSchalter, 'off', 3000); // 3 s Einschaltdauer });
  • Datenpunkt steuert Hue Lampe allg. Frage dazu

    Moved
    7
    1
    0 Votes
    7 Posts
    829 Views
    A
    Also auch mit der Version 0.6.9 hab ich Fehler und somit wird die Lampe auch nicht geschalten. ! ```` host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error instance system.adapter.hue.0 terminated with code 6 (uncaught exception) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Decoder.Emitter.emit (C:\iobroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Decoder. <anonymous>(C:\iobroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Manager.ondecoded (C:\iobroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\manager.js:345:8) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Manager.Emitter.emit (C:\iobroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Manager. <anonymous>(C:\iobroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Socket.onpacket (C:\iobroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:244:12) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Socket.onack (C:\iobroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:319:9) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at Socket. <anonymous>(C:\iobroker\node_modules\iobroker.js-controller\lib\states\statesInMemClient.js:157:27) host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at C:\iobroker\node_modules\iobroker.js-controller\lib\adapter.js:4332:61 host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: at C:\iobroker\node_modules\iobroker.hue\hue.js:54:72 host.DESKTOP-I1GBN43 2019-01-11 09:01:21.373 error Caught by controller[0]: TypeError: Cannot read property 'val' of null hue.0 2019-01-11 09:01:20.324 error TypeError: Cannot read property 'val' of null at C:\iobroker\node_modules\iobroker.hue\hue.js:54:72 at C:\iobroker\node_modules\iobroker.js-controller\lib\adapter.js:4332:61 at Socket.<ano hue.0/2019-01-11/09:01:20.324/error/uncaught/exception:/cannot/read/property/'val'/of/null<e=""></ano></anonymous></anonymous></anonymous> Es handelt sich dabei um eine LED-Stripe und diesen will ich per script ausschalten über if (wie === true) { if (compareTime('11:00', '22:50', "between", null)) { setState("javascript.0.PhilipsHue.Scenes.morgens.Qg9jXdqpJwgs6ib"/*Scene: morgens (Group: Leiste_alone )*/, wie); } } //if true else { setState("hue.0.Philips_hue.leiste.on"/*Philips_hue.leiste.on*/, wie); } //else } // if steuerung
  • Beschränkung bei Alexa local Geräten? node-red-contrib-alexa-local

    Moved
    8
    1
    0 Votes
    8 Posts
    2k Views
    V
    Super! Das funktioniert und er erkennt alle Geräte Vielen Dank!!
  • Fensterkontakt GS-WDS07 mit Sonoff RF Bridge(Tasmota)

    Moved
    5
    1
    0 Votes
    5 Posts
    2k Views
    Z
    und dein Trigger funktioniert ich glaube so wie du es gemacht hast auch nicht! Versuch es mal so: [image: 5087_unbenannt.jpg]
  • Datei von lokalem ftp-server lesen

    Moved
    3
    0 Votes
    3 Posts
    453 Views
    A
    damit hatte ich sowas wie 'createWriteStream is not a function' ich nehme erstmal wget, brauche die Daten zum verarbeiten (nicht schön, aber funktioniert wenigstens)
  • Abschaltung der Rolläden Sonoff T2

    Moved
    14
    1
    0 Votes
    14 Posts
    1k Views
    R
    @Ju5t1n: Das Problem ist scheinbar, dass der Alexa local Baustein in Node Red anscheinend nur an und aus bzw. hoch und ab kennt. Kann ich dem irgenwie Abhilfe schaffen? ` Na z.B. in dem du ein 2tes Gerät mit dem Alexa-lokal Baustein (Rolladen stop) anlegst. Den triggerst du dann mit einer Alexa-Routine. Alexa-Routine Wenn ich sage "Rolladen stop" -> Schalte (Rolladen stop) aus Und den hängt du dann an deinen Powerstate der Rollade. Wenn der gerade fährt(true hat) bekommt er nun ein false und sollte stoppen.
  • Auslastung NUC (o.a.) auslesen - visualisieren

    Moved
    55
    0 Votes
    55 Posts
    11k Views
    S
    Sehr schön das freut mich [emoji4] Zum blockly: Jetzt Mal so aus dem Kopf weil unterwegs Ich hab den Wert den der Befehl liefert erstmal in in einer Programm variablen gespeichert evtl, da bin ich mir nicht sicher, in Zahl umgewandelt mit einem convert Block und dann den Block schreibe Objekt mit wert genutzt … Irgendwo dazwischen umgerechnet mit den Mathe Blöcken Wenn nötig Das ganze aber ohne Gewähr wie gesagt Gruss Stefan Gesendet von meinem Mi A2 Lite mit Tapatalk
  • Dynamische Tabelle

    Moved
    3
    0 Votes
    3 Posts
    348 Views
    arteckA
    oder mit viel gefummel.. die Nachritcht die kommt ist ehh ein String.. String und noch einer und noch einer..
  • Ein Grosses oder viele kleine Scripte?

    Moved
    10
    0 Votes
    10 Posts
    2k Views
    apollon77A
    Cubietruck hat ein natives SATA interface … leider sonst nicht viele andere :-(
  • Node-RED nicht mehr im Browser erreichbar Gelöst

    Moved
    7
    1
    0 Votes
    7 Posts
    3k Views
    wendy2702W
    kannst du dann bitte die Überschrift vom ersten Post um ein```` Gelöst
  • [Gelöst] Blockly - Berechnung von Werten mit Objekten klappt nicht

    Moved
    14
    3
    0 Votes
    14 Posts
    3k Views
    nukleuzN
    Danke für eure Hilfe - ich belasse erst einmal bei den TimeOuts, damit wird gerechnet.
  • V-Bus direkt über seriellen USB Adapter einlesen

    Moved
    7
    0 Votes
    7 Posts
    1k Views
    C
    Hallo Dutchman, gerne würde ich die Serielle Schnittstelle testen, musst nur Bescheid geben wenn es los gehen soll Alex
  • [gelöst]Skript Problem

    Moved
    4
    2
    0 Votes
    4 Posts
    292 Views
    J
    Der Requestbefehl ist zum Steuern meines Fernsehers mit Mediola. Aber vielen Dank mit dem Tipp des Dummyprogrammes, das war es! Ein Dummyprogramm erstellt und es funktioniert! Vielen Dank!

623

Online

32.7k

Users

82.5k

Topics

1.3m

Posts