Weiter zum Inhalt

Skripten / Logik

16.7k Themen 215.8k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 50k
    3k Themen
    50k Beiträge
    Murphy 0M
    @maxclaudi super Sache, Cloudfree ohne Neustart vom Hyper ist eine echte Verbesserung. Sollte man den Hyper mit neuester Firmware Cloudfree betreiben wäre die ultimative Lösung mit so einer Software zurück auf unverschlüsseltem Datentransfer zum mqtt Server stellen zu können. 😁
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    W
    Hab ein json von open-meteo mit der vorhergesagten Temperatur. Wie kann ich da den Wert vom aktuellen Tag 17:30 "rausfiltern" [{"start":"2026-07-28T02:00:00+02:00","end":"2026-07-28T02:15:00+02:00","value":16},{"start":"2026-07-28T13:30:00+02:00","end":"2026-07-28T13:45:00+02:00","value":26.7},{"start":"2026-07-28T13:45:00+02:00","end":"2026-07-28T14:00:00+02:00","value":27},{"start":"2026-08-07T23:45:00+02:00","end":"2026-08-08T00:00:00+02:00","value":19.4},{"start":"2026-08-08T00:00:00+02:00","end":"2026-08-08T00:15:00+02:00","value":19.3},{"start":"2026-08-08T00:15:00+02:00","end":"2026-08-08T00:30:00+02:00","value":19.1},{"start":"2026-08-08T00:30:00+02:00","end":"2026-08-08T00:45:00+02:00","value":19},{"start":"2026-08-08T00:45:00+02:00","end":"2026-08-08T01:00:00+02:00","value":18.9},{"start":"2026-08-08T01:00:00+02:00","end":"2026-08-08T01:15:00+02:00","value":18.7},{"start":"2026-08-08T01:15:00+02:00","end":"2026-08-08T01:30:00+02:00","value":18.6},{"start":"2026-08-08T01:30:00+02:00","end":"2026-08-08T01:45:00+02:00","value":18.5},{"start":"2026-08-08T01:45:00+02:00","end":"2026-08-08T02:00:00+02:00","value":18.3},{"start":"2026-08-08T02:00:00+02:00","end":"2026-08-08T02:15:00+02:00","value":18.2},{"start":"2026-08-08T02:15:00+02:00","end":"2026-08-08T02:30:00+02:00","value":18},{"start":"2026-08-08T02:30:00+02:00","end":"2026-08-08T02:45:00+02:00","value":17.8},{"start":"2026-08-08T02:45:00+02:00","end":"2026-08-08T03:00:00+02:00","value":17.7},{"start":"2026-08-08T03:00:00+02:00","end":"2026-08-08T03:15:00+02:00","value":17.5},{"start":"2026-08-08T03:15:00+02:00","end":"2026-08-08T03:30:00+02:00","value":17.3},{"start":"2026-08-08T03:30:00+02:00","end":"2026-08-08T03:45:00+02:00","value":17.1},{"start":"2026-08-08T03:45:00+02:00","end":"2026-08-08T04:00:00+02:00","value":16.9},{"start":"2026-08-08T04:00:00+02:00","end":"2026-08-08T04:15:00+02:00","value":16.8},{"start":"2026-08-08T04:15:00+02:00","end":"2026-08-08T04:30:00+02:00","value":16.6},{"start":"2026-08-08T04:30:00+02:00","end":"2026-08-08T04:45:00+02:00","value":16.5},{"start":"2026-08-08T04:45:00+02:00","end":"2026-08-08T05:00:00+02:00","value":16.4},{"start":"2026-08-08T05:00:00+02:00","end":"2026-08-08T05:15:00+02:00","value":16.3},{"start":"2026-08-08T05:15:00+02:00","end":"2026-08-08T05:30:00+02:00","value":16.2},{"start":"2026-08-08T05:30:00+02:00","end":"2026-08-08T05:45:00+02:00","value":16.2},{"start":"2026-08-08T05:45:00+02:00","end":"2026-08-08T06:00:00+02:00","value":16.1},{"start":"2026-08-08T06:00:00+02:00","end":"2026-08-08T06:15:00+02:00","value":16.1},{"start":"2026-08-08T06:15:00+02:00","end":"2026-08-08T06:30:00+02:00","value":16},{"start":"2026-08-08T06:30:00+02:00","end":"2026-08-08T06:45:00+02:00","value":16},{"start":"2026-08-08T06:45:00+02:00","end":"2026-08-08T07:00:00+02:00","value":16},{"start":"2026-08-08T07:00:00+02:00","end":"2026-08-08T07:15:00+02:00","value":16.1},{"start":"2026-08-08T07:15:00+02:00","end":"2026-08-08T07:30:00+02:00","value":16.2},{"start":"2026-08-08T07:30:00+02:00","end":"2026-08-08T07:45:00+02:00","value":16.3},{"start":"2026-08-08T07:45:00+02:00","end":"2026-08-08T08:00:00+02:00","value":16.6},{"start":"2026-08-08T08:00:00+02:00","end":"2026-08-08T08:15:00+02:00","value":16.9},{"start":"2026-08-08T08:15:00+02:00","end":"2026-08-08T08:30:00+02:00","value":17.3},{"start":"2026-08-08T08:30:00+02:00","end":"2026-08-08T08:45:00+02:00","value":17.8},{"start":"2026-08-08T08:45:00+02:00","end":"2026-08-08T09:00:00+02:00","value":18.4},{"start":"2026-08-08T09:00:00+02:00","end":"2026-08-08T09:15:00+02:00","value":19},{"start":"2026-08-08T09:15:00+02:00","end":"2026-08-08T09:30:00+02:00","value":19.7},{"start":"2026-08-08T09:30:00+02:00","end":"2026-08-08T09:45:00+02:00","value":20.4},{"start":"2026-08-08T09:45:00+02:00","end":"2026-08-08T10:00:00+02:00","value":21.2},{"start":"2026-08-08T10:00:00+02:00","end":"2026-08-08T10:15:00+02:00","value":21.9},{"start":"2026-08-08T10:15:00+02:00","end":"2026-08-08T10:30:00+02:00","value":22.6},{"start":"2026-08-08T10:30:00+02:00","end":"2026-08-08T10:45:00+02:00","value":23.3},{"start":"2026-08-08T10:45:00+02:00","end":"2026-08-08T11:00:00+02:00","value":23.9},{"start":"2026-08-08T11:00:00+02:00","end":"2026-08-08T11:15:00+02:00","value":24.5},{"start":"2026-08-08T11:15:00+02:00","end":"2026-08-08T11:30:00+02:00","value":25},{"start":"2026-08-08T11:30:00+02:00","end":"2026-08-08T11:45:00+02:00","value":25.5},{"start":"2026-08-08T11:45:00+02:00","end":"2026-08-08T12:00:00+02:00","value":26},{"start":"2026-08-08T12:00:00+02:00","end":"2026-08-08T12:15:00+02:00","value":26.4},{"start":"2026-08-08T12:15:00+02:00","end":"2026-08-08T12:30:00+02:00","value":26.8},{"start":"2026-08-08T12:30:00+02:00","end":"2026-08-08T12:45:00+02:00","value":27.2},{"start":"2026-08-08T12:45:00+02:00","end":"2026-08-08T13:00:00+02:00","value":27.6},{"start":"2026-08-08T13:00:00+02:00","end":"2026-08-08T13:15:00+02:00","value":27.9},{"start":"2026-08-08T13:15:00+02:00","end":"2026-08-08T13:30:00+02:00","value":28.3},{"start":"2026-08-08T13:30:00+02:00","end":"2026-08-08T13:45:00+02:00","value":28.6},{"start":"2026-08-08T13:45:00+02:00","end":"2026-08-08T14:00:00+02:00","value":28.9},{"start":"2026-08-08T14:00:00+02:00","end":"2026-08-08T14:15:00+02:00","value":29.1},{"start":"2026-08-08T14:15:00+02:00","end":"2026-08-08T14:30:00+02:00","value":29.4},{"start":"2026-08-08T14:30:00+02:00","end":"2026-08-08T14:45:00+02:00","value":29.6},{"start":"2026-08-08T14:45:00+02:00","end":"2026-08-08T15:00:00+02:00","value":29.8},{"start":"2026-08-08T15:00:00+02:00","end":"2026-08-08T15:15:00+02:00","value":30},{"start":"2026-08-08T15:15:00+02:00","end":"2026-08-08T15:30:00+02:00","value":30.2},{"start":"2026-08-08T15:30:00+02:00","end":"2026-08-08T15:45:00+02:00","value":30.4},{"start":"2026-08-08T15:45:00+02:00","end":"2026-08-08T16:00:00+02:00","value":30.5},{"start":"2026-08-08T16:00:00+02:00","end":"2026-08-08T16:15:00+02:00","value":30.6},{"start":"2026-08-08T16:15:00+02:00","end":"2026-08-08T16:30:00+02:00","value":30.7},{"start":"2026-08-08T16:30:00+02:00","end":"2026-08-08T16:45:00+02:00","value":30.8},{"start":"2026-08-08T16:45:00+02:00","end":"2026-08-08T17:00:00+02:00","value":30.8},{"start":"2026-08-08T17:00:00+02:00","end":"2026-08-08T17:15:00+02:00","value":30.8},{"start":"2026-08-08T17:15:00+02:00","end":"2026-08-08T17:30:00+02:00","value":30.8},{"start":"2026-08-08T17:30:00+02:00","end":"2026-08-08T17:45:00+02:00","value":30.8},{"start":"2026-08-08T17:45:00+02:00","end":"2026-08-08T18:00:00+02:00","value":30.7},{"start":"2026-08-08T18:00:00+02:00","end":"2026-08-08T18:15:00+02:00","value":30.6},{"start":"2026-08-08T18:15:00+02:00","end":"2026-08-08T18:30:00+02:00","value":30.5},{"start":"2026-08-08T18:30:00+02:00","end":"2026-08-08T18:45:00+02:00","value":30.4},{"start":"2026-08-08T18:45:00+02:00","end":"2026-08-08T19:00:00+02:00","value":30.2},{"start":"2026-08-08T19:00:00+02:00","end":"2026-08-08T19:15:00+02:00","value":30},{"start":"2026-08-08T19:15:00+02:00","end":"2026-08-08T19:30:00+02:00","value":29.8},{"start":"2026-08-08T19:30:00+02:00","end":"2026-08-08T19:45:00+02:00","value":29.6},{"start":"2026-08-08T19:45:00+02:00","end":"2026-08-08T20:00:00+02:00","value":29.3},
  • Hilfe für Skripterstellung mit Node-RED

    962 13k
    962 Themen
    13k Beiträge
    Marc BergM
    @Thomas-Braun sagte: In der Konfigurationsdatei von Node Red, also in der settings.js, kann durch hinzufügen der Zeitzone das Problem behoben werden. Wenn man den Adapter nutzt, werden Änderungen in der settings.js immer wieder überschrieben. Das bringt nichts. @taddy81 Was konkret ist denn das Problem? Lösen die inject Nodes falsch aus? Oder geht es nur um diese Meldung, bei der niemand weiß, woher sie kommt? @Taddy81 sagte: Auszug: 7/26/2026, 11:15:23 AMnode: debug 3msg.payload : string[24]
  • Timeout für Alarmanlage (Haustür) funktioniert nicht

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    387 Aufrufe
    S
    Schau mal hier: viewtopic.php?p=226482#p226482 Gruß Christian
  • Blockly - Schaltung mit zwei Bewegungsmeldern

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    3k Aufrufe
    S
    @BigWumpus: Die Scripte verlangen etwas "Verständniss" … An/Aus ist einfach. 2 BWMs, einer mit Lichtsensor... Freundin klagt aber über zuviel Licht für Schminde oder zuwenig Licht für ... Also gibt es noch einen Taster... ` Also ich weiß ja nicht, was du dir da für eine absurde Monsterschaltung gebaut hast :D wenn es bei dir funktioniert und notwendig ist, fein. Für mich hat der Hinweis von dslraser ausgereicht - ich bin auf die 0.6.9 zurückgerollt und habe das Polling justiert. Jetzt ist es deutlich besser. Danke für die Tipps!
  • Pc ein- und ausschalten

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    5k Aufrufe
    A
    Habe ein ähnliches Anliegen, habe per Script aus dem Netz hinbekommen, dass ich meinen Rechner per Alexa Sprachbefehl über iobroker starten kann (WoL). Nun würde ich das auch gerne fürs herunterfahren hinbekommen. Mein Rechner ist ein HP Microserver auf dem Linux Mint läuft. Würde mich freuen wenn mir evtl. jmd helfen könnte. danke und Gruss Andy
  • Scripte importieren

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    premoP
    Konnte die Scripte wieder importieren.
  • Java Script startet nicht von Blockly aus

    Verschoben
    8
    1
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    R
    Danke für die Rückmeldung! :D Enrico
  • Taster zum ein auschalten und Dimmen von Milight

    Verschoben
    1
    2
    0 Stimmen
    1 Beiträge
    495 Aufrufe
    Niemand hat geantwortet
  • Heizung nach Zeit X ausschalten

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    408 Aufrufe
    Amnesia1211A
    Ja steht auf Logikwert, war aber glaube ich am Anfang von mir Falsch ausgewählt bin aber nicht mehr sicher. Jetzt klappt es auf jeden Fall. Ganz Herzlichen Dank an alle !!!
  • [gelöst blockly] Lichtsteuerung und allgemeine Einstellungsfragen zu blockly

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    911 Aufrufe
    W
    Alles klar! Das habe ich verstanden. Danke! Grüße Andreas
  • Landkarten (Maps) OSM über Node Red.

    Verschoben
    1
    1
    0 Stimmen
    1 Beiträge
    571 Aufrufe
    Niemand hat geantwortet
  • [gelöst] JS Engine Absturz

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    570 Aufrufe
    F
    Done!
  • [Gelöst] Anfängerin benötigt Unterstützung beim Blocky/Skript

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    1k Aufrufe
    D
    Danke für den Tipp! Dann erstelle ich einen neuen.
  • Wie beheben?

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    422 Aufrufe
    NegaleinN
    @paul53: @Negalein: so dann? ` Besser: createState(idYEAR_ENERGY, 0, { name: 'Energie Jahr', desc: 'Energie Jahr', type: 'number', role: 'value', unit: 'Wh' Damit die Änderungen durch das Skript erfolgen können, muss der Datenpunkt vorher gelöscht werden ! ` Danke
  • Uhrzeit in dezimal

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    417 Aufrufe
    T
    @paul53: @Torsten_MG: was bedeutet das parseInt [https://wiki.selfhtml.org/wiki/JavaScript/parseInt](https://wiki.selfhtml.org/wiki/JavaScript/parseInt) wandelt eine Zeichenkette in eine Ganzzahl, da man mit Zeichenketten nicht rechnen kann. OK, vielen Dank!!
  • Idee gesucht: Abwesenheitskontrolle mit Blocky

    Verschoben
    30
    0 Stimmen
    30 Beiträge
    3k Aufrufe
    M
    @smartboart: @mumurik: > Mache das auch ueber den tr64 Adapter… Löse das mit nem Javascript und nem timer der loslauft.. Wenn niemand da läuft Zeit... Wenn irgend ein handy wieder erreichbar wird der timer zurueckgesetzt... Wenn länger als 15 min der timer nicht zurueck gesetzt wird dann wird der state niemand zu hause erst gesetzt. Das verhindert fehlschaltungen zuverlässig. Wird irgend ein Handy erkannt wird der state wieder zurueck gesetzt. @smartboart: genau dieses Szenario versuche ich gerade abzubilden. Könntest du bitte eventuell dieses Script zur Verfügung stellen? Danke! ` Sorry den Beitrag nicht weiter verfolgt…Aber besser spät als nie... ich löse das so....funktioniert prima! ganz simpel. createState('javascript.0.Anwesenheitssteuerung.BewohnerAnwesend', {def: 'true', type: 'boolean', name: 'Bewohner Anwesend - jemand Da'}); const id1 = 'tr-064.0.devices.PC-192-168-xx-xx.active';//Mustermann const id2 = 'tr-064.0.devices.PC-192-168-xx-xx.active';//Musterfrau const id3 = 'tr-064.0.devices.PC-192-168-xx-xx.active';//Mustergast const id4 = 'javascript.0.Anwesenheitssteuerung.BewohnerAnwesend'; function Anwesend() { var Mustermann = getState(id1).val; var Musterfrau = getState(id2).val; var Mustergast = getState(id3).val; var BWA = getState(id4).val; if(Mustermann===false&&Musterfrau===false&&Mustergast===false&&BWA===true) { setStateDelayed('javascript.0.Anwesenheitssteuerung.BewohnerAnwesend', false, 180*1000);//3 min Zeit bis niemand zu Hause sicher erkannt log('Es ist niemand zu Hause'); } else { if(Musterfrau===true||Mustermann===true||Mustergast===true) { clearStateDelayed('javascript.0.Anwesenheitssteuerung.BewohnerAnwesend');//wenn innerhalb 3 min wieder aktiv wird timer zurück gesetzt setState('javascript.0.Anwesenheitssteuerung.BewohnerAnwesend', true); log('Es ist jemand zu Hause'); } } } on({id:"tr-064.0.devices.PC-192-168-xx-xx.active", change: 'ne'},function(obj){ //on(id1, function(dp) { Anwesend(); }); on({id:"tr-064.0.devices.PC-192-168-xx-xx.active", change: 'ne'},function(obj){ //on(id2, function(dp) { Anwesend(); }); on({id:"tr-064.0.devices.PC-192-168-xx-xx.active", change: 'ne'},function(obj){ //on(id3, function(dp) { Anwesend(); }); Weitere scripte die den state weiter verarbeiten trigger ich mit change ne ` Danke!
  • Scriptanfänger braucht nochmal Hilfe

    Verschoben
    18
    0 Stimmen
    18 Beiträge
    1k Aufrufe
    D
    Ein "=" ist eine Zuweisung. z.B. var Variable = Wert; Ein "==" ist ein Vergleichsoperator.
  • Einzelne Skripte aus Backupdatei *objects.json heraus bekommen

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    357 Aufrufe
    Niemand hat geantwortet
  • Hue Farbwechsel steuern mit Xiaomi Cube

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    655 Aufrufe
    J
    Danke, definitiv ein guter Tip, auch wenn ich sicher bin das dabei neue Fragen entstehen probier ich damit mal rum..
  • Regebnis eines HTTP Requests in eine Variable bringen. Wiedergehrende Ausführung.

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    282 Aufrufe
    D
    https://www.w3schools.com/xml/xml_parser.asp
  • Nochmal: Globale Variable

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    3k Aufrufe
    paul53P
    Damit die eigenen Module bei einem Update nicht verloren gehen bzw. im Minimal-Backup mit gesichert werden, sollten sie im Verzeichnis iobroker-data gespeichert werden. Ich habe dafür das Verzeichnis modules erstellt. Der Aufruf eigener Module sieht dann so aus: const test = require('../../../iobroker-data/modules/test.js'); log(test().result);
  • Xiaomi Cube Blockly Skripte für Dimmer

    Verschoben
    8
    1
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    R
    Vielen DANK an alle für die tollen Tipps. Wie folgt konnte ich das Problem nun lösen. [image: 16994_unbenannt.jpg] Ich musste erst mal jeden einzelne Lampe ansprechen und nicht die Wohnzimmergruppe. Desweiteren wurde noch ein UND hinzugefügt in dem der Power State abgefragt wurde. Hier nochmals vielen DANK an Myzer@AT

471

Online

33.0k

Benutzer

83.5k

Themen

1.3m

Beiträge