Weiter zum Inhalt

Blockly

6.6k Themen 79.8k Beiträge

Hilfe für Skripterstellung mit Blockly

NEWS

  • Multitimeout - wie function übergeben von blockly in js

    15
    2
    0 Stimmen
    15 Beiträge
    1k Aufrufe
    P
    @paul: ich poste mal den aktuellen Stand, macht inzwischen denke ich wieder Sinn: Eigentlich ist es nur ein "normaler Timeout-Block" der es ermöglicht einen funktionsaufruf zu verzoegern und dabei einen "dynamische" Bezeichnung hat, sodass das auch mit einem SelectorById-Trigger individuell in Blockly funktioniert. Es funktioniert nun auch mit dem "Multi-Timeout"... :) [image: 1674252663838-63c24a2c-7335-421b-b57d-cc2bac8d6281-image.png] die drei functions - wie bekomme ich die erste davon ganz weg...? // Beschreibe diese Funktion … async function timeout_handles_obj() { var timeout_handles = {}; /* // timeout_handles auslesen aus dp, falls er nicht existiert, dann erstellen: a = scriptName.split('.'); script_name = a.slice(-1)[0]; // Skriptname erfasst dp = "0_userdata.0.System.Timeouts.in_Skript_" + script_name; // wo die Timeouts gebackupt werden if ( !existsState(dp) ) { createState(dp, timeout_handles, { "name": "Timeout-Handles des Skripts", "desc": "Manuell erzeugt", "role": "state", "type": "object", "read": true, "write": true }, function () {}); } else { timeout_handles = getState(dp).val; // Timeout reinladen aus dp } console.log(getState(dp).val); */ return timeout_handles; } // Beschreibe diese Funktion … async function timeout_loeschen(trigger) { a = trigger.split('.'); b = a.slice(a.length - 2, a.length - 0); trigger_id = b.join('_'); // trigger_id = "trigger" gekürzt if( trigger_id in timeout_handles ) { clearTimeout(timeout_handles[trigger_id]); delete timeout_handles[trigger_id]; } } // Beschreibe diese Funktion … async function timeout_setzen(trigger, sek, funktion) { var obj = {}; //Name für den Timeout des Triggers erfassen: a = trigger.split('.'); b = a.slice(a.length - 2, a.length - 0); trigger_id = b.join('_'); // trigger_id = "trigger" gekürzt verzoegerung_ms = sek * 1000; // umrechnen obj[funktion] = funktion; // function in object zuordnen //Timeout setzen timeout_handles[trigger_id] = setTimeout(eval(obj[funktion]), verzoegerung_ms, trigger); /* // Skriptname erfassung und Timeouts backupen in DP: a = scriptName.split('.'); script_name = a.slice(-1)[0]; dp= "0_userdata.0.System.Timeouts.in_Skript_" + script_name; setState(dp, timeout_handles, true); // handles in dp backupen; */ }
  • RPI2 Adapter GPIO Ansteuerung funktioniert nicht

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    440 Aufrufe
    HomoranH
    @tombir sagte in RPI2 Adapter GPIO Ansteuerung funktioniert nicht: Jetzt funktioniert es. so muss es sein!
  • Datenpunkt ändern und wieder zurück ändern

    6
    0 Stimmen
    6 Beiträge
    317 Aufrufe
    HomoranH
    @darkblu sagte in Datenpunkt ändern und wieder zurück ändern: @homoran Danke, probiere ich morgen nochmal aus. und dann nicht direkt schreddern, sondern posten und fragen.
  • [gelöst] Blockly Sendto in CRON funktioniert nicht

    8
    1
    0 Stimmen
    8 Beiträge
    596 Aufrufe
    B
    @rscsb Perfekt! Herzlichen Dank! Hat funktioniert!
  • Zeitplan Wochentag prüfen?

    9
    1
    0 Stimmen
    9 Beiträge
    712 Aufrufe
    CodierknechtC
    @kaile45 sagte in Zeitplan Wochentag prüfen?: warum default und nicht direkt die Werte? Weil das nur ein Beispiel ist und das Prinzip verdeutlichen soll. Nicht jeder hat Zeit und Lust, Deinen Objektbaum nachzubasteln um damit einen passenden Screenshot zu machen.
  • Bewegungsmelder Skript fehlerhaft

    60
    1
    0 Stimmen
    60 Beiträge
    5k Aufrufe
    paul53P
    @13patrick37 sagte: Mit "AllOn" funktioniert alles. Ist nur blöd, dass sofort die Helligkeit auf 100% geht. Wenn "Level" hinterher geschickt wird (vlt. etwas verzögert) dürfte sich der Wert von "AllOn" nicht mehr ändern (true bleiben), also nicht getriggert werden. Oder geht dann der Wert kurz auf false? Der Debug-Log wird es zeigen. [image: 1674163333201-bild_2023-01-19_222211135.png]
  • Blockly Funktionswert auslesen anstatt Logikwert

    4
    1
    0 Stimmen
    4 Beiträge
    416 Aufrufe
    M
    @paul53 Danke das war der Hinweis :) return getObject(id).common.states[val]; [image: 1674156941216-1a63f907-6d76-4bdd-bc82-1f3c1b55ca62-image.png] Gelöst!
  • Blockly "Falls Objekt" ist mehr als wahr/falsch

    21
    1
    0 Stimmen
    21 Beiträge
    2k Aufrufe
    R
    @paul53 ja so werde ich es machen
  • Das Script um zwei weitere TRUE Abfragen erweitern

    5
    1
    0 Stimmen
    5 Beiträge
    318 Aufrufe
    CodierknechtC
    @djmarc75 sagte in Das Script um zwei weitere TRUE Abfragen erweitern: @codierknecht Objekt ID durch Wert ersetzen Ich Depp :man-facepalming: Ist korrigiert - Danke!
  • Datenpunkt schreiben bei Offline des Heizungsthermostat

    3
    0 Stimmen
    3 Beiträge
    258 Aufrufe
    M
    @arteck [image: 1674115558492-screenshot-2023-01-19-090515.png] [image: 1674115564849-screenshot-2023-01-19-090543.png] Das hätte ich bis jetzt , funktioniert aber nicht richtig.
  • Wie frage ich einen Wert ab?

    13
    1
    0 Stimmen
    13 Beiträge
    1k Aufrufe
    giziG
    @paul53 danke!! :)
  • Es ist trocken Meldung kommt zu früh.

    9
    2
    0 Stimmen
    9 Beiträge
    282 Aufrufe
    G
    So sieht es besser aus. [image: 1674072054835-b00beaef-98a9-4e84-91d5-76f623285941-image.png]
  • [Gelöst] Blockly Script mit Alexa Sprachausgabe

    3
    1
    0 Stimmen
    3 Beiträge
    348 Aufrufe
    BananaJoeB
    @fabiowski stelle dem ersten Post einfach ein [Gelöst] voran
  • Blockly Script

    10
    2
    0 Stimmen
    10 Beiträge
    373 Aufrufe
    paul53P
    @takahara sagte: helfen, das Script zu korrigieren? Was funktioniert nicht? Was ist "set preset"? Eine weniger Ressourcen verbrauchende Version: [image: 1674037141930-bild_2023-01-18_111900633.png]
  • Probleme bei Astro-Tag und Nacht

    8
    0 Stimmen
    8 Beiträge
    630 Aufrufe
    T
    @paul53 habe den Fehler gefunden. Hatte zweimal Sonnenaufgang.
  • Fehlendes heartbeat Signal erkennen

    2
    0 Stimmen
    2 Beiträge
    337 Aufrufe
    paul53P
    @gklank sagte: "Anti-Heartbeat" Funktion. Suche im Forum nach "Watchdog".
  • Hilfe bei PV Eigenverbrauch

    11
    0 Stimmen
    11 Beiträge
    1k Aufrufe
    K
    @paul53 Hallo Paul53 Danke für die schnellen Antworten, und die guten Tipps.
  • [gelöst] Steckdose ausschalten unter definierten Niveau

    4
    1
    0 Stimmen
    4 Beiträge
    340 Aufrufe
    P
    @paul53 ja fetz. Danke das wars !
  • Blockly nach Datum gesteuert

    11
    0 Stimmen
    11 Beiträge
    480 Aufrufe
    paul53P
    @robbi12 sagte: Irgendwie schreibt er diesen Wert wohl nicht richtig. Ich kenne die Viessmannapi nicht.
  • Nous A1t Zeitplan Dose anschalten

    13
    2
    0 Stimmen
    13 Beiträge
    732 Aufrufe
    1Topf1
    @thegriffin sagte in Nous A1t Zeitplan Dose anschalten: Also.... mit Tasmota funktioniert das alles. In welcher Gruppe sollte das Skript denn optimaler Weise laufen? Common [image: 1673648023726-zeitschaltuhr01.jpg]

309

Online

32.8k

Benutzer

82.8k

Themen

1.3m

Beiträge