Weiter zum Inhalt

JavaScript

2.5k Themen 49.9k Beiträge

Hilfe für Skripterstellung mit JavaScript

NEWS

  • Zahlenwert begrezen, elegantere Lösung gesucht

    2
    0 Stimmen
    2 Beiträge
    169 Aufrufe
    M
    @wolfgangfb Ob das eleganter ist ? Schwer zu sagen. NeuePosition = isNaN(NeuePosition) ? 0 :Math.min(Math.max(0,NeuePosition),100);
  • [gelöst] mehrere Datenpunkte mit Js erstellen

    3
    0 Stimmen
    3 Beiträge
    443 Aufrufe
    T
    @bahnuhr Danke!!! Variante 1 läuft super!
  • Homematic Thermostat umschalten

    7
    0 Stimmen
    7 Beiträge
    746 Aufrufe
    paul53P
    @skorpil sagte: noch „:1“ für den Kanal eingeben. Kanal 2.
  • Gelöst !Jsonausgabe von Elecpow in eigene DP schreiben

    10
    0 Stimmen
    10 Beiträge
    1k Aufrufe
    T
    @mikewolf Hallo, habe auch den Elecpow 2.0a und will diesen für Balkonkraftwerke nutzen. Die Daten werden in einem einzigen Json-String vom Elec (MQTT im ioBroker) angeliefert. Würde die Daten in einzelne Datenpunkte gerne zerlegen und speichern, somit Grafana zur Verfügung stellen. Funktioniert das Script? Wie könnte ich dieses für meine Zwecke verwenden? Sind natürlich die gleichen Punkte. {"ENERGY":{"Total":399.454,"Yesterday":2.708,"Today":2.665,"PowerPeakTotal":1591.4,"PowerPeakYesterday":499.6,"PowerPeakToday":483.2,"Power":69.7,"ApparentPower":63.4,"ReactivePower":0.0,"Factor":1.00,"Voltage":233.90,"Current":0.271}} Danke für die Mühen. mfg Herbert
  • Aufzählung, Script wird bei Änderungen nicht neu gestartet

    4
    0 Stimmen
    4 Beiträge
    346 Aufrufe
    Matze RM
    Hi, @paul53 ich habe es dank dir hinbekommen. Ich hatte bei der Erstellung der Aufzählungs Kategorie Name und Id unterschiedlich benannt. Bei dem Datenpunkt wurde unter function der Name gezeigt aber für Selektor eine on funktion,braucht man die ID , da hatte ich mich vertan. @bahnuhr , Cooles script ,aber das muss ich erstmal langsam analysieren was da alles passiert. Das wird interessant wenn ich dann alle Shellys , also Dimmer RGB2 shelly 1 etc. überwachen mus, dann werde ich wohl mist dem kleinen Programm nicht hinkommen. Also danke euch beiden, ihr habt mir sehr geholfen LG MR
  • MyStrom Switch ohne Cloud

    1
    1 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet
  • Dieses Thema wurde gelöscht!

    0
    0 Stimmen
    0 Beiträge
    31 Aufrufe
    Niemand hat geantwortet
  • Log Error aus Script: Read-only state ... written without...

    5
    0 Stimmen
    5 Beiträge
    301 Aufrufe
    M
    @rtwl Zeilen 268 - 276 müssten auch angepasst werden. Bei einigen steht noch: 'write':false
  • Datenpunkt der über Google Assistant abfragbar ist

    3
    0 Stimmen
    3 Beiträge
    180 Aufrufe
    Marcus 1M
    @marcus-1 Das Problem wurde gelöst: https://forum.iobroker.net/topic/62890/google-assistant-soll-string-aus-datenpunkt-ansagen
  • Daten jede Stunde in JSON schreiben

    4
    1
    0 Stimmen
    4 Beiträge
    481 Aufrufe
    A
    @chris76e sorry, falsch verstanden. Das kommt davon, wenn man schnell am Handy liest und dabei mit der Enkelin spielt 🙄
  • immer wieder Problem mit "is not defined"

    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    Thorsten MissenbergerT
    hab jetzt mal einen neuen Container mit ioBroker aufgesetzt. Hier geht das script ohne Fehlermeldungen. Auch das HueScript macht keine Probleme. Ich habe jetzt schon den Javascript-Adapter gelöscht und wieder installiert. Brachte nix und was komisch war, das alles Scripte wieder da waren. Kann man das nicht komplett löschen? Will jetzt nicht alles neu aufsetzen aus dem Backup, da ich Vermute, das das den Fehler mitschleift, da ich das Problem schon auf dem NUC hatte und jetzt im Proxmox auch.
  • await is only valid in async functions ...

    26
    0 Stimmen
    26 Beiträge
    2k Aufrufe
    W
    @codierknecht Richtig, ist aber ein Punkt den ich an der Stelle ignoriere. Warum? Die Schleife die alle X Minuten (Aktuell 10) einen neuen Wert würfelt berücksichtigt den Zeitplan. Der "falsche" Wert greift also maximal für die Schlafzeit des Scriptes. Für mich verkraftbar.
  • Button Alle Lichter aus Logik+Vis (hqwidgets+inventwo)

    13
    3
    0 Stimmen
    13 Beiträge
    1k Aufrufe
    FuchsbauF
    @iobit Ja, auch ich habe mir diesen Adapter erste zu Weihnachten etwas genauer angeschaut und bin begeistert. [image: 1675966585452-36c2d0b7-19bd-4f1a-b364-677f319ce2c5-image.png]
  • [Gelöst] Funktion wird scheinbar nicht ausgeführt

    15
    0 Stimmen
    15 Beiträge
    476 Aufrufe
    CodierknechtC
    @wolfgangfb sagte in [Gelöst] Funktion wird scheinbar nicht ausgeführt: Nein, ich habe eben seit über 20 Jahren fast nichts anderes mer als Delphi (mit meinen Einstellungen) gemacht und fange jetzt mer oder weniger mit Javaskript an. Willkommen im Club. Was ich mir partout nicht abgewöhnen kann ist die Mischung aus englischen und deutschen Bezeichnungen. Bei mir steht auch überall GetNewAuftragsnummer oder SaveVersandauftragToDB
  • ns panel lovelace ui

    Ungelöst
    7
    0 Stimmen
    7 Beiträge
    660 Aufrufe
    T
    @venice alles klar. löschen kannst du kein Post, nur bearbeiten.
  • Shutdown remote linux raspi

    2
    0 Stimmen
    2 Beiträge
    337 Aufrufe
    mickymM
    @rupobk 1. Musst Du die ssh keys im Homeverzeichnis des jeweiligen Users einrichten und 2. Wenn Dein Script läuft, läuft es mit dem User iobroker, wenn Du die Befehlszeile aufmachst mit dem User, mit dem Du Dich angemeldet hast. Du musst also den User iobroker auch auf dem Zielsystem die entsprechenden Rechte einrichten.
  • HTML-Table für VIS oder Iqontrol (js und blockly)

    javascript template blockly
    295
    23
    10 Stimmen
    295 Beiträge
    94k Aufrufe
    liv-in-skyL
    hier geht es weiter mit fuelpricemonitor https://forum.iobroker.net/post/942817
  • JS - setState - von Syntax keine Ahnung :disappointed:

    5
    1
    0 Stimmen
    5 Beiträge
    243 Aufrufe
    metaxaM
    @paul53 Funktioniert auf den ersten Blick, danke. Somit kann ich mir den ganzen Schmarren mit "Alias" sparen. Lediglich die Warnmeldung stört mich: [image: 1675719570974-36fac489-0a4e-483b-9678-17d3f7023949-image.png] MEIN DP ist string, ich erwartete ursprünglich string. Kurzer Hand auf Number umgestellt und schon funktioniert es :-) Wieder einmal lieben Dank @paul53 !
  • Timestamp - Welches Format für DP?

    11
    0 Stimmen
    11 Beiträge
    386 Aufrufe
    haus-automatisierungH
    @paul53 sagte in Timestamp - Welches Format für DP?: In den Datenpunkt wird die UTC-Zeit geschrieben. Erzeuge einen String mit der lokalen Zeit mittels new Date().toLocaleString() Dann aber bitte nicht role: date setze, weil dann versucht z.B. der Admin das zu parsen / gibt den Inhalt an new Date(). Und bei einem Deutschen Datumsformat geht das oft schief. Sonst lieber als UTC-String oder halt als Timestamp (s.o.).
  • Sleep bei Ereignis unterbrechen

    3
    0 Stimmen
    3 Beiträge
    157 Aufrufe
    haus-automatisierungH
    Beispiel (ungetestet): const EventEmitter = require('events'); const eventEmitter = new EventEmitter(); async function sleep(ms) { return new Promise(resolve => { const timeout = setTimeout(resolve, ms * 1000); eventEmitter.on('cancel', () => { clearTimeout(timeout); resolve(); }); }); } on({ id: ...}, () => { eventEmitter.emit('cancel'); }); Eventuell wäre es schlauer mit .once() und/oder .removeAllListeners() zu arbeiten. Aber einfach mal rumspielen. Reicht das als Denkanstoß? const EventEmitter = require('events'); const eventEmitter = new EventEmitter(); async function sleep(ms) { return new Promise(resolve => { let timeout = undefined; timeout = setTimeout(() => { timeout = undefined; eventEmitter.removeAllListeners('cancel'); resolve(); }, ms * 1000); eventEmitter.once('cancel', () => { if (timeout) { clearTimeout(timeout); } resolve(); }); }); } on({ id: ...}, () => { eventEmitter.emit('cancel'); });

388

Online

33.1k

Benutzende

83.7k

Themen

1.3m

Beiträge