Skip to content

JavaScript

2.5k Topics 49.9k Posts

Hilfe für Skripterstellung mit JavaScript

NEWS

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

    3
    0 Votes
    3 Posts
    361 Views
    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 Votes
    10 Posts
    784 Views
    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 Votes
    4 Posts
    746 Views
    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 Votes
    8 Posts
    948 Views
    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 Votes
    7 Posts
    555 Views
    T
    @fredf Ja in diesem Fall wars richtig. Aber recht haste :)
  • DSB Mobile Abfrage per iobroker

    1
    0 Votes
    1 Posts
    265 Views
    No one has replied
  • Probleme mit einfachen IF Abfragen

    8
    0 Votes
    8 Posts
    914 Views
    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 Votes
    2 Posts
    345 Views
    bergjetB
    Das Problem gibt es noch immer. hat wer eine Idee?
  • [gelöst] Warten auf Erstellen und Befüllen von DP

    7
    0 Votes
    7 Posts
    585 Views
    dirk_1930D
    @alcalzone Vielen, vielen Dank! Es geht!
  • Taster für Rollo Shutter vom Shelly abfragen

    1
    2
    0 Votes
    1 Posts
    196 Views
    No one has replied
  • Timestamp von Objekt verändern

    4
    0 Votes
    4 Posts
    452 Views
    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

    Moved
    617
    3
    7 Votes
    617 Posts
    219k Views
    M
    @glasfaser Danke für den TIP
  • Kann jemand hefebn

    9
    0 Votes
    9 Posts
    1k Views
    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 Votes
    5 Posts
    2k Views
    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 Votes
    3 Posts
    584 Views
    S
    da hätte ich auch Interesse dran. hat das schon jemand hinbekommen?
  • [gelöst] deklariertes object nicht vorhanden

    6
    0 Votes
    6 Posts
    292 Views
    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 Votes
    10 Posts
    739 Views
    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 Votes
    48 Posts
    3k Views
    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 Votes
    3 Posts
    284 Views
    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 Votes
    2 Posts
    266 Views
    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

429

Online

33.1k

Users

83.7k

Topics

1.3m

Posts