Weiter zum Inhalt

Blockly

6.6k Themen 80.5k Beiträge

Hilfe für Skripterstellung mit Blockly

NEWS

  • Blockly Script: Batterie leer

    3
    1
    0 Stimmen
    3 Beiträge
    537 Aufrufe
    R
    @tt-tom Hallo! Danke für die schnelle Antwort. "True" ist bei geringer Batterie (lowbat warning). Hab den Fehler gerade gefunden: Im "IDs vom Selektor" Block hat ganz am Ende eine ")" gefehlt....:man-facepalming:
  • harmony Lange auf eine Tagse drücken

    javascript
    8
    0 Stimmen
    8 Beiträge
    501 Aufrufe
    D
    @digi-bit Hallo, Hab es rausgefunden ................. <block xmlns="https://developers.google.com/blockly/xml" type="control" id="^o@][c:*NGG^m5CTt0/." x="724.0014190673832" y="1394.9999999999995"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">harmony.0.Hub-Schlafzimmer.Makerfire_Mode:M8.PowerToggle</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="p6/R3dtF$08/jYWb=Vre"> <field name="NUM">4000</field> </block> </value> </block> dem Botten einfach eine "Nummer" 4000 reinpressen anstelle einer 1 oder 0 Nur für den fall das mal noch ein andere sowas sucht ! Gelöst ! Winkeeeeee Digi-Bit
  • [Gelöst] Sensoren überwachen + Benachrichtigung

    28
    3
    0 Stimmen
    28 Beiträge
    3k Aufrufe
    D3ltoroxpD
    @paul53 Ich hänge hier noch etwas fest. Ich habe das für HMIP Geräte genau so gemacht, aber da spuckt er gar nichts aus. Obwohl ein Kontakt nicht erreichbar ist. [image: 1654372232254-5e30920a-c576-4e33-aec0-0a405416dde0-grafik.png] Hat sich erledigt, ka. Ich hatte mal mit einer kleineren Zeit getestet da gings, die Zeit wieder hoch gesetzt dann ging's auch.
  • <gelöst> Hardwarebutton Steuerung HUE

    blockly
    14
    2
    0 Stimmen
    14 Beiträge
    1k Aufrufe
    P
    @djmarc75 gerne, wobei es sehr einfach gestaltet ist: "Click": Anschalten wenn Lampe aus, Level 25 % und Warmweiß bzw ausschalten wenn Lampe an ist: <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="/A~$qt5qd?jx75Ipue0H" x="-137" y="338"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="d)Vzrr`{SXj@%E%};ebK"> <field name="oid">zigbee.1.00158d0008073091.click</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="vLx:!_;x@2~;4o5:ua)|"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="~jB(v:paGx#JA?DqZ|Dg" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="j#*;I@nswhYDw`45=_8C"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="|*43jF|,TSp$)/jslyGm"> <field name="ATTR">val</field> <field name="OID">zigbee.1.00158d0008073091.click</field> </block> </value> <value name="B"> <block type="logic_boolean" id="(8}a%}Lsktl:hRmkRHZo"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="DsWK9mDmuGT_SZ0k(YI^"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="~F$FZRs5s+x{19BuvvY="> <field name="ATTR">val</field> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> </block> </value> <value name="B"> <block type="logic_boolean" id="uONuNRs5tg)0}a.sP=c:"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="IXnRGy1La|2}JHEoz[Z0"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="rSAh~C.$*$0OhD7p+@lo"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="-5?UWDa*tL2JGmitkmYP"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.ct</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="D_^K!0ZC0%i_|L7]43PY"> <field name="NUM">2732</field> </block> </value> <next> <block type="control" id="bHeZ:a8g%AfKn=h*VPFg"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.level</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="I=1e;p*pa5)OMjSQ+d5F"> <field name="NUM">25</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="wb..|1Obf]81}c.OL:)s" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="ul/-n^5OX9lJhr~/JgWc"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="8Aw_FU*5ocqXpj5_ZJYS"> <field name="ATTR">val</field> <field name="OID">zigbee.1.00158d0008073091.click</field> </block> </value> <value name="B"> <block type="logic_boolean" id="W(/%C4[|jYCg+pj{v=}}"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="TL{QAtyHRFAv$WSE-$b@"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="li(ae}7Ml82BM8rLS%w^"> <field name="ATTR">val</field> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> </block> </value> <value name="B"> <block type="logic_boolean" id="x}i6kAZ~rs1H(,NuShN6"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="|r%{5S!Knu[Jt#Ijo#J2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="TytfxQ1~e5vpc/}(L4uC"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block> "Hold": Anschalten wenn Lampe aus, Level 25 % und Farbe Rot einstellen bzw ausschalten wenn Lampe an ist: <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="YpQ4R$x-4[4ke!PsYl(g" x="-137" y="757"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="Hw!*8=zFS-L;^R!KB81^"> <field name="oid">zigbee.1.00158d0008073091.hold</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="@Vfx2}MP^#;Pv@O@/VDn"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="I/PMGz@z.CkuIp}Xjc+-" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="_n:_0{uNg_7du^sgr3p@"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="h*W,@^}e[^ZB==oPn^Pq"> <field name="ATTR">val</field> <field name="OID">zigbee.1.00158d0008073091.hold</field> </block> </value> <value name="B"> <block type="logic_boolean" id="+JRA1WJATLeiFw(+_=~;"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="6[K}4o;vU(EF9}6m1~s1"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="_QuS0OXT(4-QQP^yy{@k"> <field name="ATTR">val</field> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> </block> </value> <value name="B"> <block type="logic_boolean" id="J([$g}R0Ho{4q=29l!zN"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="`*!S$`;W6e5CST7j3EOY"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="ojc{Lt:lIr?1X-y.w}ro"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="lf=,_#JyvUm(Xa0PXPm3"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.hue</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="+wfRu?FvdmeTTng5qi+#"> <field name="NUM">0</field> </block> </value> <next> <block type="control" id="?8]3s/leY$hC3Gqad%gt"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.level</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="VH%}J7Yaj_*M%IoTI:xg"> <field name="NUM">25</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="qDvXH(MhtZ9u{LJ/@IV*" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="/Q}k*(7Wh~hBb8]vHTG-"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="j_}:{{Gw,gy2F|UXzo7J"> <field name="ATTR">val</field> <field name="OID">zigbee.1.00158d0008073091.hold</field> </block> </value> <value name="B"> <block type="logic_boolean" id="|KDE2P5;x|lfZrm0PG#H"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="nKtUEUqb=0IaFn$`B4zu"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="g4.8C}7w{W^2?QLto0zY"> <field name="ATTR">val</field> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> </block> </value> <value name="B"> <block type="logic_boolean" id="Z|`aU6*.AiT:9*-fc{k$"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="%xrr|A[uK34C4QZ#3:%Q"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hue.0.Hue_Surimu_panel_1.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="]~_Ib3S}*D%x]JvS@-t4"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block> @DJMarc75 : Die Datenpunkte waren alle korrekt.
  • JSON über Blockly zerlegen

    blockly
    17
    1
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    sten-torS
    @aski71 Hi Alex, JSONata ist ziemlich mächtig. Du kannst damit direkt ohne Schleife den gewünschten location-Wert extrahieren: $[event='Charge'].location Falls mehrere Charge-Events vorkommen und du willst nur das erste haben: $[event='Charge'][0].location Hier kannst du die JSONata Befehle testen: https://try.jsonata.org/
  • Endlich leise Handysuche =)

    9
    1
    1 Stimmen
    9 Beiträge
    917 Aufrufe
    DJMarc75D
    @da_woody sagte in Endlich leise Handysuche =): 2 stunden später wurde es mir gebracht. Von der Bedienung namens Alexa
  • [Vorlage] Zifferngruppe und Ersetzen von Dezimaltrennzeichen

    javascript blockly
    8
    7
    6 Stimmen
    8 Beiträge
    2k Aufrufe
    Hant0rH
    Vielen lieben Dank, der Artikel hat mir sehr weitergeholfen :) Im Endeffekt reichte mir eine Javafunktion mit dem Code: DigitGrouping = Intl.NumberFormat('de-DE').format(DigitGrouping); return DigitGrouping;
  • Objekte setzen bei Reboot / Neustart usw.

    2
    0 Stimmen
    2 Beiträge
    172 Aufrufe
    paul53P
    @hotspot_2 sagte: Objekte initial (also nach Neustart) usw. mit einem Wert setze. Außerhalb des Triggers schreiben. Datenpunktwerte überleben aber einen Neustart, außer man schreibt feste Werte außerhalb von Triggern.
  • Lampe ausschalten wenn wieder Online

    12
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    DJMarc75D
    @haselchen sagte in Lampe ausschalten wenn wieder Online: Das wäre DIE Lösung für den TE Recht einfache Lösung aber es bedarf zusätzlich ein Blockly. Hab das grad schonmal alles getestet und das Blockly am Start falls die Lampe wirklich per HUE verbunden ist
  • sendto sendet doppelt - Signal, WhatsApp

    6
    2
    0 Stimmen
    6 Beiträge
    780 Aufrufe
    BananaJoeB
    @marsen so haben wir (fast) alle mal angefangen :-)
  • Englisch Status auf Deutsch übersetzten

    4
    0 Stimmen
    4 Beiträge
    511 Aufrufe
    L
    @meister-mopper Danke hat geklappt. habs so umgesetzt // Objekt ist state Text on({id: "boschindego.0.state.stateText"/*stateText*/, change: "ne"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("boschindego.0.state.stateText").val == 'Docked') { // Objekt state Übersetzung setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Angedockt', true); } else if (getState("boschindego.0.state.stateText").val == 'Docked - Loading map') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Angedockt - Karte Laden', true); } else if (getState("boschindego.0.state.stateText").val == 'Returning to Dock - Battery low') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Zurück zur Dock - Batterie schwach', true); } else if (getState("boschindego.0.state.stateText").val == 'Returning to dock') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Fährt zurück zur Ladestation', true); } else if (getState("boschindego.0.state.stateText").val == 'Border Cut') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Kante Mähen', true); } else if (getState("boschindego.0.state.stateText").val == 'Mowing') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Mähen', true); } else if (getState("boschindego.0.state.stateText").val == 'Docked - Saving map') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Angedockt Karte Speichern', true); } else if (getState("boschindego.0.state.stateText").val == 'Docked - Waking up') { setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Angedockt Aufwachen', true); } }); setState("0_userdata.0.Bosch_Indego.translate_status"/*translate_status*/, 'Angedockt - Aufwachen', true); getState("boschindego.0.state.stateText").val == 'Docked - Waking up'; Jetzt habe ich mir Grafiken erstellt. für z.B: Mähen Zurück zum Dock In Ladestation wie könnte ich es einfacher umsetzten das sich die Grafik auf die verschiedne Werte. habe bis jetzt mehr Bilder übereinander gelegt.
  • Abfrage mehrerer Bewegungsmelder & Telegram MSG

    14
    1
    0 Stimmen
    14 Beiträge
    1k Aufrufe
    DJMarc75D
    @paul53 Funktioniert dies auch wenn man als Trigger eine Aufzählung (ObjekteIDs sind natürlich Booleans) verwendet ? EDIT: hab mir die Antwort durch probieren gegeben - JUHU, funktioniert also auch.
  • [gelöst] Blockly Konvertierung number zu string mit Fehler

    7
    1
    0 Stimmen
    7 Beiträge
    894 Aufrufe
    B
    @homoran Dachte es war klar das es sich um die Variable der CCU mit der Zahl der offenen Fenster als string handelt. Die Liste funktionierte ja von Anfang an. Hab es jetzt nach dem Hinweis von @Asgothian umgebaut und es funktioniert wie gewünscht. Danke, wieder was gelernt.
  • Gelöst Hilfe bei Badezimmerlüftung

    12
    0 Stimmen
    12 Beiträge
    999 Aufrufe
    HomoranH
    @keeper sagte in Hilfe bei Badezimmerlüftung: Hatte leider gedacht mit meinem Export könnte man das einfach importieren und sich dann anschauen. @homoran sagte in Hilfe bei Badezimmerlüftung: ich kann leider auf dem Handy nichts mit der XML anfangen, wo soll ich es da importieren?
  • Protokoll meckert String statt Number

    51
    3
    0 Stimmen
    51 Beiträge
    2k Aufrufe
    K
    vielen Dank! Jetzt klappt alles.
  • Blockly Parsen / Pool Temp

    blockly monitoring
    4
    2
    0 Stimmen
    4 Beiträge
    520 Aufrufe
    F
    @paul53 DANKE! Hat funktioniert.
  • Verständnisfrage zu Blockly

    13
    1
    0 Stimmen
    13 Beiträge
    525 Aufrufe
    paul53P
    @hotspot_2 sagte: Wenn ich jetzt für jedes Objekt aus der Überwachung einen Trigger setzte dann sollte das doch klappen, oder? Ja.
  • Wenn KEINER oder wenn EINER + Zeitverzögerung

    3
    0 Stimmen
    3 Beiträge
    352 Aufrufe
    C
    @paul53 sagte in Wenn KEINER oder wenn EINER + Zeitverzögerung: @creatorhs Vorschlag: [image: 1653773766228-bild_2022-05-28_233605798.png] Danke für den Vorschlag! Werde ich morgen ausführlich testen...
  • Frage zum "Der Fall ist" Baustein

    6
    2
    0 Stimmen
    6 Beiträge
    592 Aufrufe
    paul53P
    @david-g sagte: Und das "default" greift dann, wenn keine Regel zutrifft? Genau. Beispiel
  • Sekunden in mm:ss formatieren

    3
    1
    0 Stimmen
    3 Beiträge
    347 Aufrufe
    J
    Danke @paul53 ich tanze gerade auf dem Tisch genau dass gleiche habe ich gerade probiert

371

Online

33.0k

Benutzende

83.7k

Themen

1.3m

Beiträge