Skip to content

Blockly

Hilfe für Skripterstellung mit Blockly

6.5k Topics 79.3k Posts

NEWS

  • Datenpunkt auslesen & Objekt wahr setzen

    47
    1
    0 Votes
    47 Posts
    4k Views
    paul53P
    @uli977 sagte: Ist es richtig, dass wenn innerhlab des Timeouts die Stromerzeugung unter 1000 fällt, der Timeout gestoppt wird? Ja. @uli977 sagte in Datenpunkt auslesen & Objekt wahr setzen: wenn die Bedingung innerhlab der 10Min mehrfach erfüllt wird, wir der Timeout dann mehrfach gestartet? Nein, das verhindert die Sperre "und nicht Verzögerung timeout".
  • "Zahnrad" Elemente nutzen

    12
    1
    0 Votes
    12 Posts
    540 Views
    G
    @homoran Den Unterschied in der Hintergrundfarbe sieht man beim dunklen Thema so gut wie gar nicht. Es war für mich deswegen gar nicht klar, dass es überhaupt einen Unterschied zwischen links und rechts gibt.
  • This topic is deleted!

    0
    0 Votes
    0 Posts
    19 Views
    No one has replied
  • [gelöst]Messdose schalten - nach zwei Stunden deaktivieren

    8
    0 Votes
    8 Posts
    532 Views
    Master67M
    @matt77che ::+1:
  • This topic is deleted!

    0
    0 Votes
    0 Posts
    5 Views
    No one has replied
  • Tipp zur Programmierung

    3
    0 Votes
    3 Posts
    297 Views
    AsgothianA
    @krodon Ich würde das so lösen: eine Variable definieren, als leere Liste initialisieren im Trigger den Zeitstempel der aktuellen Änderung als letzten in die Liste setzen Sofern die Liste mehr als 2 Elemente hat: -- pruefen ob der erste Zeitstempel länger als n Minuten her ist. Wenn ja, aus der Liste entfernen. Das ganze wiederholen, bis die Bedingung nicht mehr erfüllt ist. Hat die Liste immer noch mehr als 2 Elemente: Wert auf Wahr, dann Liste leeren. [image: 1749911139343-screenshot-2025-06-14-at-16.25.35.png] Ohne die Liste zu leeren entfällt der 'reset' A. Nachtrag: warum so und nicht mit Timern ? Weil bei Timern letztendlich bei jeder Änderung ein Timer notwendig werden würde. Beispiel: Event tritt ein bei: T=0, T=3, T=6, T=9, T=10 Man hat also immer 2 Timeouts laufen, und erst wenn der Event eintritt wenn beide laufen darf gestartet werden. Da ist die Liste dann doch die Option mit weniger Ressourcen.
  • This topic is deleted!

    0
    0 Votes
    0 Posts
    12 Views
    No one has replied
  • Speichern von Ertragprognosen (Tag und +1 Tag), korrekt so?

    Moved
    8
    1
    0 Votes
    8 Posts
    514 Views
    T
    @bahnuhr said in Speichern von Ertragprognosen (Tag und +1 Tag), korrekt so?: @topsurfer von welcher Seite hast du die Prognosen ? Die hab ich direkt von Fronius (Premium-Paket), über Solarweb [image: 1749802058477-screenshot_20250613_100603_solarweb.jpg]
  • Pool Wärmepumpe & PV Überschuss + PV Speicherfüllstand

    26
    4
    0 Votes
    26 Posts
    2k Views
    paul53P
    @jonas5492 sagte: werde jetzt mal schauen was mit den neuen debug rauskommt Packe die Debug-Blöcke besser in den Trigger von "Pumpe Ein/Aus": [image: 1749748769937-blockly_temp.jpg]
  • Skript Motorschloss

    32
    0 Votes
    32 Posts
    3k Views
    B
    @paul53 So funktioniert es Exakt !! Ich lass des mal im täglichen betrieb jetzt laufen. Vielen Vielen Dank !! mal wieder !! Grüße Balu
  • Bewegungsmelder mit Timer

    24
    1
    0 Votes
    24 Posts
    2k Views
    O
    Was haltet ihr davon: [image: 1749422653772-064904c6-1631-46b1-b3b3-4c23a419159a-image.png]
  • Verständnisfrage Zeichenkette / String

    8
    2
    0 Votes
    8 Posts
    617 Views
    HomoranH
    @homoran sagte in Verständnisfrage Zeichenkette / String: @ralf-2 sagte in Verständnisfrage Zeichenkette / String: Dann beim zu steuernden Datenpunkt auf den Stift klicken @Takahara das wäre der HmIP Datenpunkt! zeig uns bitte da von einem die Objektdaten in code-tags @Takahara kommt das noch? bei nochmaligem Ansehen fiel mehr leider jetzt erst auf, dass du auch bei eigenen Datenpunkten fälschlicherweise "steuere" verwendest, obwohl diese Datenpunkte nichts steuern.
  • Verständnisfrage Datentyp || Temp/Min/Max

    7
    3
    0 Votes
    7 Posts
    440 Views
    AsgothianA
    @takahara sagte in Verständnisfrage Datentyp || Temp/Min/Max: @homoran said in Verständnisfrage Datentyp || Temp/Min/Max: Es sieh beim Blockly allerdings so aus, als ob du die aktuellen Werte nur bei Skriptstart eingelesen werden. Natürlich hast du recht. Danke :) :) :( VG Takahara Die effizienteste Lösung ist: die Variable ActTemp entfernen, sie wird nicht gebraucht an Stelle der Variable ActTemp (überall wo sie im Skript auftaucht) den Baustein [image: 1749294056234-screenshot-2025-06-07-at-13.00.53.png] nutzen. (auf Deutsch steht da Wert drin. Dieser Baustein enthält den Wert der den Trigger ausgelöst hat. A. Nachtrag: Das zurücksetzen von minTemp und maxTemp erscheint mir seltsam. So wie du es setzt kann die minimale Temperatur grösser als -50 sein, sowie die maximale nie kleiner als 50. Das sieht seltsam aus. A.
  • frage zu Blockly (Datenpunkt und Ändernung)

    9
    1
    0 Votes
    9 Posts
    614 Views
    D4vED
    @padrino sagte in frage zu Blockly (Datenpunkt und Ändernung): @d4ve Auch wenn man mich wohl ignoriert, im ersten Beitrag war doch Status schon auf "Änderung", hätte es doch klappen müssen... nein nein sry. hab dein Beitrag gelesen. nur ich hab schon öfter mit Paul geschrieben. und er könnte mir bis her immer zu 100% helfen daher bin ich direkt auf seine Nachricht eingegangen. das war absolut nicht gegen dich. danke dir auch.
  • Zeitplan, jeden zweiten Tag, Probleme..

    23
    3
    0 Votes
    23 Posts
    2k Views
    S
    @codierknecht @paul53 Vielen Dank für Eure Hilfe, hab es nun erstellt!
  • Alexa Lautstärke auf 0 setzen

    javascript blockly
    7
    0 Votes
    7 Posts
    666 Views
    padrinoP
    @arteck sagte in Alexa Lautstärke auf 0 setzen: alexa2.0.Echo-Devices.xxxxx.Player.volume ja, da werden die einzelnen Dosen auf das volume der Gruppe gesetzt und dan nur wenn muke läuft..sonst nicht Also, die Geräte werden auch auf "0" gesetzt, wenn keine Musik spielt. Das Problem ist nur, ist ein Gerät auf "0" und es erfolgt danach eine neue Ausgabe, dann wird das Gerät automatisch auf 1 (also 10% gestellt). Sprich ein dauerhaftes Stummschalten für zukünftige Ereignisse geht mit "Volume 0" nicht. bei alexa2.0.Echo-Devices.xxxx.Commands.speak-volume eben nicht.. Das meinte ich gar nicht, mit meinem Hinweis auf "speak". Was ich meinte, als ich mal mein Problem schilderte, dass ein alexa2.0.Echo-Devices.gruppenID.Commands.speak nicht immer auf allen Geräten ankomme, bekam ich die Antwort, dass ein "speak" auf Gruppen von Amazon nicht vorgesehen sei und daher sich der Adapter drum kümmere, die einzelnen Geräte per "speak" anzusteuern (daher kann es auch zu Verzögerungen kommen und nicht alle Geräte sprechen 100% zu selben Zeit). Meiner Vermutung war also, es könnte mit "Gruppen Volume" ähnlich sein, mehr wollte ich damit nicht sagen, sprich, eigentlich ist es für das Ergebnis eher egal, ob nun wirklich amazon die Gruppe auf "0" stellt, oder der Adapter jedes Gerät manuell.
  • Erl.: State Enums setzen ..

    2
    2
    0 Votes
    2 Posts
    158 Views
    MartinPM
    Selbst gefunden, durch mehr Logging - man kann einfach die Zahl in Klammern hernehmen .... [image: 1749134901636-auswahl_023.png] Also [image: 1749135012152-dbd8e69d-aa81-45c0-97e5-f4f824b800e5-grafik.png]
  • Zeitplan Probleme

    Moved
    57
    2
    0 Votes
    57 Posts
    5k Views
    AsgothianA
    @codierknecht sagte in Zeitplan Probleme: übersehen, dass hier Timeout und nicht Intervall Teufel, Detail, Offene Fragen :)
  • Blockly für Sturmerkennung so korrekt ?

    11
    1
    0 Votes
    11 Posts
    838 Views
    Q
    @paul53 Vielen Dank für deine Hilfe! Lässt sich der Mehrverbrauch an Ressourcen durch diese "nicht optimale" Art Skripte quantifizieren ?
  • Script auf mehrere Objekte + Wert Parent-Ordners auslesen

    8
    0 Votes
    8 Posts
    478 Views
    A
    hier übrigens das script für alle, die daran interessiert sind. AP von 10.1.1.1 entsprechend auf euren AP setzen: var url, TagMini1, jsonMini1; async function encodeURL(url) { url = encodeURIComponent(url); return url; } on({ id: [].concat(new RegExp('0_userdata\\.0\\.vars\\.etags\\..+\\.json')), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; jsonMini1 = await encodeURL(String((obj.state ? obj.state.val : ''))); httpPost('http://10.1.1.1/jsonupload', (['mac=',obj.channelName,'&json=',jsonMini1].join('')), { timeout: 15000, responseType: 'text' }, async (err, response) => { }); });

730

Online

32.6k

Users

82.3k

Topics

1.3m

Posts