Skip to content

Blockly

Hilfe für Skripterstellung mit Blockly

6.5k Themen 79.3k Beiträge

NEWS

  • Amazon Echo Eingabegerät = Ausgabegerät

    3
    1
    0 Stimmen
    3 Beiträge
    284 Aufrufe
    N
    @thewhobox Perfekt, funktioniert! Vielen Dank!:+1:
  • Blockly MQTT publish

    4
    1
    0 Stimmen
    4 Beiträge
    5k Aufrufe
    umbmU
    Noch ein Hinweis, wenn du shelly auch extern schaltest, also direkt am shelly über SW-Eingang mittels Lichtschalter usw: Die Rückmeldung vom shelly kommt immer nur auf dem relay-Datenpunkt, wenn er direkt geschaltet wird. Deshalb sollte man den command-Datenpunkt mit dem relay-Datenpunkt abgleichen, damit er jederzeit über iobroker schaltbar bleibt. Sonst kann es z.B. sein, dass er manuell am Lichtschalter eingeschaltet wird, aber über iobroker nicht sofort ausgeschaltet werden kann, weil dort noch "off" drinsteht. [image: 1564114961267-shelly-abgleich.png] Zum Einlesen für Blockly ist das hier zu empfehlen: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/blockly.md
  • Licht an dunklen Tagen

    28
    0 Stimmen
    28 Beiträge
    2k Aufrufe
    AsgothianA
    Schau dir doch mal bitte an, wie sich die Lux Werte einstellen wenn Das Licht aus ist, und von Aussen nicht genug Licht kommt Das Licht aus ist, und es durch das Fenster "hell" ist Das Licht an ist und es draussen dunkel Das Licht an ist und es draussen hell ist. Wenn du den Bewegungsmelder geschickt ausrichtest, sollte es so sein das die Fälle 3 und 4 immer signifikant höhere lux werte haben als die Fälle 1 und 2. Damit solltest Du arbeiten können. A.
  • Blockly verbose Log

    15
    1
    0 Stimmen
    15 Beiträge
    1k Aufrufe
    L
    ups stimmt habe 2 Scripte in Global, sind sozusagen Gewerkeübergreifende zwischen Wolf (Heizung) und Loxone (SPS) Moment ich lege Mal einen Neuen Ordner an. Ok das war die Lösung, recht Herzlichen Dank für die Nachhilfestunde im Thema Iobroker Blockly Scripting. :+1: :grimacing:
  • Kühlschranktemparatur Warnung

    11
    1
    0 Stimmen
    11 Beiträge
    803 Aufrufe
    paul53P
    @Björn-Bosch sagte: wie kann ich das sehen? Füge vor dem falls-Block ein Log mit Typ von Wert ein. Wert ist eine Eigenschaft des Trigger-Datenpunktes (unter Blöcke "Trigger"). [image: 1563911201598-blockly_temp.jpg]
  • größeres Blockly erweitern.Abbrechen von Timeouts

    6
    0 Stimmen
    6 Beiträge
    258 Aufrufe
    C
    so hab es ein wenig getestet scheint alles zu klappen
  • Waschmaschine mit Blocky: Finde den Fehler nicht

    blockly
    7
    1
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    TG70T
    Könntest mal den funktionieren Script posten. Herzlichen DANK
  • Bild mit Pushover Nachricht versenden

    6
    1
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    thewhoboxT
    @TG70 Ja die übersiehst du und ich hab sie dir auch nochmal hingeschrieben. Lösung: Installiere die Version 1.2.0 von pushover-notification Erstelle in Blockly eine Funktion In der Funktion per "sendTo" dann an Pushover Bildsenden mit dem Parameter "file" [image: 1563799339723-3f2fca77-e5a2-427c-a0cb-575654d906fe-grafik.png] In der Funktion dann wie im Link beschrieben: sendTo("pushover", {file: "/hiermeinbild.jpeg"});
  • Aktion nur einmal Täglich ausführen

    9
    0 Stimmen
    9 Beiträge
    852 Aufrufe
    softwarecrashS
    Danke für die schnellen antworten, das hilft schon weiter :)
  • Stautswechsel innerhalb definierter Zeit

    14
    0 Stimmen
    14 Beiträge
    1k Aufrufe
    padrinoP
    @loopy sagte in Stautswechsel innerhalb definierter Zeit: @padrino Hallo, wo finde ich denn "Zeitstempel"? Für die Zukunft: [image: 1563751985135-oid.jpg] [image: 1563751989449-oid_menue.jpg] Ansonsten, mit dem Skript biste ja bei @paul53 in guten und fähigen Händen. :D:+1:
  • Exec Block Raspberry

    2
    0 Stimmen
    2 Beiträge
    364 Aufrufe
    R
    Ich hab jetzt eine Lösung gefunden,mit sudo chmod 777 /sys/class/backlight/rpi_backlight/bl_power gehts wieder, aber nur bis zum nächsten Neustart des Raspis. Hab den Befehl dann in /etc/rc.local eingefügt (Autostart) und funktioniert soweit auch, aber weis nicht ob das die optimale Lösung ist. Vorher gings auch ohne.
  • mit Taster Blockly starten

    Verschoben blockly
    1
    1
    0 Stimmen
    1 Beiträge
    321 Aufrufe
    Niemand hat geantwortet
  • in allen Scripten nach einem Objekt suchen?

    javascript blockly
    6
    0 Stimmen
    6 Beiträge
    667 Aufrufe
    BBTownB
    @paul53 es ist ein Broadlink2 Datenpunkt, der kann sich durch wechselnde Bezeichnungen des Device tatsächlich ändern, so dass der Verwahrungsort sich plötzlich ändert. Ich hoffte ein wenig auf eine Funktion die es in der Homematic CCU gibt, wo man am Gerät abfragen kann in welchen Scripten dieses Gerät/Kanal vorkommt.
  • Gerät mit http Befehlen steuern/abfragen

    2
    0 Stimmen
    2 Beiträge
    256 Aufrufe
    R
    So... inzwischen hab ich's dann doch geschafft den Ausgang ein/ausschaltbar zu machen. ABER: Wie kann ich in VIS anzeigen lassen welchen Zustand z.B. eine Lampe hat? ![https://www.dropbox.com/s/dx7p36botr16ihh/lanpe.jpg?dl=0](image url) Im Moment benutze ich das Lampensymbol in VIS, und das ändert auch den Zustand wenn eine Leuchte lokal über einen Schalter eingeschaltet wird. Woher weis diese Symbol welchen Zustand es haben soll?
  • 3 Werte vergleichen

    10
    1
    0 Stimmen
    10 Beiträge
    521 Aufrufe
    actionbyteA
    So, ich habe nun meine Badezimmerschaltung mit 3 Shellys und einem Mini-NodeMCU (als Taster) fertig und dank euch das Script nun angepasst. Läuft soweit! Allerdings denke ich das ich da ein ganz schönes Monster gebastelt habe. Augenscheinlich kann man Und/Oder Bausteine mit "nur" zwei externen Eingängen versehen, allein schon daher ist das sehr unübersichtlich. Funktionieren sollte das alles wie folgt: Mit dem Taster trigger ich eine Art Flip/Flop den DP "Badzimmer". Dieser dient mir als eine Art "Hilfsmerker" um den Zustand der Badezimmerbeleuchtung wiederzugeben. Allerdings hat Alexa Zugriff auf die drei Aktoren und EGAL was Alexa dann aus- oder eingeschaltet haben sollte, wenn dann der Taster betätigt wird soll alles AUS (egal was DP Badezimmer sagt) und evtl eben nur der DP Badezimmer wieder auf false gesetzt werden. Gehts auch einfacher? (BTW: "Dummy" ist noch vom Testen drin, normalerweise ist hier der Taster vom ESP8266)! [image: 1563715235925-db4.jpg] Spoiler <xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout">timeout</variable> </variables> <block type="on" id="(xmol1QeSd*S%s)d.qG`" x="-583" y="-144"> <field name="OID">Meine_Geräte.0.Dummy</field> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="comment" id="MgA8O8iBvhIK;H0w)).`"> <field name="COMMENT">Logikauswertung </field> <next> <block type="controls_if" id="G(6}e`MX3/fK@K!-YkaI"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="3LaHOh9F@Ia-h782Uf8L" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_operation" id="jF!Ze0P/VZfW,uD}?x#K" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="%h!#GJG_KG9a_QRZ}=HB"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="dFj(uabfq0WdA1r@2E^v"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="Q)xQ{3%+!_g2#Kl.^Mhc"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="KzfU@JKg63w:o;QGD-ZY" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="nn{%sFviZFLC`x`H^rMB"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="2#5}n|WR##X%@}=}(,i}"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Decke</field> </block> </value> <value name="B"> <block type="get_value" id="Qg}=lhfb5/[1ZeWTN.],"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="hIQ)bY,/w$sq#d/q[KXv"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="Y:cBp6LwQU!155=ghpAx"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Toilette</field> </block> </value> <value name="B"> <block type="get_value" id="lJtPCH:O,M(50qiLl60t"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> </block> </value> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="[r*aR#NBC91xDwJ@;Vjb" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id=":n|uMq(hc2P,?!IfnW+*"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=".^Cad9mF`hxi^m[lsa+]"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="*Zzd%Jo.*fAJ+]!w2AdK"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="mE8WRSkif(BKNn{`ic#m" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="Z37awy@{TS+qd.gd,1k*" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="]ukDM3T_-NYKq#cL#TkG"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="tU:4a$?|;@5:D)Q@a:*0"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Decke</field> </block> </value> <value name="B"> <block type="logic_boolean" id="pg`SU?.;:~+TKav={gwU"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=".p0Z623K8h2awg4yA,JG"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="$4iCk3j6MC?w6q5~Mb,|"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Toilette</field> </block> </value> <value name="B"> <block type="logic_boolean" id="/(o2D3{Bn3+L9y;KxJj0"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="RS;`3V$P%XAOT^U|;PGB"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="`T~vNSm_zZ9p^Hnl)AR."> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> </block> </value> <value name="B"> <block type="logic_boolean" id="eXX~tf!srs`b|_po3hJ1"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="b_zq2i^w!b4hFs*cGmPe"> <field name="COMMENT">Wenn zwischendurch Alexa ein Aktor aus oder eingeschaltet hat, dann auf jeden Fall alles vorrangig AUSSCHALTEN!</field> <next> <block type="control" id="lH[`4eTj0h4dX`-~Jo:p"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="nR*;?!`4UlA00!/snt#-"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="2AFX#h$fl{+Epd`M46X9" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="GY[URCWddjm!aH;Y[rSz"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="u$MACYZF5;!I:[caN]4+"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Decke</field> </block> </value> <value name="B"> <block type="get_value" id="]w_Dc}jQ3+#IuUI5^#a2"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="X(mfj^Zo2r5I0_ci7N*G"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="7yat2Odp~Zs0+L`,S!rq"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Toilette</field> </block> </value> <value name="B"> <block type="get_value" id=".lF[z2|Ud|OLN8S_jvOt"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="comment" id="Vi$)|4V^7wwWh*R;mAmr"> <field name="COMMENT">Ohne Alexa einfach nur FlipFlop</field> <next> <block type="toggle" id="OO?4W7_~IbwFhLG9$(jO"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> <field name="WITH_DELAY">FALSE</field> </block> </next> </block> </statement> <next> <block type="timeouts_settimeout" id="hG:lZ=#@;*?wt-k2mjlr"> <field name="NAME">timeout</field> <field name="DELAY">50</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="`8#u7JOJM4`bqC$3sf3j"> <field name="COMMENT">Übergabe an Peripherie</field> <next> <block type="controls_if" id="=priJJ`nFW^C{E]L*hdZ"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="~gyz)SfYf~oF~1Snt@A`"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="Y`8)hrKGhfy^/=:aTv)J"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="SpW6)YbnY;=15#J7A[V2"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="lg``PS|gB){2RnQEQD!z"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Decke</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="o:{MV+(0fquMeBb=hKEL"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="4;6wEe?_Up#,r?7Oq;fw"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="^SZGJj`@sGPs_J!dO/S["> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="=wj%9c04t*c4J3YWe*=r"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Toilette</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id=":@_OK#wygdOi#7O8ez]J"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="^W@lu{U-Ld:eC1S,VMn;"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="w`3PhBlO1dGQ5L~GvpHg"> <field name="ATTR">val</field> <field name="OID">Meine_Geräte_Zustände.0.Badezimmer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="GYCc9|wJ0]s~YUit#{eC"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="H[V3M8egf63yQ(6Y.v9E"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Decke</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="N2w~9N}.|T7fAYccob{^"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="PUVs!WMD![EM,9ZJ6|ri"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Dusche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="~MS[ea6e1Zw.i1aOpeEF"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="sP,NMs1DCeJl%}4d@o?0"> <mutation delay_input="false"></mutation> <field name="OID">Meine_Geräte.0.Bad_Toilette</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="F1y@NDcSU`h00GZ;AA_D"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </xml>
  • (gelöst) HM-Dis-EP-WM55 (EPaper)

    3
    0 Stimmen
    3 Beiträge
    388 Aufrufe
    L
    Hi, hat sich erledigt. Ich hatte einen Denkfehler im Blockly, nun läuft alles.
  • [gelöst] Relais Problem true und false

    8
    0 Stimmen
    8 Beiträge
    652 Aufrufe
    AphofisA
    Relais Karte mit High Low Trigger gekauft! Geräte auf Normally Open angeschlossen fertig. Ach ja Relais Karte die Relais die beim Start false sein sollen, natürlich auf Low jumpern.
  • Blockly - Wert bei Neustart "nullen"

    blockly
    6
    1
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    Dr. BakteriusD
    Ich weiß ja nicht was dein Skript wirklich machen soll, aber vielleicht hilft dir das: [image: 1563625986159-blockly.jpg] Aber was ist mit den Datenpunkten 'Zeit_spuelen' und 'Vorh_Zeit_spuelen'? Die finden nirgends Verwendung! Mit 'Zeitstempel' meinst du vermutlich die aktuelle Linux-Time? Die bekommt man mit einem anderen Modul ('aktuelle Zeit als Datum-Objekt'). Die erneute Abfrage in der Abfrage macht keinen Sinn, daher habe ich sie weg gelassen. Fang mal mit kleineren Skripten an und lerne die Funktionen kennen. Dann ist das alles bald kein Problem mehr...
  • Rolladensteuerung mit ical

    16
    1
    0 Stimmen
    16 Beiträge
    1k Aufrufe
    J
    @Tosca76 Wie Du siehst ist das wirklich sehr einfach gestrickt, da ich nur eine Weckzeit brauche. Mir ist das Geplärre vom Radiowecker auf dem Nachtisch auf den Sack gegangen und ich wollte nicht den Alexa internen Wecker verwenden, da der leider nicht viel kann, wollte das Ding aber trotzdem etwas smarter lösen und ich lebe damit recht gut. Das Licht wird langsam heller, der Dot3 mit besserem Klang als der Radiowecker langsam lauter und die Rollläden fahren nur halb hoch. So ist es ein angenehmes Aufwachen.
  • Harmony Werte plötzlich von true/false zu Nummern

    22
    0 Stimmen
    22 Beiträge
    2k Aufrufe
    HomoranH
    @ostseereiter sagte in Harmony Werte plötzlich von true/false zu Nummern: es war definitiv nicht immer mit Zahlen,Ich benutze diesen Adapter schon fast 2 Jahre.Nach irgend ein update waren dann plötzlich bei mir immer Warnhinweise im LOG Das widerspricht sich nicht! Die WARN im sinne "bitte den Datentyp ändern" wurden irgendwann eingeführt. @dslraser sagte in Harmony Werte plötzlich von true/false zu Nummern: aber ein Button mit Zahlen ist schon komisch ? Typ ist Button und Role ist Zahl, zumindest bei mir. In vielen Dingen wurden true/false intern in 1/0 konvertiert. Die WARN sollte dann daruf hinweisen, dass es bald eben nicht mehr geht. Wenn man diese dann nicht berücksichtigt steht man irgendwann auf dem Trockenen

318

Online

32.7k

Benutzer

82.4k

Themen

1.3m

Beiträge