Skip to content

Skripten / Logik

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

16.4k Themen 211.8k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    D
    @maxclaudi Vielen Dank für das ausführliche oben beschriebene Verhalten von smartMode. Es gibt wirklich keine konstante wann er umschaltet. Hatte erst mal.4 Tage ohne umschalten und dann kann sein das er 3 mal am tag umschaltet
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    Dr. BakteriusD
    @Asgothian sagte in Farbe aus R/G/B rechnet falsch: ggf. erwartet dieser die farbwerte in %, nicht 0-255 Danke, das war's.
  • Hilfe für Skripterstellung mit Node-RED

    952 13k
    952 Themen
    13k Beiträge
    HomoranH
    @fiddle sagte in [Gelöst]: Adapter per {Node Red | JS} (de)aktivieren: Ok, nicht als "Wert" schreiben, sondern als "Befehl". Dann scheint ihn das zu beeindrucken. du zeigst ja nichts, aber es geht mit true/false [image: 1763416200051-screenshot_20251117-224854_firefox.jpg] gesteuert über eigenen DP vom typ Bool
  • Homematic –> MODBUS, MODBUS --> Homematic

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    567 Aufrufe
    M
    da ich mir nicht sicher bin, ob ich ein Logik-Problem bei IoBroker habe oder eben einen Denkfehler in HomeMatic, habe ich mal auch dort im Forum einen Thread eröffnet. Hier ist der Link: https://homematic-forum.de/forum/viewto … 19&t=43483
  • Skript zur Heizungs-, Licht-, … steuerung

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    691 Aufrufe
    StuebiS
    @Dutchman: danke für teilen mit der community! Nur als frage: das heizungsscript von Looxer hat deinen Anforderungen nicht entsprochen ? ` ich hatte vorher die komplette Heizungssteuerung auf der Homematic CCU2 abgebildet. Mir gefiel auf der CCU wie man Regeln (Bedingungen) abbilden konnte. Das habe ich für meine Bedürfnisse auf dem ioBroker mit dem JavaScript übernommen
  • Homematic Energiemessung Wert extrahieren?

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    461 Aufrufe
    G
    Für deinen Fall sehr simpel, wenn Du nur den ersten Zahlenwert haben möchtest. Entweder Du nimmst ein Split-Node, oder du verwendest das Function-Node und schreibst ein kleines Javascript. Dann ist alles in einem Node erledigt. [image: 3639_unbenannt.jpg] Das Script im Function-Node könnte so aussehen: ! ` > var string = msg.payload; msg.payload = parseFloat(string.substr(0, 8)); return msg; `
  • Tasterschaltung

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    S
    Moin. So danke für die Hilfestellung. Habe es mit einfachen AND Bausteinen hinbekommen
  • Verbindung zur NAS vor Backupbeginn prüfen

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    333 Aufrufe
    DutchmanD
    Haken bei mit Ergebnis setzen und Dan die Variable "result" auslesen da steht der Response des commando drin –----------------------- Send from mobile device Das schöne ios hat Auto Korrektur zum k**** Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
  • Probleme beim Wandeln von RGB zu HEX

    Verschoben
    18
    1
    0 Stimmen
    18 Beiträge
    2k Aufrufe
    R
    @paul53: @rom.wagner80: wodurch werden denn die drei Hexadezimalen werte erzeugt? ` setState ("javascript.0.Geraete.YAHKA.r1"/*r1*/, Math.round(255 * r)); setState ("javascript.0.Geraete.YAHKA.g1"/*g1*/, Math.round(255 * g)); setState ("javascript.0.Geraete.YAHKA.b1"/*b1*/, Math.round(255 * b)); siehe erster Beitrag. ` Okay. Dann werde ich mal schauen, wie ich das Problem elegant gelöst bekomme. Werde mich dann hier wieder melden, wenn das Problem behoben ist oder ich neue Probleme habe [emoji6] Dank dir erstmal für deine Hilfe - wieder mal [emoji51] Gesendet von iPhone mit Tapatalk
  • Blockly Skripte mit Zeitspanne

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    3k Aufrufe
    paul53P
    @rantanplan: Bei Deiner Zeitabfrage liegt ein Tageswechsel vor. Das funtioniert so nicht. Da musst Du zwei Abfragen machen. "Zeit zwischen 20:00 und 23:59" ODER "Zeit zwischen 00:00 und 07:00" ` Alternativ "Zeit <u>nicht zwischen</u> 7:00 und 20:00". Mit reinen Uhrzeiten funktioniert aber auch die Version "Zeit zwischen 20:00 und 7:00", nur mit Zeiten, die ein Datum enthalten (z.B. Astrozeiten) nicht.
  • State Änderung fehlgeschlagen

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    370 Aufrufe
    H
    Du bist ein Held! Danke!
  • [gelöst] JSON-Tabelle mit js.script triggern

    Verschoben
    23
    0 Stimmen
    23 Beiträge
    2k Aufrufe
    S
    so, nachdem ich das script nun einige Tage testen konnte, ist doch noch ein kleines Problem aufgetaucht. Ich habe für meine beiden Bewässerungskreisläufe jeweils ein script zu laufen. Nun wollte benötige ich die Möglichkeit die scripte via Widget zu starten und zu stoppen. und zwar mit bei scripts mit nur einem Schalter. es gibt zwar die möglichkeit ein script via "scriptEnabled.common.Bewaesserung.Timestamp_Ventil1" zu starten und zu stoppen aber das klappt nicht aus einen script heraus um zwei Scripte (scriptEnabled.common.Bewaesserung.Timestamp_Ventil1 + scriptEnabled.common.Bewaesserung.Timestamp_Ventil2) zu "schalten" also wollte ich das die Funktion innerhalb des Scripts nur bei eingeschaltetem Datenpunkt läuft on({id: "javascript.0.Bewässerung.Trigger_Semi_Automatic"/*Trigger_Semi_Automatic*/, val: true}, function (obj) { zeiten(); // Skriptstart schedule('1 0 * * *', zeiten); // kurz nach Mitternacht // Änderung des JSON-Strings on(idJSON, function(dp) { json = dp.state.val; zeiten(); }); }); die Funktion Zeiten wird aber nun auch ausgeführt wernn der Datenpunkt "javascript.0.Bewässerung.Trigger_Semi_Automatic" auf false steht. hab ich noch irgendetwas falsch verstanden?
  • [FRAGE] HTML5-Gauge-Meter-Plugin in ioBroker nutzen?

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    421 Aufrufe
    Niemand hat geantwortet
  • Openweather API

    Verschoben
    11
    1
    0 Stimmen
    11 Beiträge
    7k Aufrufe
    C
    Hallo, ich nutze die openweather API und möchte mir Sonnenaufgang/-untergang anzeigen lassen. Ich habe nach diese Anleitung benutzt, funktioniert auch alles soweit. Habe lediglich noch das Problem das ich derzeit -2 Stunden Zeitverschiebung habe in der Anzeige. Ich weiß das es sich hier um die UTC Zeitangabe handelt. Wie bringe ich meinem Node Red bzw dem Raspberry bei meine Zeitzone bei der Berechnung zu berücksichtigen? Die Zeitzone am Raspberry ist richtig eingestellt.
  • [Gelöst] Math.round einbinden in bestehende Funktion

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    1k Aufrufe
    R
    @paul53: @rom.wagner80: Die Werte werden sauber als RGB-Werte raus gegeben. dann kommt dahinter folgender Code zum Wandeln von RGB in Hex. und da scheint irgendetwas schief zu gehen… erstmal nimmt der RGB-Stripe die richtige Farbe an und dann nach ein paar Sekunden "Fadet" der Hex-Wert und es wird eine komplett andere Farbe dargestellt.... woran könnte das liegen ? ` Das gehört nicht mehr zum Thema "Math.round einbinden in bestehende Funktion". Mache dazu bitte ein neues Thema auf. Füge zum Testen mal vor dem setState() ein Log ein log('#' + toHex(R) + toHex(G) + toHex(B)); ```` ` Dann werde ich mal einen neuen Beitrag aufmachen. Danke Hier gehts weiter ! viewtopic.php?f=21&t=13730/spoiler] ! Gesendet von iPhone mit Tapatalk
  • Blockly-Symbol für ODER-Verknüpfungen

    Verschoben blockly
    3
    3
    0 Stimmen
    3 Beiträge
    2k Aufrufe
    H
    Danke. Rechter Mausklick war der entscheidende Hinweis. Es heisst "Externe Eingänge".
  • [Gelöst] Verständnis frage : Timeouts innerhalb Funktionen

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    906 Aufrufe
    DutchmanD
    Hmm der Fehler sitzt wohl an der Tastatur ich werde mein script nochmal gründlich überschauen. Da dies ziemlich Gross ist haben ich zum Testen der timer und time reset mal ein einfacheres erstellt mit 2 scenarien: timer_1 wird gestartet innerhalb einer function und reset über eine 2te function Timer_2 wird gestartet innerhalb einer Function und reset innerhalb der IF abfrage Beide timer und deren resets funktionieren wie erwartet, da hab ich mich bei dem anderen script wohl in der login verhauen. Danke euch ! Mein Code wer es testen/nachspielen möchte : var timeout_2, timeout_1; /** * TimeOut_Test_2 mit reset außerhalb der function */ function TimeOut_Test_2() { timeout_2 = setTimeout(function () { console.log('TimeOut_Test_2 activiert nach 10 sekunden'); }, 10000); } /** * TimeOut_Test_1 Timer innerhalb einer function */ function TimeOut_Test_1() { timeout_1 = setTimeout(function () { console.log('TimeOut_Test_1 activiert nach 10 sekunden'); }, 10000); } /** * TimeOut_Test_1 reset innerhalb einer function */ function TimeOut_Test_1_Clear() { (function () {if (timeout_1) {clearTimeout(timeout_1); timeout_1 = null;}})(); console.log('TimeOut_Test_1_deactiviert '); } on({id: "javascript.1.Test_Switch"/*Test_Switch*/, change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.1.Test_Switch").val == true) { console.log('Timeout aktiviert starte nach 10 sekunden'); TimeOut_Test_1(); TimeOut_Test_2(); } else { (function () {if (timeout_2) {clearTimeout(timeout_2); timeout_2 = null;}})(); console.log('Timeout deactivieren'); TimeOut_Test_1_Clear(); } }); Log Ausgabe : javascript.1 2018-04-25 13:26:08.036 info script.js.common.palletkachel.Test_Script_Timer: TimeOut_Test_1_deactiviert javascript.1 2018-04-25 13:26:08.035 info script.js.common.palletkachel.Test_Script_Timer: Timeout deactivieren javascript.1 2018-04-25 13:26:04.385 info script.js.common.palletkachel.Test_Script_Timer: Timeout aktiviert starte nach 10 sekunden
  • Per Blockly Skript Status schicken

    Verschoben
    24
    0 Stimmen
    24 Beiträge
    5k Aufrufe
    DutchmanD
    Zeichne den Wert doch Mal mit History oder andere logging auf über 24 Stunden und vergleiche ob der wert übereinstimmt. Währe aber zufällig wen er immer gleich ist Frage also ob das object sich überhaupt aktualisiert. Der Block "Wert von object" liest ja 1:1 den jetzigen Wert aus. –----------------------- Send from mobile device Das schöne ios hat Auto Korrektur zum k**** Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
  • [Gelöst] HSL zu RGB konvertieren

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    710 Aufrufe
    wendy2702W
    Kannst du dann noch bitte vor den Titel im ersten Post ein```` [Gelöst] Danke!
  • (gelöst)Warn Homematic Rolladen Ansteuerung BLOCKY

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    573 Aufrufe
    D
    Sorry für meine späte Antwort. Danke für den Tipp mit den Zahlen statt string.
  • [Beantwortet] Systemdaten von anderem Raspberry Pi auslesen

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    wendy2702W
    Ich habe bisher 3 Slave Installationen (PI3) zusätzlich zu meinem Host laufen. Allerdings eher weniger wegen Lastverteilung sondern vielmehr weil mein Host auf dem Speicher steht, ich aber z.B, meinen Stromzähler im Hauswirtschaftsraum auslesen möchte etc. Auf einem läuft iobroker auch mit PiVCCU bisher Problemlos. Für mich war die Einfachheit der CCU FW Upgrade und Übernahme der Daten CCU2 bei PiVCCU entscheidend. Bei YAHM bin ich irgendwie an der Installation gescheitert und einen ganzen PI nur für CCU2 - Raspberrymatic zu „verschwenden“ wollte ich nicht.
  • Wichtige Änderung: Objekt/State-ID-Bezeichner dürfen keine *, ?, [ oder ] mehr enthalten

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    252 Aufrufe
    Niemand hat geantwortet
  • Blockly-Script triggert dauerhaft nach Auslösung

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    466 Aufrufe
    BuZZyB
    Hallo, ich verwende zwar keine sonoffs aber: Womit läuft das Log denn über? Sind es eventuell gar keine Meldungen von diesem Script sondern vom sonoff Adapter oder so? Ich sehe in diesem Script nämlich nichts, was "von selbst" einen Eintrag im Log auslösen würde.. Gruß

812

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge