Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Sonoff NSPanel

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Sonoff NSPanel

Geplant Angeheftet Gesperrt Verschoben Hardware
1.5k Beiträge 78 Kommentatoren 636.9k Aufrufe 80 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • K Kuckuckmann

    @jens-wozny
    Hi ,

    kannst Du mir das, was Du eingestellt hast nochmal kurzzusammenfassen? ich würde es dann in unsere FAQ & Anleitung übernehmen.

    Vorab herzlichen Dank.

    LG

    Jens WoznyJ Offline
    Jens WoznyJ Offline
    Jens Wozny
    schrieb am zuletzt editiert von
    #1296

    @kuckuckmann Natürlich bekomme ich das hin!

    Als erstes das Speichern der Einstellungen in Tasmota aktivieren, sonst wundert man sich wie ich, das beim Wechsel vom Tisch zum Einbauort der Taster genauso dumm ist wie vorher 🙂
    In die Tasmota Console gehen und da folgende Befehle ausführen:

    savedata 1 //speichern der Einstellungen ermöglichen
    
    SetOption73 1 //umstellen der Hardwaretasten auf Multipress
    
    SetOption1 1 //WifiConfig 2 abschalten um zusätzlich wenn gewollt 6x Klick zu aktivieren
    
    SetOption32 5 //Hold Haltezeit für die Taste auf 0,5 Sekunden einstellen, Standard sind 4 Sekunden, kann im 0,1 Sekunden Raster eingestellt werden
    
    savedata 0 //Schreibschutz für den Flashspeicher aktivieren
    

    Bei Hold ist noch zu beachten das die eingestellte Zeit x10 einen Reset des Tasters auslöst, heißt bei 1 Sekunde Haltezeit nach 10 Sekunden, Standard sind 40 Sekunden!

    Wenn jemand dafür eine Idee hat dieses zu umgehen, gerne :man-raising-hand:

    Das Script um die Funktion "HOLD" erweitern für die Hardwaretaste 1 und 2

    Screenshot 2022-09-06 07.46.10.png


    <xml xmlns="https://developers.google.com/blockly/xml">
    <variables>
    <variable id="$%h)IyPA]i!w|o;@^u~">PanelResult</variable>
    <variable id="iG,DhTT3ntIL)6jkdBSx">Action</variable>
    </variables>
    <block type="on_ext" id="Z
    WW:Hq=V/0/+D.7sBGj" x="88" y="63">
    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
    <field name="CONDITION">any</field>
    <field name="ACK_CONDITION"></field>
    <value name="OID0">
    <shadow type="field_oid" id="s?5LPlVoKvrW,Gf/,d6(">
    <field name="oid">default</field>
    </shadow>
    <block type="field_oid" id=";VZs-nq+#GL5jVspo^">
    <field name="oid">mqtt.0.SmartHome.Schalter_Technik.stat.RESULT</field>
    </block>
    </value>
    <statement name="STATEMENT">
    <block type="variables_set" id="W*-eYA4LLj$WMX1vlx9+">
    <field name="VAR" id="$%h)IyPA]i!w|o;@^u~">PanelResult</field>
    <value name="VALUE">
    <block type="convert_json2object" id="H}rYz
    |N_r:7lN6kRq)">
    <value name="VALUE">
    <block type="on_source" id="ks};I#sE9{y$Os12X3%"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="controls_if" id="|e+,CBW1}SywJvnEFroP"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="tkA^fRI!3FU^2Tiqlahc"> <field name="OP">EQ</field> <value name="A"> <block type="text_getSubstring" id="k}-K]@kua~8fg*?I[t#">
    <mutation at1="true" at2="true"></mutation>
    <field name="WHERE1">FROM_START</field>
    <field name="WHERE2">FROM_START</field>
    <value name="STRING">
    <block type="on_source" id="qCOa@52xDIv4(R#:]Yzp">
    <field name="ATTR">state.val</field>
    </block>
    </value>
    <value name="AT1">
    <block type="math_number" id="Ncm@lgRgVYVBF~^yWKRE">
    <field name="NUM">3</field>
    </block>
    </value>
    <value name="AT2">
    <block type="math_number" id="Gov$3|Qrd91N~RUzWea=">
    <field name="NUM">9</field>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="text" id="2~EGhvBs4KIPXXMcNVkx">
    <field name="TEXT">Button1</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="variables_set" id="G!Z=C5KTj-Nl+XFa0RU
    ">
    <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
    <value name="VALUE">
    <block type="get_attr" id="Ed}{-}B{X+obkb^Mmk8O">
    <value name="PATH">
    <shadow type="text">
    <field name="TEXT">Button2.Action</field>
    </shadow>
    <block type="text" id="-XSmbNSLD2q^JU.3)[(^">
    <field name="TEXT">Button1.Action</field>
    </block>
    </value>
    <value name="OBJECT">
    <block type="variables_get" id="-%8e}:rqW1kj_iUDQyyf">
    <field name="VAR" id="$%h)IyPA]i!w|o;@^u~">PanelResult</field>
    </block>
    </value>
    </block>
    </value>
    <next>
    <block type="controls_if" id="729?J2a__sAP
    2PmMN2%">
    <mutation elseif="5"></mutation>
    <value name="IF0">
    <block type="logic_compare" id="u9lV/l]c1,yVRl3(21(L">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="kG0ARQ1j%HKz(I=l}:P"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="v?m}nM1~E8zR0,Ja+if+"> <field name="TEXT">SINGLE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="iqFwhe!^P0z9-W9D[tyh"> <field name="COMMENT">Schalte etwas: Button1 1x gedrückt</field> <next> <block type="debug" id="F22M/f@lJ_xQ$t2#QW[#"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="?r3.Wy5c@$3DxmvbIGr}"> <field name="TEXT">Button1 SINGLE wurde gedrückt</field> </block> </value> <next> <block type="control" id="RQplKnS3Qup@ShD|p$H:"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Licht_Deckenleuchte.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="3)Bu5AR9Zth?=@~)Lz6i"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="[Vpq7B,RWb4k)Bhwq{nh"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="|Whz!$I5#Iym52Pg8N?p"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="~f_cI8hrs;I)wJ-S.G3r"> <field name="TEXT">DOUBLE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="comment" id="D;PPB54t87N)%F{.hQAx"> <field name="COMMENT">Schalte etwas: Button1 2x gedrückt</field> <next> <block type="debug" id="xoG/r3;338/j$QeZHW5">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="9PgW|#6f8``brbWQM9q7">
    <field name="TEXT">Button1 DOUBLE wurde gedrückt</field>
    </block>
    </value>
    <next>
    <block type="control" id="V79BE);I,!|=V);^a{7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Wohnen_Rollladen_F7.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="K.y/Rx9]0}r(x6;]=]r)"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_compare" id="t)8drGw=u/q0Pl+ul^43"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="-lf~?Q^H8o}J:cf@I5aN"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="Z!={5~.hF?V-NFw73|BL"> <field name="TEXT">TRIPLE</field> </block> </value> </block> </value> <statement name="DO2"> <block type="comment" id="xjdh~X8eM8ab/a/JuIM/"> <field name="COMMENT">Schalte etwas: Button1 3x gedrückt</field> <next> <block type="debug" id="n$kU%^k3$wHN/L**K=jA"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="SA^R/OJX#a7JDhE7LwL["> <field name="TEXT">Button1 TRIPLE wurde gedrückt</field> </block> </value> </block> </next> </block> </statement> <value name="IF3"> <block type="logic_compare" id="ZCUeBK[Sc08KKQVMF)tC"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id=":Jlhv9(rM!D5H*eM|Gw-"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="6NH!g[HN7f=7_q%U10M!"> <field name="TEXT">QUAD</field> </block> </value> </block> </value> <statement name="DO3"> <block type="comment" id="77*X9-*|mO]|P0$Jw=K">
    <field name="COMMENT">Schalte etwas: Button1 4x gedrückt</field>
    <next>
    <block type="debug" id="qE@G.#9s!UAtrlMJ/yi"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="G:19{lKn)mB!x(NUx5S">
    <field name="TEXT">Button1 QUAD wurde gedrückt</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF4">
    <block type="logic_compare" id="fz#2[~sK=iF%wd=4hB,"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="ROFyrrPZn5KJg7?Hs),Z"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="a]-o=$vOr9JDr(T!#SmL"> <field name="TEXT">PENTA</field> </block> </value> </block> </value> <statement name="DO4"> <block type="comment" id="fxPE82.Ci3LME=X3nl|">
    <field name="COMMENT">Schalte etwas: Button1 5x gedrückt</field>
    <next>
    <block type="debug" id="7GbZ650het?k*+CCO:nr">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="[}-a1hl?2pc^@4EhI">
    <field name="TEXT">Button1 PENTA wurde gedrückt</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF5">
    <block type="logic_compare" id="5-Jn(s]]Ac}RKP}ssgkc">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="ZEb2nzb4fmR2agPw|[pX">
    <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
    </block>
    </value>
    <value name="B">
    <block type="text" id="$Ln@,NUH[je2TyexL
    1=">
    <field name="TEXT">HOLD</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO5">
    <block type="comment" id="}2D4HsFwr-kW|Q,,,Bic">
    <field name="COMMENT">Schalte etwas: Button1 wird gehalten</field>
    <next>
    <block type="debug" id="utCpCJ=)EFVEgxIvjIp">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="i!=1C23XA-^phx:)9TJB">
    <field name="TEXT">Button1 wurde gehalten</field>
    </block>
    </value>
    <next>
    <block type="control" id="b@7ns3oa|(zxV
    m@7,C6">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">alias.0.Datenpunkte.Technik_Licht_Deckenleuchte.ON_SET</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="^V-avzYmA:A@CFeu.~-]">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF1">
    <block type="logic_compare" id="8Ev:iPPfN3B?L^Q]oOIc">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="text_getSubstring" id="xx:q0nC7,q8A8~v?PC#s">
    <mutation at1="true" at2="true"></mutation>
    <field name="WHERE1">FROM_START</field>
    <field name="WHERE2">FROM_START</field>
    <value name="STRING">
    <block type="on_source" id="JWC4m9/7dS^!]+xQ-I0Y">
    <field name="ATTR">state.val</field>
    </block>
    </value>
    <value name="AT1">
    <block type="math_number" id="k7=j)18I6TmB%)upvAVJ">
    <field name="NUM">3</field>
    </block>
    </value>
    <value name="AT2">
    <block type="math_number" id=",EKn%h/uX3}ZjCvmW1KE">
    <field name="NUM">9</field>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="text" id="Uuj{UrX@-3nNjw{n!H/@">
    <field name="TEXT">Button2</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO1">
    <block type="variables_set" id="U~1k_f;62_-QkRvGZz=)">
    <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
    <value name="VALUE">
    <block type="get_attr" id="izCz6K1Y;L.7M7MlHA$c">
    <value name="PATH">
    <shadow type="text">
    <field name="TEXT">Button2.Action</field>
    </shadow>
    <block type="text" id="y1)^1#)QjYVVA7)mWdvM">
    <field name="TEXT">Button2.Action</field>
    </block>
    </value>
    <value name="OBJECT">
    <block type="variables_get" id="TIg$Lr%^FukfxDLC:,^"> <field name="VAR" id="$%h)IyP*A]i!w|o;@^u~">PanelResult</field> </block> </value> </block> </value> <next> <block type="controls_if" id="tC_APU:6jW5063/l=sR1"> <mutation elseif="5"></mutation> <value name="IF0"> <block type="logic_compare" id="P9XXNXzc+3H{*^w1P_@q"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="sua/L8[qi8e:U#m}d^pi"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="E^e9/nh{n@)S6e:4q3_h"> <field name="TEXT">SINGLE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="qoOw*}O|E06w[5[cXWLo"> <field name="COMMENT">Schalte etwas: Button2 1x gedrückt</field> <next> <block type="debug" id=",tE:-UWz(0Zqlc8KBLqO"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="!waPZV$J9fR+dq462%h+"> <field name="TEXT">Button</field> </shadow> <block type="text" id="{3#KVO|*86E:3pR/!%WP"> <field name="TEXT">Button2 SINGLE wurde gedrückt</field> </block> </value> <next> <block type="control" id="*r!*gO]M:nu%l=SHWhiR"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="P8C,tu;h9{XGw*8-UiII"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="_Z+eBL!Zj.|LQL+_s|Ld"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="15Tx7/a!(wJ;FO+x!4JW"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="}l%?@L+:Ma!=:d2Ky/%*"> <field name="TEXT">DOUBLE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="comment" id="~72fN$sZV!.O{%*0+awy"> <field name="COMMENT">Schalte etwas: Button2 2x gedrückt</field> <next> <block type="debug" id="-T4*$n8-_X_{@6!Ga5FQ"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="7y;6V!IxDGf^dh_-f[5">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="LFX2j}Pr:o,{$YxQVcp2">
    <field name="TEXT">Button2 DOUBLE wurde gedrückt</field>
    </block>
    </value>
    <next>
    <block type="control" id="s^8!t.nUu^tQ8olCu1x"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="i}af~Z--B4k:[{B}xyk">
    <field name="NUM">100</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF2">
    <block type="logic_compare" id="6-2Eew1,aoyC]Th*AaJ5">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="4Nl6[tYm2pL@rL7v8vLI">
    <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
    </block>
    </value>
    <value name="B">
    <block type="text" id="zthA#*kib2r|xv+,A{Sh">
    <field name="TEXT">TRIPLE</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO2">
    <block type="comment" id="?OI)q#8XL#1)x.E=m~~">
    <field name="COMMENT">Schalte etwas: Button2 3x gedrückt</field>
    <next>
    <block type="debug" id="%6ZLfC!6?Z%jXlF:mFa"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="eh|tY,l}uz:WTx}4_G_E"> <field name="TEXT">Button2 TRIPLE wurde gedrückt</field> </block> </value> </block> </next> </block> </statement> <value name="IF3"> <block type="logic_compare" id="*~f.cy|6d8U0s?|^%:8R"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="tiZ6%x5iuvhh:Yi*9qB9"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="I|K0m__6/:.kuBtYQE5l"> <field name="TEXT">QUAD</field> </block> </value> </block> </value> <statement name="DO3"> <block type="comment" id="ToQ_dt~n$Ef|8-fb|__O"> <field name="COMMENT">Schalte etwas: Button2 4x gedrückt</field> <next> <block type="debug" id="qyb7DL~:^6|r@9~KOb+A"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="7aSm~PyE/aX{m#/ZE3L">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="tb4wo7_n@J)Q9$FLf|rV">
    <field name="TEXT">Button2 QUAD wurde gedrückt</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF4">
    <block type="logic_compare" id="M:xb;I}a8;jJU=g}u)["> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="Yh,)fk$+WmVXS=iwbzK{"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="1FMk3ImfaAfEhMd$D#e">
    <field name="TEXT">PENTA</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO4">
    <block type="comment" id="5+tVGCf{MdkG(OBDmuy|">
    <field name="COMMENT">Schalte etwas: Button2 5x gedrückt</field>
    <next>
    <block type="debug" id="}{-PVi#AL#[EGD,eb?M#">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text" id="5#Z,,?~9SK95LdiBZW=c">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="HuBkD3zi|o@.S3w.Qh7n">
    <field name="TEXT">Button2 PENTA wurde gedrückt</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </statement>
    <value name="IF5">
    <block type="logic_compare" id="lA]gulrJ~3Q.82YvmG;6">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="P!43GekgHtC6(9.[u-5b">
    <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
    </block>
    </value>
    <value name="B">
    <block type="text" id="yq)tQ^VrJLSJ@X3Uc!gI">
    <field name="TEXT">HOLD</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO5">
    <block type="comment" id="t_QxvPj#-6bY-sVE1Ui1">
    <field name="COMMENT">Schalte etwas: Button2 wird gehalten</field>
    <next>
    <block type="debug" id="mo-$_bo5$EpS)e83yAXz">
    <field name="Severity">log</field>
    <value name="TEXT">
    <shadow type="text">
    <field name="TEXT">Button</field>
    </shadow>
    <block type="text" id="]Kler.$fx3D71~-ExuH"> <field name="TEXT">Button2 wurde gehalten</field> </block> </value> <next> <block type="control" id="P#VTic|Uu76qG!yM@*n@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.STOP</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="-u,S#1W%bt(
    [^9-6%}">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </xml>

    N 1 Antwort Letzte Antwort
    0
    • N Offline
      N Offline
      niiccooo1
      schrieb am zuletzt editiert von
      #1297

      Ein Wunsch für zukünftige Versionen:
      Beim Drücken auf ein Fenster Datenpunkt, das Popup vom Rollo anzeigen 🙂

      K 1 Antwort Letzte Antwort
      0
      • Jens WoznyJ Jens Wozny

        @kuckuckmann Natürlich bekomme ich das hin!

        Als erstes das Speichern der Einstellungen in Tasmota aktivieren, sonst wundert man sich wie ich, das beim Wechsel vom Tisch zum Einbauort der Taster genauso dumm ist wie vorher 🙂
        In die Tasmota Console gehen und da folgende Befehle ausführen:

        savedata 1 //speichern der Einstellungen ermöglichen
        
        SetOption73 1 //umstellen der Hardwaretasten auf Multipress
        
        SetOption1 1 //WifiConfig 2 abschalten um zusätzlich wenn gewollt 6x Klick zu aktivieren
        
        SetOption32 5 //Hold Haltezeit für die Taste auf 0,5 Sekunden einstellen, Standard sind 4 Sekunden, kann im 0,1 Sekunden Raster eingestellt werden
        
        savedata 0 //Schreibschutz für den Flashspeicher aktivieren
        

        Bei Hold ist noch zu beachten das die eingestellte Zeit x10 einen Reset des Tasters auslöst, heißt bei 1 Sekunde Haltezeit nach 10 Sekunden, Standard sind 40 Sekunden!

        Wenn jemand dafür eine Idee hat dieses zu umgehen, gerne :man-raising-hand:

        Das Script um die Funktion "HOLD" erweitern für die Hardwaretaste 1 und 2

        Screenshot 2022-09-06 07.46.10.png


        <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
        <variable id="$%h)IyPA]i!w|o;@^u~">PanelResult</variable>
        <variable id="iG,DhTT3ntIL)6jkdBSx">Action</variable>
        </variables>
        <block type="on_ext" id="Z
        WW:Hq=V/0/+D.7sBGj" x="88" y="63">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">any</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
        <shadow type="field_oid" id="s?5LPlVoKvrW,Gf/,d6(">
        <field name="oid">default</field>
        </shadow>
        <block type="field_oid" id=";VZs-nq+#GL5jVspo^">
        <field name="oid">mqtt.0.SmartHome.Schalter_Technik.stat.RESULT</field>
        </block>
        </value>
        <statement name="STATEMENT">
        <block type="variables_set" id="W*-eYA4LLj$WMX1vlx9+">
        <field name="VAR" id="$%h)IyPA]i!w|o;@^u~">PanelResult</field>
        <value name="VALUE">
        <block type="convert_json2object" id="H}rYz
        |N_r:7lN6kRq)">
        <value name="VALUE">
        <block type="on_source" id="ks};I#sE9{y$Os12X3%"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="controls_if" id="|e+,CBW1}SywJvnEFroP"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="tkA^fRI!3FU^2Tiqlahc"> <field name="OP">EQ</field> <value name="A"> <block type="text_getSubstring" id="k}-K]@kua~8fg*?I[t#">
        <mutation at1="true" at2="true"></mutation>
        <field name="WHERE1">FROM_START</field>
        <field name="WHERE2">FROM_START</field>
        <value name="STRING">
        <block type="on_source" id="qCOa@52xDIv4(R#:]Yzp">
        <field name="ATTR">state.val</field>
        </block>
        </value>
        <value name="AT1">
        <block type="math_number" id="Ncm@lgRgVYVBF~^yWKRE">
        <field name="NUM">3</field>
        </block>
        </value>
        <value name="AT2">
        <block type="math_number" id="Gov$3|Qrd91N~RUzWea=">
        <field name="NUM">9</field>
        </block>
        </value>
        </block>
        </value>
        <value name="B">
        <block type="text" id="2~EGhvBs4KIPXXMcNVkx">
        <field name="TEXT">Button1</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO0">
        <block type="variables_set" id="G!Z=C5KTj-Nl+XFa0RU
        ">
        <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
        <value name="VALUE">
        <block type="get_attr" id="Ed}{-}B{X+obkb^Mmk8O">
        <value name="PATH">
        <shadow type="text">
        <field name="TEXT">Button2.Action</field>
        </shadow>
        <block type="text" id="-XSmbNSLD2q^JU.3)[(^">
        <field name="TEXT">Button1.Action</field>
        </block>
        </value>
        <value name="OBJECT">
        <block type="variables_get" id="-%8e}:rqW1kj_iUDQyyf">
        <field name="VAR" id="$%h)IyPA]i!w|o;@^u~">PanelResult</field>
        </block>
        </value>
        </block>
        </value>
        <next>
        <block type="controls_if" id="729?J2a__sAP
        2PmMN2%">
        <mutation elseif="5"></mutation>
        <value name="IF0">
        <block type="logic_compare" id="u9lV/l]c1,yVRl3(21(L">
        <field name="OP">EQ</field>
        <value name="A">
        <block type="variables_get" id="kG0ARQ1j%HKz(I=l}:P"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="v?m}nM1~E8zR0,Ja+if+"> <field name="TEXT">SINGLE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="iqFwhe!^P0z9-W9D[tyh"> <field name="COMMENT">Schalte etwas: Button1 1x gedrückt</field> <next> <block type="debug" id="F22M/f@lJ_xQ$t2#QW[#"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="?r3.Wy5c@$3DxmvbIGr}"> <field name="TEXT">Button1 SINGLE wurde gedrückt</field> </block> </value> <next> <block type="control" id="RQplKnS3Qup@ShD|p$H:"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Licht_Deckenleuchte.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="3)Bu5AR9Zth?=@~)Lz6i"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="[Vpq7B,RWb4k)Bhwq{nh"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="|Whz!$I5#Iym52Pg8N?p"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="~f_cI8hrs;I)wJ-S.G3r"> <field name="TEXT">DOUBLE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="comment" id="D;PPB54t87N)%F{.hQAx"> <field name="COMMENT">Schalte etwas: Button1 2x gedrückt</field> <next> <block type="debug" id="xoG/r3;338/j$QeZHW5">
        <field name="Severity">log</field>
        <value name="TEXT">
        <shadow type="text">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="9PgW|#6f8``brbWQM9q7">
        <field name="TEXT">Button1 DOUBLE wurde gedrückt</field>
        </block>
        </value>
        <next>
        <block type="control" id="V79BE);I,!|=V);^a{7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Wohnen_Rollladen_F7.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="K.y/Rx9]0}r(x6;]=]r)"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF2"> <block type="logic_compare" id="t)8drGw=u/q0Pl+ul^43"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="-lf~?Q^H8o}J:cf@I5aN"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="Z!={5~.hF?V-NFw73|BL"> <field name="TEXT">TRIPLE</field> </block> </value> </block> </value> <statement name="DO2"> <block type="comment" id="xjdh~X8eM8ab/a/JuIM/"> <field name="COMMENT">Schalte etwas: Button1 3x gedrückt</field> <next> <block type="debug" id="n$kU%^k3$wHN/L**K=jA"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="SA^R/OJX#a7JDhE7LwL["> <field name="TEXT">Button1 TRIPLE wurde gedrückt</field> </block> </value> </block> </next> </block> </statement> <value name="IF3"> <block type="logic_compare" id="ZCUeBK[Sc08KKQVMF)tC"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id=":Jlhv9(rM!D5H*eM|Gw-"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="6NH!g[HN7f=7_q%U10M!"> <field name="TEXT">QUAD</field> </block> </value> </block> </value> <statement name="DO3"> <block type="comment" id="77*X9-*|mO]|P0$Jw=K">
        <field name="COMMENT">Schalte etwas: Button1 4x gedrückt</field>
        <next>
        <block type="debug" id="qE@G.#9s!UAtrlMJ/yi"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="G:19{lKn)mB!x(NUx5S">
        <field name="TEXT">Button1 QUAD wurde gedrückt</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF4">
        <block type="logic_compare" id="fz#2[~sK=iF%wd=4hB,"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="ROFyrrPZn5KJg7?Hs),Z"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="a]-o=$vOr9JDr(T!#SmL"> <field name="TEXT">PENTA</field> </block> </value> </block> </value> <statement name="DO4"> <block type="comment" id="fxPE82.Ci3LME=X3nl|">
        <field name="COMMENT">Schalte etwas: Button1 5x gedrückt</field>
        <next>
        <block type="debug" id="7GbZ650het?k*+CCO:nr">
        <field name="Severity">log</field>
        <value name="TEXT">
        <shadow type="text">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="[}-a1hl?2pc^@4EhI">
        <field name="TEXT">Button1 PENTA wurde gedrückt</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF5">
        <block type="logic_compare" id="5-Jn(s]]Ac}RKP}ssgkc">
        <field name="OP">EQ</field>
        <value name="A">
        <block type="variables_get" id="ZEb2nzb4fmR2agPw|[pX">
        <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
        </block>
        </value>
        <value name="B">
        <block type="text" id="$Ln@,NUH[je2TyexL
        1=">
        <field name="TEXT">HOLD</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO5">
        <block type="comment" id="}2D4HsFwr-kW|Q,,,Bic">
        <field name="COMMENT">Schalte etwas: Button1 wird gehalten</field>
        <next>
        <block type="debug" id="utCpCJ=)EFVEgxIvjIp">
        <field name="Severity">log</field>
        <value name="TEXT">
        <shadow type="text">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="i!=1C23XA-^phx:)9TJB">
        <field name="TEXT">Button1 wurde gehalten</field>
        </block>
        </value>
        <next>
        <block type="control" id="b@7ns3oa|(zxV
        m@7,C6">
        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
        <field name="OID">alias.0.Datenpunkte.Technik_Licht_Deckenleuchte.ON_SET</field>
        <field name="WITH_DELAY">FALSE</field>
        <value name="VALUE">
        <block type="logic_boolean" id="^V-avzYmA:A@CFeu.~-]">
        <field name="BOOL">FALSE</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </next>
        </block>
        </statement>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF1">
        <block type="logic_compare" id="8Ev:iPPfN3B?L^Q]oOIc">
        <field name="OP">EQ</field>
        <value name="A">
        <block type="text_getSubstring" id="xx:q0nC7,q8A8~v?PC#s">
        <mutation at1="true" at2="true"></mutation>
        <field name="WHERE1">FROM_START</field>
        <field name="WHERE2">FROM_START</field>
        <value name="STRING">
        <block type="on_source" id="JWC4m9/7dS^!]+xQ-I0Y">
        <field name="ATTR">state.val</field>
        </block>
        </value>
        <value name="AT1">
        <block type="math_number" id="k7=j)18I6TmB%)upvAVJ">
        <field name="NUM">3</field>
        </block>
        </value>
        <value name="AT2">
        <block type="math_number" id=",EKn%h/uX3}ZjCvmW1KE">
        <field name="NUM">9</field>
        </block>
        </value>
        </block>
        </value>
        <value name="B">
        <block type="text" id="Uuj{UrX@-3nNjw{n!H/@">
        <field name="TEXT">Button2</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO1">
        <block type="variables_set" id="U~1k_f;62_-QkRvGZz=)">
        <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
        <value name="VALUE">
        <block type="get_attr" id="izCz6K1Y;L.7M7MlHA$c">
        <value name="PATH">
        <shadow type="text">
        <field name="TEXT">Button2.Action</field>
        </shadow>
        <block type="text" id="y1)^1#)QjYVVA7)mWdvM">
        <field name="TEXT">Button2.Action</field>
        </block>
        </value>
        <value name="OBJECT">
        <block type="variables_get" id="TIg$Lr%^FukfxDLC:,^"> <field name="VAR" id="$%h)IyP*A]i!w|o;@^u~">PanelResult</field> </block> </value> </block> </value> <next> <block type="controls_if" id="tC_APU:6jW5063/l=sR1"> <mutation elseif="5"></mutation> <value name="IF0"> <block type="logic_compare" id="P9XXNXzc+3H{*^w1P_@q"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="sua/L8[qi8e:U#m}d^pi"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="E^e9/nh{n@)S6e:4q3_h"> <field name="TEXT">SINGLE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="qoOw*}O|E06w[5[cXWLo"> <field name="COMMENT">Schalte etwas: Button2 1x gedrückt</field> <next> <block type="debug" id=",tE:-UWz(0Zqlc8KBLqO"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="!waPZV$J9fR+dq462%h+"> <field name="TEXT">Button</field> </shadow> <block type="text" id="{3#KVO|*86E:3pR/!%WP"> <field name="TEXT">Button2 SINGLE wurde gedrückt</field> </block> </value> <next> <block type="control" id="*r!*gO]M:nu%l=SHWhiR"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="P8C,tu;h9{XGw*8-UiII"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="_Z+eBL!Zj.|LQL+_s|Ld"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="15Tx7/a!(wJ;FO+x!4JW"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="}l%?@L+:Ma!=:d2Ky/%*"> <field name="TEXT">DOUBLE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="comment" id="~72fN$sZV!.O{%*0+awy"> <field name="COMMENT">Schalte etwas: Button2 2x gedrückt</field> <next> <block type="debug" id="-T4*$n8-_X_{@6!Ga5FQ"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="7y;6V!IxDGf^dh_-f[5">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="LFX2j}Pr:o,{$YxQVcp2">
        <field name="TEXT">Button2 DOUBLE wurde gedrückt</field>
        </block>
        </value>
        <next>
        <block type="control" id="s^8!t.nUu^tQ8olCu1x"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.SET</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="i}af~Z--B4k:[{B}xyk">
        <field name="NUM">100</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF2">
        <block type="logic_compare" id="6-2Eew1,aoyC]Th*AaJ5">
        <field name="OP">EQ</field>
        <value name="A">
        <block type="variables_get" id="4Nl6[tYm2pL@rL7v8vLI">
        <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
        </block>
        </value>
        <value name="B">
        <block type="text" id="zthA#*kib2r|xv+,A{Sh">
        <field name="TEXT">TRIPLE</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO2">
        <block type="comment" id="?OI)q#8XL#1)x.E=m~~">
        <field name="COMMENT">Schalte etwas: Button2 3x gedrückt</field>
        <next>
        <block type="debug" id="%6ZLfC!6?Z%jXlF:mFa"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text"> <field name="TEXT">Button</field> </shadow> <block type="text" id="eh|tY,l}uz:WTx}4_G_E"> <field name="TEXT">Button2 TRIPLE wurde gedrückt</field> </block> </value> </block> </next> </block> </statement> <value name="IF3"> <block type="logic_compare" id="*~f.cy|6d8U0s?|^%:8R"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="tiZ6%x5iuvhh:Yi*9qB9"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="I|K0m__6/:.kuBtYQE5l"> <field name="TEXT">QUAD</field> </block> </value> </block> </value> <statement name="DO3"> <block type="comment" id="ToQ_dt~n$Ef|8-fb|__O"> <field name="COMMENT">Schalte etwas: Button2 4x gedrückt</field> <next> <block type="debug" id="qyb7DL~:^6|r@9~KOb+A"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="7aSm~PyE/aX{m#/ZE3L">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="tb4wo7_n@J)Q9$FLf|rV">
        <field name="TEXT">Button2 QUAD wurde gedrückt</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF4">
        <block type="logic_compare" id="M:xb;I}a8;jJU=g}u)["> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="Yh,)fk$+WmVXS=iwbzK{"> <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field> </block> </value> <value name="B"> <block type="text" id="1FMk3ImfaAfEhMd$D#e">
        <field name="TEXT">PENTA</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO4">
        <block type="comment" id="5+tVGCf{MdkG(OBDmuy|">
        <field name="COMMENT">Schalte etwas: Button2 5x gedrückt</field>
        <next>
        <block type="debug" id="}{-PVi#AL#[EGD,eb?M#">
        <field name="Severity">log</field>
        <value name="TEXT">
        <shadow type="text" id="5#Z,,?~9SK95LdiBZW=c">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="HuBkD3zi|o@.S3w.Qh7n">
        <field name="TEXT">Button2 PENTA wurde gedrückt</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </statement>
        <value name="IF5">
        <block type="logic_compare" id="lA]gulrJ~3Q.82YvmG;6">
        <field name="OP">EQ</field>
        <value name="A">
        <block type="variables_get" id="P!43GekgHtC6(9.[u-5b">
        <field name="VAR" id="iG,DhTT3ntIL)6jkdBSx">Action</field>
        </block>
        </value>
        <value name="B">
        <block type="text" id="yq)tQ^VrJLSJ@X3Uc!gI">
        <field name="TEXT">HOLD</field>
        </block>
        </value>
        </block>
        </value>
        <statement name="DO5">
        <block type="comment" id="t_QxvPj#-6bY-sVE1Ui1">
        <field name="COMMENT">Schalte etwas: Button2 wird gehalten</field>
        <next>
        <block type="debug" id="mo-$_bo5$EpS)e83yAXz">
        <field name="Severity">log</field>
        <value name="TEXT">
        <shadow type="text">
        <field name="TEXT">Button</field>
        </shadow>
        <block type="text" id="]Kler.$fx3D71~-ExuH"> <field name="TEXT">Button2 wurde gehalten</field> </block> </value> <next> <block type="control" id="P#VTic|Uu76qG!yM@*n@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Datenpunkte.Technik_Rollladen_F11.STOP</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="-u,S#1W%bt(
        [^9-6%}">
        <field name="BOOL">TRUE</field>
        </block>
        </value>
        </block>
        </next>
        </block>
        </next>
        </block>
        </statement>
        </block>
        </next>
        </block>
        </statement>
        </block>
        </next>
        </block>
        </statement>
        </block>
        </xml>

        N Offline
        N Offline
        niiccooo1
        schrieb am zuletzt editiert von
        #1298

        @jens-wozny
        Kurze Frage dazu: Könnte man einen Button für Multipress verwenden und den anderen um sich Favoritenpages anzeigen zu lassen?

        Jens WoznyJ ArmilarA 2 Antworten Letzte Antwort
        0
        • N niiccooo1

          @jens-wozny
          Kurze Frage dazu: Könnte man einen Button für Multipress verwenden und den anderen um sich Favoritenpages anzeigen zu lassen?

          Jens WoznyJ Offline
          Jens WoznyJ Offline
          Jens Wozny
          schrieb am zuletzt editiert von
          #1299

          @niiccooo1 Oha! Ich denke ja, weil die Verarbeitung der Tasten in einem eigenen Script passieren, aber da sollten wir lieber mal warten bis die Fachleute dran sind und das bestätigen können 😉

          1 Antwort Letzte Antwort
          0
          • N niiccooo1

            Ein Wunsch für zukünftige Versionen:
            Beim Drücken auf ein Fenster Datenpunkt, das Popup vom Rollo anzeigen 🙂

            K Offline
            K Offline
            Kuckuckmann
            schrieb am zuletzt editiert von
            #1300

            @niiccooo1

            Ich denke, am Besten kippst Du das im GitHub als Wunsh ein:

            https://github.com/joBr99/nspanel-lovelace-ui/issues

            NSPanel Dokumentation im GitHub Wiki:

            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            1 Antwort Letzte Antwort
            0
            • T Offline
              T Offline
              tklein
              schrieb am zuletzt editiert von tklein
              #1301

              Hallo,

              Hi,

              irgendwie bekomme ich die Blinds/Jalousien mit meinen 2.5 Shellies nicht hin.

              So ist es eingebunden

              var Wohnzimmer_Jalousien: PageEntities = 
              {
                  "type": "cardEntities",
                  "heading": "Jalousien",
                  "useColor": true,
                  "subPage": true,
                  "parent": Startseite_Wohnzimmer,
                  "items": [
                       <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Vitrinejalousie", icon: "blind" , name: "Vitrine",offColor: MSRed, onColor: MSGreen},
                       <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Terrassenjalousie", icon: "blind",  name: "Terrasse",offColor: MSRed, onColor: MSGreen},
                       <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Sofajalousie", icon: "blind", name: "Sofa", offColor: MSRed, onColor: MSGreen},
                       <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Sonnenschutz", name: "Sonnenschutz", interpolateColor: true}
                  ]
              };
              

              So als Alias:

              9518f0a3-43e2-4e57-9a8e-aa896369e93f-grafik.png

              Die jeweiligen Icons werden mir im Display angezeigt, Jedoch leider ohne Funktion.

              Was mache ich falsch?

              EDIT: Eine weitere Frage noch: Kann ich bei z.B. 2 fachen Button 1 Druck eine bestimmte Seite anzeigen lassen? Quasie als Shortcut? Ich meine kein Notify/Popup

              K D ArmilarA 3 Antworten Letzte Antwort
              0
              • T Offline
                T Offline
                tklein
                schrieb am zuletzt editiert von
                #1302

                Kann ich eigentlich mit einem String/Befehl im MQTT-CustomSend auch die verbauten Relais schalten? Falls ja, wie muss der aussehen?

                1 Antwort Letzte Antwort
                0
                • T tklein

                  Hallo,

                  Hi,

                  irgendwie bekomme ich die Blinds/Jalousien mit meinen 2.5 Shellies nicht hin.

                  So ist es eingebunden

                  var Wohnzimmer_Jalousien: PageEntities = 
                  {
                      "type": "cardEntities",
                      "heading": "Jalousien",
                      "useColor": true,
                      "subPage": true,
                      "parent": Startseite_Wohnzimmer,
                      "items": [
                           <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Vitrinejalousie", icon: "blind" , name: "Vitrine",offColor: MSRed, onColor: MSGreen},
                           <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Terrassenjalousie", icon: "blind",  name: "Terrasse",offColor: MSRed, onColor: MSGreen},
                           <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Sofajalousie", icon: "blind", name: "Sofa", offColor: MSRed, onColor: MSGreen},
                           <PageItem>{ id: "alias.0.Jalousien.Wohnzimmer.Sonnenschutz", name: "Sonnenschutz", interpolateColor: true}
                      ]
                  };
                  

                  So als Alias:

                  9518f0a3-43e2-4e57-9a8e-aa896369e93f-grafik.png

                  Die jeweiligen Icons werden mir im Display angezeigt, Jedoch leider ohne Funktion.

                  Was mache ich falsch?

                  EDIT: Eine weitere Frage noch: Kann ich bei z.B. 2 fachen Button 1 Druck eine bestimmte Seite anzeigen lassen? Quasie als Shortcut? Ich meine kein Notify/Popup

                  K Offline
                  K Offline
                  Kuckuckmann
                  schrieb am zuletzt editiert von
                  #1303

                  @tklein
                  Magst Du mal noch ein Bild von Deinem Panel und der Page posten?
                  Evtl. hilft es das zu sehen.

                  NSPanel Dokumentation im GitHub Wiki:

                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  T 1 Antwort Letzte Antwort
                  0
                  • K Kuckuckmann

                    @tklein
                    Magst Du mal noch ein Bild von Deinem Panel und der Page posten?
                    Evtl. hilft es das zu sehen.

                    T Offline
                    T Offline
                    tklein
                    schrieb am zuletzt editiert von
                    #1304

                    @kuckuckmann said in Sonoff NSPanel:

                    @tklein
                    Magst Du mal noch ein Bild von Deinem Panel und der Page posten?
                    Evtl. hilft es das zu sehen.

                    aber klar doch:

                    9eb6dacd-799b-4804-9623-a9cd45aa1cc8-grafik.png

                    K 1 Antwort Letzte Antwort
                    0
                    • T tklein

                      @kuckuckmann said in Sonoff NSPanel:

                      @tklein
                      Magst Du mal noch ein Bild von Deinem Panel und der Page posten?
                      Evtl. hilft es das zu sehen.

                      aber klar doch:

                      9eb6dacd-799b-4804-9623-a9cd45aa1cc8-grafik.png

                      K Offline
                      K Offline
                      Kuckuckmann
                      schrieb am zuletzt editiert von
                      #1305

                      @tklein
                      Kannst Du im ioBroker in den Datenpunkten der Shellys sehen, dass sich was verändert, wenn Du einen Button auf dem Panel drückst?

                      Kannst Du die Shellys über die Datenpunkte steuern, geht das? Also wird z.B. die Jalousie zu gefahren, wenn du im Datenpunkt CLOSE den Wert setzt?

                      NSPanel Dokumentation im GitHub Wiki:

                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      T 1 Antwort Letzte Antwort
                      0
                      • K Kuckuckmann

                        @tklein
                        Kannst Du im ioBroker in den Datenpunkten der Shellys sehen, dass sich was verändert, wenn Du einen Button auf dem Panel drückst?

                        Kannst Du die Shellys über die Datenpunkte steuern, geht das? Also wird z.B. die Jalousie zu gefahren, wenn du im Datenpunkt CLOSE den Wert setzt?

                        T Offline
                        T Offline
                        tklein
                        schrieb am zuletzt editiert von tklein
                        #1306

                        @kuckuckmann Fehler glaube ich gefunden. In den Shelly DP stand (null), Nachdem ich auf True/false gesetzt hatte, ging das Schalten auf dem Panel 🙂

                        Thx für den Schubs in die richtige Richtung.

                        Kann ich auf spezielle Pages per Befehl auf dem Display öffnen lassen? Ähnlich so CustomSend: "Shop page1"

                        K 1 Antwort Letzte Antwort
                        0
                        • T tklein

                          @kuckuckmann Fehler glaube ich gefunden. In den Shelly DP stand (null), Nachdem ich auf True/false gesetzt hatte, ging das Schalten auf dem Panel 🙂

                          Thx für den Schubs in die richtige Richtung.

                          Kann ich auf spezielle Pages per Befehl auf dem Display öffnen lassen? Ähnlich so CustomSend: "Shop page1"

                          K Offline
                          K Offline
                          Kuckuckmann
                          schrieb am zuletzt editiert von
                          #1307

                          @tklein

                          Gern geschehen.

                          Bzgl. der Pages müssen wir auf @Armilar warten.
                          Die Frage wurde heute schon einmal gestellt.
                          Bitte ein wenig Geduld 😉

                          NSPanel Dokumentation im GitHub Wiki:

                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                          T 1 Antwort Letzte Antwort
                          0
                          • K Kuckuckmann

                            @tklein

                            Gern geschehen.

                            Bzgl. der Pages müssen wir auf @Armilar warten.
                            Die Frage wurde heute schon einmal gestellt.
                            Bitte ein wenig Geduld 😉

                            T Offline
                            T Offline
                            tklein
                            schrieb am zuletzt editiert von
                            #1308

                            @kuckuckmann ok & thx.

                            mit dem evtl. Parameter für CustomSend ähnlich? @Relais schalten?

                            K 1 Antwort Letzte Antwort
                            0
                            • T tklein

                              @kuckuckmann ok & thx.

                              mit dem evtl. Parameter für CustomSend ähnlich? @Relais schalten?

                              K Offline
                              K Offline
                              Kuckuckmann
                              schrieb am zuletzt editiert von
                              #1309

                              @tklein
                              Du meinst via Button? Oder wie/was willst Du denn für ein Relais schalten?

                              NSPanel Dokumentation im GitHub Wiki:

                              https://github.com/joBr99/nspanel-lovelace-ui/wiki

                              T 1 Antwort Letzte Antwort
                              0
                              • G gritrasq

                                Hallo Zusammen,
                                ich bitte um Nachsicht, das ist mein erster Post, bisher hat mitlesen immer geholfen. In diesem Sinne auch gleich mal einen Dank an alle. Wenn es hier nicht passt bitte verschieben oder löschen.

                                Installation:
                                Für das NSPanel verwende ich das Script NsPanelTs.ts vom 4.9.22
                                Für das global Icon Mapping das Script icon_mapping.ts von vor 5 Monaten.
                                Iobroker ist auf einem RPI installiert. Alle Adapter aktuell.

                                Ich habe das Panel gestern neu installiert und soweit läuft es erst einmal (Uhrzeit geht eine Stunde nach, aber egal)
                                Screensaver wird angezeigt.
                                Die Beispielseiten auch soweit das eben geht.

                                Ich habe nun zwei Probleme.

                                Problem 1:
                                Ich habe den Screensaver modifiziert und zeige die Daten meiner PV Anlage an. Das geht super, aber ich bekomme den Forecast nicht ausgeschaltet. Lt. Anleitung von haus-automatisierung.com müsste dies via:
                                const weatherForecast = false gehe. diesen Eintrag finde ich nicht und wenn ich ihn erstelle bewirkt er nichts.

                                Wenn ich es in 0_userdata.0.NSPanel.1.ScreensaverInfo.weatherForecast auf false setze geht es immer wieder auf True.

                                Problem 2.
                                Ich wollte gerne weitere Daten aus meiner PV Anlage auf einer Page anzeigen. Hierzu habe ich einen Info "Gerät" angelegt, welches dann aber im Geräte Adapter nicht mehr erscheint.
                                GerätPV.png
                                Aber im Alias existiert
                                ecb2bf20-7cc1-4654-8623-dac0c2a83558-image.png
                                im Script habe ich folgendes eingetragen:

                                 <PageItem>{ id: "alias.0.Außenbereich.PV-Anlage.Leistung_Panel.ACTUAL", icon: "solar-panel-large", name: "PV-Leistung"},
                                

                                Mir wird auf dem Panel das Icon angezeigt und der Name beim Wert steht aber eine "0"
                                Role ist Info, also dachte ich es müsste gehen.
                                Wenn ich es richtig verstanden haben reagiert das Panel ja auf die Role, und die Werte SET und ACTUAL im Alias.

                                Vielen Dank im Voraus

                                K Offline
                                K Offline
                                Kuckuckmann
                                schrieb am zuletzt editiert von
                                #1310

                                @gritrasq sagte in Sonoff NSPanel:

                                Ich habe den Screensaver modifiziert und zeige die Daten meiner PV Anlage an. Das geht super

                                Kannst Du mir mal die Konfig aus dem TS Skript dafür zur verfügung stellen und vlt. einen Screenshot vom Panel woman die PV Daten sieht?

                                Ich würde das gerne als Bsp. in die FAQ integrieren.

                                NSPanel Dokumentation im GitHub Wiki:

                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                1 Antwort Letzte Antwort
                                0
                                • E Offline
                                  E Offline
                                  eppi
                                  schrieb am zuletzt editiert von
                                  #1311

                                  Hallo zusammen
                                  Gibt es eine Möglichkeit in einer cardEntities ein Dropdown Menü anzulegen? Hintergrund: Ich habe bei einer Pumpe den Modus "Auto", "Aus", "Ein", welchen ich gerne ansteuern möchte. Oder hat sonst jemand eine kreative Idee, wie man das umsetzen könnte?
                                  Vielen Dank und Gruss Eppi

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • T Offline
                                    T Offline
                                    TT-Tom
                                    schrieb am zuletzt editiert von
                                    #1312

                                    @kuckuckmann sagte in Sonoff NSPanel:

                                    4.) Abfallkalender

                                    Hi,

                                    ich hab das Script von @Armilar etwas angepasst. Es erstellt die Datenpunkte automatisch und mit den konstanten können die wichtigsten Einstellungen vorgenommen werden.

                                    bitte mal testen und ggf. in die FAQ aufnehmen.

                                    const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                                    const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                    const idRestmuellName ='Hausmüll'; // Schwarze Tonne
                                    const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                                    const idPappePapierName = 'Papier';  // Blaue Tonne
                                    const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                                    
                                    
                                    var i, Muell_JSON, Event2, Color = 0;
                                    
                                    for (i = 1; i <= 4; i++) {
                                        if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date')) {
                                            log(i + '.date nicht vorhanden, wurde erstellt');
                                            createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date', '',
                                                {
                                                    name: parseFloat(i) + '.date',
                                                    role: 'state',
                                                    type: 'string',
                                                    read: true,
                                                    write: true,
                                                    def: ''
                                                });
                                        };
                                        if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event')) {
                                            log(i + '.event nicht vorhanden, wurde erstellt');
                                            createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event', '',
                                                {
                                                    name: parseFloat(i) + '.event',
                                                    role: 'state',
                                                    type: 'string',
                                                    read: true,
                                                    write: true,
                                                    def: ''
                                                });
                                        };
                                        if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color')) {
                                            log(i + '.color nicht vorhanden, wurde erstellt');
                                            createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color', '',
                                                {
                                                    name: parseFloat(i) + '.color',
                                                    role: 'state',
                                                    type: 'number',
                                                    read: true,
                                                    write: true,
                                                    def: 0
                                                });
                                        };
                                    }
                                    
                                    function subsequenceFromStartLast(sequence, at1) {
                                        var start = at1;
                                        var end = sequence.length;
                                        return sequence.slice(start, end);
                                    }
                                    
                                    on({ id: idAbfalliCal + '.data.table', change: "ne" }, async function () {
                                    
                                        for (i = 0; i <= 3; i++) {
                                            Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                                            setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                            Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), idZeichenLoeschen);
                                            setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                            if (Event2 == idRestmuellName) {
                                                Color = 33840;
                                            } else if (Event2 == idBioabfaelleName) {
                                                Color = 2016;
                                            } else if (Event2 == idPappePapierName) {
                                                Color = 31;
                                            } else if (Event2 == idWertstoffName) {
                                                Color = 65504;
                                            }
                                            setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                        }
                                    });
                                    
                                    

                                    4 = Für's parsen wichtig. Bei funktioniert die 0, es kann sein dass dies bei euch anders ist.

                                    als Erklärung wäre glaube ich dieser Text sinnvoller:

                                    x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                    

                                    Gruß Tom
                                    https://github.com/tt-tom17
                                    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                    NSPanel Script Wiki
                                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                    NSPanel Adapter Wiki
                                    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                    K 1 Antwort Letzte Antwort
                                    0
                                    • E eppi

                                      Hallo zusammen
                                      Gibt es eine Möglichkeit in einer cardEntities ein Dropdown Menü anzulegen? Hintergrund: Ich habe bei einer Pumpe den Modus "Auto", "Aus", "Ein", welchen ich gerne ansteuern möchte. Oder hat sonst jemand eine kreative Idee, wie man das umsetzen könnte?
                                      Vielen Dank und Gruss Eppi

                                      K Offline
                                      K Offline
                                      Kuckuckmann
                                      schrieb am zuletzt editiert von Kuckuckmann
                                      #1313

                                      @eppi
                                      Also was ich mir vorstellen könnte:

                                      • Du machst eine PageGrid mit Drei Switches für Auto, Aus und Ein.
                                      • dafür benötigst du dann drei Alias z.b. typ taste
                                      • diese linkst Du auf drei Hilfsdatenpunkte (Boolean)
                                      • dann baust Dir ein Blockly oder anderes Skript was jeweils die drei Datenpunkte prüft und sobald eine True ist schaltet es die anderen beiden auf false
                                      • im weiteren teil des skriptes wird dann der Datenpunkt mit true dazu genutzt die Pumpe in den entsprechenden Modus zu schalten

                                      NSPanel Dokumentation im GitHub Wiki:

                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                      1 Antwort Letzte Antwort
                                      0
                                      • T TT-Tom

                                        @kuckuckmann sagte in Sonoff NSPanel:

                                        4.) Abfallkalender

                                        Hi,

                                        ich hab das Script von @Armilar etwas angepasst. Es erstellt die Datenpunkte automatisch und mit den konstanten können die wichtigsten Einstellungen vorgenommen werden.

                                        bitte mal testen und ggf. in die FAQ aufnehmen.

                                        const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                                        const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                        const idRestmuellName ='Hausmüll'; // Schwarze Tonne
                                        const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                                        const idPappePapierName = 'Papier';  // Blaue Tonne
                                        const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                                        
                                        
                                        var i, Muell_JSON, Event2, Color = 0;
                                        
                                        for (i = 1; i <= 4; i++) {
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date')) {
                                                log(i + '.date nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date', '',
                                                    {
                                                        name: parseFloat(i) + '.date',
                                                        role: 'state',
                                                        type: 'string',
                                                        read: true,
                                                        write: true,
                                                        def: ''
                                                    });
                                            };
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event')) {
                                                log(i + '.event nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event', '',
                                                    {
                                                        name: parseFloat(i) + '.event',
                                                        role: 'state',
                                                        type: 'string',
                                                        read: true,
                                                        write: true,
                                                        def: ''
                                                    });
                                            };
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color')) {
                                                log(i + '.color nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color', '',
                                                    {
                                                        name: parseFloat(i) + '.color',
                                                        role: 'state',
                                                        type: 'number',
                                                        read: true,
                                                        write: true,
                                                        def: 0
                                                    });
                                            };
                                        }
                                        
                                        function subsequenceFromStartLast(sequence, at1) {
                                            var start = at1;
                                            var end = sequence.length;
                                            return sequence.slice(start, end);
                                        }
                                        
                                        on({ id: idAbfalliCal + '.data.table', change: "ne" }, async function () {
                                        
                                            for (i = 0; i <= 3; i++) {
                                                Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                                Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), idZeichenLoeschen);
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                                if (Event2 == idRestmuellName) {
                                                    Color = 33840;
                                                } else if (Event2 == idBioabfaelleName) {
                                                    Color = 2016;
                                                } else if (Event2 == idPappePapierName) {
                                                    Color = 31;
                                                } else if (Event2 == idWertstoffName) {
                                                    Color = 65504;
                                                }
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                            }
                                        });
                                        
                                        

                                        4 = Für's parsen wichtig. Bei funktioniert die 0, es kann sein dass dies bei euch anders ist.

                                        als Erklärung wäre glaube ich dieser Text sinnvoller:

                                        x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                        
                                        K Offline
                                        K Offline
                                        Kuckuckmann
                                        schrieb am zuletzt editiert von
                                        #1314

                                        @tt-tom sagte in Sonoff NSPanel:

                                        @kuckuckmann sagte in Sonoff NSPanel:

                                        4.) Abfallkalender

                                        Hi,

                                        ich hab das Script von @Armilar etwas angepasst. Es erstellt die Datenpunkte automatisch und mit den konstanten können die wichtigsten Einstellungen vorgenommen werden.

                                        bitte mal testen und ggf. in die FAQ aufnehmen.

                                        const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                                        const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                        const idRestmuellName ='Hausmüll'; // Schwarze Tonne
                                        const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                                        const idPappePapierName = 'Papier';  // Blaue Tonne
                                        const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                                        
                                        
                                        var i, Muell_JSON, Event2, Color = 0;
                                        
                                        for (i = 1; i <= 4; i++) {
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date')) {
                                                log(i + '.date nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date', '',
                                                    {
                                                        name: parseFloat(i) + '.date',
                                                        role: 'state',
                                                        type: 'string',
                                                        read: true,
                                                        write: true,
                                                        def: ''
                                                    });
                                            };
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event')) {
                                                log(i + '.event nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event', '',
                                                    {
                                                        name: parseFloat(i) + '.event',
                                                        role: 'state',
                                                        type: 'string',
                                                        read: true,
                                                        write: true,
                                                        def: ''
                                                    });
                                            };
                                            if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color')) {
                                                log(i + '.color nicht vorhanden, wurde erstellt');
                                                createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color', '',
                                                    {
                                                        name: parseFloat(i) + '.color',
                                                        role: 'state',
                                                        type: 'number',
                                                        read: true,
                                                        write: true,
                                                        def: 0
                                                    });
                                            };
                                        }
                                        
                                        function subsequenceFromStartLast(sequence, at1) {
                                            var start = at1;
                                            var end = sequence.length;
                                            return sequence.slice(start, end);
                                        }
                                        
                                        on({ id: idAbfalliCal + '.data.table', change: "ne" }, async function () {
                                        
                                            for (i = 0; i <= 3; i++) {
                                                Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                                Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), idZeichenLoeschen);
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                                if (Event2 == idRestmuellName) {
                                                    Color = 33840;
                                                } else if (Event2 == idBioabfaelleName) {
                                                    Color = 2016;
                                                } else if (Event2 == idPappePapierName) {
                                                    Color = 31;
                                                } else if (Event2 == idWertstoffName) {
                                                    Color = 65504;
                                                }
                                                setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                            }
                                        });
                                        
                                        

                                        4 = Für's parsen wichtig. Bei funktioniert die 0, es kann sein dass dies bei euch anders ist.

                                        als Erklärung wäre glaube ich dieser Text sinnvoller:

                                        x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                        

                                        Hey @TT-Tom super cool 🙂
                                        Feel free es im Wiki einzuarbeiten, oder soll ich es machen?

                                        NSPanel Dokumentation im GitHub Wiki:

                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        T 1 Antwort Letzte Antwort
                                        0
                                        • K Kuckuckmann

                                          @tt-tom sagte in Sonoff NSPanel:

                                          @kuckuckmann sagte in Sonoff NSPanel:

                                          4.) Abfallkalender

                                          Hi,

                                          ich hab das Script von @Armilar etwas angepasst. Es erstellt die Datenpunkte automatisch und mit den konstanten können die wichtigsten Einstellungen vorgenommen werden.

                                          bitte mal testen und ggf. in die FAQ aufnehmen.

                                          const idAbfalliCal = 'ical.1'; // iCal Instanz zum Abfallkalender
                                          const idZeichenLoeschen = 14; // x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                          const idRestmuellName ='Hausmüll'; // Schwarze Tonne
                                          const idWertstoffName = 'Gelber Sack'; // Gelbe Tonne / Sack
                                          const idPappePapierName = 'Papier';  // Blaue Tonne
                                          const idBioabfaelleName = 'Biomüll'; // Braune Tonne
                                          
                                          
                                          var i, Muell_JSON, Event2, Color = 0;
                                          
                                          for (i = 1; i <= 4; i++) {
                                              if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date')) {
                                                  log(i + '.date nicht vorhanden, wurde erstellt');
                                                  createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.date', '',
                                                      {
                                                          name: parseFloat(i) + '.date',
                                                          role: 'state',
                                                          type: 'string',
                                                          read: true,
                                                          write: true,
                                                          def: ''
                                                      });
                                              };
                                              if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event')) {
                                                  log(i + '.event nicht vorhanden, wurde erstellt');
                                                  createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.event', '',
                                                      {
                                                          name: parseFloat(i) + '.event',
                                                          role: 'state',
                                                          type: 'string',
                                                          read: true,
                                                          write: true,
                                                          def: ''
                                                      });
                                              };
                                              if (!existsState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color')) {
                                                  log(i + '.color nicht vorhanden, wurde erstellt');
                                                  createState('0_userdata.0.Abfallkalender.' + parseFloat(i) + '.color', '',
                                                      {
                                                          name: parseFloat(i) + '.color',
                                                          role: 'state',
                                                          type: 'number',
                                                          read: true,
                                                          write: true,
                                                          def: 0
                                                      });
                                              };
                                          }
                                          
                                          function subsequenceFromStartLast(sequence, at1) {
                                              var start = at1;
                                              var end = sequence.length;
                                              return sequence.slice(start, end);
                                          }
                                          
                                          on({ id: idAbfalliCal + '.data.table', change: "ne" }, async function () {
                                          
                                              for (i = 0; i <= 3; i++) {
                                                  Muell_JSON = getState(idAbfalliCal + '.data.table').val;
                                                  setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                                  Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), idZeichenLoeschen);
                                                  setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                                  if (Event2 == idRestmuellName) {
                                                      Color = 33840;
                                                  } else if (Event2 == idBioabfaelleName) {
                                                      Color = 2016;
                                                  } else if (Event2 == idPappePapierName) {
                                                      Color = 31;
                                                  } else if (Event2 == idWertstoffName) {
                                                      Color = 65504;
                                                  }
                                                  setStateDelayed((['0_userdata.0.Abfallkalender.', parseFloat(i) + 1, '.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                              }
                                          });
                                          
                                          

                                          4 = Für's parsen wichtig. Bei funktioniert die 0, es kann sein dass dies bei euch anders ist.

                                          als Erklärung wäre glaube ich dieser Text sinnvoller:

                                          x Zeichen links vom String abziehen, wenn vor dem Eventname noch Text steht z.B. Strassenname; Standard = 0
                                          

                                          Hey @TT-Tom super cool 🙂
                                          Feel free es im Wiki einzuarbeiten, oder soll ich es machen?

                                          T Offline
                                          T Offline
                                          TT-Tom
                                          schrieb am zuletzt editiert von
                                          #1315

                                          @kuckuckmann

                                          habe das Wiki schon mal über flogen, aber noch kein Zugang wie man dort mitarbeiten kann. Besser du aktualisierst und ich komme mal per PN auf dich zu, damit du mir den Umgang im Wiki erklären kannst.

                                          Gruß Tom
                                          https://github.com/tt-tom17
                                          Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                          NSPanel Script Wiki
                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          NSPanel Adapter Wiki
                                          https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                          K 1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          700

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe