Skip to content

JavaScript

2.5k Topics 49.9k Posts

Hilfe für Skripterstellung mit JavaScript

NEWS

  • Mehrere Variablen übergeben (Stapelverarbeitung)

    javascript
    8
    0 Votes
    8 Posts
    780 Views
    paul53P
    @blackforst sagte: Ch0 sind die Werte des Wechselrichters Also "ch1" bis "ch4"? Ohne das kleine "i" in der Ziel-ID wäre es sehr einfach mit einem $-Selektor und replace(): const idsSrc = $('mqtt.0.inverter.HM1500.ch*'); idsSrc.on(function(dp) { if(!dp.id.includes('.ch0.')) { let idDst = dp.id.replace('mqtt.0.inverter.HM1500.ch', 'beckhoff.0.plc.GVL_iobroker.stPhotovoltaik.stPhotoZelle'); setState(idDst, dp.state.val); } }); Mit dem kleinen "i" erstelle zwei Arrays mit je 24 Datenpunkt-IDs in gleicher Reihenfolge. EDIT: Oder verwende für jedes Panel einen eigenen Trigger: $('mqtt.0.inverter.HM1500.ch1.*').on(function(dp) { let idDst = dp.id.replace('mqtt.0.inverter.HM1500.ch1.', 'beckhoff.0.plc.GVL_iobroker.stPhotovoltaik.stPhotoZelle1.i'); setState(idDst, dp.state.val); }); $('mqtt.0.inverter.HM1500.ch2.*').on(function(dp) { let idDst = dp.id.replace('mqtt.0.inverter.HM1500.ch2.', 'beckhoff.0.plc.GVL_iobroker.stPhotovoltaik.stPhotoZelle2.i'); setState(idDst, dp.state.val); }); $('mqtt.0.inverter.HM1500.ch3.*').on(function(dp) { let idDst = dp.id.replace('mqtt.0.inverter.HM1500.ch3.', 'beckhoff.0.plc.GVL_iobroker.stPhotovoltaik.stPhotoZelle3.i'); setState(idDst, dp.state.val); }); $('mqtt.0.inverter.HM1500.ch4.*').on(function(dp) { let idDst = dp.id.replace('mqtt.0.inverter.HM1500.ch4.', 'beckhoff.0.plc.GVL_iobroker.stPhotovoltaik.stPhotoZelle4.i'); setState(idDst, dp.state.val); });
  • Script trigger alle 5 minuten nach wechsel Bewegungsmelder

    3
    3
    0 Votes
    3 Posts
    197 Views
    wendy2702W
    @emil70 danke für deine Antwort. Jetzt wird es spannend, letzte Nacht hat es irgendwann aufgehört und jetzt scheint es wieder wie vorher zu funktionieren.
  • Python3 Skript in Iobroker einbinden

    30
    0 Votes
    30 Posts
    5k Views
    rrov1R
    @fibs Das Python-Skript passt nicht. Zum einen fehlen an verschiedenen Stellen die Einrückungen, wobei ich vermute mal das liegt ein der Einbettung des Codes hier im Forum, zum anderen sind wieder die input()-Funktionsaufrufe drinnen, welche dazu führen, dass das Skript stehen bleibt und auf Eingabe wartet. Ich habe dir noch mal eine Version mit Parametern hier beigelegt: Main.py . Was mir noch aufgefallen ist, du hast jetzt einen vierten Wert den du per input() Abfragst, den habe ich gleich mit als jetzt 4 Parameter eingebaut. Damit brauchst du jetzt auch einen vierten Datenpunkt in ioBroker + einen vierten Parameter im Javascript. Nicht vergessen, sonst geht das nicht.
  • Flexibler Schedule für Rolladensteuerung über Jarvis steuern

    10
    1
    0 Votes
    10 Posts
    924 Views
    M
    @paul53 Danke dir für deine Unterstütztung! Ich werde jetzt deinen Vorschlag so weiterverwenden. :)
  • Was will mir diese Meldung sagen ?

    3
    3
    0 Votes
    3 Posts
    343 Views
    paul53P
    @griessbx sagte: Bekomme aber eine Warnmeldung Im Tab "Protokolle" erhält man weitere Informationen zu den Warnungen. Vermutung: Datenpunkt-Typ passt nicht?
  • $-Selector und Objekte vom Typ: host/instance

    javascript
    1
    0 Votes
    1 Posts
    185 Views
    No one has replied
  • Skript läuft doppelt - wie Zombie abschalten

    10
    0 Votes
    10 Posts
    347 Views
    W
    @bahnuhr Bei mir läut nur eine JS Instanz.
  • [gelöst]Neg. Ergebniss aus Berechnung auf 0 setzen

    3
    0 Votes
    3 Posts
    389 Views
    paul53P
    @peter666666 sagte: ein neg. Ergebniss aus einer Berechnung auf 0 setzen lassen und nur pos. Ergebnisse in den DB schreiben? Einen Alias für Bezug erstellen mit Read-Konvertierung: val > 0 ? val : 0 Falls der Ursprungs-Datenpunkt bei Bezug negative Werte liefert: val < 0 ? -val : 0
  • Warten auf das Ergebnis der Funktion aus influxdb

    3
    0 Votes
    3 Posts
    317 Views
    C
    @arteck Vielen Dank für deine Antwort. Das hatte ich bereits probiert und bekomme immer beim await diese Fehlermeldung: 'await' expressions are only allowed within async functions and at the top levels of modules.(1308) index0.js(62, 16): Did you mean to mark this function as 'async'? Hatte das dann versucht einzupacken in: async function main() { } Hat allerdings alles nichts gebracht... irgendeine Fehlermeldung kommt immer...
  • Abstract base class

    Unsolved
    1
    0 Votes
    1 Posts
    244 Views
    No one has replied
  • Skalierbares Skript zur Steuerung einer Fussbodenheizung

    1
    1 Votes
    1 Posts
    209 Views
    No one has replied
  • [gelöst] getState Fehler ausblenden

    javascript
    3
    0 Votes
    3 Posts
    145 Views
    K
    @paul53 oh man, natürlich. Es kann manchmal so einfach sein. Vielen Dank
  • Programmsuchdatei in Java

    Unsolved
    5
    0 Votes
    5 Posts
    659 Views
    CodierknechtC
    @oliverio sagte in Programmsuchdatei in Java: Warum Java? Die dunkle Seite der Macht Nicht zu verwechseln mit JavaScript.
  • Funktion deklarierte Datei JavaScript

    2
    0 Votes
    2 Posts
    312 Views
    paul53P
    @jacusi Mit require() lädt man Module, die als solche deklariert sind. 'use strict'; module.exports = function (a, b) { return a + b; }; Aufruf: const add = require('./13-add'); // Pfad muss passen! log(add(3,5)); Damit eigene Module mit gesichert werden, habe ich sie unter "iobroker-data.modules" gespeichert. const add = require('../../../iobroker-data/modules/13-add'); log(add(3,5));
  • Hue zählen wenn vom Strom getrennt

    1
    0 Votes
    1 Posts
    198 Views
    No one has replied
  • E3DC

    2
    2
    0 Votes
    2 Posts
    218 Views
    No one has replied
  • [gelöst] existsObject nur für Datenpunkte unter 0_userdata?

    2
    0 Votes
    2 Posts
    189 Views
    liv-in-skyL
    @haxe nee - kann auf alles geprüft werden [image: 1678601372041-image-024.png] evtl mal die javascript neu starten
  • Websocket öffnen und Abfragen an ETH2RS232 Adapter schicken

    4
    0 Votes
    4 Posts
    200 Views
    L
    Es kann so einfach sein: "^P003PI\r"
  • Flugpreise tracken

    1
    0 Votes
    1 Posts
    252 Views
    No one has replied
  • Altes Script für sonoff Bridge versagt den Dienst

    6
    1
    0 Votes
    6 Posts
    593 Views
    B
    Ich habe gerade was gelesen. Ich habe den Debug Modus an gehabt dann schreibt er nicht die Daten in Data so wie es aussieht, ich habe ihn aus gmacht nun schreibt er Ihn in den Datenpunkt. Danke für den bemühen!

379

Online

33.1k

Users

83.7k

Topics

1.3m

Posts