Weiter zum Inhalt

JavaScript

2.5k Themen 49.9k Beiträge

Hilfe für Skripterstellung mit JavaScript

NEWS

  • [gelöst] id Farbe ändern mit JS und css

    3
    0 Stimmen
    3 Beiträge
    361 Aufrufe
    M
    @chrunchy Dankeschön für die Hilfe Chrunchy Die Lösung ist doch so einfach! in HTML die Farbe setzen: html1 = html1 + '<td><font color=red>' + getState('tankerkoenig.0.stations.cheapest.e5.short').val + '</td> <td>' + getState('tankerkoenig.0.stations.cheapest.e5.name').val + '</td> </tr>';
  • $-Operator liefert nicht alles

    10
    0 Stimmen
    10 Beiträge
    784 Aufrufe
    A
    @paul53 Das hat sich jetzt etwas überschnitten... ;) Ja, wenn ich die Liste der Geräte woanders herbekomme, passt das. Meine Idee war ursprünglich, einfach die Objekte anzulegen und dann befüllen zu lassen. In den Metadaten der Objekte sollen nämlich auch noch Abhängigkeiten erfasst werden (Gerät x ist von Gerät y abhängig, z.B. PC ist von geschalteter Steckdose abhängig), um Geräte in einer bestimmten Reihenfolge hoch-/runterfahren zu können. Da muss ich eh in die Eigenschaften des Objekts um das zu bearbeiten - oder ich lege mir in JS eine Struktur mit den benötigten Informationen an, das wäre auch noch eine Idee...
  • Probleme mit SendTo

    4
    0 Stimmen
    4 Beiträge
    746 Aufrufe
    OliverIOO
    Hast du das den mal ausprobiert mit Zeile 10 was ich geschrieben habe? Was willst du den mit den Daten machen? Das JSON.stringify ist für die Weiterbearbeitung erst mal nicht hilfreich. Erst wenn du ein javascript-Objekt in einen Datenpunkt schreiben willst musst du das machen. In result.result ist ja ein Array mit Objekten Jedes Objekt ein Datensatz aus deiner Datenbank gemäß dem SQL Ansonsten machst du einfach so var db = "XXX"; var table = "XXX"; var test1 = ""; sendTo('sql.0', 'query', 'SELECT * FROM ' + db + "." + table + ' where datum between "2022-03-01" and "2022-03-28"', function (result) { if (result.error) { console.error(result.error); } else { // show result help_func(result.result); } }); function help_func(result) { console.debug(result); }
  • Überwachen in Objektbaum

    8
    0 Stimmen
    8 Beiträge
    948 Aufrufe
    T
    @tyantreides ich hab mich wohl falsch ausgedrückt. Ich weiß was es macht, aber in die Sprache um einen Regex String richtig zu schreiben muß ich mich erst einlesen. Mit Regex reagiert das Skript auch auf Datenpunkte die später hinzugefügt wurden.
  • [gelöst] Intervall Scriptausführung

    7
    0 Stimmen
    7 Beiträge
    555 Aufrufe
    T
    @fredf Ja in diesem Fall wars richtig. Aber recht haste :)
  • DSB Mobile Abfrage per iobroker

    1
    0 Stimmen
    1 Beiträge
    265 Aufrufe
    Niemand hat geantwortet
  • Probleme mit einfachen IF Abfragen

    8
    0 Stimmen
    8 Beiträge
    915 Aufrufe
    M
    Super, danke so hat es geklappt mittels "Sichtbarkeit", danke trotzdem für das Skript :) Akku ist zwar voll, aber das umschalten eben im Test hat geklappt. Vielen Dank! [image: 1648135782751-2022-03-24-16_28_28-edit-vis.png]
  • Javascript und homee Adapter

    2
    0 Stimmen
    2 Beiträge
    345 Aufrufe
    bergjetB
    Das Problem gibt es noch immer. hat wer eine Idee?
  • [gelöst] Warten auf Erstellen und Befüllen von DP

    7
    0 Stimmen
    7 Beiträge
    585 Aufrufe
    dirk_1930D
    @alcalzone Vielen, vielen Dank! Es geht!
  • Taster für Rollo Shutter vom Shelly abfragen

    1
    2
    0 Stimmen
    1 Beiträge
    196 Aufrufe
    Niemand hat geantwortet
  • Timestamp von Objekt verändern

    4
    0 Stimmen
    4 Beiträge
    452 Aufrufe
    Siggi0904S
    Ich hatte sowas auch schon einmal angefragt. Da wurde das auch gesagt, dass es nicht möglich sei. Ich hatte den Wunsch/Idee im Adapter SourceAnalytics (oder auch für einen anderen Adapter) die vorhandenen Zählerstände zu importieren, dass man nicht bei Null beginnen muss.
  • [Vorlage] JS: Log-Datei aufbereiten für VIS

    Verschoben
    617
    3
    7 Stimmen
    617 Beiträge
    219k Aufrufe
    M
    @glasfaser Danke für den TIP
  • Kann jemand hefebn

    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    AlCalzoneA
    @berlinchris81 sagte in Kann jemand hefebn: '0' (eine Zeichenkette) geht auch nicht zusammen mit "type": "number" (eine Zahl)
  • Cannot read property " " of undefined ?

    5
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    S
    @wendy2702 Tausend Dank, genau das war's. Hab den Serialport auf 9.2.8 geändert, läuft erstmal wieder! Code werde ich später anpassen
  • Helium HNT Dashboard - npm package von Github installieren

    3
    0 Stimmen
    3 Beiträge
    584 Aufrufe
    S
    da hätte ich auch Interesse dran. hat das schon jemand hinbekommen?
  • [gelöst] deklariertes object nicht vorhanden

    6
    0 Stimmen
    6 Beiträge
    292 Aufrufe
    Ben1983B
    @paul53 Ich habe es gefunden. Ich hatte die Deklaration im TypeScript gemacht. Wähle ich bei einem neunen Script JavaScript, dann funktioniert es. Sollte das so sein, oder ist das ein Bug?
  • [gelöst] Inhalt Liste als Datei speichern und wieder laden

    10
    2
    0 Stimmen
    10 Beiträge
    739 Aufrufe
    M
    @asgothian Ich habe soeben den Import hinbekommen. Nun funktioniert es erstmal. Danke. Als Trennzeichen zwischen den einzelnen Datenpunkte hab ich "Neue Zeile \n" genommen und damit geht es echt gut. Beim zurückschreiben hab ich noch einen Schönheitsfehler. Ich müsste eigentlich zwischen "Logikwert", "Zeichenkette"; "Zahl" und soweiter unterscheiden. Das muss ich mir noch mal genauer anschauen. Aber es geht erstmal. Manfred
  • [gelöst] Javascript-adapter ruft on ereignis doppelt auf

    48
    0 Stimmen
    48 Beiträge
    3k Aufrufe
    haus-automatisierungH
    @ben1983 sagte in [gelöst] Javascript-adapter ruft on ereignis doppelt auf: Wie gehst Du nun weiter mit dem Shelly Adapter vor? Wenn ich Zeit finde, gucke ich mir das an. Das wird aber noch dauern, da ich in letzter Zeit alles andere unter der Entwicklung gelitten hat :) Du brauchst also nicht täglich zu fragen.
  • States und Threadsicherheit

    3
    0 Stimmen
    3 Beiträge
    284 Aufrufe
    H
    Erstmal besten Dank für deine Rückmeldung. @asgothian said in States und Threadsicherheit: die Warteschlange bei jeder Anpassung durch persistState() sichern. Das habe ich im Prinzip bereits versucht. In queueMessage wird nach jeder Änderung persistiert, in sendNext ebenfalls. Imho Tritt das Problem auf, wenn während eines Vorgangs auf dem State eine weitere State-Operation ausgeführt wird, etwa so: modulA: queueMessage("hallo") modulA->notificationService: loadState => state entspricht [] modulB: queueMessage("hallo2") modulB->notificationService: loadState => alter state wird geladen, entspricht [] modulA->notificationService: persistState => state entspricht ["hallo"] modulB->notificationService: persistState => state entspricht ["hallo2"] modulC->sendNext() => "hallo2" // vereinfacht Ich bräuchte gewissermaßen ein Statelock. modulA: queueMessage("hallo") modulA->notificationService: lockState modulA->notificationService: loadState => state entspricht [] modulB: queueMessage("hallo2") modulB->notificationService: lockState => muss warten modulA->notificationService: persistState => state entspricht ["hallo"] modulA->notificationService: unlockState modulB->notificationService: lockState => lock wurde aufgehoben, jetzt geht es hier weiter modulB->notificationService: loadState => state wird geladen, entspricht ["hallo"] modulB->notificationService: persistState => state entspricht ["hallo", "hallo2"] modulB->notificationService: unlockState modulC->sendNext() => "hallo" // vereinfacht @asgothian said in States und Threadsicherheit: die Warteschlange als Skript globale Variable im Speicher halten, und nur beim Start des Skriptes aus dem Datenpunkt lesen Bitte korrigiere mich, falls ich falsch liege, aber Globale Variablen gibt es doch im JavaScript-Adapter eigentlich nicht? Soweit ich den Adapter verstanden habe, wird der Code der Globale Scripte einfach oberhalb des Codes eines Modules (also pro *.ts, *.js Datei) eingefügt. Demzufolge hätte ich dann ja kein einzelne globale Variable, sondern mehrere. Die würden dann alle unterschiedliche Daten enthalten, oder gibt es hier noch ein Feature das ich nicht kenne?
  • VIS Slider Werte 0, 6, 7, 8...16

    2
    0 Stimmen
    2 Beiträge
    266 Aufrufe
    liv-in-skyL
    @maniac_on_moon habe mal etwas getestet - ich glaube, du brauchst dafür einen extra dp und ein kleines script dafür ich vermute, dass die formel {myVar:0_userdata.0.CONTROL-OWN.RaspBerry-Helper.RaspiVolume; myVar<=6 ? 0 : myVar} nicht funktioniert - ich habe es damit nicht zum laufen bekommen - in einem html widget funktioniert diese formel

324

Online

33.1k

Benutzende

83.7k

Themen

1.3m

Beiträge