Skip to content

Blockly

6.6k Topics 79.7k Posts

Hilfe für Skripterstellung mit Blockly

NEWS

  • Blockly script Trigger Zeitpunkt ODER Variablenänderung

    11
    0 Votes
    11 Posts
    707 Views
    T
    @bananajoe "EG_Klingel:3.STATE = False" bedeutet in meinem Falls, dass die Klingel eingeschaltet wird. Das liegt an der Verdrahtung zwischen dem angesteuerten Relais und dem Klingelgong. Hab erstmal vielen Dank. Werde es in den kommenden Tagen mal testen. VG Takahara
  • Blockly für Stufeneinschaltung

    21
    0 Votes
    21 Posts
    4k Views
    flkontaktF
    @paul53 mathe kann so einfach sein ;-). danke für den Schubser in die richtige Richtung!
  • Shelly Plus2PM(Covermod) und Blockly

    6
    0 Votes
    6 Posts
    154 Views
    H
    @djmarc75 Vielen Dank, das war's. Den Link werde ich jetzt mal lesen.
  • Bild wenn es klingelt?

    9
    1
    0 Votes
    9 Posts
    822 Views
    BananaJoeB
    Noch ein Nachtrag: Cool, man kann auch eine Gruppe angeben, das erhält man eine Übersicht mit allen Kameras in der Gruppe ... Die Qualität der Bilder ist aber etwas mau da der Vorschau-Stream verwendet wird. Kommt darauf an wie deine Kameras eingebunden sind. Ich habe Reolinks, die haben 2 Streams, einen Vorschau 640x380 welche auch zur Auswertung genutzt wird und den "richtigen" mit 2560x1920 der dann aufgezeichnet wird.
  • Warten auf successful bei Linux Control

    13
    0 Votes
    13 Posts
    1k Views
    F
    @felsdrache [image: 1720464491909-iobroker.png] So klappt es dann
  • [Gelöst] Exec wird scheinbar nicht ausgeführt

    blockly
    7
    2
    0 Votes
    7 Posts
    623 Views
    S
    @thomas-braun Nicht wirklich. Es funktioniert ja auch in dem Verzeichnis /home/iobroker über Blockly (exec) nicht. Es funktioniert nur wieder über die Kommandozeile (per Putty). Und sudo -u iobroker mpg123 ... funktioniert in Blockly auch nicht. EDIT: Ursache gefunden. Es war ein Timing-Problem in Blockly. Nun klappt es. Besten Dank für eure Hilfe.
  • Zwei Datenpunkte vergleichen, grösser als...

    14
    1
    0 Votes
    14 Posts
    834 Views
    paul53P
    @darkblu sagte: Die Datenpunkte sind vom Type gemischt (mixed). Deshalb meckert der js-controller nicht, wenn ein String geschrieben wird. Wenn mit den Werten gerechnet werden soll, müssen Zahlen in die DP geschrieben werden.
  • OpenDTU - falls DTU "falsch", dann Fritz Dect Steckdose aus!

    11
    0 Votes
    11 Posts
    774 Views
    K
    @paul53 jetzt leuchtet es mir ein.... Ich habe die Variable nicht wahr genommen ! Dein Hinweis mit der Variablen und dem erneuten Einlesen des Datenpunktes hat bei mir klick gemacht :) Somit passe ich nochmal das Script nach deiner Version an! [image: 1720286855881-dtu.png] <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="on_ext" id="13k~%BXuW:dn^bzTXH?t" x="-87" y="-462"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="D%+u;:[j;Ls5e|sffdom"> <field name="oid">ping.0.raspberrypi.192_168_1_155</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="phJQ_1$Tx1t|~O@|IdMI"> <field name="NAME">timeout2</field> <next> <block type="controls_if" id="Cv|YRH`Ln_h)X$$,+C^p"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_negate" id="kCrhu_a0f%ly@+J[o9UI"> <value name="BOOL"> <block type="on_source" id="PfW^]VSV37G+NvLcZH{s"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_settimeout" id="u9Zdd7N0rtv9+/:wI]++"> <field name="NAME">timeout2</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="Z!^ByDqmlh]b`?B(dved"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT_116570570860.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="mTwv!d5NuFJbke$wy$Rd"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> <value name="IF1"> <block type="logic_negate" id="rXLteYmHZ8gBR95GQ2xv"> <value name="BOOL"> <block type="get_value" id="F88jE*;R.|KIds;n[v_L"> <field name="ATTR">val</field> <field name="OID">fritzdect.0.DECT_116570570860.state</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="QF2_R8$?nn313/.]nPj6"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT_116570570860.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="|tvtV_^FI_kfm|TdD.K)"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> </block> </xml> <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="on_ext" id="13k~%BXuW:dn^bzTXH?t" x="-87" y="-462"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="D%+u;:[j;Ls5e|sffdom"> <field name="oid">ping.0.raspberrypi.192_168_1_155</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="phJQ_1$Tx1t|~O@|IdMI"> <field name="NAME">timeout2</field> <next> <block type="controls_if" id="Cv|YRH`Ln_h)X$$,+C^p"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_negate" id="kCrhu_a0f%ly@+J[o9UI"> <value name="BOOL"> <block type="on_source" id="PfW^]VSV37G+NvLcZH{s"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_settimeout" id="u9Zdd7N0rtv9+/:wI]++"> <field name="NAME">timeout2</field> <field name="DELAY">30</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="Z!^ByDqmlh]b`?B(dved"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT_116570570860.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="mTwv!d5NuFJbke$wy$Rd"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> <value name="IF1"> <block type="logic_negate" id="rXLteYmHZ8gBR95GQ2xv"> <value name="BOOL"> <block type="get_value" id="F88jE*;R.|KIds;n[v_L"> <field name="ATTR">val</field> <field name="OID">fritzdect.0.DECT_116570570860.state</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="QF2_R8$?nn313/.]nPj6"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">fritzdect.0.DECT_116570570860.state</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="|tvtV_^FI_kfm|TdD.K)"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> </block> </xml>
  • Wiedermal eine Frage zum Timeout Handling

    24
    1
    0 Votes
    24 Posts
    2k Views
    J
    @paul53 Bis jetzt läuft es super das neue Blockly, ich konnte es auch noch ein wenig kürzen. Also das mit den Timern ist irgendwie schon verwirrend....
  • Wasserverbrauch tageweise loggen und anzeigen

    19
    2
    0 Votes
    19 Posts
    1k Views
    C
    @crunchip Hab jetzt seit paar Tagen den Gesamtverbrauch geloggt. Seitdem schauts ganz gut aus. An Grafana hats nicht gelegen, sondern eher daran das ich den Tagesverbrauch als Wert genommen hab und nicht den Gesamtverbrauch. Muss noch paar Tage warten aber Stand jetzt passt es ;-)
  • Script für Schalter und Bewegungsmelder ** gelöst **

    8
    2
    0 Votes
    8 Posts
    473 Views
    Horst BöttcherH
    @paul53 dank dir geht super
  • (gelöst) Klimaanlagen einschalten, Reihenfolge

    17
    0 Votes
    17 Posts
    1k Views
    paul53P
    @perladd sagte: kann ich dann z.B. eine Freigabe wegnehmen, oder muss ich das Blockly dafür neu starten? Das Skript muss nicht neu gestartet werden, denn es wird oft genug getriggert. Allerdings sollte bei Wegnahme einer Freigabe auch ausgeschaltet werden, denn das passiert nicht automatisch. Beispiel: [image: 1720119136853-blockly_temp.jpg]
  • [gelöst] Prüfung, ob dyndns von UniFi funktioniert

    7
    1
    0 Votes
    7 Posts
    405 Views
    Meister MopperM
    So läuft es jetzt erstmal: [image: 1720114359320-e5626a98-0ba9-4854-a9d9-28fe3165d3c1-grafik.png] Spoiler <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="iV|Q4#}M#GvJMC)-ifVg">message</variable> <variable id="bhq66a!eE!`5UIPZnS6x">new_result</variable> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="variables_set" id="nPgzEf1L4{3h-OY.Km_#" x="63" y="213"> <field name="VAR" id="iV|Q4#}M#GvJMC)-ifVg">message</field> <value name="VALUE"> <block type="logic_boolean" id="|G^3]r+{nqXR@S^j;Mfq"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="schedule" id="}R?fvg?A:B1nj+}iH4gD"> <field name="SCHEDULE">* * * * *</field> <statement name="STATEMENT"> <block type="exec" id="_BLbzqPx+e$Q-?#d}[M]"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="aI+iX7wqPJo#h}s(:C_1"> <field name="TEXT">pwd</field> </shadow> <block type="text" id="$iHy5klLvIgH6^W:CeFx"> <field name="TEXT">wget -4 -O - -q icanhazip.com</field> </block> </value> <statement name="STATEMENT"> <block type="variables_set" id="mBL1l^7mf7soEFJ(U|dT"> <field name="VAR" id="bhq66a!eE!`5UIPZnS6x">new_result</field> <value name="VALUE"> <block type="text_getSubstring" id="4$!sqUiZ4S}_?]|/(dVe"> <mutation at1="true" at2="true"></mutation> <field name="WHERE1">FROM_END</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="exec_result" id="AxmxEIZpp5;;#!(YF_G8"> <field name="ATTR">result</field> </block> </value> <value name="AT1"> <block type="math_number" id="jyTgC7O_W;?bkDmU)sM]"> <field name="NUM">16</field> </block> </value> <value name="AT2"> <block type="math_number" id="{GjcJ{;Y!T3y7w73wBmA"> <field name="NUM">15</field> </block> </value> </block> </value> <next> <block type="timeouts_cleartimeout" id="=kh@d$Qlas)|5%(*FhI]"> <field name="NAME">timeout2</field> <next> <block type="timeouts_settimeout" id="l[k|vzj({+T7eQ*/RI(S"> <field name="NAME">timeout2</field> <field name="DELAY">1000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="controls_if" id="E$U:/aH4ADAEm+3}ba}U"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="]^/0()LSo-}Ab5^Y)=i@"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="Yuh/I]uMX}X|.$68g|Yq"> <field name="VAR" id="bhq66a!eE!`5UIPZnS6x">new_result</field> </block> </value> <value name="B"> <block type="get_value" id="Yfbhl=a0c{8X]aGTjxcE"> <field name="ATTR">val</field> <field name="OID">unifi.0.default.health.wan.wan_ip</field> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="Q.!Pq*;oeME@}|hiZ6`7" collapsed="true"> <field name="INSTANCE"></field> <field name="LOG">error</field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="ESCAPING">FALSE</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id="(j3GFpxE9*C2l^jg=sWw"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="/K9SvMP2;xv?zDppJIS!"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="5g8IN=S:K_(Ag*`f{hCq"> <field name="TEXT">⚠️ Die dyndns-IP </field> </block> </value> <value name="ADD1"> <block type="get_value" id="Gtd8SWG`rss-TJ5:)bn!"> <field name="ATTR">val</field> <field name="OID">unifi.0.default.health.wan.wan_ip</field> </block> </value> <value name="ADD2"> <block type="text" id="^:%3:b*m$8Zm^pix=C3s"> <field name="TEXT"> konnte nicht gepingt werden.</field> </block> </value> </block> </value> <next> <block type="exec" id="t}2EYShbX+S]v`rU96rZ" collapsed="true"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="jk/`0mhfhSzx(gH:;KzE"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="qkj~Z}McOZ%ST$qC^`|6"> <mutation items="8"></mutation> <value name="ADD0"> <block type="text" id="]iJXeK?G.=s=@|7Bp|7K"> <field name="TEXT">curl "https://mygotify.meistermopper.de/message?token=</field> </block> </value> <value name="ADD1"> <block type="get_value" id="t9cG=wUeV#?8e`Zc1X|$"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.gotifytoken.iobroker</field> </block> </value> <value name="ADD2"> <block type="text" id="85GDr0(MlTYeHa{oK#{i"> <field name="TEXT">" -F "title=</field> </block> </value> <value name="ADD3"> <block type="text" id="}f8amb55hvNXm:z,:t(p"> <field name="TEXT">ioBroker:</field> </block> </value> <value name="ADD4"> <block type="text_newline" id="Nz/%Ylqzg4MKm)Urp/%,"> <field name="Type">\n</field> </block> </value> <value name="ADD5"> <block type="text" id="{97Uv|2/ij(%0(7WN0bj"> <field name="TEXT">" -F "message=</field> </block> </value> <value name="ADD6"> <block type="text_join" id="0W:a4pX`7qZ#~l@~ju7n"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="nwc9QCaxo$-2G$v^o$OI"> <field name="TEXT">⚠️ Die dyndns-IP </field> </block> </value> <value name="ADD1"> <block type="get_value" id="[u5O`24Q)?GM{%N@pe#0"> <field name="ATTR">val</field> <field name="OID">unifi.0.default.health.wan.wan_ip</field> </block> </value> <value name="ADD2"> <block type="text" id="mAp|CUc:6+*C2p9g^f8|"> <field name="TEXT"> konnte nicht gepingt werden.</field> </block> </value> </block> </value> <value name="ADD7"> <block type="text" id="D8pRtdN?RQJwN4aD_Z8!"> <field name="TEXT">" -F "priority=1"</field> </block> </value> </block> </value> <next> <block type="variables_set" id="ccH[|2n.O8crG$U`qo8A"> <field name="VAR" id="iV|Q4#}M#GvJMC)-ifVg">message</field> <value name="VALUE"> <block type="logic_boolean" id="gIRZO0M_DYxqdw-rr:rT"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="controls_if" id="HD)ugR0pkCP:v3-qQ,zB"> <value name="IF0"> <block type="variables_get" id="#qWQhj~}Xs@dG5WX}~z;"> <field name="VAR" id="iV|Q4#}M#GvJMC)-ifVg">message</field> </block> </value> <statement name="DO0"> <block type="variables_set" id="L1l%WXgFUjPYx]r$U19x"> <field name="VAR" id="iV|Q4#}M#GvJMC)-ifVg">message</field> <value name="VALUE"> <block type="logic_boolean" id="wwhv?u}D~8:(kuC?]9xI"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </xml> Vielen Dank @MartinP für den Schubser 👋.
  • Alexa welcher Song spielt auf welchem Gerät?

    3
    2
    0 Votes
    3 Posts
    326 Views
    M
    @paul53 Dankeschön, das werde ich heute Abend direkt mal testen !
  • Blockly -> Telegram Anruf

    6
    2
    0 Votes
    6 Posts
    462 Views
    T
    @haus-automatisierung Nein Nein, als ich dich erwähnte, hatte ich das mit der CallMeBot Thematik noch nicht gefunden. Erst als ich die Doku der Telegram Anruf Funktion durchsucht habe, bin ich darüber gestolpert.... Und ehrlich gesagt hätte ich nicht gedacht, das das ein Service eines anderen Dienstleisters ist. Deine Blockly Blocks mit "call" ließen mich vermuten, das der Anruf von Telegram kommt :-) -> Nach der erfolgreichen "freischaltung" beim CallMeBot gehts dann auch .... (lesen bildet eben) ...sorry das ich dich für sowas aus dem Bett geholt habe :) Aber mal ehrlich: 4 Minuten finde ich echt unbrauchbar, oder was meinst du dazu ....?? Insofern, wenn es dich interessiert, kannst du ja mal bei dir testen und berichten, ansonsten begraben wir das Thema "Anrufe" :-D -> trotzdem ganz lieben Dank frs reagieren....
  • Berechnung aktueller Verbrauch und Gesamtverbrauch

    16
    5
    0 Votes
    16 Posts
    1k Views
    L
    @lamo1966 said in Berechnung aktueller Verbrauch und Gesamtverbrauch: @homoran said in Berechnung aktueller Verbrauch und Gesamtverbrauch: du verbrauchst gerade 1183000 W? Nein, seit April 1.183kwh
  • Preis berechnen

    8
    1
    0 Votes
    8 Posts
    722 Views
    NashraN
    @haus-automatisierung sagte in Preis berechnen: @nashra sagte in Preis berechnen: und ich fummel mir da was zusammen Hat mich auch ein wenig gewundert, weil Du seit 2018 dabei bist Blockly war noch nie so meins aber ab heute habe ich viel Zeit um zu lernen (Rente)
  • Szenenschalter abfragen - Trigger triggern...

    7
    0 Votes
    7 Posts
    564 Views
    HomoranH
    @fibricus sagte in Szenenschalter abfragen - Trigger triggern...: oder warum zwei getrennte falls und icht falls....sonstfalls...?
  • Lampe immer nach 6 Stunden ausschalten

    24
    2
    0 Votes
    24 Posts
    2k Views
    I
    @djmarc75, @paul53, @Asgothian , @duffy, @Homoran Vielen Dank für Eueren Input!
  • Gerät im Netzwerk true false wechselt ständig

    8
    1
    0 Votes
    8 Posts
    532 Views
    haselchenH
    @mika-0 Vielleicht solltest du den Ping Adapter nutzen. Zuverlässiger als die TR-064 Abfrage.

608

Online

32.8k

Users

82.7k

Topics

1.3m

Posts