Skip to content

JavaScript

2.5k Topics 49.2k Posts

Hilfe für Skripterstellung mit JavaScript

NEWS

  • Restlaufzeit (hh:mm) in Minuten umwandeln [gelöst]

    4
    1
    0 Votes
    4 Posts
    179 Views
    P
    Vielen vielen Dank Euch 2!
  • HTML Tabelle für Tankerkönig

    javascript template
    18
    4
    6 Votes
    18 Posts
    4k Views
    liv-in-skyL
    @reindeer-web könnte sein, dass dies an meinen scripten liegt - ff macht immer eine leerzeile dazwischen - weiß nicht warum normalerweise sollte das mit ff auch funktionieren
  • [GELÖST]Fehlerhafte Seiten im NSPanel

    5
    2
    0 Votes
    5 Posts
    473 Views
    G
    @armilar Vielen Dank für deine Hilfe! Ich habe nun ein anderes Script, hier funktioniert die Darstellung - Danke für die schnelle Hilfe! :)
  • Zip Archiv erstellen

    6
    0 Votes
    6 Posts
    247 Views
    F
    @wolfgangfb also da gibt es 100te Beispiele auch hier im Forum :-) exec('ls -la /opt/iobroker >/opt/iobroker/hallo.txt', (err, out, e) => { if (err) console.error(err); if (e) console.error(e); require('fs').readFile('/opt/iobroker/hallo.txt', 'utf8', (err, data) => { if (err) console.error(err); else console.log(data); }) })
  • Klammern bei Funktionen ohne Parameter vergessen

    1
    0 Votes
    1 Posts
    75 Views
    No one has replied
  • Datapoint influxdb per script aktivieren

    3
    0 Votes
    3 Posts
    369 Views
    A
    @paul53 Vielen Dank. Funktioniert. Erspart mir Stunden um alles händisch zu aktivieren
  • Zugriff auf VIS Website triggert Datenpunktänderung

    javascript
    3
    0 Votes
    3 Posts
    286 Views
    M
    @codierknecht Danke. Das funktioniert.
  • Countdown Adapter html Table sortieren

    5
    0 Votes
    5 Posts
    522 Views
    A
    @codierknecht Sorry ich wusste nicht, dass man das in anderen Tools anders lösen kann. Soweit ich es verstehe, wird bei Lovelace die Html tabelle als Datenpunkt dargestellt und alle Anpassungen müssen über JS im vorhinein erledigt werden.
  • [gelöst] on() mit Vergleich und erst nach X Sekunden

    5
    0 Votes
    5 Posts
    408 Views
    F
    Falls jemand Interesse an der kompletten Lösung hat (Verbesserungsvorschläge willkommen). Aufgabe: Sende jede Minute eine Nachricht wenn bestimmte Fenster länger als X Minuten offen ist und die Aussentemperatur kleiner als "activeTemp" ist. Das hilft meiner vergesslichen Familie viel Heizenergie zu sparen :-) const aFenster = [ { "id": "hm-rpc.0.KEQ0006299.6.SENSOR", "descr": "in der Küche Richtung Garten" }, { "id": "hm-rpc.0.KEQ0006287.1.SENSOR", "descr": "im HWR" }, { "id": "hm-rpc.0.KEQ0006287.6.SENSOR", "descr": "im Wohnzimmer links" }, { "id": "hm-rpc.0.KEQ0006287.12.SENSOR", "descr": "im Wohnzimmer rechts" } ]; const idTemp = 'hm-rpc.1.NEQ0773998.1.TEMPERATURE'; // Aussentemperatur const activeTemp = 15; const delay = 5; // Minuten solange im Intervall unten 60000 steht var interval = null; aFenster.forEach(Fenster => on(Fenster.id, function (dp) { if (getState(dp.id).val) { console.log("Fenster " + Fenster.descr + " geoeffnet"); let cnt = 0; interval = setInterval(function () { cnt++; // wenn Counter größer als delay && Aussentemperatur kleiner als activeTemp if (cnt >= delay && getState(idTemp).val < activeTemp) { var duration = Math.round((Date.now() - dp.state.lc) / 60000) // sende Nachricht ins Log, oder via telegram, oder lass Alexa schimpfen.. console.log("Das Fenster " + Fenster.descr + " ist schon " + duration + " Minuten offen."); } }, 60000); } else { // Fenster schließt clearInterval(interval); console.log("Fenster " + Fenster.descr + " geschlossen"); } })); Danke noch mal @paul53!
  • [gelöst] gefühlte Temperatur

    45
    0 Votes
    45 Posts
    3k Views
    CodierknechtC
    @Peter666666 @paul53 sagte in gefühlte Temperatur: @peter666666 sagte: Es funktioniert. Dann setze bitte das Thema in der Überschrift des ersten Beitrags auf [gelöst]. Und eröffne für Dein Cloud-Problem einen neuen Thread.
  • Axios: Fail to parse JSON data','code':-1

    6
    0 Votes
    6 Posts
    450 Views
    cashC
    @issi sehr cool. Danke für den Hinweis. Bleibe aber vorerst bei meinen Script da ich von meinen 3 elgatos nur eine steuern möchte und ich den Status auch nur Mo-Fr. von 7:00 - 16:00 abfrage. Somit vermeide ich unnötige Abfragen in meinen Netz. Falls mein Script dann mal wieder nicht läuft steige ich aber wahrscheinlich um.
  • [Tester gesucht] Roborock-API

    81
    14 Votes
    81 Posts
    29k Views
    wendy2702W
    @oxident OK. Hatte nicht mitbekommen das @Meistertr hier nicht mehr aktiv ist
  • Globales Skript in anderem globalen Skript verwenden

    1
    0 Votes
    1 Posts
    195 Views
    No one has replied
  • Wie Script ändern damit neuster Eintrag als erstes ist?

    2
    0 Votes
    2 Posts
    181 Views
    paul53P
    @chris76e sagte: neuste Eintrag als erstes Zeilen 32, 33 table.unshift(obj); if(table.length > 100) table.pop();
  • [gelöst] Zeichen in String einfügen

    13
    0 Votes
    13 Posts
    1k Views
    paul53P
    @delamaris sagte: es funktioniert. Dann setze bitte das Thema in der Überschrift des ersten Beitrags auf [gelöst].
  • Gelöst: Bild von Motioneye nach VIS kopieren mit JavaScript

    javascript
    24
    0 Votes
    24 Posts
    2k Views
    I
    @michihorn das verstehe ich schon. nur ich brauche den Pfad von Motioneye zum zuletzt aufgenommen Bild
  • [gelöst] function in function

    9
    0 Votes
    9 Posts
    628 Views
    CodierknechtC
    @ptr sagte in [gelöst] function in function: Es geht um das Thema: https://forum.iobroker.net/topic/62228/multitimeout-wie-function-übergeben-von-blockly-in-js Hatte ich schon gelesen und antworte daher dort ...
  • on({id: ....mit timer kombiniert? Mehrfacher Aufruf??

    10
    0 Votes
    10 Posts
    719 Views
    CodierknechtC
    @paul53 Cool - das wandelnde Programmierhandbuch hat wieder zugeschlagen
  • Löschen von Objekten in Aufzählungen [solved]

    7
    0 Votes
    7 Posts
    655 Views
    cengC
    Danke @paul53 Danke für den Support @paul53 Mittlerweile bin ich nach rumprobieren da... if(existsObject('enum.rooms.' + RaumnameAmDevice)) { console.log('Raum ' + RaumnameAmDevice + ' vorhanden'); let obj = getObject('enum.rooms.' + RaumnameAmDevice) if(obj.common.members.includes(DP_Selected)) { console.log('DP ist in Raumaufzählung vorhanden. Obj ' + JSON.stringify(obj)); let idx = obj.common.members.indexOf(DP_Selected); console.log(DP_Selected + ' ist in der Aufzählung für ' + RaumnameAmDevice + ' an Stelle ' + idx); if(idx > -1) { console.warn('Lösche ' + DP_Selected + ' ID:' + idx); obj.common.members.splice(idx, 1); setObject('enum.rooms.' + RaumnameAmDevice, obj, function (err) { if (err) console.error('Fehler: Lösche ID ' + idx + ' | DP ' + DP_Selected + ' aus Aufzählung ' + String(RaumnameAmDevice) + ' fehlgeschlagen. Error=' + err, 'error'); }); if (getState('0_userdata.0.Global.Debug').val == true) { console.log(('Raumzuweisung für DP_Selected: ' + DP_Selected + ' | RaumAmDevice: ' + RaumnameAmDevice + ' RaumAmDP '+ RaumnameAmDP + ' gelöscht')); } } } else { console.log(DP_Selected + ' ist nicht Aufzählung vorhanden'); } } else { if (getState('0_userdata.0.Global.Debug').val == true) { console.log(('Raum ' + RaumnameAmDevice + ' ist nicht in Aufzählung vorhanden. DP Selected:' + DP_Selected)); } }
  • [gelöst] kein Log in JS-Scripten möglich

    22
    0 Votes
    22 Posts
    2k Views
    L
    @mrjeschke Ja, das war es! 1000 Dank! Was mich aber brutal ärgert: ich war der Meinung, dass ich hätte das schon ausprobiert bzw. umgestellt .... . Es ist halt wie so häufig: das Problem sitzt vor der Tastatur und sieht den Wald vor lauter Bäumen nicht ....

274

Online

32.8k

Users

82.8k

Topics

1.3m

Posts