Skip to content

Blockly

Hilfe für Skripterstellung mit Blockly

6.6k Topics 79.6k Posts

NEWS

  • [gelöst] Kodi: Enduhrzeit berechnen

    44
    0 Votes
    44 Posts
    2k Views
    K
    @ostseereiter was genau meinst du ? ich habe immer verschiedene Versionen gepostet. der letzte Export von heute ist der entscheidene
  • hochzählen solange trigger auf wahr, zurücksetzen wenn false

    4
    1
    0 Votes
    4 Posts
    533 Views
    AsgothianA
    @passuff sagte in hochzählen solange trigger auf wahr, zurücksetzen wenn false: Diese Intervall Blöcke sind mir suspekt. Ich habe es inzwischen so versucht: Das dieses nicht funktioniert wundert mich nicht. Ich weiss nicht wie gut der ioBroker damit umgehen kann wenn der identische JS Code mehrfach parallel aufgerufen wird. Genau das kann aber passieren (Alternativ, wenn der ioBroker das erkennt und Blockiert wird auf weitere Trigger nicht reagiert) Das Problem an diesem Code ist das du "synchron" die Abarbeitung des Triggers so lange verzögerst bis der Wert sich wieder geaendert hat. Wenn du den Taster also lange genug fest hältst wird die Schleife nie beendet werden. Der "Pause" Baustein sorgt nicht dafür das das ganze asynchron bearbeitet wird, er sorgt nur dafür das die Abarbeitung pausiert. Dennoch kommt der Aufruf der den Trigger startet nicht zurück. Genau das ist aber was der ioBroker benötigt. Die einzelnen Funktionen die durch einen Trigger aufgerufen werden sollten so schnell wie möglich zurück kommen. Wenn in einer Funktion ein "Intervall" gestartet wird, dann ist das "asynchron", sprich die Abarbeitung wird nur angestossen und die Funktion kommt sofort zurück. Warum schreibe ich das so ausführlich ? Dein Blockly ist ein extrem gutes Beispiel wie man es NICHT machen sollte. @paul53 hat davor schon die "saubere" Variante gepostet, die letztendlich genau das gleiche macht was du auch mit deiner Variante versucht hast, nur halt "asynchron" anstatt "synchron". A.
  • [gelöst] DS18b20 - Alexa wiederholt sich

    6
    1
    0 Votes
    6 Posts
    507 Views
    S
    Vielen Dank an alle !!!
  • Fensterkontakt als Zugluftwächter für Ofen benutzen

    3
    0 Votes
    3 Posts
    341 Views
    N
    @Asgothian Vielen Dank. Ja das mit der Struktur hab ich mir schon beim schreiben gedacht und dann beim wegschicken ist es mir aufgefallen das ich das selber sehr schlecht formuliert hab. Aber vielen Dank. Werde es mal so in der Richtung ausprobieren und lasse dann ein Script hier mit besserer Struktur :)
  • Reicht die erzeugte Menge Strom für eine größere Batterie?

    61
    0 Votes
    61 Posts
    3k Views
    B
    @babl So nun wieder ein neues Problem wo ich wieder Hilfe benötigen würde. [image: 1604596226473-test-script.jpg] Das Script für die Variable maxbat level paßt, hier schreibe ich nur pauschal wie oft die Batterie nicht voll geworden ist. aber bei dem minbatlevel würde ich gerne auswerten wieviel tage sie nur zu 0 - 19% / 20 -39% usw. geladen wurde. Hier muß ich doch den ganzen tag abfragen so trägt er mir nur den aktuellen wert ein denn das script beim abruf erhält. wer kann mir hier helfen, ich hoffe daß ich durch diese Hilfe dann irgendwann vielleicht selber so weit bin und hier auch vernünftige scripte auf die Reihe bekomm. So wie es aktuell aussieht läuft das Script und macht was es soll, vielleicht kann doch jemand mal drüberschauen und vielleicht einen tipp geben ob man das besser machen kann.
  • Skripthilfe falls ein Wert länger als .. dann ..

    blockly
    4
    1
    0 Votes
    4 Posts
    794 Views
    F
    Ja das ist das ganze Blockly bzw. eines von zwei hier noch das erste: [image: 1604594144963-2020-11-05-17_35_22-javascript-iobroker.png] Ich steuere darüber in diesem Fall mein Licht. Ich nutze noch Fibaro Motion Sensoren als Bewegungssenoren. Bei Bewegung bleibt der Wert immer auf true erst wenn keine Bewegung mehr wahrgenommen wird stellen die sich auf false. Lich sind HUE color Spots. Trotzdem kommt es vor warum auch immer das ich im dunkeln stehe obwohl ich mich die ganze zeit bewege. Gruss
  • Kodi - Stream via Blockly aufrufen

    15
    0 Votes
    15 Posts
    769 Views
    Ralla66R
    @oberfragger warum gehste nicht mit Verbindung 1 auf die Enigma per IPTV und mit Verbindung 2 nach Motion. Verstehe ich Grad nicht.
  • Event nur einmal in 5 Minuten

    3
    0 Votes
    3 Posts
    216 Views
    mcBirneM
    @Nordischerjung super Tipp. Danke!
  • AutoOFF nach bestimmter Zeit

    10
    1
    0 Votes
    10 Posts
    2k Views
    B
    Vielen herzlichen Dank! :blush: Da war tatsächlich der Wurm drin! Jetzt funktioniert es. :+1: :+1: :+1:
  • Blockly Frage

    5
    0 Votes
    5 Posts
    243 Views
    HomoranH
    @denjo sagte in Blockly Frage: weil ich immer warn meldungen bekomme Und was steht drin?
  • [gelöst] Timer erst starten, wenn Gerät nicht mehr aktiv ist

    16
    1
    0 Votes
    16 Posts
    985 Views
    SlowmanS
    Danke für die Hilfe paul53 :+1: Hier der fertige Blockly, vielleicht kann ja Jemand diesen gebrauchen. [image: 1604502675380-screenshot_2020-11-04-javascript-iobroker.png] <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="interval" id="Intervall">Intervall</variable> </variables> <block type="on_ext" id="F!vi?BKRsLZog%?FBH:g" x="145" y="-541"> <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="wVxaT/vXrZp%oq.$ztTZ"> <field name="oid">deconz.0.Sensors.36.open</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="XW_hOHdKCcq}gh.l`+$j"> <value name="IF0"> <block type="logic_compare" id="}xOLFNov3G6s*}2,Z2UM"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="6e}P^ZNT_Jy6-ja?r]U{"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.33.temperature</field> </block> </value> <value name="B"> <block type="math_number" id=",G{QbJ|6c5{,Iq^!$Li3"> <field name="NUM">15</field> </block> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id="X3z1#^5Fw/yt.JJH%mgG"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="kz6a*@]rTi@)ZP{,]#*:"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="XEaJQQQ*$nX}=}pk-D/r"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.36.open</field> </block> </value> <value name="B"> <block type="math_number" id="Yrl[!=%9ZHJUAD;25Obz"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_setinterval" id="u#rS73GY/m7T~.#Bh9QU"> <field name="NAME">Intervall</field> <field name="INTERVAL">10</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="=*B,vjZW*hnjeJ!PgxP@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="s(HE-yMfiJs%,njRSwwp"> <field name="TEXT">20;Das Fenster im Gäste WC ist seit 10 Minuten offen</field> </block> </value> </block> </statement> </block> </statement> <statement name="ELSE"> <block type="timeouts_clearinterval" id="e^!S+IEUkz74-KWuLP)]"> <field name="NAME">Intervall</field> <next> <block type="control" id="|X=~p7*8$lmTqfr`DR.L"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="r41/^`!#QQ8#L)reQ5BH"> <field name="TEXT">20;Danke, das Du das Fenster im Gäste WC geschlossen hast.</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </statement> </block> </xml>
  • [gelöst] Sekunden in Std:Min:Sek formatieren

    blockly
    6
    2
    0 Votes
    6 Posts
    324 Views
    K
    habe grade von @paul53 einen intessanten Link erhalten: https://forum.iobroker.net/post/470288 Scheint zu funktionieren: [image: 1604497832417-37cfde65-3ba7-4945-8d3c-5a9dada84454-grafik.png] 02:00:00
  • Tagesstromverbrauch mit Blockly ermitteln

    4
    0 Votes
    4 Posts
    591 Views
    paul53P
    @wolkenschaufler sagte: Kannst du mir das erklären? @paul53 sagte in Tagesstromverbrauch mit Blockly ermitteln: sie muss auf den Zählerstand um Mitternacht gesetzt werden. Tagesverbrauch = Zählerstand heute - Zählerstand gestern,
  • Sinnvoller Trigger für Alexa gesucht ...

    9
    1
    0 Votes
    9 Posts
    986 Views
    M
    @dslraser korrekt, ist ein Button und ja, geht mit dem selben Befehl an und aus. Das mit dem "umschalten" funktioniert so - habe "steuern" probiert und es hat nicht funktioniert. Die Dreambox bekommt das selbe IR signal ( Power on ), somit ist das auch geklärt warum das funktioniert. Fehlt nur noch wie ich den LED DImmer bei Kommando "alexa tv aus " . Ich sehe da keine andere Möglichkeit, als komplett alles umzubauen und auf den Schaltzustand des LED Dimmers zu prüfen, oder siehst Du noch eine andere Lösung?
  • counter für fenster, wie lange geschlossen

    javascript blockly
    13
    1
    0 Votes
    13 Posts
    1k Views
    S
    @Turrican Unter Mathematik ist das +, und dort kann man auch die anderen Rechenarten wählen und den Baustein in die vertikale Version umwandeln: [image: 1604492791533-0f4a703d-2bb3-4742-a357-ea55d8ef2725-grafik.png]
  • Blockly Schleife

    20
    0 Votes
    20 Posts
    919 Views
    werner2000xW
    @jensven Oben im Script wird wertabhängig gesteuert, d.h. es wird der gesamte Bereich von 0% bis 100% bzw. umgekehrt durchlaufen mit einer Schrittweite von 10%. Die Schrittweite kann variiert werden und damit die Länge der Durchlaufzeit. Bei dir ist die Schrittweite 1 und du benutzt zwei Schleifen statt einer Schleife. Die Zeit ist durch die Schleife(n) vorgegeben. Es werden nicht unbedingt alle Werte durchlaufen.
  • Multimediasystem steuern

    3
    1
    0 Votes
    3 Posts
    271 Views
    J
    Keiner eine Idee? Mir würde es schon reichen, wenn mir jemand sagen könnte, wie ich den Baustein "wurde aktualisiert" zu "wurde nicht aktualisiert" verändern kann...
  • Blockly parallel ausführen

    5
    0 Votes
    5 Posts
    685 Views
    Jochen BaurJ
    @paul53 Hättest du dazu ein "Dummy" Blockly ? Danke & Gruß Jochen
  • Exec Befehl für USV wird nicht korrekt ausgeführt

    blockly
    3
    1
    0 Votes
    3 Posts
    205 Views
    David G.D
    @Thomas-Braun Das kann sein. Bin bzgl. Linux ein ziemlicher Dau. Habe den Nut Server nach Anleitung installiert. Bis auf den automatischen Start klappt auch alles. Hab diesen gemäß Anleitung auch folgendermaßen konfiguriert: [image: 1604441669180-screenshot_20201103-231221_raspcontroller.jpg] (Bekomme am Handy den Text leider nicht kopiert.)
  • [Gelöst] Blockly Script funktioniert nicht mehr

    16
    2
    0 Votes
    16 Posts
    1k Views
    A
    @Homoran ich hatte wie der @fastfoot gesagt nicht auf das + Rechts geklickt da es nicht da war sondern auf das + links nachdem ich Expertenmodus aktiviert habe ist das + auf der Rechten Seite aufgetaucht. Danke nochmals

645

Online

32.7k

Users

82.5k

Topics

1.3m

Posts