Skip to content

Skripten / Logik

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

16.4k Themen 211.6k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    S
    @Mabbi mega... 💪🏼
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    tiobbT
    @Asgothian sagte in Hilfe bei Blockly: meine Fragen beantwortet Konnte nicht mehr alles beantworten, da nach dem Update nichts mehr ging. Reconfigure hatte keine Änderung gebracht. @Asgothian sagte in Hilfe bei Blockly: die Warnhinweise zum Update beachtet, die kommen wenn du die neue Version installierst eher missachtet 😭 @Asgothian sagte in Hilfe bei Blockly: die Dokumentation zur neuen Version gelesen. ne, in der Hoffnung das alles klappt. alte Version @Asgothian sagte in Hilfe bei Blockly: von wo hast du wie installiert ? direkt über die Adapter im iobroker @Asgothian sagte in Hilfe bei Blockly: Welche Version hattest du vorher ? irgendwas mit 2**** [image: 1763639977820-opera-momentaufnahme_2025-11-20_125912_192.168.178.75.png] Nach installieren einer älteren Version kommt das [image: 1763640487113-opera-momentaufnahme_2025-11-20_130711_192.168.178.75.png] @Asgothian sagte in Hilfe bei Blockly: Was fuer ein BWM ist das genau ? Zum Testen hatte ich mir zwei ganz günstige No Name Sensoren gekauft. Wollte nicht gleich einen Aqara kaufen. Alle anderen Sensoren sind von Aqara
  • 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
  • [GELÖST]Variablen außerhalb einer Funktion?

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    blauholstenB
    Hi, das unterstreicht das, was du vorher erklärt hast. Danke
  • Radio nach Sayit Ausgabe auf Sonos wieder starten

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    P
    @coyote: Sporadisch kommt die Ansage bei mir auch doppelt, weiß nicht ob das evtl. am Adapter selbst liegt. ` Bitte mal den Adapter Sonos neu starten. Gruß, Pix
  • Hue mit 2 Taster schalten

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    943 Aufrufe
    coyoteC
    @blauholsten, klar zweimal "true" is natürlich quatsch, hab ich mich vertippt, war schon spät letzte Nacht. @bluefox, danke dir werde ich dann mal testen. Brauche wohl noch etwas bis ich das richtig hinbekomme mit javascript :roll:
  • Sayit: Variierende Ansagen

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    921 Aufrufe
    Niemand hat geantwortet
  • Heizungssteuerung zeitabhängig

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    blauholstenB
    Ich denke du hast isTimeInRange nicht als variable bzw Funktion deklarierte. Schau dir das an…http://forum.iobroker.de/viewtopic.php? ... imeinrange
  • $(selector).each(function(id, i) {}); abbrechen

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    2k Aufrufe
    bentschikB
    Super, Danke!
  • [GELÖST]Datenpunkt und Funktion(FEHLER???)

    Verschoben
    7
    2
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    blauholstenB
    @paul53: Hast Du mal die Zeitstempel der beiden JS-Datenpunkte verglichen ? ` leider nein, habe vorhin alles neu gestartet und dann ging es komischerweise! Deine Veränderungen in der Switch-Anweisung machen sinn! Danke hierfür. Aber die Veränderung beim Aufruf (ON) klappt mit der "Standard" Variante nicht. Wenn ich von aussen den Modus wechsle, würde das im VIS nicht mehr passen. Ich habe es jetzt so gelöst, und es funktioniert endlich alles wie es soll! //*****************DATENPUNKTE*ERZEUGEN**************************************** createState('thermostate.stube.modus', ""); createState('thermostate.bad.modus', ""); createState('thermostate.küche.modus', ""); //*********************STUBE************************************************** function stube() { var a = getState("hm-rpc.0.MEQ0480054.2.CONTROL_MODE").val; switch(a) { case 0: setState("hm-rpc.0.MEQ0480054.2.MANU_MODE", 5.0); // Sollwert toLog(zeit + "->" + "Stube Manuell"); break; default: setState("hm-rpc.0.MEQ0480054.2.AUTO_MODE", true); toLog(zeit + "->" + "Stube Automatik"); } } //********************BAD***************************************************** function bad() { var b = getState("hm-rpc.0.MEQ0447885.4.CONTROL_MODE").val; switch(b) { case 0: setState("hm-rpc.0.MEQ0447885.4.MANU_MODE", 5.0); // Sollwert toLog(zeit + "->" + "Bad Manuell"); break; default: setState("hm-rpc.0.MEQ0447885.4.AUTO_MODE", true); toLog(zeit + "->" + "Bad Automatik"); } } //********************KÜCHE**************************************************** function kueche() { var c = getState("hm-rpc.0.MEQ0447899.4.CONTROL_MODE").val; switch(c) { case 0: setState("hm-rpc.0.MEQ0447899.4.MANU_MODE", 5.0); // Sollwert toLog(zeit + "->" + "Küche Manuell"); break; default: setState("hm-rpc.0.MEQ0447899.4.AUTO_MODE", true); toLog(zeit + "->" + "Küche Automatik"); } } //********************AUFRUFE************************************************** on({id: "javascript.0.thermostate.stube.modus", "val": "stubem"}, function() { stube(); }); on({id: "javascript.0.thermostate.stube.modus", "val": "stubea"}, function() { stube(); }); on({id: "javascript.0.thermostate.bad.modus", "val": "badm"}, function() { bad(); }); on({id: "javascript.0.thermostate.bad.modus", "val": "bada"}, function() { bad(); }); on({id: "javascript.0.thermostate.küche.modus", "val": "küchea"}, function() { kueche(); }); on({id: "javascript.0.thermostate.küche.modus", "val": "küchem"}, function() { kueche(); }); In dem Script könnte man in den Case Anweisung mit "case 3:" nun noch die Boost-Funktion der Thermostate realisieren. Danke für die Hilfe.
  • Skript um bei view in Widget den view zu wechseln

    Verschoben
    24
    0 Stimmen
    24 Beiträge
    8k Aufrufe
    BluefoxB
    @Communicate: Danke! Es funktioniert wieder einwandfrei. Für die Zukunft: Helfen Dir solche "Debug-Versuche" oder ist das eher vergebene Liebesmühe? Gruß Dominic ` Auf jeden Fall. Da war mir fast sofort klar, was nicht in Ordnung war. :D
  • IoBroker Input

    Verschoben
    5
    3
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    E
    okay, der Umweg ist zwar nachvollziehbar aber die Umsetzung bekomme ich nicht ganz hin. javascript.0.nodeStarted manuell erstellt Wenn ich aber aus Nodered heraus versuche diese dann zu setzten wird ein Objekt unterhalb von nodered.0 angelegt, also nodered.0/javascript/0/nodeStarted. Daran soll es aber erstmal nicht scheitern Wie kann das Script denn auf diese Variable hören?? Aktuell ist das Script per cron getriggert via schedule einer Funktion. Das würde dann ja wegfallen und nur noch durch den flow ausgeführt werden.
  • JavaScript: http/rawSocket

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    2k Aufrufe
    H
    @Bluefox: Danke für deine Antwort. Ich wollte es als Adapter mit node.js machen. Nach einer Programmier-Nacht habe ich es selbst rausgefunden. Für alle, die vielleicht das gleiche Problem haben: var net = require('net'); var client = new net.Socket(); client.connect(PORT, HOST, function() {...} var buf2=new Buffer([0x13, 0x0, 0xc8, 0x80, 0x0]); client.write(buf2); Hiermit wird ein byte-Array ohne weiteren Overhead an einen TCP-Server gesendet. Tobias
  • Webseite/HTML parsen

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    E
    Mache es jetzt via indexOf und split per Funktion das klappt ganz gut.
  • Erste Gehversuche

    Verschoben
    3
    2
    0 Stimmen
    3 Beiträge
    2k Aufrufe
    E
    Hi Pix, vielen Dank für Deine Antwort. Werde mich in Zukunft dran halten. Merke jetzt schon mehrere Sachen in einen Thread zu diskutieren macht es sehr unübersichtlich. Das Zuordnen des Topics in der vorherigen Function habe ich noch nicht ganz verstanden. [image: 235_2015-10-01_15h24_39.png] Also würde ich hier im ioBroker output node das Topic raus nehmen und in der Function so etwas einbringen (?): [image: 235_2015-10-01_15h26_47.png] Hier das kleine Function Node für die URL: `url = {}; monat = {}; jahr = {}; var dt = new Date(msg.timestamp); jahr.payload = dt.getFullYear(); monat.payload = dt.getMonth()+1; url.payload = "http://www.awg-wuppertal.de/web/awg.php?sid=333&jahr_von="+dt.getFullYear()+"&buchstabe=S&strasse=%20&hausnummer=&monat_von=13&jahr_von="+dt.getFullYear()+"&darstellung=liste"; return [url];` Sobald ich dies dann an http request gebe (also verbinde) erhalte ich im Log [msg] : string No url specified Mir fehlt wahrscheinlich einfach nur die grundlegende Kenntnis wie und in welcher Form in Node-RED die In- und Outputs zu definieren sind. Learning by doing quasi :-) EDIT: msg.url als Rückgabewert und schon klappt es. *g[/url]
  • Countdown täglich zur selben Zeit für 30 Minuten

    Verschoben
    11
    0 Stimmen
    11 Beiträge
    3k Aufrufe
    derAugeD
    Super Werde ich nachher testen Der Start heute mittag hatte nicht funktioniert. Bis später Gesendet von meinem BLOOM mit Tapatalk
  • Erste Gehversuche: Mit HM-PB-2-WM55-2 Sonos Wiedergabe start

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    5k Aufrufe
    P
    Hallo Jürgen,@derAuge: macht es sinn die SONOS per variable einzutragen. Dann kann man den Script schneller für weitere SONOS nutzen ` das muss jeder selbst wissen. Nach meiner Erfahrung sind Skripte mit vielen Ersetzungen und Kurzschreibweisen schwer zu verstehen, wenn man a) Anfänger oder b) lange aus dem Thema ist. So ein Skript für einen 6fach Taster schreibe ich ja nicht jeden Tag. Wenn ich mir in einigen Monaten / Jahren noch einen Taster anschaffe, dann kann ich das bestehen de einfach kopieren. Es kommt nicht auf die 15min an, die es dauert, die genauen Datenpunktbezeichnungen zu ändern. Die Geschwindigkeit ändert sich bei so einem kurzen Skript sicher nicht. Ich würde das vorher bei den Homematic Datenpunkten machen: Du kannst aber oben im Skript Variablen definieren, die das Ansprechen des Tasters vereinfachen (zB auch, wenn der Taster mal defekt ausgetauscht wird und eine neue Seriennummer hat). zum Beispiel so: var idMitteLinksKurz = "hm-rpc.0.MEQ0027317.3.PRESS_SHORT", idMitteLinksLang = "hm-rpc.0.MEQ0027317.3.PRESS_LONG", idMitteRechtsKurz = "hm-rpc.0.MEQ0027317.4.PRESS_SHORT", idMitteRechtsLang = "hm-rpc.0.MEQ0027317.4.PRESS_LONG", idUntenLinksKurz = ... Gruß, Pix 355_9d1368fd-62a1-49e0-9c29-0e5a8beb4227.jpeg 355_1e53d405-040e-4641-ba7b-ccf13c1819c2.jpeg
  • SetState Acknowledge

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    BluefoxB
    Man kann nicht nur ack setzten. Da musst du val noch mal rein schreiben.
  • [gelöst]Erstmaliges Schreiben eines Objektes

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    H
    Vielen Dank ich hatte erwartet, dass das Objekt 'res' existiert, aber 'res.val' den Wert 'null' hat Tobias
  • Gelöst: Verzögerungszeit bei der Ausführung von Anweisungen

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    3k Aufrufe
    R
    @Bluefox: Und das konnte man dann so umschreiben: ` … und hätte es dann (zumindest für mich) auch gleich noch lesbarer und verständlicher, soweit es die "Verwandschaft" zwischen setState und setStateDelayed betrifft. Mann dankt - Ralf
  • Network OWL mit Script einlesen

    Verschoben
    6
    2
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    P
    Hallo, hab Ihr OWL-Besitzer auch neuerdings das Problem, dass der json String nicht mehr die Channels liefert und nach dem Batterie-Wert endet? {"id":"44XXXXXXXXXXXXX","signal":{"rssi":"-78","lqi":"77"},"battery":"100%","channels":{"2":null}} Scheinbar wird das notwendige Modul owlintuiion nicht mehr gefunden. 2015-09-25 19:50:31.276 - error: javascript.2 script.js.OWL: Cannot find module '/Users/pix/Documents/iobroker/node_modules/iobroker.javascript/node_modules/owlintuition' at script.js.OWL:80:11 2015-09-25 19:50:31.282 - error: javascript.2 script.js.OWL: TypeError: undefined is not a function Es lässt sich aber auch nicht nachinstallieren 2015-09-25 19:50:26.034 - error: javascript.2 npm ERR! System Darwin 14.4.0 npm ERR! command "node" "/usr/local/bin/npm" "install" "owlintuition" "--production" "--prefix" "/Users/pix/Documents/iobroker/node_modules/iobroker.javascript" ! ```` sudo npm install owlintuition --production --prefix /Users/pix/Documents/iobroker/node_modules/iobroker.javascript Password: npm WARN package.json util@0.10.3 util is also the name of a node core module. npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current: {"node":"0.10.33","npm":"1.4.28"}) / iconv@2.1.11 install /Users/pix/Documents/iobroker/node_modules/iobroker.javascript/node_modules/owlintuition/node_modules/xml2json/node_modules/node-expat/node_modules/iconv node-gyp rebuild ! Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo. ! Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo. ! gyp ERR! build error gyp ERR! stack Error: make failed with exit code: 69 gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:810:12) gyp ERR! System Darwin 14.4.0 gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /Users/pix/Documents/iobroker/node_modules/iobroker.javascript/node_modules/owlintuition/node_modules/xml2json/node_modules/node-expat/node_modules/iconv gyp ERR! node -v v0.10.33 gyp ERR! node-gyp -v v1.0.1 gyp ERR! not ok ! npm ERR! iconv@2.1.11 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the iconv@2.1.11 install script. npm ERR! This is most likely a problem with the iconv package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls iconv npm ERR! There is likely additional logging output above. npm ERR! System Darwin 14.4.0 npm ERR! command "node" "/usr/local/bin/npm" "install" "owlintuition" "--production" "--prefix" "/Users/pix/Documents/iobroker/node_modules/iobroker.javascript" npm ERR! cwd /Users/pix/Documents/iobroker npm ERR! node -v v0.10.33 npm ERR! npm -v 1.4.28 npm ERR! code ELIFECYCLE npm ERR! not ok code 0 Gruß, Pix
  • Fragen zu Unterputzschalter HM-PB-2-FM

    Verschoben
    4
    1
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    H
    O.K. ich probier es einfach mal mit true und sorry dass man fa so wenig erkennen kann. Gelobe Besserung :-) Gesendet von meinem GT-I9505 mit Tapatalk
  • Subscribe/on Optimierung

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    F
    @paul53: Nicht ganz., sondern: … ` Danke. Werde das heute Abend mal ausprobieren. [image: zwinkernde-smilies-0022.gif]~~![](</s><URL url=)<link_text text="http://www.smiliesuche.de/smileys/zwink ... s-0022.gif">http://www.smiliesuche.de/smileys/zwinkernde/zwinkernde-smilies-0022.gif</link_text>" /> Fitti~~

634

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge