Skip to content

Skripten / Logik

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

16.6k Topics 213.7k Posts

NEWS

Subcategories


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Topics
    49k Posts
    Pedder007P
    @Schimi Danke, läuft nun auch bei mir :-)
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Topics
    79k Posts
    B
    Vielen Dank für die ausführliche Erklärung und die Links
  • 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
  • Zeitsteuerung mit Skriptdauer in Blocky

    Moved
    4
    1
    0 Votes
    4 Posts
    1k Views
    J
    Kann man, muss aber nicht. Hatte mich eher auf das im Trigger konzentriert und das kann man so machen.
  • *GELÖST* Zeitschaltuhr mit Anwesenheit

    Moved
    9
    1
    0 Votes
    9 Posts
    1k Views
    paul53P
    @SoerenKaiser99: warum dein "und" Block z.B. in dem Falls Objekt nach 12 Uhr anders ausschaut als meiner? ` Mit der rechten Maustaste über dem "und" Block: "externe Eingänge" auswählen. @SoerenKaiser99: gelöst ` Markiere es bitte auch im Betreff des ersten Beitrags.
  • *GELÖST* Astro schaltet zu falschen Zeiten

    Moved
    6
    0 Votes
    6 Posts
    1k Views
    C
    Habe mir jetzt den ntp gezogen, meine Einstellungen im Pi nochmals geprüft und neu gesetzt, im JS-Adapter meine Geokoordinaten hinterlegt und jetzt funktioniert es, danke :)
  • Im Zeitplan (ChronJob) wirken Zeiten öfter und undefiniert.

    Moved
    3
    1
    0 Votes
    3 Posts
    442 Views
    D
    Stimmt den Zeitblock hatte ich noch vergessen <emoji seq="1f62e">😮</emoji><emoji seq="1f643">🙃</emoji> Sorry, das versteh ich nicht Wie sieht so eine Block Kombi aus In den Morgenstunden hab ich drei verschiedene Bereiche. In denen verschiedene Musik zu verschiedenen Lautstärken laufen soll. In den zwischen Zeiten soll nichts passieren fals z. B. der Kater durchläuft. Auf meine. Methode klingt das nach Chaos Gibt es keine von bis Funktion die eine genaue Zeitspanne definiert?
  • Node Red Chart erstellen mit zwei Temperaturen

    Moved
    24
    1
    0 Votes
    24 Posts
    8k Views
    G
    @liv-in-sky: kann ich mir nicht erklären - vielleicht haben wir verschiedene versionen von node-red. manchmal werden die nodes ge-up-datet. welche adapter version von node-red benutzt du ? ` Und schon kommt mir eine Idee, aber es erklärt sich mir dann dennoch nicht. :lol: Im Moment benutze ich nur noch die Node-Red Standalone Version 19.1. Mit dieser Version hat sich so einiges verändert: https://nodered.org/blog/2018/08/14/ver … 9-released Interessant finde ich die Möglichkeit mit Evironment variables arbeiten zu können. Aber leider habe ich ich noch keinen blassen Schimmer wie das in der Praxis zu händeln ist. :o Ob der Node Red Adapter für ioBroker auch schon auf den neuesten Stand gebracht wurde weiß ich nicht. Schaut man sich den letzten ChangeLog an, so scheint er bei der Vers.18.7 zu stehen. __Changelog 1.4.0 (2017-08-06) (bluefox) use newer version of node-red 0.18.7 (bluefox) Admin3 dialog implemented (bluefox) RAM settings were added (bluefox) add credentialSecret option__ https://github.com/ioBroker/ioBroker.node-red
  • *GELÖST* Probleme mit An-&Abwesenheit mit zwei Handy-Erkennungen

    Moved
    17
    2
    0 Votes
    17 Posts
    3k Views
    C
    Es funktioniert, danke an alle :)
  • Fritzbox AB ein- und ausschalten.

    Moved
    1
    0 Votes
    1 Posts
    263 Views
    No one has replied
  • Gerät zur Uhrzeit schalten

    Moved
    6
    0 Votes
    6 Posts
    377 Views
    D
    okay trotzdem danke
  • [gelöst] View-Wechsel mit Blockly

    Moved
    4
    2
    0 Votes
    4 Posts
    2k Views
    nik82N
    Hallo, bei mir funktioniert der erste View-Wechsel nicht. Die HTTP Seite wechselt, aber die Seite bleibt weiß, wenn ich dann nochmal einen Viewwechsel mit den gleichen Daten mache, dann sehe ich die View erst. Habe mich jetzt erstmal damit beholfen: [image: 6616_view.jpg] Liegt auf jedenfall nicht an Blockly, denn auch wenn ich es per Javascript mache, bleibt erstmal die Seite weiß: setState('vis.0.control.instance', 'FFFFFFFF'); setState('vis.0.control.data', '3_OG'); setState('vis.0.control.command', 'changeView'); Jemand eine Idee an was das liegen kann?
  • Alexa-NodeRed-Script

    Moved
    5
    0 Votes
    5 Posts
    2k Views
    G
    Problem gelöst :lol: viewtopic.php?f=32&t=16257&p=170797#p170797
  • NodeRed Scriptstart via Trigger funzt net

    Moved
    2
    7
    0 Votes
    2 Posts
    2k Views
    G
    Ok Leute. Hab das Kleingedruckte nicht umgesetzt. Für alle Nachbauer: [image: 1935_s6.png] In der "Replace with" Zeile, hab ich den Wert auf "string" gelassen. Das hat gereicht um nicht zu reagieren. Hier müsst Ihr den Wert in der Tabelle auf "Boolean" ändern. Problem gelöst :lol:
  • [Gelöst] On() in schleife

    Moved
    14
    0 Votes
    14 Posts
    1k Views
    M
    @AlCalzone: Wenn ich das beim Lesen richtig gesehen habe, bringt let dich hier weiter. var ist nicht blockbezogen, d.h. es macht keinen Unterschied const tSrc = "sonoff.0.Aqua" + a + ".POWER" + b; const tTrg = "Aqua.Aqua" + a + ".POWER" + b ".State" ; ` Das funktioniert einwandfrei! Letztendlich aus var -> const. Vielen Dank!
  • Grad Celsius in Fahrenheit umrechen

    Moved
    1
    0 Votes
    1 Posts
    391 Views
    No one has replied
  • Grundsätzliche Frage zu 'Löschen falls läuft'

    Moved
    1
    1
    0 Votes
    1 Posts
    389 Views
    No one has replied
  • Probleme mit cacheSelector

    Moved
    5
    0 Votes
    5 Posts
    610 Views
    F
    So wird bei mir zwar ein State von Radar gefunden, es sollten aber 4 sein(Radar.0 und Radar.1 + jeweils 2 Clients) Sehr seltsam Hier mal zwei Screenshots [image: 706042e3948f69de77cf0b31c1e839dd.png]~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... e839dd.png">https://uploads.tapatalk-cdn.com/20180820/706042e3948f69de77cf0b31c1e839dd.png</link_text>" /> Hier die States. [image: 5bac2b9ca60a2e17166fc851e107a1c1.png]~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... 07a1c1.png">https://uploads.tapatalk-cdn.com/20180820/5bac2b9ca60a2e17166fc851e107a1c1.png</link_text>" /> Es wir aber nur einer gefunden.~~~~
  • Geräte der Node Red Flows werden bei Alexa.Amazon.de nicht gefunden

    Moved
    22
    0 Votes
    22 Posts
    3k Views
    T
    Bist du mit deinem Problem weiter gekommen? Evtl probiert Node Red separat zu installieren, ohne den ioBroker Adapter?
  • [Gelöst] Verständnisfrage Datenpunkt für setTimeout nutzen?

    Moved
    3
    0 Votes
    3 Posts
    264 Views
    M
    @apollon77: Best practice ist es die timeout ids in dem Skript Lokal vorzuhalten zb in einem array oder Objekt wo sie gesetzt werden. ` Das macht Sinn! In Meinem Beispiel hätte ich erwartet das beim 2. Aufruf "StartTimer(0, false);" der Bereich "log("CLEAR " + Device[id][0]);" aufgerufen wird da ich beim ersten Aufruf den Timer dem Array Device[1][1] zugeordnet habe. Das geschieht aber nicht. Vermutlich habe ich da noch nen Hänger. Ich bin noch nicht so fit in Javascript, habe ich da was übersehen? Ich muss da mal mehr über die Gültigkeitsbereiche von Javascript lesen :-) Malc var Device = []; Device[0] = ['Device1', null, 0]; Device[1] = ['Device2', null, 0]; StartTimer(0, true); StartTimer(0, false); function StartTimer(id, on) { var d = Device[id][0]; var t = Device[id][1]; var Duration = 2; if (on) { log("Start TImer für " +d ); t = setTimeout(function (){ log("Expired " + d ); clearTimeout(t); t = null; }, Duration * 5 * 1000); } else { log("OFF " + d); if(t) { log("CLEAR " + d); clearTimeout(t); } } Edit: Wenn ich var t = Device[id][1]; (war nur wegen der Lesbarkeit) weglasse und direkt auf das Arrayelement gehe klappt es. Die Deklaration var t = De… ist wohl kein Zeiger, da scheint es doch im Javascript Eigenarten zu geben. var Device = []; Device[0] = ['Device1', null, 0]; Device[1] = ['Device2', null, 0]; Device[2] = ['Device3', null, 0]; StartTimer(0, true); StartTimer(0, false); function StartTimer(id, on) { // log(Device[id][0]); //var t = Device[id][1]; //var t = x; var Duration = 2; if (on) { Device[id][1] = setTimeout(function (){ log("Expired " + Device[id][0]); clearTimeout(Device[id][1]); Device[id][1] = null; }, Duration * 5 * 1000); } else { log("OFF " + Device[id][0]); if(Device[id][1]) { log("CLEAR " + Device[id][0]); clearTimeout(Device[id][1]); } } }
  • HM Wired Komponenten nicht vorhanden

    Moved
    19
    0 Votes
    19 Posts
    728 Views
    J
    nein… ist immernoch xml-rpc
  • Diverse Programmierung

    Moved
    8
    0 Votes
    8 Posts
    813 Views
    apollon77A
    So meinte ich es ;-)) Gesendet vom Handy …
  • 0 Votes
    6 Posts
    655 Views
    Jeeper.atJ
    Hallo Paul, der Tipp war Gold wert. Nun funktioniert es so wie geplant. Vielen Dank Günther

613

Online

32.7k

Users

82.4k

Topics

1.3m

Posts