Weiter zum Inhalt

Skripten / Logik

16.7k Themen 216.0k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 50k
    3k Themen
    50k Beiträge
    maxclaudiM
    @Murphy-0 sagte: @maxclaudi Habe dein zURLtool geladen und installiert. Die Freischaltung mit den von dir gesendeten Daten funzt perfekt. zURLtool funktioniert ! Vielen Dank für deine Arbeit !!! Hallo Murphy, vielen Dank für deine Rückmeldung und den erfolgreichen Testlauf. Genau so soll es sein: Eintragen, Freischalten und direkt loslegen! Viel Spaß beim Optimieren deines Scripts!
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    Murphy 0M
    @tourer4778 Das ist ganz einfach. Du addierst die Leistung deiner Wechselrichter als maxSolarPower. Dieser Wert wird dann für die Formel zur Berechnung genommen und du bekommst automatisch die Leistung die jeder deiner Wechselrichter haben muss. [image: 1786870575867-img_4130.jpeg] Diese Leistung übergibst du dann nacheinander an deine Wechselrichter. In meinem Blockly unten benutze ich noch einen Korrekturwert für die Leistung. Das liegt an der unterschiedlichen Ausrichtung der Panele und berücksichtigt die unterschiedlich Leistung der Wechselrichter. Der Multiplikator ist mit Pfeil markiert. [image: 1786870876025-img_4128.jpeg] Den Multiplikator brauche ich um die erzielte Leistung jedes Wechselrichters mit dem Bedarf abzugleichen. Meine Nulleinspeisung ist auf ca. -50 Watt ausgelegt. Akku wird nicht geladen. [image: 1786871273695-img_4132.jpeg] Akku wird geladen. Wegen Wolken reicht die Leistung gerade nicht für die gesamt benötigte Menge an Strom. [image: 1786871362148-img_4133.jpeg]
  • Hilfe für Skripterstellung mit Node-RED

    964 13k
    964 Themen
    13k Beiträge
    A
    @OliverIO Danke für die Analyse und der grundsätzlichen Bestätigung, dass es eigentlich richtig ist und auch funktionieren sollte. Unterdessen ist es so, dass ich den wiederholzykluss auf 20min gestellt habe und zwischen jeder Anfrage 1 Minute warte. Zusätzlich habe ich ja die udev-Regel entfernt und das Portweiterleiten mit den Proxmox eigenen Mitteln gemacht. Es läuft nun seit 25h so, und Fehler mit keinem String ist noch 2x aufgetreten, hat sich unterdessen aber sogar selber gefixt und läuft seither ohne erkennbar Fehlermeldungen durch. Weil es ja so merkwürdig reagiert hat, habe ich den Pylontechadapter nochmals installiert und die neue Schnittstelle eingerichtet. Nach sehr langem warten wurde der Adapter sogar grün und er hat tatsächlich die BMS Infos rausgelesen, aber die Zelleninfos kamm nicht. Ich habe zwar keine Ahnung wie das Pytes BMS Tool das wirklich macht, aber ich habe den Eindruck, dass der Abfragezyklus nicht mehr als 1x pro Minute gestartet werden darf. Das Pytes Tool bringt alle infis eigentlich recht schnell. Bei meinem 12V System mit den DALI ist es so beschrieben, dass man nur 1x pro Minute Abfragen, kann weil der Prozessor sonst seine Aufgabe nicht machen kann. Aktuell läuft es und ich beobachte das sehr intensiv, weil ich der Sache noch nicht ganz traue.
  • JavaScript die Erste… ein Noob braucht hilfe :(

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    955 Aufrufe
    R
    Danke, wollte nur mal mit den ausdrücken und Statusabfragen herumprobieren. Werde mich tapfer damit weiter spielen und sicher wieder fragen stellen… [GRINNING FACE WITH SMILING EYES] Gesendet von meinem HUAWEI CRR-L09 mit Tapatalk
  • Status einer Instanz abfragen – CCU noch am Leben?

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    M
    Hi, vielen Dank für die schnelle Antwort! Super, genau was ich gesucht habe. :D Und ja, der Name ist definitiv Programm ;)
  • On ID und Asynchrones Verhalten

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    L
    ich meinte, dass das script wie ich es gepostet habe mit dem Delay funktioniert. Sorry, dass ich mich da nicht klar ausgedrückt habe. Mittlerweile glaube ich, dass es bei der Kombi Direktverknüpfung und schnelle Schaltfolge keine Lösung gibt, da ja ioBroker offensichtlich vom ersten Schaltvorgang gar nichts mitbekommt. vG Looxer 6558_unbenannt.png
  • On()-Funktion - Reagieren auf _SHORT oder _LONG

    Verschoben
    34
    0 Stimmen
    34 Beiträge
    4k Aufrufe
    R
    Hey, frage von einem totalen JavaScript noob: Er schaltet mir die Var output2 nicht, was mache ich falsch? log("Test","info"); //var input1 = "ping.0.input1";/*input1 bool*/ //var input2 = "ping.0.input2";/*input2 zahl*/ //var output1 = "ping.0.output1";/*output1 bool*/ //var output2 = "ping.0.output2";/*output2 zahl*/ function testfunc1() { setState("ping.0.output1", true); } function testfunc2() { setState("ping.0.output1", false); } on({id: "ping.0.input1", val: true}, testfunc1); on({id: "ping.0.input1", val: false}, testfunc2); 305_heizungsscript_220_b14_temp.txt
  • Button zum erstellen eines neuen Scripts funktionier nicht.

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    B
    Hallo, Problem gelöst. Nach einigem rumspielen kam plötzlich das Script. Die Lösung war anscheinend die Eingabe einer "1" in der Filterzeile oben unter ID. Das Feld/Filter war aber vor der Eingabe leer.
  • IoBroker out / Weitere Merkmale/Standardvariablen mitgeben?

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    N
    Hallo Frank, der out-Node unterstützt zurzeit nur das Setzen des Werts und implizit durch die Auswahl der id und des Typs das Setzen des ack-Flags. Soweit ich gesehen habe, können mit der verwendeten Funktion setState der states-Library auch keine Stammdaten der States verändert werden. Gruß Markus
  • Count Up Script Ausgabe in Tagen

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    B
    Die Lösung war doch viel einfacher als gedacht….. var then = new Date(2015, 11, 10, 00, 00, 00), // month is zero based now = new Date; // no arguments -> current date days = "daysincebirth" // 24 hours, 60 minutes, 60 seconds,1000 milliseconds setState (days, Math.round((now - then) / (1000 * 60 * 60 * 24))) und es funktioniert….
  • [erledigt]Benutzen von "confirm"

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    blauholstenB
    Hi, habe es jetzt folgendermaßen gelöst. Beim betätigen des HQ.Widget schreibe ich einen DP auf true. Dieser wiederum lässt ein View in Widget öffnen, das ich per setStateDelay im Script dann nach einer gewissen Zeit verschwinden lasse. Vielen Dank für eure Hilfe. :idea:
  • Skript für Temperaturmessung bitte um Hilfe

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    960 Aufrufe
    H
    Danke für die rasche Hilfe. Super :) Lg Manuel
  • Auslösen eines Skriptes mittel Füllstandssensor

    Verschoben
    15
    1
    0 Stimmen
    15 Beiträge
    3k Aufrufe
    wendy2702W
    Das andere Script läuft jetzt auch ohne Error im log. Musste also nicht mehr testen. Danke
  • XML Daten (TV Programm) in ioBroker

    Verschoben
    42
    0 Stimmen
    42 Beiträge
    17k Aufrufe
    T
    @pix: @tesso: @pix Kannst du die aktuellen widgets und css evtl. auch in deinem Post verlinken? Ich verliere hier den Überblick was ich nun brauche, um das Skript nutzen. ` erledigt, siehe erster Post. Gruß Pix ` Danke
  • Wie kann ich die Size und DateCreated einer Datei ermitteln?

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    ThisoftT
    Vielen Dank, fs.stat (und die ähnlichen Befehle die ich in der Doku gefunden habe) hilft mir sehr weiter. Nach einigem Try and Error bin ich jetzt auch dahintergekommen wie ich das aufrufen muss ;) . Manchmal braucht man eben einen Schubs… Gruß Thilo 4867_2018-12-23_14_16_53-window.jpg
  • Logging Vielfach

    Verschoben
    4
    2
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    E
    @ErRi: Hallo, bin recht neu hier und versuche gerade meine Rolladensteuerung von der CCU2 auf iobroker umzuziehen. Ich habe nur geringe Programmierkenntnisse, versuche die Beispielscripte für meinen Bedarf anzupassen. Ich habe nun das Rolladenscript swoweit, dass es i.d.R. funktioniert, nur in der Log-Datei werden einige Zeilen/Befehle zigfach ausgegeben. Bis zum ERROR: You are sending too fast. Habe das Script schon aufgrund Beitrag hier im Forum von "setTimeout" auf "setStateDelayed" geändert, aber es ist das gleiche Ergebnis. Vermutlich habe irgendwo einen Fehler eingebaut. filename="20151231-Log-vielfach1.png" index="1">~~ filename="20151231-Log-vielfach2.png" index="0">~~ Vielen Dank schon vorab für die Hilfe. ` Hallo, ich habe inzwischen meine Rolladensteuerung umgestellt auf Szenen. SetTimeout und setStateDelayed benutze ich hierfür nicht mehr. Somit ist dieses Problem für mich gelöst, wobei ich immer noch nicht weiß was da falsch war.
  • Nudging - Nur einen Wert in eine Variable für Sayit

    Verschoben
    60
    0 Stimmen
    60 Beiträge
    10k Aufrufe
    P
    Hallo, bin dem Link gefolgt und habe den Eintrag mit dem Skript durchgesehen. Da gibt es diese Zeile: var Temperatursensor = getState("hm-rpc.0.LEQ0177463.1.TEMPERATURE"); /*Temperatursensor:1.TEMPERATURE*/ ````da fehlt ein ".val": var Temperatursensor = getState("hm-rpc.0.LEQ0177463.1.TEMPERATURE").val; /Temperatursensor:1.TEMPERATURE/ Gruß Pix
  • [gelöst] Alte Variablen löschen unter Javascript.0

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    999 Aufrufe
    T
    Na klar! Ich war in iobroker.vis mit dem Objekt-Explorer unterwegs. Dort gibt es keinen Papierkorb. Aber im iobroker.admin schon ;)
  • Node-red Wetter auslesen und per Twitter versenden

    Verschoben
    4
    3
    0 Stimmen
    4 Beiträge
    5k Aufrufe
    N
    Hi, das http request node steht bereits auf JSON und gibt somit bereits ein Objekt zurück. Zweimal parsen geht nicht. Die angegebene forcast url sprengt wohl aber die internen Buffer sodass das nicht korrekt klappt. (Es kommen über 15000 Zeichen zurück). Wenn man statt der forcast url das aktuelle Wetter abruft, klappt das ganze aber ohne Probleme. Hier der Flow: [{"id":"970c6a1.f68f398","type":"inject","z":"500acb55.aff534","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":165,"y":463,"wires":[["d2963a9d.2d69c8"]]},{"id":"d2963a9d.2d69c8","type":"http request","z":"500acb55.aff534","name":"","method":"GET","ret":"obj","url":"http://api.openweathermap.org/data/2.5/weather?id=2810860&APPID=3a3827ac7226f28af97c2fb89b35b929&units=metric","x":372,"y":365,"wires":[["848759aa.7b78a8"]]},{"id":"848759aa.7b78a8","type":"function","z":"500acb55.aff534","name":"","func":"// OpenWeatherMap JSON Antwort parsen\n//var weather=JSON.parse(msg.payload);\n \n// Neue Nachricht mit Payload erstellen\nvar newMsg = { payload: \"Die aktuelle Temperatur in München ist \"+ msg.payload.main.temp + \" Grad.\" };\n \n// Zurückgeben der Nachricht\nreturn newMsg;","outputs":1,"noerr":0,"x":601,"y":360,"wires":[["830cca71.7cf338"]]},{"id":"830cca71.7cf338","type":"debug","z":"500acb55.aff534","name":"","active":true,"console":"true","complete":"payload","x":735,"y":449,"wires":[]}]
  • Flow für Auslösung auf Änderung, nicht auf Aktualisierung

    Verschoben
    10
    1
    0 Stimmen
    10 Beiträge
    6k Aufrufe
    apollon77A
    Ich hab grad das folgende erfahren: In node-red 0.13 wird die Switch-Node wohl auch Vergleiche auf Basis des letzten Wertes erlauben
  • ScriptEngine Migration aus ccu.io

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    2k Aufrufe
    eric2905E
    Genau den meinte ich. Gruß, Eric
  • [gelöst] Mein erstes Script - Temperaturdifferenz bewerten

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    P
    Hallo André, Wichtiger ist, dass du den Überblick behältst. Ich habe derzeit über 100 Skripte, viele mit mehreren Hundert Zeilen. Mit organisierter Namensvergabe und möglichst einheitlicher Struktur innerhalb der Skripte geht das ganz gut. Immer schön kommentieren, das hilft. Gruß Pix Gesendet mit Tapatalk 9054_events.jpg
  • Datenrücksicherung nur Skripte

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    P
    Ja, früher in CCU.IO musste man auch mit eigenem eigenen Editor die Skripte im Ordner bearbeiten. Man konnte dadurch zwar leichter Sichern, aber der "eingebaute" Editor sorgt natürlich für Stabilität. Ich vermisse auch die Funktion, per Klick einzelne Skripte als Textdatei über den Browser zu sichern. Gruß Pix

328

Online

33.0k

Benutzer

83.6k

Themen

1.3m

Beiträge