Skip to content

Blockly

Hilfe für Skripterstellung mit Blockly

6.5k Themen 79.5k Beiträge

NEWS

  • Blockly akzeptiert Datenpunkt nicht

    10
    2
    0 Stimmen
    10 Beiträge
    874 Aufrufe
    XsevX
    @homoran Also leider funktioniert es doch nicht wirklich. Ich hatte die Logikprüfung (true/false) bei meinem Datenpunkt (userdata.0.Datenpunkte.BWM.Balkon) weg gelassen, was ein Dauer "true" zur Folge hatte. Habs erst bemerkt als ich den Punkt auf "false" geschalten habe und es immer noch funktioniert hat. Also das Problem ist nach wie vor das er nicht auf den Datenpunkt reagiert. Anbei hab ich das Blockly mal exportiert. Bindestriche etc. hab ich alles entfernt. Hab den Datenpunkt nochmals neu angelegt aber selbes verhalten. <xml xmlns="https://developers.google.com/blockly/xml"> <block type="on_ext" id="0DvBe(whI|8?:B:Xu}bN" x="112" y="563"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="}UQx4(.,[;n6G0l?aZnA"> <field name="oid">frigate.0.Balkon.person</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="Of3W9w*aA?+k![aNU1Cv"> <field name="oid">frigate.0.Balkon.dog</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="6qglY6E-^*Unvr[~~7}g"> <field name="oid">frigate.0.Balkon.cat</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="mHFKtNVZa}oCsna-~Mxr"> <value name="IF0"> <block type="logic_operation" id="!LYj5RQXfh9M!}jjAP*2" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="5cS7BkLGY=5KH+nv5v/S"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="2)_y,FN6sexWc(+(]+TL"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id=";]:=-G^RRo!)2_[|kNjL"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=")PI*nePgyuZ_#VXNO*_Z"> <field name="ATTR">val</field> <field name="OID">frigate.0.Balkon.person</field> </block> </value> <value name="B"> <block type="math_number" id="FoTQ61*Fhs-G3lK*k7?n"> <field name="NUM">1</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="auiw(/1%{.B`W$J[RE01"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="P_gkk?wk6*9mTEsk4fmI"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="^4*QwHcf].36q}KYgV*_"> <field name="ATTR">val</field> <field name="OID">frigate.0.Balkon.cat</field> </block> </value> <value name="B"> <block type="math_number" id="7^d5iR^Q|^L62)t6xKo("> <field name="NUM">1</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=":z_*l8~K[^8XLCus^yMG"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="f+/Oy+K=`8a4]@Dav|e;"> <field name="ATTR">val</field> <field name="OID">frigate.0.Balkon.dog</field> </block> </value> <value name="B"> <block type="math_number" id="+4[mau,QbeH-:+mq(gDa"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="C1,fPT[Rq[@3?Gg;[hh$"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="#Y}=hi)S/gX,ZLEqt4po"> <field name="ATTR">val</field> <field name="OID">javascript.0.Camview-Vis</field> </block> </value> <value name="B"> <block type="math_number" id="@dKKWP4GTui_;cj2Jx0."> <field name="NUM">6</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="rK/)8;LYC(|2xDL-I4@:"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="mIFnn8wA$Rmb@v7UocZh"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Datenpunkte.BWM.Balkon</field> </block> </value> <value name="B"> <block type="logic_boolean" id="/9ZE~cd0`W+Od)7(g6oZ"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="|k6YTovQ%wCEDv.U=QT8"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">javascript.0.Camview-Vis</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">200</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="K.YC%G3clv)a{jRI}?(a"> <field name="NUM">6</field> </block> </value> </block> </statement> </block> </statement> </block> </xml>
  • [gelöst]Hilfe bei blockly Image8 Widget Bild ändern anhand..

    6
    1
    0 Stimmen
    6 Beiträge
    209 Aufrufe
    icebearI
    @paul53 Vielen Dank nochmal für den 'Denkanstoß' funktioniert soweit perfekt. Ich mußte mir allerdings noch ein 'Übersetzter'- Script anlegen, welches die States nach 1, 2, 3 usw übersetzt, da ja das Image8 Widget bei Wert für URL nur fortlaufende Zahlen 1, 2, 3 usw kennt.
  • Zeitspanne für Trigger

    1
    1
    0 Stimmen
    1 Beiträge
    126 Aufrufe
    Niemand hat geantwortet
  • PV-Überschuss Heizstab, Verzögerung komme nicht weiter

    6
    1
    0 Stimmen
    6 Beiträge
    221 Aufrufe
    paul53P
    @jungdergung Beim verzögerten Zurückschalten sind 3 nicht-Blöcke zu viel. @jungdergung sagte in PV-Überschuss Heizstab, Verzögerung komme nicht weiter: Netzbezug (negatives Vorzeichen). Negativ bei Bezug und positiv bei Einspeisung? Dann ändere oben in: setze ueberschuss auf Wert.
  • [Schaltung Zirkulation] - Skript funktioniert nicht

    2
    1
    0 Stimmen
    2 Beiträge
    230 Aufrufe
    A
    @scrub Ohne mir das Script im Detail angeschaut zu haben fällt mir nur auf, dass es keinen Trigger gibt.
  • Blockly Verzögerung retriggern

    blockly
    3
    1
    0 Stimmen
    3 Beiträge
    258 Aufrufe
    H
    @paul53 Danke!
  • Skript nach Änderung Timeout - wo einfügen?

    blockly javascript
    9
    1
    0 Stimmen
    9 Beiträge
    630 Aufrufe
    G
    @codierknecht Das Fenster reagiert nicht auf Böen. Die werden leider nicht von der Wetterstation ausgelesen. Dafür nehme ich eben die normale Windgeschwindigkeit, die ja vor Böen auch immer erhöht ist. Aus der Sonneneinstrahlung (Helligkeit) und der Windgeschwindigkeit habe ich durch hin- und herprobieren Werte "ermittelt", die in 4 Stufen das Fenster mehr oder weniger öffnen. Das ist auch wieder abhängig von der vorhergesagten Tageshöchsttemperatur. Was ich noch einbinden will ist die Windrichtung, denn wenn der Wind von Osten / Südosten bläst ist das eigentlich unrelevant, da das Fenster nach Westen öffnet.
  • Blöcke hellblau - Javascript Adapter 8.3.1

    3
    1
    0 Stimmen
    3 Beiträge
    384 Aufrufe
    NinjaTurtle85N
    @homoran Oh Mann :joy: :joy: :joy: Ab ins Schwarze Loch mit mir!!!! Vielen Dank!!!!
  • Licht an wenn Wecker klingelt

    32
    1
    0 Stimmen
    32 Beiträge
    4k Aufrufe
    Dr. BakteriusD
    @newbie2007 Ich stelle das in der Alexa-App ein.
  • Blockly geht auf einmal nicht mehr

    3
    2
    0 Stimmen
    3 Beiträge
    175 Aufrufe
    Horst BöttcherH
    @homoran ok werde ich nachher probieren Fürleicht hab ich ihn mal ausversehn umgestellt
  • Webhook an MS Teams schicken

    2
    1
    0 Stimmen
    2 Beiträge
    275 Aufrufe
    T
    Sooooo, MS Teams bekommt nun schonmal Logging aus dem Broker in einem entsprechenden Kanal: [image: 1715729037323-e90ec9fc-8489-42cd-bdfc-91815ecda76b-grafik.png]
  • "Zeitdifferenz formatieren" liefert "falsches" Format

    10
    3
    0 Stimmen
    10 Beiträge
    809 Aufrufe
    paul53P
    @paddex sagte: negativ 7 min 51 sek ?? JS 8.3.1: [image: 1715707610138-blockly_temp.jpg]
  • [gelöst]JSON auslesen, um zu rechnen

    4
    1
    0 Stimmen
    4 Beiträge
    369 Aufrufe
    docadamsD
    @paul53 Vielen Dank. Ist anderer Ansatz, aber deine Lösung kann ich nachvollziehen.
  • Triggerung durch MQTT zu oft

    5
    1
    0 Stimmen
    5 Beiträge
    391 Aufrufe
    BananaJoeB
    @hg6806 sagte in Triggerung durch MQTT zu oft: ich weiß jetzt allerdings nicht wie belastend das für das System ist, wenn jede Sekunde ein Trigger kommt. kommt auf den Unterbau an. Bei mir Triggern vermutlich > 50 Skripte jede Sekunde von etwa 500 vorhandenen (jedes Tasmotagerät hat sein eigenes Skript, Mindestintervall 60 Sekunden, die wichtigen alle 15 Sekunden, Stromzähler jede Sekunde) Inklusive Skripte die durch Skripte getriggert werden: Skript A reagiert auf MQTT oder holt per http JSON-Daten und teilt die auf mehre Einzeldatenpunkte auf Skript B und C reagieren auf die Datenpunkte die Skript A erzeugt hat Skript D reagiert auf etwas was C erzeugt hat ist ein AMD 4 x 3GHz Prozessor der auf dem Niveau eines Celeron läuft, Auslastung im Schnitt 33%, MQTT Broker ist Mosquitto, ioBroker per Adapter als Client Da geht also bei bedarf ganz viel, 1x die Sekunde muss kein problem sein
  • [gelöst] Ein Trigger auf alle Datenpunkte in einer Liste

    12
    0 Stimmen
    12 Beiträge
    377 Aufrufe
    MartinPM
    So, hier die endgültige Lösung Initialisierung: [image: 1715674712529-e665a404-9fd7-4fd6-83e7-d39a1f550889-grafik.png] Trigger-Schleife: [image: 1715675501435-559f84e1-6cf2-4b4b-bb29-d0a4e83fb455-grafik.png] Durch die um 3 Sekunden verzögerte Ausführung möchte ich die Anzahl der Mails verringern. Häufig fallen ja die Geräte in "Rudeln" aus, z. B. bei WLAN-Problemen, und dann ist es sicher gut, erst eine Mail zu bekommen, wenn das ganze Rudel die Probleme gemeldet hat ... Vielleicht spiele ich noch mit der Wartezeit. Der Ping-Adapter ist auf 60 Sekunden eingestellt, wahrscheinlich wären da mehr als 70 Sekunden besser, aber dann dauert es noch länger, bis die Mail eintrudelt...
  • Rollladenfahrt ankündigen - wie Daten im Blockly auswerten?

    15
    1
    0 Stimmen
    15 Beiträge
    436 Aufrufe
    G
    @martinp :-) Das Weidezaungerät gefällt mir am Besten! Da hab ich gleich viele Ideen, wo ich da noch alles Spannung drauflegen könnte, wenn meine bessere Hälfte wieder mal irgendwo dran rumfummelt wo sie nicht soll... :-) @paul53 Das Blockly muss ich mir in Ruhe anschauen. Die Idee dahinter klingt aber erst mal gut!
  • Timeout richtig eingesetzt?

    Ungelöst
    2
    1
    0 Stimmen
    2 Beiträge
    175 Aufrufe
    paul53P
    @wingo56 sagte: wenn die Bedingung die darüber ist 4 sekunden lang ansteht. Prinzip siehe hier EDIT: Mit Freigabe: [image: 1715620352654-blockly_temp.jpg]
  • Prüfung letzte Änderung älter als 30 Minuten

    3
    1
    0 Stimmen
    3 Beiträge
    308 Aufrufe
    F
    @paul53 super vielen Dank, das funktioniert.
  • Steckdose in 30 min ausschalten

    3
    1
    0 Stimmen
    3 Beiträge
    257 Aufrufe
    rtwlR
    @gonzokalle Guter Punkt, werde ich testen. Danke 👍
  • Homematic Ip Rollos runter

    3
    0 Stimmen
    3 Beiträge
    132 Aufrufe
    O
    @lustig29 Richtig, wobei der Adapter das auch selbst begrenzt, damit die Cloud einen nicht sperrt. Steuere die Rollläden halt in einem Abstand von einer Sekunde.

424

Online

32.7k

Benutzer

82.4k

Themen

1.3m

Beiträge