Weiter zum Inhalt

Blockly

6.6k Themen 80.3k Beiträge

Hilfe für Skripterstellung mit Blockly

NEWS

  • Lichtsteuerung mit BWM und Türkontakt

    Ungelöst blockly
    2
    0 Stimmen
    2 Beiträge
    409 Aufrufe
    D
    @jb37 Was mir bei deinem Script auffällt: der dritte "falls" Block da prüfst du ob die Deckenlampe an ist, dabei hast du sie im Block davor schon angeschalten. Dieser Abschnitt wird also immer ausgeführt. du prüfst auf "anwesend = falsch" allerdings wurde die Variable vorher nicht vorbelegt das kann zu Fehlern führen da du in diesem Moment nicht weißt ob sie falsch oder wahr ist. mehr hab ich noch nicht angeschaut. Hier ist mein Script vom Flur, da sind mehrere Türen die abgehen. Wenn eine Tür geöffnet wird geht das Licht an, erkennt der Bewegungsmelder was geht das Licht auch an. So lange der Bewegungsmelder was erkennt geht das Licht nicht aus. Das Licht geht nur an wenn die Helligkeit im Flur unter 100 Lux ist und in zwei bestimmten Zeitslots. Ansonsten geht das Licht aus wenn 2 Minuten nichts mehr erkannt wird. <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout">timeout</variable> </variables> <block type="comment" id="24WBt~:i2zGn9:^KBRSt" x="-313" y="-138"> <field name="COMMENT">Türen</field> <next> <block type="on_ext" id="1t?n./2g#;fDu7E%U(ju"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="5"></mutation> <field name="CONDITION">gt</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="t}+0OPJU%H/kC13Eh_94"> <field name="oid">deconz.0.Sensors.00158d0002bff095.open</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="`=)joAfpFR*bJkN,F{7o"> <field name="oid">deconz.0.Sensors.00158d0002ecefee.open</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="tD,r#t6f?=sV-Ui|hp$@"> <field name="oid">deconz.0.Sensors.00158d0002e738ae.open</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="eDD]7D19UzlbQwCFw~oP"> <field name="oid">deconz.0.Sensors.00158d000313af12.open</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id="1TaDX!6,q+J3tgKyN1IG"> <field name="oid">deconz.0.Sensors.00158d0003120d31.open</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="G}T3d5/tTCZArHquVV[k"> <field name="NAME">timeout</field> <next> <block type="procedures_callnoreturn" id="M{F9f-du:dPI{T3:m.uq"> <mutation name="LichtEin"></mutation> </block> </next> </block> </statement> <next> <block type="comment" id=":[3WVwf9a/GV:C)8{?g["> <field name="COMMENT">Bewegungsmelder</field> <next> <block type="on" id="id7(?96)l,-6OwK`LwW@"> <field name="OID">deconz.0.Sensors.00158d0002d43d4b.presence</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="BT=mGNUd~mWHF+kl#11U"> <field name="NAME">timeout</field> <next> <block type="controls_if" id="(Ce+%mE-HRR6O$gb~Sls"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="K10cGU-t%TNXu+@J%*?M"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=",yc4^XLr2U5?+^YgrR!T"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.00158d0002d43d4b.presence</field> </block> </value> <value name="B"> <block type="logic_boolean" id="~:dFe}Yb7^;/SF6Bh=+4"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="#fz;`L9%Yp=E3:sYSlm@"> <mutation name="LichtEin"></mutation> </block> </statement> <value name="IF1"> <block type="logic_compare" id="HSI.+K:-sG9.A4OI__=U"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="WU+UP~d:ISVWl_|~hG4S"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.00158d0002d43d4b.presence</field> </block> </value> <value name="B"> <block type="logic_boolean" id="f5YF`[jqGQt8pl40N)_("> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="procedures_callnoreturn" id="Rk$$~)GZm%whvB0e~H*1"> <mutation name="LichtAus"></mutation> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> <block type="procedures_defnoreturn" id="9T}@DOgWdP.GEALkAk9X" x="-312" y="513"> <field name="NAME">LichtEin</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="controls_if" id="TUiz]p4B[pD~gN|{F,7l"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="z)^!=0I4q:WWFunj9ygd" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="u9RjU|a}*28mOj,tG-,;" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="time_compare" id="EB/~V-z]tuo|2tBR1POk"> <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation> <field name="OPTION">between</field> <field name="START_TIME">05:30</field> <field name="END_TIME">08:00</field> </block> </value> <value name="B"> <block type="time_compare" id="?A#F7RpvVmXm@wr2vtM#"> <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation> <field name="OPTION">between</field> <field name="START_TIME">16:00</field> <field name="END_TIME">22:00</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="/:RA=ZP,R-2e..{3,2w."> <field name="OP">LT</field> <value name="A"> <block type="convert_tonumber" id="fnaSHiPMg%;ZZ;ruJvha"> <value name="VALUE"> <block type="get_value" id="vOakpERq;jq0]}8?8cYj"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.00158d0002d43d4b.lux</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="ZI9GGUFaWh70Ugqu$ecj"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="?JHRF*ODZl%XZq4mm,p."> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Groups.1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="yIyhYREzaTVt@V,{NcX3"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="procedures_callnoreturn" id="Y1=H.H,.}}n{w]zW[KBU"> <mutation name="LichtAus"></mutation> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="!r(rbS19ouJh-nd0c$5l"> <field name="OP">LT</field> <value name="A"> <block type="convert_tonumber" id="]1#.1vzepNm!*~@qOnGw"> <value name="VALUE"> <block type="get_value" id="{93H-SI[.RQPdgM^z`ax"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.00158d0002d43d4b.lux</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="/kevQ]0S22MIC|egbz*-"> <field name="NUM">100</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="0|F*{PWMY]s7K;kuh)]~"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Lights.00124b001d3aaae6.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="6ddypsl^ZMfdfP,okh}="> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="procedures_callnoreturn" id="1gYte?9]y%7X7y]L^Fl!"> <mutation name="LichtAus"></mutation> </block> </next> </block> </statement> </block> </statement> </block> <block type="procedures_defnoreturn" id="r(epVeh_IflZ$Y!a`,Y4" x="-312" y="863"> <field name="NAME">LichtAus</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="timeouts_settimeout" id="ueQ0=sPHwCIOWe%z?#59"> <field name="NAME">timeout</field> <field name="DELAY">2</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="LlC{;8$bl[Xl$9+gJS!p"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Groups.1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="O#NeHQmE;/l)(#M/ieLa"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="4{*V]GX:R)![Gg|dohJy"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Lights.00124b001d3aaae6.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id=":sfjf-f4rWYA2F4j0Xy#"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </xml>
  • [gelöst] Staubsauger bei Abwesenheit starten

    7
    2
    0 Stimmen
    7 Beiträge
    679 Aufrufe
    R
    @paul53 Danke dir für deine Unterstützung. Da hatte ich mich völlig verrannt. Dein Script musste ich aber dennoch etwas abändern, da er jedesmal dreimal gestartet hat: Nicht gegen Wert =falsch ersetzt. So funktioniert es jetzt, wie gewünscht. [image: 1612088037733-5.png]
  • Mit Schleife Variable hochzählen

    4
    1
    0 Stimmen
    4 Beiträge
    452 Aufrufe
    D
    @paul53 Ich habe das Skript noch einmal umgestellt, es sieht nun so aus: [image: 1612087206258-7bd14343-1dd0-4f5b-935d-ba4cceb9e0db-image.png] Im Protokoll unten in Blockly sieht auch alles wunderbar aus, die Logik stimmt also. Dennoch gibt mir Alexa immer nur einen "Kanal" aus und läuft nicht durch die Schleife. Sie sagt dann z.B. "Kanal 3 nicht vorhanden", oder "Fleisch: 67,7 °C". Was sie aber nicht tut ist dass sie einmal durch die gesamte Schleife "spricht". [image: 1612087358311-9aa67d1e-af77-4619-a9fc-ec09c2e4e6af-image.png]
  • Wert eines Datenpunktes addieren/subtrahieren

    6
    1
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    F
    @michi_pi @leonracer Oh man ist das peinlich. Das war das Problem und Bin Danke Eurer Hilfe drauf gekommen. Vielen vielen Dank Euch! Jetzt funktioniert es. [image: 1612039985476-inkedobjektid_li.jpg] Ich hatte heute früh einen anderen Datenpunkt vergeben, in Blockly angegeben und dann im Script nicht mehr geändert. Sorry Jungs - den Wald nicht gehen vor lauter Bäumen. Viele Grüsse und Euch nochmal vielen vielen Dank. Finnenzauber
  • Mit Blockly und exec Befehl Datei löschen.

    29
    1
    0 Stimmen
    29 Beiträge
    4k Aufrufe
    GlasfaserG
    @bergjet sagte in Mit Blockly und exec Befehl Datei löschen.: Jetzt passt es. Freut mich ..... , das es jetzt so funktioniert , wie du es haben wolltest
  • Blocklys durchsuchen

    blockly
    17
    0 Stimmen
    17 Beiträge
    852 Aufrufe
    David G.D
    @homoran Hatte es so gelesen, als ob die Suche vom iobroker weitersucht bzw weiterspringt. Dann ist jetzt ja alles geklärt ^^.
  • Dauer des Schaltbefehls des ioBroker?

    3
    1
    0 Stimmen
    3 Beiträge
    324 Aufrufe
    K
    @haselchen Besten Dank, das Verschieben in die MacheZange hat es gebracht...
  • Schalten von Mo-Fr + bei Sonnenaufgang + nicht vor X Uhr

    4
    1
    0 Stimmen
    4 Beiträge
    540 Aufrufe
    paul53P
    @lotharf sagte: Hab es nun für die Wochentage und das Wochenende eingestellt und hoffe es klappt Ich hätte es so gemacht: [image: 1612025310998-bild_2021-01-30_174828.png]
  • Blockly 2x am Tag - Mo-Fr

    blockly monitoring template
    17
    1
    0 Stimmen
    17 Beiträge
    1k Aufrufe
    P
    @liv-in-sky sagte in Blockly 2x am Tag - Mo-Fr: habe mich daran gerichtet - so viel ich weiß wird bei cron von 0-6 gezählt du hast Recht ... allerdings wird in diesem Baustein von Montag 1 bis Sonntag 7 gerechnet und das lag mir auf der Zunge bzw in meinen Skripten [image: 1612003954792-20210130-wochentag.jpg]
  • Init vom iobroker erkennen

    blockly
    4
    0 Stimmen
    4 Beiträge
    656 Aufrufe
    P
    @UncleSam Klappt
  • EIN AUS Zeit über VIS bedienbar machen

    3
    0 Stimmen
    3 Beiträge
    185 Aufrufe
    J
    Vielen Dank! Ich hatte schon das forum durchgesucht und nix gefunden. So einfach kann das sein...
  • Warten in Regel

    15
    1 Stimmen
    15 Beiträge
    1k Aufrufe
    S
    @asgothian @dslraser @haselchen @Homoran Vielen Dank euch allen für eure direkte Hilfe - so schnell hatte ich das glaube ich selten in Foren! Ich Probiere die o.g. Sachen nachher aus, leider muss ich trotz Homeoffice auch nebenher arbeiten... :D LG
  • Radar 2.0 Zeiterkennung

    blockly
    15
    0 Stimmen
    15 Beiträge
    442 Aufrufe
    J
    @homecineplexx Ja und das Samsung fliegt nur ab und an sporadisch raus. Da darfst kein Sparmodus einschalten, dann klappt das, ist auch unnötig, Akku hält auch so 5 Tage ;)
  • Wärmebedarf Thermostate-->Kessel

    2
    1
    0 Stimmen
    2 Beiträge
    380 Aufrufe
    paul53P
    @rostnagel So wird immer nur der Wert des gerade triggernden Datenpunktes ausgewertet. Bilde das Maximum aller 4 Ventilwerte und verwende das als Kriterium für den 2-Punkt-Regler. [image: 1611919325980-bild_2021-01-29_122203.png]
  • Pushover nur einmal senden bei niedrigen Batteriestand

    blockly
    1
    2
    0 Stimmen
    1 Beiträge
    425 Aufrufe
    Niemand hat geantwortet
  • Telegram befehle erhalten

    1
    0 Stimmen
    1 Beiträge
    162 Aufrufe
    Niemand hat geantwortet
  • value in true oder false

    13
    0 Stimmen
    13 Beiträge
    387 Aufrufe
    paul53P
    @janwed sagte: dass ich kein wahr oder falsch dahinter als block einsetzen kann? Die "Objekt ID" ist auch ein String. Du möchtest sicherlich den "Wert vom Objekt" vergleichen? Da der Wert schon false oder true liefert, ist ein Vergleich mit "wahr" unnötig.
  • Zeit Schaltuhr funktioniert nicht

    7
    1
    0 Stimmen
    7 Beiträge
    264 Aufrufe
    paul53P
    @sami_bln sagte: Jetzt funktioniert es. Dann markiere bitte das Thema in der Überschrift des ersten Beitrags als [gelöst].
  • [gelöst] wget funktioniert innerhalb Blockly-Skript nicht

    blockly javascript
    22
    1
    0 Stimmen
    22 Beiträge
    3k Aufrufe
    ChrisPrefectC
    @glasfaser Ah, ja, ich hatte nur den Pfad und nicht die URL angeschaut. Ich bin gar nicht auf die Idee gekommen, dass Blockly die einfachen Anführungszeichen nicht richtig escapet. Das ist doch ein Bug? Blockly sollte doch eigentlich so Fehlertolerant sein, dass sowas eben genau nicht passiert. Und es sollte irgendwelche Debuggin-Tools für den Fall geben. Ich habe auf keine Weise eine Fehlermeldung generieren können.
  • Ausnahme für automatische Rollladenschließung mit Astro

    20
    1
    0 Stimmen
    20 Beiträge
    1k Aufrufe
    L
    @paul53 Danke, funktioniert nach den ersten Tests!

391

Online

33.0k

Benutzer

83.5k

Themen

1.3m

Beiträge