Skip to content

Skripten / Logik

Hilfe zu JavaScript, Blockly, TypeScript, Node-RED, Scenes und text2command

16.6k Topics 213.7k Posts

NEWS

Subcategories


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Topics
    49k Posts
    D
    @ArnoD Vielen Dank werde ich morgen machen!
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Topics
    79k Posts
    paul53P
    @Duffy sagte: Es unterscheidet irgendwie nicht zwischen BWM 1 und 2. Doch, in den Logs wurde unterschieden. Es ist allerdings nicht nachvollziehbar, weshalb unmittelbar nacheinander BWM 1 den entgegengesetzten Wert und BWM 2 den gleichen Wert zweimal annimmt. EDIT: Versuche es mal mit getrennten Triggern für BWM 1 und BWM 2: [image: 1771881389743-blockly_temp.jpg]
  • Hilfe für Skripterstellung mit Node-RED

    953 13k
    953 Topics
    13k Posts
    Marc BergM
    Es gibt in der Verson 1.3.0 einen neuen Node: iob-setObject (Stand 10.02.26 noch beta) Mit dem neuen Node kann man ioBroker-Objektdefinitionen (Metadaten) direkt schreiben und ändern. Hauptfunktionen: Instanz-Konfigurationen ändern - z.B. MQTT publish-Pattern, Intervalle, etc. Objekt-Eigenschaften aktualisieren - Namen, Rollen, Einheiten, Min/Max-Werte ändern es gibt zwei Modi: Merge-Modus : Ändert nur die angegebenen Eigenschaften, alle anderen bleiben erhalten Replace-Modus: Überschreibt das komplette Objekt Typischer Workflow: Objekt mit iob-getobject holen Mit Change-Node gewünschte Properties ändern Mit iob-setobject zurückschreiben
  • YAHKA: Kein Einbinden der Bridge in Home App möglich

    5
    0 Votes
    5 Posts
    453 Views
    I
    @tombox sagte in YAHKA: Kein Einbinden der Bridge in Home App möglich: @invidianer gibt es denn Fehler im log oder im debug log Wie gesagt, es geht wieder! Tatsächlich anscheinend ein Problem zwischen YAHKA und node.js 18.15.0: https://github.com/jensweigele/ioBroker.yahka/issues/403
  • Mennekes Charge Control Wallbox Überschussladen

    3
    1
    0 Votes
    3 Posts
    413 Views
    P
    Wow, funktioniert perfekt, vielen vielen Dank!!! So eine einfache Übersicht hätte ich gerne für meine PV Landschaft mit verschiedenen WR.
  • Shelly Plus i4 soll anderen Shelly schalten

    9
    0 Votes
    9 Posts
    5k Views
    J
    @da_woody Da es sich um Shelly's der 2. Generation handelt, funktionieren die Befehle scheinbar nicht. Deine Anleitung funktioniert nur, wenn ich einen Shelly der 1. Generation schalten will (z.B. Plug S). Ich bräuchte einen RPC-Befehl für die 2. Generation bitte. Komme mit der API-Beschreibung nicht wirklich klar. Danke trotzdem
  • Best Practise zum Anlegen von Datenpunkten

    3
    0 Votes
    3 Posts
    326 Views
    Rene55R
    @paul53 Also grundsätzlich ok, Ergänzung um read und write. Und den Bereich um "native" als gegeben so hinnehmen.
  • [gelöst] Schedule für Monatswechsel triggert täglich

    6
    2
    0 Votes
    6 Posts
    470 Views
    G
    @paul53 said in Schedule für Monatswechsel triggert täglich: Nimm besser einen CRON-String: "2 0 1 * *" Mach ich, ist übersichtlicher! Danke
  • JScript-Editor in Blockly zickt rum

    12
    1
    0 Votes
    12 Posts
    815 Views
    I
    @gombersiob sagte in JScript-Editor in Blockly zickt rum: Wobei ich selber weniger mit Blockly arbeite. Ich finde JavaScript (besser noch TypeScript) handlicher und übersichtlicher. Finde ich auch, zumindest bei den eintönigen Definitionen für Datenpunkte ist JS knapper und übersichtlicher.
  • An OpenDtu http request senden

    communication
    1
    1
    0 Votes
    1 Posts
    402 Views
    No one has replied
  • CPU Temp von Windows PC auslesen? Hotkeys auf PC starten?

    22
    0 Votes
    22 Posts
    3k Views
    EddeE
    @mickym Perfekt. So läuft es wunderbar. Vielen Dank.
  • ausgehender Fritzbox-Anruf Wassermelder

    5
    0 Votes
    5 Posts
    448 Views
    D
    @djmarc75 said in ausgehender Fritzbox-Anruf Wassermelder: hast Du den Adapter tr064 im Einsatz ? Ja, den habe ich im Einsatz. Wie geht das denn mit dem tr064 Adapter?
  • [GELÖST] Eigene Objekt Einstellung für Sourceanalytix

    5
    3
    0 Votes
    5 Posts
    310 Views
    YodaY
    @homoran die Fehler die ich dort finde kommen von der Fritz Steckdosen warum kann ich nicht wirklich nachvollziehen. Es waren aber noch einige andere Fehler vorhanden - die ich beseitigen konnte. Wobei eigentlich kein Fehler mit meinem Objekt direkt zu tun hatten. Keine Ahnung aber nun sind meine neuen Objekte 6-WattVerbrauch-Minus-SolarWatt vorhanden: [image: 1678660220540-ok1.png] Danke dir für den tip mit dem Log - da hatte ich nicht reingeschaut - sind noch andere Fehler um die ich mich mal kümmern müsste .... :-( sourceanalytix.0 2023-03-12 23:20:50.456 info Initialization of 0_userdata.0.Strom.6-WattVerbrauch-Minus-SolarWatt successfully sourceanalytix.0 2023-03-12 23:20:47.274 info Initialising (36 of 36) "0_userdata.0.Strom.6-WattVerbrauch-Minus-SolarWatt" sourceanalytix.0 2023-03-12 23:20:10.286 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_previousWeek failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.286 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_previousWeek, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.281 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_previousWeek, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:10.272 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_previousDay failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.272 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_previousDay, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.271 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_previousDay, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:10.261 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.05_currentYear failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.261 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.05_currentYear, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.260 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.05_currentYear, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:10.202 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.03_currentMonth failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.201 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.03_currentMonth, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.201 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.03_currentMonth, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:10.192 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_currentWeek failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.191 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_currentWeek, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.191 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.02_currentWeek, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:10.179 error Initialization of sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_currentDay failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:10.179 error Cannot handle calculations for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_currentDay, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:10.179 error No cost type defined for sourceanalytix.0.fritzdect__0__DECT_087610178347__power.currentYear.consumed.01_currentDay, please Select Type of calculation at state setting sourceanalytix.0 2023-03-12 23:20:04.041 error Initialization of tuya.0.bf8e70a10eeb5baa2aycrz.19 failed, check warn messages ! sourceanalytix.0 2023-03-12 23:20:04.038 error Cannot handle calculations for tuya.0.bf8e70a10eeb5baa2aycrz.19, check log messages and adjust settings! sourceanalytix.0 2023-03-12 23:20:04.038 error No cost type defined for tuya.0.bf8e70a10eeb5baa2aycrz.19, please Select Type of calculation at state setting
  • [GELÖST] clear schedule?

    Locked Moved
    9
    0 Votes
    9 Posts
    4k Views
    ?
    Eine sehr hilfreiche Antwort von einer sehr intelligenten Person. Was ist das denn denn für eine ulkige Gesellschaft hier ;) Deinen Schliemann kannst du dir sonst wo hinschieben....
  • Auslesen der Viessmann Cloud für Heizung?!?

    Moved
    109
    0 Votes
    109 Posts
    26k Views
    H
    Ich bin mir nicht ganz sicher, ob ich die Datenpunkte richtig interpretiere. Kann mir jemand sagen ob das stimmt? Kesseltemperatur: viessmannapi.0.216418.0.features.heating.boiler.sensors.temperature.main.properties.value.value Vorlauftemperatur: viessmannapi.0.216418.0.features.heating.boiler.temperature.properties.value.value Die Vorlauftemperatur wird mir in der App von Viessmann allerdings immer um ein paar Grad anders angezeigt. Das verwirrt mich. Außerdem wird mir in der App auch die Abgastemperatur angezeigt (auf der Viessmann-Webseite allerdings nicht). Gibt es hierfür auch einen Datenpunkt im ioBroker?
  • Alias Konvertierungsfunktion: Mehrere Variablen?

    3
    0 Votes
    3 Posts
    283 Views
    C
    @paul53 Danke!
  • Telegram sendet nur Nachrichten wenn ich im Land bin

    2
    0 Votes
    2 Posts
    206 Views
    E
    @dewulf sagte in Telegram sendet nur Nachrichten wenn ich im Land bin: Blockly-Skripte Dann solltst du dein Blockly-Skripte auch hier mal posten, wie soll dir sonst jemand helfen
  • XML oder JSON Requests senden

    communication
    13
    0 Votes
    13 Posts
    1k Views
    OliverIOO
    @mitch Ja hab das gesehen. Allerdings kenn ich das so das man durch die Anmeldung meist ein Token oder sessionid erhält, die man dann in den folgenden Anfragen mitgibt. Http ist eigentlich ein zustandsloses Protokoll. D.h. Der Server kann aufeinander folgende Anfragen noch von einander unterscheiden, daher dann ein Kennzeichen um das alles zu verbinden. Im Browser wäre die Alternative ein Cookie oder eine sessionid in der url, wobei man das aus Sicherheitsgründen nicht mehr macht. Das seh ich hier aber nicht. D.h. Die Authentifizierung läuft dann auf Basis der Absender ip, was ich persönlich als relativ unsicher einschätze. Aber evtl hab ich da auch noch was überlesen.
  • Hauspumpe über Alexa steuern

    8
    1
    0 Votes
    8 Posts
    490 Views
    R
    @haselchen danke für deine Hilfe. Jetzt funktioniert es. Danke euch beiden für die Hilfe und Ratschläge René
  • Datenpunkt & Objekt steuern/aktualisieren

    5
    0 Votes
    5 Posts
    418 Views
    M
    @codierknecht Okay, habe gesehen was der Adapter macht, das kann ich am Ende auch selber, hast du recht. Szenen-Adapter werde ich testen, danke!!!
  • 0 Votes
    12 Posts
    3k Views
    C
    @andreaskos Danke für dein Script. Es funktioniert einwandfrei. Gibt es eine Möglichkeit das auch für HSV zu nutzen. Ich möchte gerne über den MDT Glastaster 2 über 2 Tasten HSV Werte an die Hue Lampe senden.
  • PI(D) Regler - Adapter oder Skript?!

    14
    0 Votes
    14 Posts
    3k Views
    fu_zhouF
    @paul53 ich bin's mal wieder, nachdem jetzt sogar das E-Auto nach 15 Monaten Lieferzeit da ist... Wie kann ich den Regler aus dem Beispiel für z.B. 30 Sekunden lang "anhalten", weil meine Beobachtung ist folgende: Der go-E-Charger verändert die Ladeleistung mit ganzen Ampere-Sprüngen, d.h. wenn ich mit 6 A Lade und der Regler wg. PV-Überschuss Richtung 7 A steuert, springt auf einmal bei 1-phasigem Laden der Istwert von ca. 1.4 kW (6 A) auf 1.6 kW (7 A), was natürlich beim Regler eine Sprungantwort provoziert und auf 6 A zurückgeschaltet wird und dann geht's hin und her. Ich möchte xp aber nicht so groß wählen, dass der Sprung so klein ist, dass es nicht zum Runterschalten kommt, dann wird das ganze viel zu träge. Der Trigger ist also die Änderung des Ladestroms in der Wallbox, was dazu führen soll, dass der Regler für z.B. 30 Sekunden inaktiv ist, um den Leistungssprung ohne Reaktion abzuwarten. Kriegt man die "function control" für eine bestimmte Zeit angehalten, getriggert durch die Veränderung des Ladestrom? Ggf. kann man das erreichen, indem man für die Zeit den Sollwert auf den Istwert schreibt (x=w), dann gibt es keine Abweichung zwischen x und w und y wird nicht verändert. Die Frage ist dann halt, was passiert, wenn wieder auf den echten Istwert geschaltet wird, ist ja auch ein Sprung. Die "function control" kurz anzuhalten scheint da der bessere Weg zu sein... Danke schon mal vorab! Ergänzung: habe das jetzt erst einmal gelöst, indem ich xp dynamisch aus Blockly heraus hochsetze, um die Sprungantwort zu dämpfen, aber vielleicht hast du noch eine elegantere Idee? Hier das komplette Regler-Skript mit dynamischem Xp. // PI-Regler // Datenpunkt-IDs eintragen ! const xid = 'javascript.0.Wallbox.Netzleistung'; // Istwert const wid = 'javascript.0.Wallbox.Sollwert_Netzbezug'; // Sollwert const yid = 'javascript.0.Wallbox.Ladeleistung'; // Stellgröße const maxid = 'javascript.0.Wallbox.maxOut'; // Stellgröße Maximum zur Reglerbegrenzung const xpid = 'javascript.0.Wallbox.xp'; // xp: je größer, je langsamer // P-Band in K, Nachstellzeit in s const Xp = 50; // je größer, je langsamer ==> Initialwert, wird in "function control" dynamisch verändert const Tn = 5; // je größer, je langsamer var x = getState(xid).val; // Istwert var w = getState(wid).val; // Sollwert var m = getState(maxid).val; // Sollwert Maximum const PI = require('pi-controller'); // als zusätzliches NPM-Modul in JS-Config eintragen const pi = new PI(Xp, Tn); //pi.setOutputMax(m); // default: OutputMax = 100 ==> wird in "function control" aufgerufen, um dynamisches maxOut zu berücksichtigen function control() { const Xp = getState(xpid).val; // Xp kommt dynamisch vom Blockly-Skript pi.setOutputMax(m); // maxOut kommt dynamisch vom Blockly-Skript var y = pi.Control(w - x)+1.3; // Stellsignal mit 1.3 kW Offset um Totzeit zu reduzieren bis Mindestleistung von 1.4 kW erreicht ist setState(yid, Math.round(y*100)/100); //Stellwert auf 2 Nachkommastellen runden console.log(Xp); console.log(getState(yid).val); } control(); // Script start on(xid, function(dp) { x = dp.state.val; control(); }); on(wid, function(dp) { w = dp.state.val; control(); }); on(maxid, function(dp) { m = dp.state.val; control(); }); if (Tn) setInterval(control, 250 * Tn );
  • Blockly zum Ändern der Positionsangaben Rollo

    7
    1
    0 Votes
    7 Posts
    237 Views
    HomoranH
    @homoran sorry, was vergessen [image: 1678134453980-screenshot_20230306-212652_firefox.jpg]

612

Online

32.7k

Users

82.4k

Topics

1.3m

Posts