Skip to content
  • Home
  • 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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

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

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

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

SONOFF NSPanel mit Lovelace UI

Geplant Angeheftet Gesperrt Verschoben Hardware
lovelace uinspanelsonoff
7.8k Beiträge 272 Kommentatoren 6.7m Aufrufe 254 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.
  • ArmilarA Armilar

    @vumer

    habe 3 Varianten eingebaut (Min/Max/MinMax) weil ich die Idee schon gut finde...

    so sieht es aus am Mo wenn wir min -20° und max -10° haben ( ich hoffe es tritt nie auf )
    Falls das wirklich mal der Fall sein sollte, haben wir ganz andere Probleme ;-)

    Selbst dann kann ich mir noch denken, dass der 2. Wert dann in °C sein sollte. Und na ja ab 100°C hätten wir auch ein anderes Problem. Denke nicht, dass das Panel dann noch läuft... :grimacing:

    EDIT: Ich weiß was du da gerade mit dem Icon-Mapping durchmachst ;-)
    Habe das auch mal mit unterschiedlichsten Adaptern gemacht und habe mich dann entschieden, dass accuweather doch kein schlechtes Wetter liefert :joy:

    Wenn du fertig bist, dann nehme ich das mit auf...

    VumerV Offline
    VumerV Offline
    Vumer
    schrieb am zuletzt editiert von Vumer
    #1210

    @armilar sagte in SONOFF NSPanel mit Lovelace UI:

    Wenn du fertig bist, dann nehme ich das mit auf..

    Ich weiß nicht ob du das so übernehmen kannst, eventuell kann man das auch besser oder anders machen.
    So habe ich das für ioBroker.DasWetter angepasst.
    G für gemeinsamer Ordner
    0_userdata.0.NSPanel.G.Wetter.Forecast.json


    {
    "0_userdata.0.NSPanel.G.Wetter.Forecast": {
    "type": "channel",
    "common": {
    "name": "Weather Forecast"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast",
    "acl": {
    "object": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336152
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1": {
    "type": "state",
    "common": {
    "name": "Day of week day 1",
    "type": "string",
    "read": true,
    "write": false,
    "role": "dayofweek.forecast.0",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336297
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2": {
    "type": "state",
    "common": {
    "name": "Day of week day 2",
    "type": "string",
    "read": true,
    "write": false,
    "role": "dayofweek.forecast.1",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336313
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3": {
    "type": "state",
    "common": {
    "name": "Day of week day 3",
    "type": "string",
    "read": true,
    "write": true,
    "role": "dayofweek.forecast.2",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336332
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4": {
    "type": "state",
    "common": {
    "name": "Day of week day 4",
    "type": "string",
    "read": true,
    "write": true,
    "role": "dayofweek.forecast.3",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336355
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5": {
    "type": "state",
    "common": {
    "name": "Day of week day 5",
    "type": "string",
    "read": true,
    "write": true,
    "role": "dayofweek.forecast.4",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373336380
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1": {
    "type": "state",
    "common": {
    "name": "Temperature day 1",
    "type": "number",
    "read": true,
    "write": false,
    "role": "value.temperature.forecast.0",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671399468841
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2": {
    "type": "state",
    "common": {
    "name": "Temperature day 2",
    "type": "mixed",
    "read": true,
    "write": false,
    "role": "value.temperature.forecast.1",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671399475152
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3": {
    "type": "state",
    "common": {
    "name": "Temperature day 3",
    "type": "number",
    "read": true,
    "write": false,
    "role": "value.temperature.forecast.2",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671399481522
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4": {
    "type": "state",
    "common": {
    "name": "Temperature day 4",
    "type": "number",
    "read": true,
    "write": false,
    "role": "value.temperature.forecast.3",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671399489265
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5": {
    "type": "state",
    "common": {
    "name": "Temperature day 5",
    "type": "number",
    "read": true,
    "write": false,
    "role": "value.temperature.forecast.4",
    "unit": ""
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671399495304
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1": {
    "type": "state",
    "common": {
    "name": "Weather Icon day 1",
    "type": "string",
    "read": true,
    "write": false,
    "role": "weather.icon.name.forecast.0"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373338156
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2": {
    "type": "state",
    "common": {
    "name": "Weather Icon day 2",
    "type": "string",
    "read": true,
    "write": false,
    "role": "weather.icon.name.forecast.1"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373338174
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3": {
    "type": "state",
    "common": {
    "name": "Weather Icon day 3",
    "type": "string",
    "read": true,
    "write": false,
    "role": "weather.icon.name.forecast.2"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373338196
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4": {
    "type": "state",
    "common": {
    "name": "Weather Icon day 4",
    "type": "string",
    "read": true,
    "write": false,
    "role": "weather.icon.name.forecast.3"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373338213
    },
    "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5": {
    "type": "state",
    "common": {
    "name": "Weather Icon day 5",
    "type": "string",
    "read": true,
    "write": false,
    "role": "weather.icon.name.forecast.4"
    },
    "native": {},
    "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5",
    "acl": {
    "object": 1636,
    "state": 1636,
    "owner": "system.user.admin",
    "ownerGroup": "system.group.administrator"
    },
    "from": "system.adapter.admin.0",
    "user": "system.user.admin",
    "ts": 1671373338240
    }
    }

    Blockly

    <xml xmlns="https://developers.google.com/blockly/xml">
      <block type="on" id="=-RD+F[QK[CFGi85zl}}" x="38" y="313">
        <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Tag_value</field>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <statement name="STATEMENT">
          <block type="update" id="c*!Ju/BKs3zP6DRCzE5v">
            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
            <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d1</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
              <block type="text_getSubstring" id="_8GEul]RV!MCmj832jJR">
                <mutation at1="false" at2="true"></mutation>
                <field name="WHERE1">FIRST</field>
                <field name="WHERE2">FROM_START</field>
                <value name="STRING">
                  <block type="on_source" id="1Q~0V{%4?7SdnjRYZmi(">
                    <field name="ATTR">state.val</field>
                  </block>
                </value>
                <value name="AT2">
                  <block type="math_number" id="_d0Q%V{{!V1-u/*Q7XU)">
                    <field name="NUM">2</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </statement>
        <next>
          <block type="on" id=";-6Flm5hUp9pzC^7H):j">
            <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Tag_value</field>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <statement name="STATEMENT">
              <block type="update" id="R+{O%cq!FE_Gz;obS`F2">
                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d2</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                  <block type="text_getSubstring" id=")5hX!4{7cf-F.UM=$]c,">
                    <mutation at1="false" at2="true"></mutation>
                    <field name="WHERE1">FIRST</field>
                    <field name="WHERE2">FROM_START</field>
                    <value name="STRING">
                      <block type="on_source" id="rh$1Em2ZfP(1GQ}:}A?h">
                        <field name="ATTR">state.val</field>
                      </block>
                    </value>
                    <value name="AT2">
                      <block type="math_number" id="JB]!qg7ckP,7Ks#*lxm@">
                        <field name="NUM">2</field>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </statement>
            <next>
              <block type="on" id="/mLwGtp0l1b;b7]QytEU">
                <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Tag_value</field>
                <field name="CONDITION">ne</field>
                <field name="ACK_CONDITION"></field>
                <statement name="STATEMENT">
                  <block type="update" id="zOc(=C^k`T~%lL1?PJ,W">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d3</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="text_getSubstring" id="I/Tpaam{7X?U{:Mm9Of@">
                        <mutation at1="false" at2="true"></mutation>
                        <field name="WHERE1">FIRST</field>
                        <field name="WHERE2">FROM_START</field>
                        <value name="STRING">
                          <block type="on_source" id="w?580kCA9NjBy~WX,$N[">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                        <value name="AT2">
                          <block type="math_number" id="Z,Vo.^+X76j;^UEX^/VL">
                            <field name="NUM">2</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </statement>
                <next>
                  <block type="on" id="4_,LD@)ocp=]uODVT$sk">
                    <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Tag_value</field>
                    <field name="CONDITION">ne</field>
                    <field name="ACK_CONDITION"></field>
                    <statement name="STATEMENT">
                      <block type="update" id="|FL*e6#][CntdDwO46_|">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d4</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text_getSubstring" id=";$i5U,UkHj]zxN~PDXh:">
                            <mutation at1="false" at2="true"></mutation>
                            <field name="WHERE1">FIRST</field>
                            <field name="WHERE2">FROM_START</field>
                            <value name="STRING">
                              <block type="on_source" id="{@:jT?@JQ-m[Pm^Jgq)?">
                                <field name="ATTR">state.val</field>
                              </block>
                            </value>
                            <value name="AT2">
                              <block type="math_number" id="!A:jeQLW/oxAtu#SKoi,">
                                <field name="NUM">2</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <next>
                      <block type="on" id="fHXwq#%}ub%!WD)h(rG_">
                        <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Tag_value</field>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <statement name="STATEMENT">
                          <block type="update" id="DkLTxs{NiV[6ip)23}(?">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d5</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="text_getSubstring" id="{U,1E=WT41-Yrc1percp">
                                <mutation at1="false" at2="true"></mutation>
                                <field name="WHERE1">FIRST</field>
                                <field name="WHERE2">FROM_START</field>
                                <value name="STRING">
                                  <block type="on_source" id="3yFRKzn`+C3s:hC+DH8l">
                                    <field name="ATTR">state.val</field>
                                  </block>
                                </value>
                                <value name="AT2">
                                  <block type="math_number" id="?UL9h5yXmQij6+yUaMqe">
                                    <field name="NUM">2</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </statement>
                        <next>
                          <block type="on_ext" id="hr9S!iFGa$x}CT8C13g+">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <value name="OID0">
                              <shadow type="field_oid" id="]_mN3!v8YmD.EkFz/N4D">
                                <field name="oid">default</field>
                              </shadow>
                              <block type="field_oid" id="p4eV.mdO4egtx}j,0qL1">
                                <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                              </block>
                            </value>
                            <value name="OID1">
                              <shadow type="field_oid" id="zLviln}e!*{$r~B9%7hr">
                                <field name="oid">default</field>
                              </shadow>
                              <block type="field_oid" id="bu;|FvkK!P?KSY|vjeXR">
                                <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                              </block>
                            </value>
                            <statement name="STATEMENT">
                              <block type="update" id="7D2p`xlQ}.1!{)KQCHc)">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d1</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="text_join" id="nhrPB?uW?H/(ArSiYm/p">
                                    <mutation items="4"></mutation>
                                    <value name="ADD0">
                                      <block type="get_value" id="]E9GyMuKRru+#h#H9hHY">
                                        <field name="ATTR">val</field>
                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <value name="ADD1">
                                      <block type="text" id="Qy3nrsHc8gQ?M+vP8})%">
                                        <field name="TEXT">° </field>
                                      </block>
                                    </value>
                                    <value name="ADD2">
                                      <block type="get_value" id="e1,HZp}}{p_YZ8vnp,y@">
                                        <field name="ATTR">val</field>
                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <value name="ADD3">
                                      <block type="text" id="n:*Ah5^kMm^y{zRD_0YO">
                                        <field name="TEXT">°</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </statement>
                            <next>
                              <block type="on_ext" id=":R#aX)$()T@VOSEj{2C]">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                <field name="CONDITION">ne</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid">
                                    <field name="oid">default</field>
                                  </shadow>
                                  <block type="field_oid" id="YmttR63CnzYUPRpv)I}r">
                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                  </block>
                                </value>
                                <value name="OID1">
                                  <shadow type="field_oid">
                                    <field name="oid">default</field>
                                  </shadow>
                                  <block type="field_oid" id="xx7Lf%Tcy[=BOEjTzs#w">
                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                  </block>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="update" id="WXQJca7bak+dyJt]-u?m">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                    <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d2</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE">
                                      <block type="text_join" id=")w^CFKmAr~I01WE9N.g+">
                                        <mutation items="4"></mutation>
                                        <value name="ADD0">
                                          <block type="get_value" id="a6}pqsYbzKY4[~{#t.7M">
                                            <field name="ATTR">val</field>
                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="ADD1">
                                          <block type="text" id="7SOCJ-cva$?8]VlL7%9m">
                                            <field name="TEXT">° </field>
                                          </block>
                                        </value>
                                        <value name="ADD2">
                                          <block type="get_value" id=")7YAJ?sYei6t^#B|A;f8">
                                            <field name="ATTR">val</field>
                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="ADD3">
                                          <block type="text" id="WY:d$xZpTx0FhUkaA@i}">
                                            <field name="TEXT">°</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                                <next>
                                  <block type="on_ext" id="}2k;tXY/$/#|X{{#[vZt">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                    <field name="CONDITION">ne</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="field_oid" id="Y0QjXc4nGv@5})+-9Eu?">
                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <value name="OID1">
                                      <shadow type="field_oid">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="field_oid" id="_Rnj}*fX~5%Pk|V1[B!|">
                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="update" id="*k`K.u~rN-^6;9T#$oKq">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d3</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="text_join" id="hoKVI[-W:W*H14C)TWQ^">
                                            <mutation items="4"></mutation>
                                            <value name="ADD0">
                                              <block type="get_value" id="raBJS2okpTrvx)2A8@8A">
                                                <field name="ATTR">val</field>
                                                <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="ADD1">
                                              <block type="text" id="uJ#FwWOMgyPWZ:OS7LgK">
                                                <field name="TEXT">° </field>
                                              </block>
                                            </value>
                                            <value name="ADD2">
                                              <block type="get_value" id="1-7u|$?tZ?_s9Ydi`(]Z">
                                                <field name="ATTR">val</field>
                                                <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="ADD3">
                                              <block type="text" id="c?yE|X8n#T6tDSX|4LXs">
                                                <field name="TEXT">°</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="on_ext" id="8g-#XIB(N9jv$hC[Yw=;">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                        <field name="CONDITION">ne</field>
                                        <field name="ACK_CONDITION"></field>
                                        <value name="OID0">
                                          <shadow type="field_oid">
                                            <field name="oid">default</field>
                                          </shadow>
                                          <block type="field_oid" id="g%Z]q]{a:[H4gr^.ix=U">
                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="OID1">
                                          <shadow type="field_oid">
                                            <field name="oid">default</field>
                                          </shadow>
                                          <block type="field_oid" id="B3m)BKz[=lYLR715*6V2">
                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <statement name="STATEMENT">
                                          <block type="update" id="N7cXvS8dhb?Y*=W6sn0E">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d4</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="text_join" id="fJhfgM{e-CF~cCwcQk00">
                                                <mutation items="4"></mutation>
                                                <value name="ADD0">
                                                  <block type="get_value" id="Vu=8[w!{JR*sNdQ/m6P+">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <value name="ADD1">
                                                  <block type="text" id="$j24q%$+J#3*I/$~ZyE^">
                                                    <field name="TEXT">° </field>
                                                  </block>
                                                </value>
                                                <value name="ADD2">
                                                  <block type="get_value" id="|6s^?i.d!V2u@+PWt{O/">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <value name="ADD3">
                                                  <block type="text" id="/:mxs+P1Nq-i24[pn(5S">
                                                    <field name="TEXT">°</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                          </block>
                                        </statement>
                                        <next>
                                          <block type="on_ext" id="NZPjB4`YG$%O`FWT(sqi">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <value name="OID0">
                                              <shadow type="field_oid">
                                                <field name="oid">default</field>
                                              </shadow>
                                              <block type="field_oid" id="sp+DT5@tY,7VSR3F,NN~">
                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="OID1">
                                              <shadow type="field_oid">
                                                <field name="oid">default</field>
                                              </shadow>
                                              <block type="field_oid" id="~g:Q]oXI2|SQuWew7L8k">
                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <statement name="STATEMENT">
                                              <block type="update" id=":GwX/U.w%qZDXK#dqb4=">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d5</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="text_join" id="T4@e*m+DGlTihrI]wu5X">
                                                    <mutation items="4"></mutation>
                                                    <value name="ADD0">
                                                      <block type="get_value" id="q[K(SS~4%a0i8qaJAZA1">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="text" id="-YkhgoP|tsv%%[W=jE-d">
                                                        <field name="TEXT">° </field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD2">
                                                      <block type="get_value" id="0Q!Efuo@4F-4~SnYYUTW">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD3">
                                                      <block type="text" id="Yd9Ie]0i9rn9NfbyV?Hl">
                                                        <field name="TEXT">°</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="direct" id="KzblwI)x?RW`H-5yV73A">
                                                <field name="ONLY_CHANGES">TRUE</field>
                                                <value name="OID_SRC">
                                                  <shadow type="field_oid" id="bN4X7{`q2d@NG0{SIQ]S">
                                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id</field>
                                                  </shadow>
                                                </value>
                                                <value name="OID_DST">
                                                  <shadow type="field_oid" id="sZGMk$?^.s8^3H-%LqLK">
                                                    <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d1</field>
                                                  </shadow>
                                                </value>
                                                <next>
                                                  <block type="direct" id="8Q1l.suz9WwoTLDktvd[">
                                                    <field name="ONLY_CHANGES">TRUE</field>
                                                    <value name="OID_SRC">
                                                      <shadow type="field_oid" id="M|rrkRs(ou6Z?BiOg}JX">
                                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Wetter_Symbol_id</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="OID_DST">
                                                      <shadow type="field_oid" id="@o%#41lIto[u3Akk}MX}">
                                                        <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d2</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="direct" id="OoG#WhvB91K%9WJ|1{W=">
                                                        <field name="ONLY_CHANGES">TRUE</field>
                                                        <value name="OID_SRC">
                                                          <shadow type="field_oid" id="eO/5Ld74N^t[N8=]8xZ]">
                                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Wetter_Symbol_id</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OID_DST">
                                                          <shadow type="field_oid" id="(C4LPXIL:Q]l?:pa5Qvi">
                                                            <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d3</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="direct" id="}B3%_j_I0sqiA5$1=%][">
                                                            <field name="ONLY_CHANGES">TRUE</field>
                                                            <value name="OID_SRC">
                                                              <shadow type="field_oid" id="a8Flm@;PvUlP8j444m}t">
                                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Wetter_Symbol_id</field>
                                                              </shadow>
                                                            </value>
                                                            <value name="OID_DST">
                                                              <shadow type="field_oid" id="Gq-SCr;8?OC^Q{l*nEXD">
                                                                <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d4</field>
                                                              </shadow>
                                                            </value>
                                                            <next>
                                                              <block type="direct" id="]-ejTmSb]UnE-DVzn;]J">
                                                                <field name="ONLY_CHANGES">TRUE</field>
                                                                <value name="OID_SRC">
                                                                  <shadow type="field_oid" id=".03|%d/1f2ae6^5y:.Ap">
                                                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Wetter_Symbol_id</field>
                                                                  </shadow>
                                                                </value>
                                                                <value name="OID_DST">
                                                                  <shadow type="field_oid" id="X,n)52(ou^RCo10Ixp%C">
                                                                    <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d5</field>
                                                                  </shadow>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </next>
      </block>
    </xml>
    

    Angepasster ts

                if (weatherForecast) {
                    // AccuWeather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                    for (let i = 2; i < 6; i++) {
                        let TempMax = getState('0_userdata.0.NSPanel.G.Wetter.Summary.TempMax_d' + i).val;
                        let DayOfWeek = getState('0_userdata.0.NSPanel.G.Wetter.Summary.DayOfWeek_d' + i).val;
                        let WeatherIcon = GetAccuWeatherIcon(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                        vwIconColor[i-1] = GetAccuWeatherIconColor(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                        if (Debug) {
                            console.log(vwIconColor[i - 1]);
                        }
                        payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax +  '~';
                    }
    

    und die daswetter Icons

    function GetAccuWeatherIcon(icon: number): string {
        try {
            switch (icon) {
    		    case 1:         // Sonnig
                     return 'weather-sunny';  // sunny
    
    			case 2:         // Teils bewölkt
                case 3:         // Bewölkt
                    return 'weather-partly-cloudy';  // partlycloudy
    				
                case 4:         // Bedeckt
                    return 'weather-cloudy';  // cloudy
    				
                case 5:        // Teils bewölkt mit leichtem Regen
                case 6:        // Bewölkt mit leichtem Regen
                case 8:        // Teils bewölkt mit mäßigem Regen
                case 9:        // Bewölkt mit mäßigem Regen
                    return 'weather-partly-rainy';  // partly-rainy
    				
                case 7:        // Bedeckt mit leichtem Regen
                    return 'weather-rainy';  // rainy
    				
    		    case 10:        // Bedeckt mit mäßigem Regen
                    return 'weather-pouring';  // pouring
    				
                case 11:        // Teils bewölkt mit starken Regenschauern
                case 12:        // Bewölkt mit stürmischen Regenschauern
                    return 'weather-partly-lightning';  // partlylightning
    				
                case 13:        // Bedeckt mit stürmischen Regenschauern
                    return 'weather-lightning';  // lightning
    				
                case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
    			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
    			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                    return 'weather-hail';  // Hail
    
                case 17:        // Teils bewölkt mit Schnee
                case 18:        // Bewölkt mit Schnee
                    return 'weather-partly-snowy';  // partlysnowy
    				
    			case 19:        // Bedeckt mit Schneeschauern
                    return 'weather-snowy';  // snowy
    
                case 20:        // Teils bewölkt mit Schneeregen
                case 21:        // Bewölkt mit Schneeregen
                    return 'weather-partly-snowy-rainy';
    
                case 22:        // Bedeckt mit Schneeregen
                    return 'weather-snowy-rainy';  // snowy-rainy
    
                default:
                    return 'alert-circle-outline';
            }
        } catch (err) {
            console.warn('GetAccuWeatherIcon: '+ err.message);
        }
    }
    
    function GetAccuWeatherIconColor(icon: number): number {
        try{
            switch (icon) {
                case 1:         // Sonnig
                    return rgb_dec565(swSunny);
    
                case 2:         // Teils bewölkt
                case 3:         // Bewölkt
                    return rgb_dec565(swPartlycloudy);
    
                case 4:         // Bedeckt
                    return rgb_dec565(swCloudy);
    
                case 5:        // Teils bewölkt mit leichtem Regen
                case 6:        // Bewölkt mit leichtem Regen
                case 8:        // Teils bewölkt mit mäßigem Regen
                case 9:        // Bewölkt mit mäßigem Regen
                    return rgb_dec565(swRainy);
    
                case 7:        // Bedeckt mit leichtem Regen
                    return rgb_dec565(swRainy);
    
                case 10:        // Bedeckt mit mäßigem Regen
                    return rgb_dec565(swPouring);
    
                case 11:        // Teils bewölkt mit starken Regenschauern
                case 12:        // Bewölkt mit stürmischen Regenschauern
                    return rgb_dec565(swLightningRainy);
    
                case 13:        // Bedeckt mit stürmischen Regenschauern
                    return rgb_dec565(swLightning);
    
                case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
    			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
    			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                    return rgb_dec565(swHail);
    
                case 17:        // Teils bewölkt mit Schnee
                case 18:        // Bewölkt mit Schnee
                    return rgb_dec565(swSnowy);
    
                case 19:        // Bedeckt mit Schneeschauern
                    return rgb_dec565(swSnowy);
    
                case 20:        // Teils bewölkt mit Schneeregen
                case 21:        // Bewölkt mit Schneeregen
                    return rgb_dec565(swSnowyRainy);  // snowy-rainy
    
                case 22:        // Bedeckt mit Schneeregen
                    return rgb_dec565(swSnowyRainy);
    
                default:
                    return rgb_dec565(White);
            }
        } catch (err) {
            console.warn('GetAccuWeatherIconColor: '+ err.message);
        }
    }
    
    Mit den Farben bin ich mir nicht sicher :grin: 
    
    ArmilarA 2 Antworten Letzte Antwort
    1
    • D Dieter Kurz

      @armilar So sieht das Symbol bei AccuWeather aus

      925e91c2-e2d8-4c6f-a3dc-d4f96ed197d2-image.png

      Vielleicht könnte das ja jemand "nachbauen", ich hab da leide kein Talent ;-)

      ArmilarA Offline
      ArmilarA Offline
      Armilar
      Most Active Forum Testing
      schrieb am zuletzt editiert von
      #1211

      @dieter-kurz

      Du kannst nur Symbole aus der Datei nehmen.

      https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.html

      Da sind wir eingeschränkt. Aber besonders clever gewählt ist das Symbol von accuweather ja nun auch nicht ;-)

      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
      https://github.com/joBr99/nspanel-lovelace-ui/wiki

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      1 Antwort Letzte Antwort
      0
      • VumerV Vumer

        @armilar sagte in SONOFF NSPanel mit Lovelace UI:

        Wenn du fertig bist, dann nehme ich das mit auf..

        Ich weiß nicht ob du das so übernehmen kannst, eventuell kann man das auch besser oder anders machen.
        So habe ich das für ioBroker.DasWetter angepasst.
        G für gemeinsamer Ordner
        0_userdata.0.NSPanel.G.Wetter.Forecast.json


        {
        "0_userdata.0.NSPanel.G.Wetter.Forecast": {
        "type": "channel",
        "common": {
        "name": "Weather Forecast"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast",
        "acl": {
        "object": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336152
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1": {
        "type": "state",
        "common": {
        "name": "Day of week day 1",
        "type": "string",
        "read": true,
        "write": false,
        "role": "dayofweek.forecast.0",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336297
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2": {
        "type": "state",
        "common": {
        "name": "Day of week day 2",
        "type": "string",
        "read": true,
        "write": false,
        "role": "dayofweek.forecast.1",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336313
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3": {
        "type": "state",
        "common": {
        "name": "Day of week day 3",
        "type": "string",
        "read": true,
        "write": true,
        "role": "dayofweek.forecast.2",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336332
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4": {
        "type": "state",
        "common": {
        "name": "Day of week day 4",
        "type": "string",
        "read": true,
        "write": true,
        "role": "dayofweek.forecast.3",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336355
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5": {
        "type": "state",
        "common": {
        "name": "Day of week day 5",
        "type": "string",
        "read": true,
        "write": true,
        "role": "dayofweek.forecast.4",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373336380
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1": {
        "type": "state",
        "common": {
        "name": "Temperature day 1",
        "type": "number",
        "read": true,
        "write": false,
        "role": "value.temperature.forecast.0",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671399468841
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2": {
        "type": "state",
        "common": {
        "name": "Temperature day 2",
        "type": "mixed",
        "read": true,
        "write": false,
        "role": "value.temperature.forecast.1",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671399475152
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3": {
        "type": "state",
        "common": {
        "name": "Temperature day 3",
        "type": "number",
        "read": true,
        "write": false,
        "role": "value.temperature.forecast.2",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671399481522
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4": {
        "type": "state",
        "common": {
        "name": "Temperature day 4",
        "type": "number",
        "read": true,
        "write": false,
        "role": "value.temperature.forecast.3",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671399489265
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5": {
        "type": "state",
        "common": {
        "name": "Temperature day 5",
        "type": "number",
        "read": true,
        "write": false,
        "role": "value.temperature.forecast.4",
        "unit": ""
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671399495304
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1": {
        "type": "state",
        "common": {
        "name": "Weather Icon day 1",
        "type": "string",
        "read": true,
        "write": false,
        "role": "weather.icon.name.forecast.0"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373338156
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2": {
        "type": "state",
        "common": {
        "name": "Weather Icon day 2",
        "type": "string",
        "read": true,
        "write": false,
        "role": "weather.icon.name.forecast.1"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373338174
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3": {
        "type": "state",
        "common": {
        "name": "Weather Icon day 3",
        "type": "string",
        "read": true,
        "write": false,
        "role": "weather.icon.name.forecast.2"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373338196
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4": {
        "type": "state",
        "common": {
        "name": "Weather Icon day 4",
        "type": "string",
        "read": true,
        "write": false,
        "role": "weather.icon.name.forecast.3"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373338213
        },
        "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5": {
        "type": "state",
        "common": {
        "name": "Weather Icon day 5",
        "type": "string",
        "read": true,
        "write": false,
        "role": "weather.icon.name.forecast.4"
        },
        "native": {},
        "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5",
        "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1671373338240
        }
        }

        Blockly

        <xml xmlns="https://developers.google.com/blockly/xml">
          <block type="on" id="=-RD+F[QK[CFGi85zl}}" x="38" y="313">
            <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Tag_value</field>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <statement name="STATEMENT">
              <block type="update" id="c*!Ju/BKs3zP6DRCzE5v">
                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d1</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                  <block type="text_getSubstring" id="_8GEul]RV!MCmj832jJR">
                    <mutation at1="false" at2="true"></mutation>
                    <field name="WHERE1">FIRST</field>
                    <field name="WHERE2">FROM_START</field>
                    <value name="STRING">
                      <block type="on_source" id="1Q~0V{%4?7SdnjRYZmi(">
                        <field name="ATTR">state.val</field>
                      </block>
                    </value>
                    <value name="AT2">
                      <block type="math_number" id="_d0Q%V{{!V1-u/*Q7XU)">
                        <field name="NUM">2</field>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </statement>
            <next>
              <block type="on" id=";-6Flm5hUp9pzC^7H):j">
                <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Tag_value</field>
                <field name="CONDITION">ne</field>
                <field name="ACK_CONDITION"></field>
                <statement name="STATEMENT">
                  <block type="update" id="R+{O%cq!FE_Gz;obS`F2">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d2</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="text_getSubstring" id=")5hX!4{7cf-F.UM=$]c,">
                        <mutation at1="false" at2="true"></mutation>
                        <field name="WHERE1">FIRST</field>
                        <field name="WHERE2">FROM_START</field>
                        <value name="STRING">
                          <block type="on_source" id="rh$1Em2ZfP(1GQ}:}A?h">
                            <field name="ATTR">state.val</field>
                          </block>
                        </value>
                        <value name="AT2">
                          <block type="math_number" id="JB]!qg7ckP,7Ks#*lxm@">
                            <field name="NUM">2</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </statement>
                <next>
                  <block type="on" id="/mLwGtp0l1b;b7]QytEU">
                    <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Tag_value</field>
                    <field name="CONDITION">ne</field>
                    <field name="ACK_CONDITION"></field>
                    <statement name="STATEMENT">
                      <block type="update" id="zOc(=C^k`T~%lL1?PJ,W">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d3</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text_getSubstring" id="I/Tpaam{7X?U{:Mm9Of@">
                            <mutation at1="false" at2="true"></mutation>
                            <field name="WHERE1">FIRST</field>
                            <field name="WHERE2">FROM_START</field>
                            <value name="STRING">
                              <block type="on_source" id="w?580kCA9NjBy~WX,$N[">
                                <field name="ATTR">state.val</field>
                              </block>
                            </value>
                            <value name="AT2">
                              <block type="math_number" id="Z,Vo.^+X76j;^UEX^/VL">
                                <field name="NUM">2</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </statement>
                    <next>
                      <block type="on" id="4_,LD@)ocp=]uODVT$sk">
                        <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Tag_value</field>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <statement name="STATEMENT">
                          <block type="update" id="|FL*e6#][CntdDwO46_|">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d4</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="text_getSubstring" id=";$i5U,UkHj]zxN~PDXh:">
                                <mutation at1="false" at2="true"></mutation>
                                <field name="WHERE1">FIRST</field>
                                <field name="WHERE2">FROM_START</field>
                                <value name="STRING">
                                  <block type="on_source" id="{@:jT?@JQ-m[Pm^Jgq)?">
                                    <field name="ATTR">state.val</field>
                                  </block>
                                </value>
                                <value name="AT2">
                                  <block type="math_number" id="!A:jeQLW/oxAtu#SKoi,">
                                    <field name="NUM">2</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </statement>
                        <next>
                          <block type="on" id="fHXwq#%}ub%!WD)h(rG_">
                            <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Tag_value</field>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <statement name="STATEMENT">
                              <block type="update" id="DkLTxs{NiV[6ip)23}(?">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d5</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="text_getSubstring" id="{U,1E=WT41-Yrc1percp">
                                    <mutation at1="false" at2="true"></mutation>
                                    <field name="WHERE1">FIRST</field>
                                    <field name="WHERE2">FROM_START</field>
                                    <value name="STRING">
                                      <block type="on_source" id="3yFRKzn`+C3s:hC+DH8l">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="AT2">
                                      <block type="math_number" id="?UL9h5yXmQij6+yUaMqe">
                                        <field name="NUM">2</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </statement>
                            <next>
                              <block type="on_ext" id="hr9S!iFGa$x}CT8C13g+">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                <field name="CONDITION">ne</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="]_mN3!v8YmD.EkFz/N4D">
                                    <field name="oid">default</field>
                                  </shadow>
                                  <block type="field_oid" id="p4eV.mdO4egtx}j,0qL1">
                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                                  </block>
                                </value>
                                <value name="OID1">
                                  <shadow type="field_oid" id="zLviln}e!*{$r~B9%7hr">
                                    <field name="oid">default</field>
                                  </shadow>
                                  <block type="field_oid" id="bu;|FvkK!P?KSY|vjeXR">
                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                                  </block>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="update" id="7D2p`xlQ}.1!{)KQCHc)">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                    <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d1</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE">
                                      <block type="text_join" id="nhrPB?uW?H/(ArSiYm/p">
                                        <mutation items="4"></mutation>
                                        <value name="ADD0">
                                          <block type="get_value" id="]E9GyMuKRru+#h#H9hHY">
                                            <field name="ATTR">val</field>
                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="ADD1">
                                          <block type="text" id="Qy3nrsHc8gQ?M+vP8})%">
                                            <field name="TEXT">° </field>
                                          </block>
                                        </value>
                                        <value name="ADD2">
                                          <block type="get_value" id="e1,HZp}}{p_YZ8vnp,y@">
                                            <field name="ATTR">val</field>
                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="ADD3">
                                          <block type="text" id="n:*Ah5^kMm^y{zRD_0YO">
                                            <field name="TEXT">°</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                                <next>
                                  <block type="on_ext" id=":R#aX)$()T@VOSEj{2C]">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                    <field name="CONDITION">ne</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="field_oid" id="YmttR63CnzYUPRpv)I}r">
                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <value name="OID1">
                                      <shadow type="field_oid">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="field_oid" id="xx7Lf%Tcy[=BOEjTzs#w">
                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                      </block>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="update" id="WXQJca7bak+dyJt]-u?m">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d2</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="text_join" id=")w^CFKmAr~I01WE9N.g+">
                                            <mutation items="4"></mutation>
                                            <value name="ADD0">
                                              <block type="get_value" id="a6}pqsYbzKY4[~{#t.7M">
                                                <field name="ATTR">val</field>
                                                <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="ADD1">
                                              <block type="text" id="7SOCJ-cva$?8]VlL7%9m">
                                                <field name="TEXT">° </field>
                                              </block>
                                            </value>
                                            <value name="ADD2">
                                              <block type="get_value" id=")7YAJ?sYei6t^#B|A;f8">
                                                <field name="ATTR">val</field>
                                                <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="ADD3">
                                              <block type="text" id="WY:d$xZpTx0FhUkaA@i}">
                                                <field name="TEXT">°</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="on_ext" id="}2k;tXY/$/#|X{{#[vZt">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                        <field name="CONDITION">ne</field>
                                        <field name="ACK_CONDITION"></field>
                                        <value name="OID0">
                                          <shadow type="field_oid">
                                            <field name="oid">default</field>
                                          </shadow>
                                          <block type="field_oid" id="Y0QjXc4nGv@5})+-9Eu?">
                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <value name="OID1">
                                          <shadow type="field_oid">
                                            <field name="oid">default</field>
                                          </shadow>
                                          <block type="field_oid" id="_Rnj}*fX~5%Pk|V1[B!|">
                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                          </block>
                                        </value>
                                        <statement name="STATEMENT">
                                          <block type="update" id="*k`K.u~rN-^6;9T#$oKq">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d3</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="text_join" id="hoKVI[-W:W*H14C)TWQ^">
                                                <mutation items="4"></mutation>
                                                <value name="ADD0">
                                                  <block type="get_value" id="raBJS2okpTrvx)2A8@8A">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <value name="ADD1">
                                                  <block type="text" id="uJ#FwWOMgyPWZ:OS7LgK">
                                                    <field name="TEXT">° </field>
                                                  </block>
                                                </value>
                                                <value name="ADD2">
                                                  <block type="get_value" id="1-7u|$?tZ?_s9Ydi`(]Z">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <value name="ADD3">
                                                  <block type="text" id="c?yE|X8n#T6tDSX|4LXs">
                                                    <field name="TEXT">°</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                          </block>
                                        </statement>
                                        <next>
                                          <block type="on_ext" id="8g-#XIB(N9jv$hC[Yw=;">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <value name="OID0">
                                              <shadow type="field_oid">
                                                <field name="oid">default</field>
                                              </shadow>
                                              <block type="field_oid" id="g%Z]q]{a:[H4gr^.ix=U">
                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <value name="OID1">
                                              <shadow type="field_oid">
                                                <field name="oid">default</field>
                                              </shadow>
                                              <block type="field_oid" id="B3m)BKz[=lYLR715*6V2">
                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                              </block>
                                            </value>
                                            <statement name="STATEMENT">
                                              <block type="update" id="N7cXvS8dhb?Y*=W6sn0E">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d4</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="text_join" id="fJhfgM{e-CF~cCwcQk00">
                                                    <mutation items="4"></mutation>
                                                    <value name="ADD0">
                                                      <block type="get_value" id="Vu=8[w!{JR*sNdQ/m6P+">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="text" id="$j24q%$+J#3*I/$~ZyE^">
                                                        <field name="TEXT">° </field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD2">
                                                      <block type="get_value" id="|6s^?i.d!V2u@+PWt{O/">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD3">
                                                      <block type="text" id="/:mxs+P1Nq-i24[pn(5S">
                                                        <field name="TEXT">°</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="on_ext" id="NZPjB4`YG$%O`FWT(sqi">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                <field name="CONDITION">ne</field>
                                                <field name="ACK_CONDITION"></field>
                                                <value name="OID0">
                                                  <shadow type="field_oid">
                                                    <field name="oid">default</field>
                                                  </shadow>
                                                  <block type="field_oid" id="sp+DT5@tY,7VSR3F,NN~">
                                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <value name="OID1">
                                                  <shadow type="field_oid">
                                                    <field name="oid">default</field>
                                                  </shadow>
                                                  <block type="field_oid" id="~g:Q]oXI2|SQuWew7L8k">
                                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                                  </block>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="update" id=":GwX/U.w%qZDXK#dqb4=">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                    <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d5</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE">
                                                      <block type="text_join" id="T4@e*m+DGlTihrI]wu5X">
                                                        <mutation items="4"></mutation>
                                                        <value name="ADD0">
                                                          <block type="get_value" id="q[K(SS~4%a0i8qaJAZA1">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                                          </block>
                                                        </value>
                                                        <value name="ADD1">
                                                          <block type="text" id="-YkhgoP|tsv%%[W=jE-d">
                                                            <field name="TEXT">° </field>
                                                          </block>
                                                        </value>
                                                        <value name="ADD2">
                                                          <block type="get_value" id="0Q!Efuo@4F-4~SnYYUTW">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                                          </block>
                                                        </value>
                                                        <value name="ADD3">
                                                          <block type="text" id="Yd9Ie]0i9rn9NfbyV?Hl">
                                                            <field name="TEXT">°</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="direct" id="KzblwI)x?RW`H-5yV73A">
                                                    <field name="ONLY_CHANGES">TRUE</field>
                                                    <value name="OID_SRC">
                                                      <shadow type="field_oid" id="bN4X7{`q2d@NG0{SIQ]S">
                                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="OID_DST">
                                                      <shadow type="field_oid" id="sZGMk$?^.s8^3H-%LqLK">
                                                        <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d1</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="direct" id="8Q1l.suz9WwoTLDktvd[">
                                                        <field name="ONLY_CHANGES">TRUE</field>
                                                        <value name="OID_SRC">
                                                          <shadow type="field_oid" id="M|rrkRs(ou6Z?BiOg}JX">
                                                            <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Wetter_Symbol_id</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OID_DST">
                                                          <shadow type="field_oid" id="@o%#41lIto[u3Akk}MX}">
                                                            <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d2</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="direct" id="OoG#WhvB91K%9WJ|1{W=">
                                                            <field name="ONLY_CHANGES">TRUE</field>
                                                            <value name="OID_SRC">
                                                              <shadow type="field_oid" id="eO/5Ld74N^t[N8=]8xZ]">
                                                                <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Wetter_Symbol_id</field>
                                                              </shadow>
                                                            </value>
                                                            <value name="OID_DST">
                                                              <shadow type="field_oid" id="(C4LPXIL:Q]l?:pa5Qvi">
                                                                <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d3</field>
                                                              </shadow>
                                                            </value>
                                                            <next>
                                                              <block type="direct" id="}B3%_j_I0sqiA5$1=%][">
                                                                <field name="ONLY_CHANGES">TRUE</field>
                                                                <value name="OID_SRC">
                                                                  <shadow type="field_oid" id="a8Flm@;PvUlP8j444m}t">
                                                                    <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Wetter_Symbol_id</field>
                                                                  </shadow>
                                                                </value>
                                                                <value name="OID_DST">
                                                                  <shadow type="field_oid" id="Gq-SCr;8?OC^Q{l*nEXD">
                                                                    <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d4</field>
                                                                  </shadow>
                                                                </value>
                                                                <next>
                                                                  <block type="direct" id="]-ejTmSb]UnE-DVzn;]J">
                                                                    <field name="ONLY_CHANGES">TRUE</field>
                                                                    <value name="OID_SRC">
                                                                      <shadow type="field_oid" id=".03|%d/1f2ae6^5y:.Ap">
                                                                        <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Wetter_Symbol_id</field>
                                                                      </shadow>
                                                                    </value>
                                                                    <value name="OID_DST">
                                                                      <shadow type="field_oid" id="X,n)52(ou^RCo10Ixp%C">
                                                                        <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d5</field>
                                                                      </shadow>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </xml>
        

        Angepasster ts

                    if (weatherForecast) {
                        // AccuWeather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                        for (let i = 2; i < 6; i++) {
                            let TempMax = getState('0_userdata.0.NSPanel.G.Wetter.Summary.TempMax_d' + i).val;
                            let DayOfWeek = getState('0_userdata.0.NSPanel.G.Wetter.Summary.DayOfWeek_d' + i).val;
                            let WeatherIcon = GetAccuWeatherIcon(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                            vwIconColor[i-1] = GetAccuWeatherIconColor(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                            if (Debug) {
                                console.log(vwIconColor[i - 1]);
                            }
                            payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax +  '~';
                        }
        

        und die daswetter Icons

        function GetAccuWeatherIcon(icon: number): string {
            try {
                switch (icon) {
        		    case 1:         // Sonnig
                         return 'weather-sunny';  // sunny
        
        			case 2:         // Teils bewölkt
                    case 3:         // Bewölkt
                        return 'weather-partly-cloudy';  // partlycloudy
        				
                    case 4:         // Bedeckt
                        return 'weather-cloudy';  // cloudy
        				
                    case 5:        // Teils bewölkt mit leichtem Regen
                    case 6:        // Bewölkt mit leichtem Regen
                    case 8:        // Teils bewölkt mit mäßigem Regen
                    case 9:        // Bewölkt mit mäßigem Regen
                        return 'weather-partly-rainy';  // partly-rainy
        				
                    case 7:        // Bedeckt mit leichtem Regen
                        return 'weather-rainy';  // rainy
        				
        		    case 10:        // Bedeckt mit mäßigem Regen
                        return 'weather-pouring';  // pouring
        				
                    case 11:        // Teils bewölkt mit starken Regenschauern
                    case 12:        // Bewölkt mit stürmischen Regenschauern
                        return 'weather-partly-lightning';  // partlylightning
        				
                    case 13:        // Bedeckt mit stürmischen Regenschauern
                        return 'weather-lightning';  // lightning
        				
                    case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
        			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
        			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                        return 'weather-hail';  // Hail
        
                    case 17:        // Teils bewölkt mit Schnee
                    case 18:        // Bewölkt mit Schnee
                        return 'weather-partly-snowy';  // partlysnowy
        				
        			case 19:        // Bedeckt mit Schneeschauern
                        return 'weather-snowy';  // snowy
        
                    case 20:        // Teils bewölkt mit Schneeregen
                    case 21:        // Bewölkt mit Schneeregen
                        return 'weather-partly-snowy-rainy';
        
                    case 22:        // Bedeckt mit Schneeregen
                        return 'weather-snowy-rainy';  // snowy-rainy
        
                    default:
                        return 'alert-circle-outline';
                }
            } catch (err) {
                console.warn('GetAccuWeatherIcon: '+ err.message);
            }
        }
        
        function GetAccuWeatherIconColor(icon: number): number {
            try{
                switch (icon) {
                    case 1:         // Sonnig
                        return rgb_dec565(swSunny);
        
                    case 2:         // Teils bewölkt
                    case 3:         // Bewölkt
                        return rgb_dec565(swPartlycloudy);
        
                    case 4:         // Bedeckt
                        return rgb_dec565(swCloudy);
        
                    case 5:        // Teils bewölkt mit leichtem Regen
                    case 6:        // Bewölkt mit leichtem Regen
                    case 8:        // Teils bewölkt mit mäßigem Regen
                    case 9:        // Bewölkt mit mäßigem Regen
                        return rgb_dec565(swRainy);
        
                    case 7:        // Bedeckt mit leichtem Regen
                        return rgb_dec565(swRainy);
        
                    case 10:        // Bedeckt mit mäßigem Regen
                        return rgb_dec565(swPouring);
        
                    case 11:        // Teils bewölkt mit starken Regenschauern
                    case 12:        // Bewölkt mit stürmischen Regenschauern
                        return rgb_dec565(swLightningRainy);
        
                    case 13:        // Bedeckt mit stürmischen Regenschauern
                        return rgb_dec565(swLightning);
        
                    case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
        			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
        			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                        return rgb_dec565(swHail);
        
                    case 17:        // Teils bewölkt mit Schnee
                    case 18:        // Bewölkt mit Schnee
                        return rgb_dec565(swSnowy);
        
                    case 19:        // Bedeckt mit Schneeschauern
                        return rgb_dec565(swSnowy);
        
                    case 20:        // Teils bewölkt mit Schneeregen
                    case 21:        // Bewölkt mit Schneeregen
                        return rgb_dec565(swSnowyRainy);  // snowy-rainy
        
                    case 22:        // Bedeckt mit Schneeregen
                        return rgb_dec565(swSnowyRainy);
        
                    default:
                        return rgb_dec565(White);
                }
            } catch (err) {
                console.warn('GetAccuWeatherIconColor: '+ err.message);
            }
        }
        
        Mit den Farben bin ich mir nicht sicher :grin: 
        
        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von Armilar
        #1212

        @vumer sagte in SONOFF NSPanel mit Lovelace UI:

        Ich weiß nicht ob du das so übernehmen kannst, eventuell kann man das auch besser oder anders machen.

        Für mich sind nur die Übersetzungen interessant. Werde eine Adapter-Weiche als Schalter einbauen und in die entsprechenden Adapter-Inhalte und Icon-Übersetzungen setzen.

        Produktiv werde ich das wahrscheinlich nicht nutzen, da "Das Wetter" zumindest für meinen Standort nicht besonders gute Werte liefert. Aber bei anderen kann das schon wieder anders aussehen.

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        1 Antwort Letzte Antwort
        0
        • C Offline
          C Offline
          coto
          schrieb am zuletzt editiert von
          #1213

          Wer hat den Erfahrung mit der Thermostat Steuerung?
          Ich habe Homematic HM-CC-RT-DN und bekomm die Steuerung der Modi nicht in den Griff.
          Vielleicht hat jemand einen Denkanstoß für mich.

          ArmilarA 1 Antwort Letzte Antwort
          0
          • C coto

            Wer hat den Erfahrung mit der Thermostat Steuerung?
            Ich habe Homematic HM-CC-RT-DN und bekomm die Steuerung der Modi nicht in den Griff.
            Vielleicht hat jemand einen Denkanstoß für mich.

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            schrieb am zuletzt editiert von
            #1214

            @coto

            Wie sehen denn die Datenpunkte vom HM-CC-RT-DN aus? Und ein kleiner Blick auf die möglichen Werte für Modi...

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            C 1 Antwort Letzte Antwort
            0
            • VumerV Vumer

              @armilar sagte in SONOFF NSPanel mit Lovelace UI:

              Wenn du fertig bist, dann nehme ich das mit auf..

              Ich weiß nicht ob du das so übernehmen kannst, eventuell kann man das auch besser oder anders machen.
              So habe ich das für ioBroker.DasWetter angepasst.
              G für gemeinsamer Ordner
              0_userdata.0.NSPanel.G.Wetter.Forecast.json


              {
              "0_userdata.0.NSPanel.G.Wetter.Forecast": {
              "type": "channel",
              "common": {
              "name": "Weather Forecast"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast",
              "acl": {
              "object": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336152
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1": {
              "type": "state",
              "common": {
              "name": "Day of week day 1",
              "type": "string",
              "read": true,
              "write": false,
              "role": "dayofweek.forecast.0",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d1",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336297
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2": {
              "type": "state",
              "common": {
              "name": "Day of week day 2",
              "type": "string",
              "read": true,
              "write": false,
              "role": "dayofweek.forecast.1",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d2",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336313
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3": {
              "type": "state",
              "common": {
              "name": "Day of week day 3",
              "type": "string",
              "read": true,
              "write": true,
              "role": "dayofweek.forecast.2",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d3",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336332
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4": {
              "type": "state",
              "common": {
              "name": "Day of week day 4",
              "type": "string",
              "read": true,
              "write": true,
              "role": "dayofweek.forecast.3",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d4",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336355
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5": {
              "type": "state",
              "common": {
              "name": "Day of week day 5",
              "type": "string",
              "read": true,
              "write": true,
              "role": "dayofweek.forecast.4",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.DayOfWeek_d5",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373336380
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1": {
              "type": "state",
              "common": {
              "name": "Temperature day 1",
              "type": "number",
              "read": true,
              "write": false,
              "role": "value.temperature.forecast.0",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d1",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671399468841
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2": {
              "type": "state",
              "common": {
              "name": "Temperature day 2",
              "type": "mixed",
              "read": true,
              "write": false,
              "role": "value.temperature.forecast.1",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d2",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671399475152
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3": {
              "type": "state",
              "common": {
              "name": "Temperature day 3",
              "type": "number",
              "read": true,
              "write": false,
              "role": "value.temperature.forecast.2",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d3",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671399481522
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4": {
              "type": "state",
              "common": {
              "name": "Temperature day 4",
              "type": "number",
              "read": true,
              "write": false,
              "role": "value.temperature.forecast.3",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d4",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671399489265
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5": {
              "type": "state",
              "common": {
              "name": "Temperature day 5",
              "type": "number",
              "read": true,
              "write": false,
              "role": "value.temperature.forecast.4",
              "unit": ""
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.Temp_d5",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671399495304
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1": {
              "type": "state",
              "common": {
              "name": "Weather Icon day 1",
              "type": "string",
              "read": true,
              "write": false,
              "role": "weather.icon.name.forecast.0"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d1",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373338156
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2": {
              "type": "state",
              "common": {
              "name": "Weather Icon day 2",
              "type": "string",
              "read": true,
              "write": false,
              "role": "weather.icon.name.forecast.1"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d2",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373338174
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3": {
              "type": "state",
              "common": {
              "name": "Weather Icon day 3",
              "type": "string",
              "read": true,
              "write": false,
              "role": "weather.icon.name.forecast.2"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d3",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373338196
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4": {
              "type": "state",
              "common": {
              "name": "Weather Icon day 4",
              "type": "string",
              "read": true,
              "write": false,
              "role": "weather.icon.name.forecast.3"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d4",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373338213
              },
              "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5": {
              "type": "state",
              "common": {
              "name": "Weather Icon day 5",
              "type": "string",
              "read": true,
              "write": false,
              "role": "weather.icon.name.forecast.4"
              },
              "native": {},
              "_id": "0_userdata.0.NSPanel.G.Wetter.Forecast.WeatherIcon_d5",
              "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1671373338240
              }
              }

              Blockly

              <xml xmlns="https://developers.google.com/blockly/xml">
                <block type="on" id="=-RD+F[QK[CFGi85zl}}" x="38" y="313">
                  <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Tag_value</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="update" id="c*!Ju/BKs3zP6DRCzE5v">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d1</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="text_getSubstring" id="_8GEul]RV!MCmj832jJR">
                          <mutation at1="false" at2="true"></mutation>
                          <field name="WHERE1">FIRST</field>
                          <field name="WHERE2">FROM_START</field>
                          <value name="STRING">
                            <block type="on_source" id="1Q~0V{%4?7SdnjRYZmi(">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="AT2">
                            <block type="math_number" id="_d0Q%V{{!V1-u/*Q7XU)">
                              <field name="NUM">2</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="on" id=";-6Flm5hUp9pzC^7H):j">
                      <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Tag_value</field>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <statement name="STATEMENT">
                        <block type="update" id="R+{O%cq!FE_Gz;obS`F2">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d2</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="text_getSubstring" id=")5hX!4{7cf-F.UM=$]c,">
                              <mutation at1="false" at2="true"></mutation>
                              <field name="WHERE1">FIRST</field>
                              <field name="WHERE2">FROM_START</field>
                              <value name="STRING">
                                <block type="on_source" id="rh$1Em2ZfP(1GQ}:}A?h">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="AT2">
                                <block type="math_number" id="JB]!qg7ckP,7Ks#*lxm@">
                                  <field name="NUM">2</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <next>
                        <block type="on" id="/mLwGtp0l1b;b7]QytEU">
                          <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Tag_value</field>
                          <field name="CONDITION">ne</field>
                          <field name="ACK_CONDITION"></field>
                          <statement name="STATEMENT">
                            <block type="update" id="zOc(=C^k`T~%lL1?PJ,W">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d3</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="text_getSubstring" id="I/Tpaam{7X?U{:Mm9Of@">
                                  <mutation at1="false" at2="true"></mutation>
                                  <field name="WHERE1">FIRST</field>
                                  <field name="WHERE2">FROM_START</field>
                                  <value name="STRING">
                                    <block type="on_source" id="w?580kCA9NjBy~WX,$N[">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                  <value name="AT2">
                                    <block type="math_number" id="Z,Vo.^+X76j;^UEX^/VL">
                                      <field name="NUM">2</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <next>
                            <block type="on" id="4_,LD@)ocp=]uODVT$sk">
                              <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Tag_value</field>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <statement name="STATEMENT">
                                <block type="update" id="|FL*e6#][CntdDwO46_|">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d4</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="text_getSubstring" id=";$i5U,UkHj]zxN~PDXh:">
                                      <mutation at1="false" at2="true"></mutation>
                                      <field name="WHERE1">FIRST</field>
                                      <field name="WHERE2">FROM_START</field>
                                      <value name="STRING">
                                        <block type="on_source" id="{@:jT?@JQ-m[Pm^Jgq)?">
                                          <field name="ATTR">state.val</field>
                                        </block>
                                      </value>
                                      <value name="AT2">
                                        <block type="math_number" id="!A:jeQLW/oxAtu#SKoi,">
                                          <field name="NUM">2</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                              <next>
                                <block type="on" id="fHXwq#%}ub%!WD)h(rG_">
                                  <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Tag_value</field>
                                  <field name="CONDITION">ne</field>
                                  <field name="ACK_CONDITION"></field>
                                  <statement name="STATEMENT">
                                    <block type="update" id="DkLTxs{NiV[6ip)23}(?">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.DayOfWeek_d5</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="text_getSubstring" id="{U,1E=WT41-Yrc1percp">
                                          <mutation at1="false" at2="true"></mutation>
                                          <field name="WHERE1">FIRST</field>
                                          <field name="WHERE2">FROM_START</field>
                                          <value name="STRING">
                                            <block type="on_source" id="3yFRKzn`+C3s:hC+DH8l">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                          <value name="AT2">
                                            <block type="math_number" id="?UL9h5yXmQij6+yUaMqe">
                                              <field name="NUM">2</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                  <next>
                                    <block type="on_ext" id="hr9S!iFGa$x}CT8C13g+">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                      <field name="CONDITION">ne</field>
                                      <field name="ACK_CONDITION"></field>
                                      <value name="OID0">
                                        <shadow type="field_oid" id="]_mN3!v8YmD.EkFz/N4D">
                                          <field name="oid">default</field>
                                        </shadow>
                                        <block type="field_oid" id="p4eV.mdO4egtx}j,0qL1">
                                          <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                                        </block>
                                      </value>
                                      <value name="OID1">
                                        <shadow type="field_oid" id="zLviln}e!*{$r~B9%7hr">
                                          <field name="oid">default</field>
                                        </shadow>
                                        <block type="field_oid" id="bu;|FvkK!P?KSY|vjeXR">
                                          <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                                        </block>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="update" id="7D2p`xlQ}.1!{)KQCHc)">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d1</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="text_join" id="nhrPB?uW?H/(ArSiYm/p">
                                              <mutation items="4"></mutation>
                                              <value name="ADD0">
                                                <block type="get_value" id="]E9GyMuKRru+#h#H9hHY">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value</field>
                                                </block>
                                              </value>
                                              <value name="ADD1">
                                                <block type="text" id="Qy3nrsHc8gQ?M+vP8})%">
                                                  <field name="TEXT">° </field>
                                                </block>
                                              </value>
                                              <value name="ADD2">
                                                <block type="get_value" id="e1,HZp}}{p_YZ8vnp,y@">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value</field>
                                                </block>
                                              </value>
                                              <value name="ADD3">
                                                <block type="text" id="n:*Ah5^kMm^y{zRD_0YO">
                                                  <field name="TEXT">°</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="on_ext" id=":R#aX)$()T@VOSEj{2C]">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                          <field name="CONDITION">ne</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid">
                                              <field name="oid">default</field>
                                            </shadow>
                                            <block type="field_oid" id="YmttR63CnzYUPRpv)I}r">
                                              <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                            </block>
                                          </value>
                                          <value name="OID1">
                                            <shadow type="field_oid">
                                              <field name="oid">default</field>
                                            </shadow>
                                            <block type="field_oid" id="xx7Lf%Tcy[=BOEjTzs#w">
                                              <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                            </block>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="update" id="WXQJca7bak+dyJt]-u?m">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d2</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="text_join" id=")w^CFKmAr~I01WE9N.g+">
                                                  <mutation items="4"></mutation>
                                                  <value name="ADD0">
                                                    <block type="get_value" id="a6}pqsYbzKY4[~{#t.7M">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD1">
                                                    <block type="text" id="7SOCJ-cva$?8]VlL7%9m">
                                                      <field name="TEXT">° </field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD2">
                                                    <block type="get_value" id=")7YAJ?sYei6t^#B|A;f8">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD3">
                                                    <block type="text" id="WY:d$xZpTx0FhUkaA@i}">
                                                      <field name="TEXT">°</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </statement>
                                          <next>
                                            <block type="on_ext" id="}2k;tXY/$/#|X{{#[vZt">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                              <field name="CONDITION">ne</field>
                                              <field name="ACK_CONDITION"></field>
                                              <value name="OID0">
                                                <shadow type="field_oid">
                                                  <field name="oid">default</field>
                                                </shadow>
                                                <block type="field_oid" id="Y0QjXc4nGv@5})+-9Eu?">
                                                  <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                                </block>
                                              </value>
                                              <value name="OID1">
                                                <shadow type="field_oid">
                                                  <field name="oid">default</field>
                                                </shadow>
                                                <block type="field_oid" id="_Rnj}*fX~5%Pk|V1[B!|">
                                                  <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                                </block>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="update" id="*k`K.u~rN-^6;9T#$oKq">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d3</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="text_join" id="hoKVI[-W:W*H14C)TWQ^">
                                                      <mutation items="4"></mutation>
                                                      <value name="ADD0">
                                                        <block type="get_value" id="raBJS2okpTrvx)2A8@8A">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Minimale_Temperatur_value</field>
                                                        </block>
                                                      </value>
                                                      <value name="ADD1">
                                                        <block type="text" id="uJ#FwWOMgyPWZ:OS7LgK">
                                                          <field name="TEXT">° </field>
                                                        </block>
                                                      </value>
                                                      <value name="ADD2">
                                                        <block type="get_value" id="1-7u|$?tZ?_s9Ydi`(]Z">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">daswetter.0.NextDays.Location_1.Day_3.Maximale_Temperatur_value</field>
                                                        </block>
                                                      </value>
                                                      <value name="ADD3">
                                                        <block type="text" id="c?yE|X8n#T6tDSX|4LXs">
                                                          <field name="TEXT">°</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="on_ext" id="8g-#XIB(N9jv$hC[Yw=;">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                  <field name="CONDITION">ne</field>
                                                  <field name="ACK_CONDITION"></field>
                                                  <value name="OID0">
                                                    <shadow type="field_oid">
                                                      <field name="oid">default</field>
                                                    </shadow>
                                                    <block type="field_oid" id="g%Z]q]{a:[H4gr^.ix=U">
                                                      <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                                    </block>
                                                  </value>
                                                  <value name="OID1">
                                                    <shadow type="field_oid">
                                                      <field name="oid">default</field>
                                                    </shadow>
                                                    <block type="field_oid" id="B3m)BKz[=lYLR715*6V2">
                                                      <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                                    </block>
                                                  </value>
                                                  <statement name="STATEMENT">
                                                    <block type="update" id="N7cXvS8dhb?Y*=W6sn0E">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                      <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d4</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE">
                                                        <block type="text_join" id="fJhfgM{e-CF~cCwcQk00">
                                                          <mutation items="4"></mutation>
                                                          <value name="ADD0">
                                                            <block type="get_value" id="Vu=8[w!{JR*sNdQ/m6P+">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Minimale_Temperatur_value</field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD1">
                                                            <block type="text" id="$j24q%$+J#3*I/$~ZyE^">
                                                              <field name="TEXT">° </field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD2">
                                                            <block type="get_value" id="|6s^?i.d!V2u@+PWt{O/">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">daswetter.0.NextDays.Location_1.Day_4.Maximale_Temperatur_value</field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD3">
                                                            <block type="text" id="/:mxs+P1Nq-i24[pn(5S">
                                                              <field name="TEXT">°</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                  <next>
                                                    <block type="on_ext" id="NZPjB4`YG$%O`FWT(sqi">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                                      <field name="CONDITION">ne</field>
                                                      <field name="ACK_CONDITION"></field>
                                                      <value name="OID0">
                                                        <shadow type="field_oid">
                                                          <field name="oid">default</field>
                                                        </shadow>
                                                        <block type="field_oid" id="sp+DT5@tY,7VSR3F,NN~">
                                                          <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                                        </block>
                                                      </value>
                                                      <value name="OID1">
                                                        <shadow type="field_oid">
                                                          <field name="oid">default</field>
                                                        </shadow>
                                                        <block type="field_oid" id="~g:Q]oXI2|SQuWew7L8k">
                                                          <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                                        </block>
                                                      </value>
                                                      <statement name="STATEMENT">
                                                        <block type="update" id=":GwX/U.w%qZDXK#dqb4=">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                          <field name="OID">0_userdata.0.NSPanel.O.Wetter.Forecast.Temp_d5</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="text_join" id="T4@e*m+DGlTihrI]wu5X">
                                                              <mutation items="4"></mutation>
                                                              <value name="ADD0">
                                                                <block type="get_value" id="q[K(SS~4%a0i8qaJAZA1">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Minimale_Temperatur_value</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD1">
                                                                <block type="text" id="-YkhgoP|tsv%%[W=jE-d">
                                                                  <field name="TEXT">° </field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD2">
                                                                <block type="get_value" id="0Q!Efuo@4F-4~SnYYUTW">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">daswetter.0.NextDays.Location_1.Day_5.Maximale_Temperatur_value</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD3">
                                                                <block type="text" id="Yd9Ie]0i9rn9NfbyV?Hl">
                                                                  <field name="TEXT">°</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="direct" id="KzblwI)x?RW`H-5yV73A">
                                                          <field name="ONLY_CHANGES">TRUE</field>
                                                          <value name="OID_SRC">
                                                            <shadow type="field_oid" id="bN4X7{`q2d@NG0{SIQ]S">
                                                              <field name="oid">daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id</field>
                                                            </shadow>
                                                          </value>
                                                          <value name="OID_DST">
                                                            <shadow type="field_oid" id="sZGMk$?^.s8^3H-%LqLK">
                                                              <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d1</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="direct" id="8Q1l.suz9WwoTLDktvd[">
                                                              <field name="ONLY_CHANGES">TRUE</field>
                                                              <value name="OID_SRC">
                                                                <shadow type="field_oid" id="M|rrkRs(ou6Z?BiOg}JX">
                                                                  <field name="oid">daswetter.0.NextDays.Location_1.Day_2.Wetter_Symbol_id</field>
                                                                </shadow>
                                                              </value>
                                                              <value name="OID_DST">
                                                                <shadow type="field_oid" id="@o%#41lIto[u3Akk}MX}">
                                                                  <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d2</field>
                                                                </shadow>
                                                              </value>
                                                              <next>
                                                                <block type="direct" id="OoG#WhvB91K%9WJ|1{W=">
                                                                  <field name="ONLY_CHANGES">TRUE</field>
                                                                  <value name="OID_SRC">
                                                                    <shadow type="field_oid" id="eO/5Ld74N^t[N8=]8xZ]">
                                                                      <field name="oid">daswetter.0.NextDays.Location_1.Day_3.Wetter_Symbol_id</field>
                                                                    </shadow>
                                                                  </value>
                                                                  <value name="OID_DST">
                                                                    <shadow type="field_oid" id="(C4LPXIL:Q]l?:pa5Qvi">
                                                                      <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d3</field>
                                                                    </shadow>
                                                                  </value>
                                                                  <next>
                                                                    <block type="direct" id="}B3%_j_I0sqiA5$1=%][">
                                                                      <field name="ONLY_CHANGES">TRUE</field>
                                                                      <value name="OID_SRC">
                                                                        <shadow type="field_oid" id="a8Flm@;PvUlP8j444m}t">
                                                                          <field name="oid">daswetter.0.NextDays.Location_1.Day_4.Wetter_Symbol_id</field>
                                                                        </shadow>
                                                                      </value>
                                                                      <value name="OID_DST">
                                                                        <shadow type="field_oid" id="Gq-SCr;8?OC^Q{l*nEXD">
                                                                          <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d4</field>
                                                                        </shadow>
                                                                      </value>
                                                                      <next>
                                                                        <block type="direct" id="]-ejTmSb]UnE-DVzn;]J">
                                                                          <field name="ONLY_CHANGES">TRUE</field>
                                                                          <value name="OID_SRC">
                                                                            <shadow type="field_oid" id=".03|%d/1f2ae6^5y:.Ap">
                                                                              <field name="oid">daswetter.0.NextDays.Location_1.Day_5.Wetter_Symbol_id</field>
                                                                            </shadow>
                                                                          </value>
                                                                          <value name="OID_DST">
                                                                            <shadow type="field_oid" id="X,n)52(ou^RCo10Ixp%C">
                                                                              <field name="oid">0_userdata.0.NSPanel.O.Wetter.Forecast.WeatherIcon_d5</field>
                                                                            </shadow>
                                                                          </value>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </xml>
              

              Angepasster ts

                          if (weatherForecast) {
                              // AccuWeather Forecast Tag 2 - Tag 5 -- Wenn weatherForecast = true
                              for (let i = 2; i < 6; i++) {
                                  let TempMax = getState('0_userdata.0.NSPanel.G.Wetter.Summary.TempMax_d' + i).val;
                                  let DayOfWeek = getState('0_userdata.0.NSPanel.G.Wetter.Summary.DayOfWeek_d' + i).val;
                                  let WeatherIcon = GetAccuWeatherIcon(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                                  vwIconColor[i-1] = GetAccuWeatherIconColor(getState('0_userdata.0.NSPanel.G.Wetter.Summary.WeatherIcon_d' + i).val);
                                  if (Debug) {
                                      console.log(vwIconColor[i - 1]);
                                  }
                                  payloadString += DayOfWeek + '~' + Icons.GetIcon(WeatherIcon) + '~' + TempMax +  '~';
                              }
              

              und die daswetter Icons

              function GetAccuWeatherIcon(icon: number): string {
                  try {
                      switch (icon) {
              		    case 1:         // Sonnig
                               return 'weather-sunny';  // sunny
              
              			case 2:         // Teils bewölkt
                          case 3:         // Bewölkt
                              return 'weather-partly-cloudy';  // partlycloudy
              				
                          case 4:         // Bedeckt
                              return 'weather-cloudy';  // cloudy
              				
                          case 5:        // Teils bewölkt mit leichtem Regen
                          case 6:        // Bewölkt mit leichtem Regen
                          case 8:        // Teils bewölkt mit mäßigem Regen
                          case 9:        // Bewölkt mit mäßigem Regen
                              return 'weather-partly-rainy';  // partly-rainy
              				
                          case 7:        // Bedeckt mit leichtem Regen
                              return 'weather-rainy';  // rainy
              				
              		    case 10:        // Bedeckt mit mäßigem Regen
                              return 'weather-pouring';  // pouring
              				
                          case 11:        // Teils bewölkt mit starken Regenschauern
                          case 12:        // Bewölkt mit stürmischen Regenschauern
                              return 'weather-partly-lightning';  // partlylightning
              				
                          case 13:        // Bedeckt mit stürmischen Regenschauern
                              return 'weather-lightning';  // lightning
              				
                          case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
              			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
              			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                              return 'weather-hail';  // Hail
              
                          case 17:        // Teils bewölkt mit Schnee
                          case 18:        // Bewölkt mit Schnee
                              return 'weather-partly-snowy';  // partlysnowy
              				
              			case 19:        // Bedeckt mit Schneeschauern
                              return 'weather-snowy';  // snowy
              
                          case 20:        // Teils bewölkt mit Schneeregen
                          case 21:        // Bewölkt mit Schneeregen
                              return 'weather-partly-snowy-rainy';
              
                          case 22:        // Bedeckt mit Schneeregen
                              return 'weather-snowy-rainy';  // snowy-rainy
              
                          default:
                              return 'alert-circle-outline';
                      }
                  } catch (err) {
                      console.warn('GetAccuWeatherIcon: '+ err.message);
                  }
              }
              
              function GetAccuWeatherIconColor(icon: number): number {
                  try{
                      switch (icon) {
                          case 1:         // Sonnig
                              return rgb_dec565(swSunny);
              
                          case 2:         // Teils bewölkt
                          case 3:         // Bewölkt
                              return rgb_dec565(swPartlycloudy);
              
                          case 4:         // Bedeckt
                              return rgb_dec565(swCloudy);
              
                          case 5:        // Teils bewölkt mit leichtem Regen
                          case 6:        // Bewölkt mit leichtem Regen
                          case 8:        // Teils bewölkt mit mäßigem Regen
                          case 9:        // Bewölkt mit mäßigem Regen
                              return rgb_dec565(swRainy);
              
                          case 7:        // Bedeckt mit leichtem Regen
                              return rgb_dec565(swRainy);
              
                          case 10:        // Bedeckt mit mäßigem Regen
                              return rgb_dec565(swPouring);
              
                          case 11:        // Teils bewölkt mit starken Regenschauern
                          case 12:        // Bewölkt mit stürmischen Regenschauern
                              return rgb_dec565(swLightningRainy);
              
                          case 13:        // Bedeckt mit stürmischen Regenschauern
                              return rgb_dec565(swLightning);
              
                          case 14:        // Teils bewölkt mit stürmischen Regenschauern und Hagel
              			case 15:        // Bewölkt mit stürmischen Regenschauern und Hagel
              			case 16:        // Bedeckt mit stürmischen Regenschauern und Hagel
                              return rgb_dec565(swHail);
              
                          case 17:        // Teils bewölkt mit Schnee
                          case 18:        // Bewölkt mit Schnee
                              return rgb_dec565(swSnowy);
              
                          case 19:        // Bedeckt mit Schneeschauern
                              return rgb_dec565(swSnowy);
              
                          case 20:        // Teils bewölkt mit Schneeregen
                          case 21:        // Bewölkt mit Schneeregen
                              return rgb_dec565(swSnowyRainy);  // snowy-rainy
              
                          case 22:        // Bedeckt mit Schneeregen
                              return rgb_dec565(swSnowyRainy);
              
                          default:
                              return rgb_dec565(White);
                      }
                  } catch (err) {
                      console.warn('GetAccuWeatherIconColor: '+ err.message);
                  }
              }
              
              Mit den Farben bin ich mir nicht sicher :grin: 
              
              ArmilarA Offline
              ArmilarA Offline
              Armilar
              Most Active Forum Testing
              schrieb am zuletzt editiert von Armilar
              #1215

              @vumer sagte in SONOFF NSPanel mit Lovelace UI:

              Ich weiß nicht ob du das so übernehmen kannst

              So habe den "Das Wetter"-Adapter als Alternative zum "AccuWeather" dann noch kurzerhand eingebaut. Falls jemand Interesse hat, kann ich noch eine 3.6.0.5 auskoppeln. Dann bitte kurz bescheid sagen.

              Greift dann auf die Icon-Übersetzungen (Symbole/Symbolfarben) von @Vumer zu. Ebenfalls werden dann Temperaturen (Min/Max) vom "Das Wetter"-Adapter genommen.

              Zusätzliches Blockly ist daher nicht erforderlich...

              Auch der AutoAlias für das Wetter unterscheidet somit den gewählten Adapter.

              Kleine Info.
              Der Adapter "Das Wetter" hat offensichtlich eine multilinguale Übertragung der Datenpunkte, was per sé nicht sonderlich clever gelöst ist. In anderen Sprachen (neben deutsch) ist dann evtl. eine Übersetzung der Datenpunkte erforderlich...

              EDIT:
              @Vumer: Bislang sehen die Farben ganz okay aus... Ich lasse den auch aktuell mitlaufen...

              Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
              https://github.com/joBr99/nspanel-lovelace-ui/wiki

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              G 1 Antwort Letzte Antwort
              1
              • ArmilarA Armilar

                @coto

                Wie sehen denn die Datenpunkte vom HM-CC-RT-DN aus? Und ein kleiner Blick auf die möglichen Werte für Modi...

                C Offline
                C Offline
                coto
                schrieb am zuletzt editiert von
                #1216

                @armilar

                Hi, hier fehlt mir irgendwie noch der Bezug dazu, wie die Datenpunkte Einfluss auf das Thermostat haben.
                'Mode wird über externe Datenpunkte gesteuert. Hierzu legst du dir unter 0_userdate.0. einen Ordner deiner Wahl an. In diesem Ordner können jetzt bis zu 5 Datenpunkte (Alle vom Typ boolean (true/false)) angelegt werden:"

                Der Control_Mode ist nur lesbar.

                {
                  "type": "state",
                  "common": {
                    "name": "HZ Wohnzimmer:4.CONTROL_MODE",
                    "type": "number",
                    "role": "indicator",
                    "def": 0,
                    "min": 0,
                    "max": 3,
                    "read": true,
                    "write": false,
                    "states": {
                      "0": "AUTO-MODE",
                      "1": "MANU-MODE",
                      "2": "PARTY-MODE",
                      "3": "BOOST-MODE"
                    },
                    "smartName": {
                      "de": "Hm cc rt dn oeq0667828:4 control mode"
                    }
                  },
                  "native": {
                    "CONTROL": "HEATING_CONTROL.CONTROL_MODE",
                    "ID": "CONTROL_MODE",
                    "TYPE": "ENUM",
                    "UNIT": "",
                    "DEFAULT": 0,
                    "FLAGS": 1,
                    "MAX": 3,
                    "MIN": 0,
                    "OPERATIONS": 5,
                    "TAB_ORDER": 0,
                    "VALUE_LIST": [
                      "AUTO-MODE",
                      "MANU-MODE",
                      "PARTY-MODE",
                      "BOOST-MODE"
                    ]
                  },
                  "_id": "hm-rpc.0.OEQ0667828.4.CONTROL_MODE",
                  "acl": {
                    "object": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator",
                    "state": 1636
                  },
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1669474641018
                }
                

                d94e9b23-4327-45ff-9e5f-6cdfa1a93ee8-image.png

                Eine weitere Frage, die Subpages von ServicePage "NSPanel Service" sind bei mir leer. Muss da auch was Manuel angelegt werden?
                "Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)"

                ArmilarA 1 Antwort Letzte Antwort
                0
                • C coto

                  @armilar

                  Hi, hier fehlt mir irgendwie noch der Bezug dazu, wie die Datenpunkte Einfluss auf das Thermostat haben.
                  'Mode wird über externe Datenpunkte gesteuert. Hierzu legst du dir unter 0_userdate.0. einen Ordner deiner Wahl an. In diesem Ordner können jetzt bis zu 5 Datenpunkte (Alle vom Typ boolean (true/false)) angelegt werden:"

                  Der Control_Mode ist nur lesbar.

                  {
                    "type": "state",
                    "common": {
                      "name": "HZ Wohnzimmer:4.CONTROL_MODE",
                      "type": "number",
                      "role": "indicator",
                      "def": 0,
                      "min": 0,
                      "max": 3,
                      "read": true,
                      "write": false,
                      "states": {
                        "0": "AUTO-MODE",
                        "1": "MANU-MODE",
                        "2": "PARTY-MODE",
                        "3": "BOOST-MODE"
                      },
                      "smartName": {
                        "de": "Hm cc rt dn oeq0667828:4 control mode"
                      }
                    },
                    "native": {
                      "CONTROL": "HEATING_CONTROL.CONTROL_MODE",
                      "ID": "CONTROL_MODE",
                      "TYPE": "ENUM",
                      "UNIT": "",
                      "DEFAULT": 0,
                      "FLAGS": 1,
                      "MAX": 3,
                      "MIN": 0,
                      "OPERATIONS": 5,
                      "TAB_ORDER": 0,
                      "VALUE_LIST": [
                        "AUTO-MODE",
                        "MANU-MODE",
                        "PARTY-MODE",
                        "BOOST-MODE"
                      ]
                    },
                    "_id": "hm-rpc.0.OEQ0667828.4.CONTROL_MODE",
                    "acl": {
                      "object": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator",
                      "state": 1636
                    },
                    "from": "system.adapter.admin.0",
                    "user": "system.user.admin",
                    "ts": 1669474641018
                  }
                  

                  d94e9b23-4327-45ff-9e5f-6cdfa1a93ee8-image.png

                  Eine weitere Frage, die Subpages von ServicePage "NSPanel Service" sind bei mir leer. Muss da auch was Manuel angelegt werden?
                  "Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)"

                  ArmilarA Offline
                  ArmilarA Offline
                  Armilar
                  Most Active Forum Testing
                  schrieb am zuletzt editiert von Armilar
                  #1217

                  @coto

                  Muss erstmal die Logik von den Dingern verstehen (Da ist jeder Adapter unterschiedlich):

                  AUTO_MODE true =AUTO=0
                  AUTO_MODE false=MANU=1
                  BOOST_MODE true=BOOST=3

                  Wie wird denn der Party Modus aktiviert? Wird der benötigt?

                  SET_TEMPERATUR = Setpoint = SET
                  BATTERY_STATE (in V) benötigt für LOWBAT eine Übersetzung (z.B. < 2.5V = LOWBAT true)
                  FAULT_REPORTING > 0 = Fehler / = 0 = kein Fehler

                  ACTUAL = aktuelle Raumtemperatur entweder vom Panels-sensor oder externer Sensor

                  Soll sonst noch etwas abgebildet werden?


                  Zur 2. Frage:
                  Welche Subpages sind denn in der Config unter Subpages eingetragen?

                  f9cf1ac6-590b-4150-82d7-53a4086760b6-image.png

                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  C 1 Antwort Letzte Antwort
                  0
                  • ArmilarA Armilar

                    @coto

                    Muss erstmal die Logik von den Dingern verstehen (Da ist jeder Adapter unterschiedlich):

                    AUTO_MODE true =AUTO=0
                    AUTO_MODE false=MANU=1
                    BOOST_MODE true=BOOST=3

                    Wie wird denn der Party Modus aktiviert? Wird der benötigt?

                    SET_TEMPERATUR = Setpoint = SET
                    BATTERY_STATE (in V) benötigt für LOWBAT eine Übersetzung (z.B. < 2.5V = LOWBAT true)
                    FAULT_REPORTING > 0 = Fehler / = 0 = kein Fehler

                    ACTUAL = aktuelle Raumtemperatur entweder vom Panels-sensor oder externer Sensor

                    Soll sonst noch etwas abgebildet werden?


                    Zur 2. Frage:
                    Welche Subpages sind denn in der Config unter Subpages eingetragen?

                    f9cf1ac6-590b-4150-82d7-53a4086760b6-image.png

                    C Offline
                    C Offline
                    coto
                    schrieb am zuletzt editiert von
                    #1218

                    @armilar

                    Vielleicht brauch ich auch mal neue Thermostate. Welche hast du den getestet die auch funktionieren mit den Datenpunkten.

                    AUTO_MODE true =AUTO=0
                    AUTO_MODE false= keine Auswirkung
                    BOOST_MODE true=BOOST=3

                    MANU_MODE - ändern der Temperatur in diesem Datenpunkt = MANU=1 und SET_TEMPERATUR bekommt Wert von MANU_MODE

                    alles noch Original.

                    /********************************************************************************************************** */
                    //Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)
                    /********************************************************************************************************** */
                    
                    let Service: PageEntities =
                    {
                        "type": "cardEntities",
                        "heading": "NSPanel Service",
                        "useColor": true,
                        "subPage": false,
                        "parent": undefined, 
                        "items": [
                            <PageItem>{ id: AliasPath + 'autoUpdate', name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                            <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                            <PageItem>{ navigate: true, id: "NSPanel_Firmware_Info", icon: "update", onColor: White, name: "Firmware Infos"},
                            <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Screensaver"}
                        ]
                    };
                    
                            //Subpage 1 von Subpages_2
                            let NSPanel_Infos: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "NSPanel Infos",
                                "useColor": true,
                                "subPage": true,
                                "parent": Service,
                                "items": [
                                    <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: 'Hardware', icon: 'memory', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                                ]
                            };
                    
                            //Subpage 2 von Subpages_2
                            let NSPanel_Einstellungen: PageEntities =
                            {
                                'type': 'cardEntities',
                                'heading': 'Screensaver',
                                'useColor': true,
                                'subPage': true,
                                'parent': Service,
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: 'Brightness Tag', icon: 'brightness-5', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                                    <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: 'Brightness Nacht', icon: 'brightness-4', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                                    <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: 'Stunde Tag', icon: 'sun-clock', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                                    <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: 'Stunde Nacht', icon: 'sun-clock-outline', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                                ]
                            };
                    
                            //Subpage 3 von Subpages_2
                            let NSPanel_Firmware_Info: PageEntities =
                            {
                                'type': 'cardEntities',
                                'heading': 'Firmware-Updates',
                                'useColor': true,
                                'subPage': true,
                                'parent': Service,
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Tasmota.Version', name: 'Tasmota Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Display.TFTVersion', name: 'TFT-Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: 'Berry-Treiber', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                    <PageItem>{ id: AliasPath + 'Display.Model', name: 'NSPanel Version', offColor: MSYellow, onColor: MSYellow, useColor: true}
                                ]
                            };
                    
                    
                    ArmilarA 2 Antworten Letzte Antwort
                    0
                    • C coto

                      @armilar

                      Vielleicht brauch ich auch mal neue Thermostate. Welche hast du den getestet die auch funktionieren mit den Datenpunkten.

                      AUTO_MODE true =AUTO=0
                      AUTO_MODE false= keine Auswirkung
                      BOOST_MODE true=BOOST=3

                      MANU_MODE - ändern der Temperatur in diesem Datenpunkt = MANU=1 und SET_TEMPERATUR bekommt Wert von MANU_MODE

                      alles noch Original.

                      /********************************************************************************************************** */
                      //Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)
                      /********************************************************************************************************** */
                      
                      let Service: PageEntities =
                      {
                          "type": "cardEntities",
                          "heading": "NSPanel Service",
                          "useColor": true,
                          "subPage": false,
                          "parent": undefined, 
                          "items": [
                              <PageItem>{ id: AliasPath + 'autoUpdate', name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                              <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                              <PageItem>{ navigate: true, id: "NSPanel_Firmware_Info", icon: "update", onColor: White, name: "Firmware Infos"},
                              <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Screensaver"}
                          ]
                      };
                      
                              //Subpage 1 von Subpages_2
                              let NSPanel_Infos: PageEntities =
                              {
                                  "type": "cardEntities",
                                  "heading": "NSPanel Infos",
                                  "useColor": true,
                                  "subPage": true,
                                  "parent": Service,
                                  "items": [
                                      <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: 'Hardware', icon: 'memory', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                                  ]
                              };
                      
                              //Subpage 2 von Subpages_2
                              let NSPanel_Einstellungen: PageEntities =
                              {
                                  'type': 'cardEntities',
                                  'heading': 'Screensaver',
                                  'useColor': true,
                                  'subPage': true,
                                  'parent': Service,
                                  'items': [
                                      <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: 'Brightness Tag', icon: 'brightness-5', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                                      <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: 'Brightness Nacht', icon: 'brightness-4', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                                      <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: 'Stunde Tag', icon: 'sun-clock', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                                      <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: 'Stunde Nacht', icon: 'sun-clock-outline', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                                  ]
                              };
                      
                              //Subpage 3 von Subpages_2
                              let NSPanel_Firmware_Info: PageEntities =
                              {
                                  'type': 'cardEntities',
                                  'heading': 'Firmware-Updates',
                                  'useColor': true,
                                  'subPage': true,
                                  'parent': Service,
                                  'items': [
                                      <PageItem>{ id: AliasPath + 'Tasmota.Version', name: 'Tasmota Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Display.TFTVersion', name: 'TFT-Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: 'Berry-Treiber', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                      <PageItem>{ id: AliasPath + 'Display.Model', name: 'NSPanel Version', offColor: MSYellow, onColor: MSYellow, useColor: true}
                                  ]
                              };
                      
                      
                      ArmilarA Offline
                      ArmilarA Offline
                      Armilar
                      Most Active Forum Testing
                      schrieb am zuletzt editiert von
                      #1219

                      @coto

                      Zu Frage 1)
                      Es können eigentlich alle Thermostate eingebunden werden. Daher auch folgend die 0_userdata Datenpunkte, die als Übersetzung dienen. Ohne Blockly oder JS wird es nicht gehen.

                      Ich habe die HMIP Thermostate, virtualisiere die aber ebenfalls über eigene Datenpunkte.

                      So jetzt wird es klarer MANU = Veränderung der Setpoint-Temperatur, dann AUTO=false

                      Ich überlege mir mal kurz etwas für eine Blockly-Logik


                      Zu Frage 2)
                      Die Seiten müssen in der Config eingetragen sein. Sind die drin unter Subpages?

                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      1 Antwort Letzte Antwort
                      0
                      • C coto

                        @armilar

                        Vielleicht brauch ich auch mal neue Thermostate. Welche hast du den getestet die auch funktionieren mit den Datenpunkten.

                        AUTO_MODE true =AUTO=0
                        AUTO_MODE false= keine Auswirkung
                        BOOST_MODE true=BOOST=3

                        MANU_MODE - ändern der Temperatur in diesem Datenpunkt = MANU=1 und SET_TEMPERATUR bekommt Wert von MANU_MODE

                        alles noch Original.

                        /********************************************************************************************************** */
                        //Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)
                        /********************************************************************************************************** */
                        
                        let Service: PageEntities =
                        {
                            "type": "cardEntities",
                            "heading": "NSPanel Service",
                            "useColor": true,
                            "subPage": false,
                            "parent": undefined, 
                            "items": [
                                <PageItem>{ id: AliasPath + 'autoUpdate', name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                                <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                                <PageItem>{ navigate: true, id: "NSPanel_Firmware_Info", icon: "update", onColor: White, name: "Firmware Infos"},
                                <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Screensaver"}
                            ]
                        };
                        
                                //Subpage 1 von Subpages_2
                                let NSPanel_Infos: PageEntities =
                                {
                                    "type": "cardEntities",
                                    "heading": "NSPanel Infos",
                                    "useColor": true,
                                    "subPage": true,
                                    "parent": Service,
                                    "items": [
                                        <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: 'Hardware', icon: 'memory', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                                    ]
                                };
                        
                                //Subpage 2 von Subpages_2
                                let NSPanel_Einstellungen: PageEntities =
                                {
                                    'type': 'cardEntities',
                                    'heading': 'Screensaver',
                                    'useColor': true,
                                    'subPage': true,
                                    'parent': Service,
                                    'items': [
                                        <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: 'Brightness Tag', icon: 'brightness-5', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                                        <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: 'Brightness Nacht', icon: 'brightness-4', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                                        <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: 'Stunde Tag', icon: 'sun-clock', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                                        <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: 'Stunde Nacht', icon: 'sun-clock-outline', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                                    ]
                                };
                        
                                //Subpage 3 von Subpages_2
                                let NSPanel_Firmware_Info: PageEntities =
                                {
                                    'type': 'cardEntities',
                                    'heading': 'Firmware-Updates',
                                    'useColor': true,
                                    'subPage': true,
                                    'parent': Service,
                                    'items': [
                                        <PageItem>{ id: AliasPath + 'Tasmota.Version', name: 'Tasmota Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Display.TFTVersion', name: 'TFT-Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: 'Berry-Treiber', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                        <PageItem>{ id: AliasPath + 'Display.Model', name: 'NSPanel Version', offColor: MSYellow, onColor: MSYellow, useColor: true}
                                    ]
                                };
                        
                        
                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von Armilar
                        #1220

                        @coto

                        So im Spoiler ist ein Blockly. Hoffe ich habe da alles korrekt geschrieben

                        <xml xmlns="https://developers.google.com/blockly/xml">
                          <variables>
                            <variable id="%/xR(^)g5^9E^=:iOg`*">userdataPath</variable>
                          </variables>
                          <block type="variables_set" id="X-j`W}}BF!)o-3+*efc-" x="-138" y="-462">
                            <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                            <value name="VALUE">
                              <block type="text" id="27EXAifV@j[WLi|X89v}">
                                <field name="TEXT">0_userdata.0.Homatic.Thermostate.OEQ0667828.4.</field>
                              </block>
                            </value>
                            <next>
                              <block type="comment" id=",uvQcLX`j6C.AA75DrZW">
                                <field name="COMMENT">Am NSPanel wird auf Auto geschaltet </field>
                                <next>
                                  <block type="on_ext" id="j{K~|bW6;I@lofgT4vd$">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                    <field name="CONDITION">ne</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid" id="UL3m@7$weS]7=yq(I?P0">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="text_join" id="Gys1,yJgxvc6*zDXIGVA">
                                        <mutation items="2"></mutation>
                                        <value name="ADD0">
                                          <block type="variables_get" id="[8diiUW8Ym4)4=KQ$s=H">
                                            <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                          </block>
                                        </value>
                                        <value name="ADD1">
                                          <block type="text" id="[)sRA~!%$1n=Fz#{QE:O">
                                            <field name="TEXT">Automatic</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="control_ex" id="rHON.R*}k%w0VO)Q@U5," inline="true">
                                        <field name="TYPE">false</field>
                                        <field name="CLEAR_RUNNING">FALSE</field>
                                        <value name="OID">
                                          <shadow type="field_oid" id="-2GGVvyn8C)-7s]y!iFC">
                                            <field name="oid">Object ID</field>
                                          </shadow>
                                          <block type="text" id="5+BLW_qM@Lr+~7M[@#L-">
                                            <field name="TEXT">hm-rpc.0.OEQ0667828.4.AUTO_MODE</field>
                                          </block>
                                        </value>
                                        <value name="VALUE">
                                          <shadow type="logic_boolean" id="`naj-n,uyc0.)vdOJ$rH">
                                            <field name="BOOL">TRUE</field>
                                          </shadow>
                                          <block type="logic_boolean" id="9jTx$$DZvix^u]0-#_C(">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                        <value name="DELAY_MS">
                                          <shadow type="math_number" id="CU}e7)/uBktOHiK/i^}r">
                                            <field name="NUM">0</field>
                                          </shadow>
                                        </value>
                                        <next>
                                          <block type="control_ex" id="A=8psqHjhHW$);in.k0O" inline="true">
                                            <field name="TYPE">false</field>
                                            <field name="CLEAR_RUNNING">FALSE</field>
                                            <value name="OID">
                                              <shadow type="field_oid">
                                                <field name="oid">Object ID</field>
                                              </shadow>
                                              <block type="text_join" id="LmoSZw/CjrQed[4-l=bN">
                                                <mutation items="2"></mutation>
                                                <value name="ADD0">
                                                  <block type="variables_get" id="f]x+|[f!W}GNzf0KVu}f">
                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                  </block>
                                                </value>
                                                <value name="ADD1">
                                                  <block type="text" id="GzG^:cECXD^-jPam+|Cm">
                                                    <field name="TEXT">Manual</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <value name="VALUE">
                                              <shadow type="logic_boolean">
                                                <field name="BOOL">TRUE</field>
                                              </shadow>
                                              <block type="logic_boolean" id="eKG~%BD/0r3!hGgZ?4H/">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <value name="DELAY_MS">
                                              <shadow type="math_number" id="/xUS7X!_0tHjQ/lYYlj9">
                                                <field name="NUM">0</field>
                                              </shadow>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="comment" id=".^0uHrUM+21EPMnW@/Aa">
                                        <field name="COMMENT">Am NSPanel wird auf Temperatur geändert</field>
                                        <next>
                                          <block type="on_ext" id="rnf$MuxnU`senfY-F8SM">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <value name="OID0">
                                              <shadow type="field_oid" id="rJx5Vxq(4|Y~.;2F6D!)">
                                                <field name="oid">default</field>
                                              </shadow>
                                              <block type="text_join" id="Ec_?0i@=m]@]L5gEjOi?">
                                                <mutation items="2"></mutation>
                                                <value name="ADD0">
                                                  <block type="variables_get" id=".LVxszhxY,x/Y[ht(2Dk">
                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                  </block>
                                                </value>
                                                <value name="ADD1">
                                                  <block type="text" id="qIz$pgvJ|fZU}eKV%H@;">
                                                    <field name="TEXT">Setpoint</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="STATEMENT">
                                              <block type="control_ex" id="VAa5[r[!O|XD?h2zs4.L" inline="true">
                                                <field name="TYPE">false</field>
                                                <field name="CLEAR_RUNNING">FALSE</field>
                                                <value name="OID">
                                                  <shadow type="field_oid" id="vteW+w!_2:C,eGV!!1De">
                                                    <field name="oid">Object ID</field>
                                                  </shadow>
                                                  <block type="text_join" id="P:53ISJM8Wt12`LLp5C?">
                                                    <mutation items="2"></mutation>
                                                    <value name="ADD0">
                                                      <block type="variables_get" id="^8EdIaZlvDJ`Z:PxenQJ">
                                                        <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="text" id="rpq:atBJz,=pL/Tpfk?j">
                                                        <field name="TEXT">Manual</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <value name="VALUE">
                                                  <shadow type="logic_boolean">
                                                    <field name="BOOL">TRUE</field>
                                                  </shadow>
                                                  <block type="logic_boolean" id="l1zqaM6/jSPS#ZF2YQT]">
                                                    <field name="BOOL">TRUE</field>
                                                  </block>
                                                </value>
                                                <value name="DELAY_MS">
                                                  <shadow type="math_number" id="gzX:oq*R46?@J;sEN^Y{">
                                                    <field name="NUM">0</field>
                                                  </shadow>
                                                </value>
                                                <next>
                                                  <block type="control_ex" id="a!%A#%_448?cbF0#E20I" inline="true">
                                                    <field name="TYPE">false</field>
                                                    <field name="CLEAR_RUNNING">FALSE</field>
                                                    <value name="OID">
                                                      <shadow type="field_oid">
                                                        <field name="oid">Object ID</field>
                                                      </shadow>
                                                      <block type="text_join" id="Z=X7ZS=5{oFLhPFl$6J*">
                                                        <mutation items="2"></mutation>
                                                        <value name="ADD0">
                                                          <block type="variables_get" id="LNZ/Yu]eOv*pYj!.D^Hp">
                                                            <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                          </block>
                                                        </value>
                                                        <value name="ADD1">
                                                          <block type="text" id="f(?W0s5a%=`*e.bl+U;j">
                                                            <field name="TEXT">Automatic</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <value name="VALUE">
                                                      <shadow type="logic_boolean">
                                                        <field name="BOOL">TRUE</field>
                                                      </shadow>
                                                      <block type="logic_boolean" id="C;jj4,F7s4Dh0_q^GJ(p">
                                                        <field name="BOOL">FALSE</field>
                                                      </block>
                                                    </value>
                                                    <value name="DELAY_MS">
                                                      <shadow type="math_number" id="cY5}Nl-3}~q8av0Z,^:%">
                                                        <field name="NUM">0</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="control_ex" id="vOC7f,;-wN|E6q66A#y5" inline="true">
                                                        <field name="TYPE">false</field>
                                                        <field name="CLEAR_RUNNING">FALSE</field>
                                                        <value name="OID">
                                                          <shadow type="field_oid" id="33Vhu-2{oMtX)_7C5xNJ">
                                                            <field name="oid">Object ID</field>
                                                          </shadow>
                                                          <block type="text" id="cwRLYaGfnesiWV4ME~02">
                                                            <field name="TEXT">hm-rpc.0.OEQ0667828.4.SET_TEMPERATUR</field>
                                                          </block>
                                                        </value>
                                                        <value name="VALUE">
                                                          <shadow type="logic_boolean" id="R6~2VB4nRpE-=epf^!.2">
                                                            <field name="BOOL">TRUE</field>
                                                          </shadow>
                                                          <block type="on_source" id="{iIWE58cs91`J:+%zsHP">
                                                            <field name="ATTR">state.val</field>
                                                          </block>
                                                        </value>
                                                        <value name="DELAY_MS">
                                                          <shadow type="math_number" id="IX574hj%MQ)uiFy(QXfC">
                                                            <field name="NUM">0</field>
                                                          </shadow>
                                                        </value>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="comment" id="~k%4o/5,IR_W}Vo9z5E5">
                                                <field name="COMMENT">Am NSPanel wird auf Boost geschaltet</field>
                                                <next>
                                                  <block type="on_ext" id="$[COE^lL{IylevSK@r$N">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                    <field name="CONDITION">ne</field>
                                                    <field name="ACK_CONDITION"></field>
                                                    <value name="OID0">
                                                      <shadow type="field_oid">
                                                        <field name="oid">default</field>
                                                      </shadow>
                                                      <block type="text_join" id="2E}4*|Pr_c6QxjZlXL#4">
                                                        <mutation items="2"></mutation>
                                                        <value name="ADD0">
                                                          <block type="variables_get" id="H{sw([OtBhyRLVy[WQ?@">
                                                            <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                          </block>
                                                        </value>
                                                        <value name="ADD1">
                                                          <block type="text" id="ae-^6mBM`wUFkV9]!SUJ">
                                                            <field name="TEXT">Boost</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="STATEMENT">
                                                      <block type="control_ex" id="t6(RKz=ul#7hL#Yd2xW?" inline="true">
                                                        <field name="TYPE">false</field>
                                                        <field name="CLEAR_RUNNING">FALSE</field>
                                                        <value name="OID">
                                                          <shadow type="field_oid">
                                                            <field name="oid">Object ID</field>
                                                          </shadow>
                                                          <block type="text" id="?Z[Yyrpj|OUCHpbA[r2b">
                                                            <field name="TEXT">hm-rpc.0.OEQ0667828.4.BOOST_MODE</field>
                                                          </block>
                                                        </value>
                                                        <value name="VALUE">
                                                          <shadow type="logic_boolean">
                                                            <field name="BOOL">TRUE</field>
                                                          </shadow>
                                                          <block type="logic_boolean" id="ILc-KKS#II*=$?-)1@5;">
                                                            <field name="BOOL">TRUE</field>
                                                          </block>
                                                        </value>
                                                        <value name="DELAY_MS">
                                                          <shadow type="math_number" id="b*rW5=g.eIn$UGCXpk{)">
                                                            <field name="NUM">0</field>
                                                          </shadow>
                                                        </value>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="comment" id="pq{0z}/,!fFo[r=xL?3^">
                                                        <field name="COMMENT">BATTERY_STATE im Adapter ändert sich</field>
                                                        <next>
                                                          <block type="on_ext" id="2!C]E4+ZovPwb#O![]o0">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                            <field name="CONDITION">ne</field>
                                                            <field name="ACK_CONDITION"></field>
                                                            <value name="OID0">
                                                              <shadow type="field_oid" id="v%SYL`)0SR7QG+O,}p:}">
                                                                <field name="oid">default</field>
                                                              </shadow>
                                                              <block type="text" id="@*2/Gs5Z=d`=xtxpdg9l">
                                                                <field name="TEXT">hm-rpc.0.OEQ0667828.4.BATTERY_STATE</field>
                                                              </block>
                                                            </value>
                                                            <statement name="STATEMENT">
                                                              <block type="comment" id="7aIa7fh7F8,20!qIV:aN">
                                                                <field name="COMMENT">Wert 2,5 ist ausgedacht.</field>
                                                                <next>
                                                                  <block type="comment" id="E{Eyaw120U8hRFMQTPP)">
                                                                    <field name="COMMENT">Keine Ahnung wann die Batterie wirklich leer ist</field>
                                                                    <next>
                                                                      <block type="controls_if" id="Bx%+dY))9YYdkklHAAqI">
                                                                        <mutation else="1"></mutation>
                                                                        <value name="IF0">
                                                                          <block type="logic_compare" id="THZ:h0AIFqeS8a4Q^/o^">
                                                                            <field name="OP">LT</field>
                                                                            <value name="A">
                                                                              <block type="on_source" id="duq;S)%o5XaWTSmW}n}y">
                                                                                <field name="ATTR">state.val</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="B">
                                                                              <block type="math_number" id="ie`:G}d9,(LC{q[i_J4h">
                                                                                <field name="NUM">2.5</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="DO0">
                                                                          <block type="control_ex" id="LClKu=C?jxEn~Ee]Wzc5" inline="true">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid" id="Nw]~t%7!gKT6i=E)Map8">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="text_join" id="Q!0.BP9.%/0bX%]!wNfV">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="Tz3eTQdyBs9l;(pW(]]8">
                                                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="VmE~0^%|++P{ynPp?AHc">
                                                                                    <field name="TEXT">Lowbat</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="logic_boolean" id="Y}ZJdf5QlTB0=@nDq(%;">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="a!J*o-:pD($Y=(^YE_{K">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                          </block>
                                                                        </statement>
                                                                        <statement name="ELSE">
                                                                          <block type="control_ex" id=":s;z=CrWiuSM}Cs,l3*z" inline="true">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="text_join" id="]c1m)N,]xKl.D]m+I9*w">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="4!qxcx`M[}GZ)~@7_a9Q">
                                                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="lYU+fpFo*l7D0xn;oqp^">
                                                                                    <field name="TEXT">Lowbat</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="logic_boolean" id="8RyZCBo`8%N/(/cJq@c@">
                                                                                <field name="BOOL">FALSE</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="U=O6uX|-`QW%X}YaBD5]">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                          </block>
                                                                        </statement>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                            <next>
                                                              <block type="comment" id="n`y@58sQ`+Ip[R!kBjk-">
                                                                <field name="COMMENT">FAULT_REPORTING im Adapter ändert sich</field>
                                                                <next>
                                                                  <block type="on_ext" id="f,5_N)xx_4E,RbWQiq-I">
                                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                                    <field name="CONDITION">ne</field>
                                                                    <field name="ACK_CONDITION"></field>
                                                                    <value name="OID0">
                                                                      <shadow type="field_oid">
                                                                        <field name="oid">default</field>
                                                                      </shadow>
                                                                      <block type="text" id="wO|:^@umOB:5.+=xrC:T">
                                                                        <field name="TEXT">hm-rpc.0.OEQ0667828.4.FAULT_REPORTING</field>
                                                                      </block>
                                                                    </value>
                                                                    <statement name="STATEMENT">
                                                                      <block type="controls_if" id="^Lti.NU)S9tV^JvxY#|V">
                                                                        <mutation else="1"></mutation>
                                                                        <value name="IF0">
                                                                          <block type="logic_compare" id="twb2_~HKNJLw*t~iei7*">
                                                                            <field name="OP">LT</field>
                                                                            <value name="A">
                                                                              <block type="on_source" id="q;QmlW4j0L@[8SiNG(}!">
                                                                                <field name="ATTR">state.val</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="B">
                                                                              <block type="math_number" id="P}F@tPT`pXxiD2`1ik,`">
                                                                                <field name="NUM">2.5</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <statement name="DO0">
                                                                          <block type="control_ex" id="lb15K]4z_=8NE6}RgxvS" inline="true">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="text_join" id="Yy}ZGz$j4Xx;mzJEgM/*">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="#/N|`jy=,]jS#IOHI=F;">
                                                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="TQ?,RMkzfr{;,2bsh[=H">
                                                                                    <field name="TEXT">Maintain</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="logic_boolean" id="l;aa[h.esax%Z[EZy-|`">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="hN}}Siq_!z-@{iHHt-Do">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                          </block>
                                                                        </statement>
                                                                        <statement name="ELSE">
                                                                          <block type="control_ex" id="8=!5C.CtxhZqLmN=dqOs" inline="true">
                                                                            <field name="TYPE">false</field>
                                                                            <field name="CLEAR_RUNNING">FALSE</field>
                                                                            <value name="OID">
                                                                              <shadow type="field_oid">
                                                                                <field name="oid">Object ID</field>
                                                                              </shadow>
                                                                              <block type="text_join" id="q~qtEzni;`24R0C%!2ck">
                                                                                <mutation items="2"></mutation>
                                                                                <value name="ADD0">
                                                                                  <block type="variables_get" id="$f.qJVIwYLj4nvyEMxAB">
                                                                                    <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="ADD1">
                                                                                  <block type="text" id="[WKkJ8E,SMv|]t_Su1:~">
                                                                                    <field name="TEXT">Maintain</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                            <value name="VALUE">
                                                                              <shadow type="logic_boolean">
                                                                                <field name="BOOL">TRUE</field>
                                                                              </shadow>
                                                                              <block type="logic_boolean" id="^GMa:eYG*G{gdNUyOK2t">
                                                                                <field name="BOOL">FALSE</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="DELAY_MS">
                                                                              <shadow type="math_number" id="p#O@u,+TIl4_)K|MmXI-">
                                                                                <field name="NUM">0</field>
                                                                              </shadow>
                                                                            </value>
                                                                          </block>
                                                                        </statement>
                                                                      </block>
                                                                    </statement>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </xml>
                        

                        Das Blockly geht davon aus, dass du folgende Datenpunkte angelegt hast (Falls andere Pfad gewünscht, dann abändern; im Blockly auch):
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Automatic (boolean)
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Manual (boolean)
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Boost (boolean)
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Setpoint (number)
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Lowbat (boolean)
                        0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Maintain (boolean)

                        Dann benötigst du einen ALIAS vom Gerätetypen Thermostat.
                        SET auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Setpoint
                        ACTUAL auf den bevorzugten Raumtemperatursensor
                        BOOST auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Boost

                        Zusätzliche im ALIAS anlegen
                        LOWBAT auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Lowbat
                        MAINTAIN auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Maintain

                        unter Mode im ALIAS
                        99ae1b6e-e638-433d-a82a-f320f8136140-image.png

                        --> auf Control_Mode im Adapter

                        0499a6e3-8a47-44b3-8f94-f1dd2e71bebd-image.png

                        0 = AUTO
                        1 = MANUAL
                        2 = PARTY
                        3 = BOOST

                        Hoffe dann funktioniert schon alles. Kann es leider nicht testen!

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        C 1 Antwort Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @coto

                          So im Spoiler ist ein Blockly. Hoffe ich habe da alles korrekt geschrieben

                          <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                              <variable id="%/xR(^)g5^9E^=:iOg`*">userdataPath</variable>
                            </variables>
                            <block type="variables_set" id="X-j`W}}BF!)o-3+*efc-" x="-138" y="-462">
                              <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                              <value name="VALUE">
                                <block type="text" id="27EXAifV@j[WLi|X89v}">
                                  <field name="TEXT">0_userdata.0.Homatic.Thermostate.OEQ0667828.4.</field>
                                </block>
                              </value>
                              <next>
                                <block type="comment" id=",uvQcLX`j6C.AA75DrZW">
                                  <field name="COMMENT">Am NSPanel wird auf Auto geschaltet </field>
                                  <next>
                                    <block type="on_ext" id="j{K~|bW6;I@lofgT4vd$">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                      <field name="CONDITION">ne</field>
                                      <field name="ACK_CONDITION"></field>
                                      <value name="OID0">
                                        <shadow type="field_oid" id="UL3m@7$weS]7=yq(I?P0">
                                          <field name="oid">default</field>
                                        </shadow>
                                        <block type="text_join" id="Gys1,yJgxvc6*zDXIGVA">
                                          <mutation items="2"></mutation>
                                          <value name="ADD0">
                                            <block type="variables_get" id="[8diiUW8Ym4)4=KQ$s=H">
                                              <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                            </block>
                                          </value>
                                          <value name="ADD1">
                                            <block type="text" id="[)sRA~!%$1n=Fz#{QE:O">
                                              <field name="TEXT">Automatic</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="control_ex" id="rHON.R*}k%w0VO)Q@U5," inline="true">
                                          <field name="TYPE">false</field>
                                          <field name="CLEAR_RUNNING">FALSE</field>
                                          <value name="OID">
                                            <shadow type="field_oid" id="-2GGVvyn8C)-7s]y!iFC">
                                              <field name="oid">Object ID</field>
                                            </shadow>
                                            <block type="text" id="5+BLW_qM@Lr+~7M[@#L-">
                                              <field name="TEXT">hm-rpc.0.OEQ0667828.4.AUTO_MODE</field>
                                            </block>
                                          </value>
                                          <value name="VALUE">
                                            <shadow type="logic_boolean" id="`naj-n,uyc0.)vdOJ$rH">
                                              <field name="BOOL">TRUE</field>
                                            </shadow>
                                            <block type="logic_boolean" id="9jTx$$DZvix^u]0-#_C(">
                                              <field name="BOOL">TRUE</field>
                                            </block>
                                          </value>
                                          <value name="DELAY_MS">
                                            <shadow type="math_number" id="CU}e7)/uBktOHiK/i^}r">
                                              <field name="NUM">0</field>
                                            </shadow>
                                          </value>
                                          <next>
                                            <block type="control_ex" id="A=8psqHjhHW$);in.k0O" inline="true">
                                              <field name="TYPE">false</field>
                                              <field name="CLEAR_RUNNING">FALSE</field>
                                              <value name="OID">
                                                <shadow type="field_oid">
                                                  <field name="oid">Object ID</field>
                                                </shadow>
                                                <block type="text_join" id="LmoSZw/CjrQed[4-l=bN">
                                                  <mutation items="2"></mutation>
                                                  <value name="ADD0">
                                                    <block type="variables_get" id="f]x+|[f!W}GNzf0KVu}f">
                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD1">
                                                    <block type="text" id="GzG^:cECXD^-jPam+|Cm">
                                                      <field name="TEXT">Manual</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="VALUE">
                                                <shadow type="logic_boolean">
                                                  <field name="BOOL">TRUE</field>
                                                </shadow>
                                                <block type="logic_boolean" id="eKG~%BD/0r3!hGgZ?4H/">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                              <value name="DELAY_MS">
                                                <shadow type="math_number" id="/xUS7X!_0tHjQ/lYYlj9">
                                                  <field name="NUM">0</field>
                                                </shadow>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="comment" id=".^0uHrUM+21EPMnW@/Aa">
                                          <field name="COMMENT">Am NSPanel wird auf Temperatur geändert</field>
                                          <next>
                                            <block type="on_ext" id="rnf$MuxnU`senfY-F8SM">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                              <field name="CONDITION">ne</field>
                                              <field name="ACK_CONDITION"></field>
                                              <value name="OID0">
                                                <shadow type="field_oid" id="rJx5Vxq(4|Y~.;2F6D!)">
                                                  <field name="oid">default</field>
                                                </shadow>
                                                <block type="text_join" id="Ec_?0i@=m]@]L5gEjOi?">
                                                  <mutation items="2"></mutation>
                                                  <value name="ADD0">
                                                    <block type="variables_get" id=".LVxszhxY,x/Y[ht(2Dk">
                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD1">
                                                    <block type="text" id="qIz$pgvJ|fZU}eKV%H@;">
                                                      <field name="TEXT">Setpoint</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="control_ex" id="VAa5[r[!O|XD?h2zs4.L" inline="true">
                                                  <field name="TYPE">false</field>
                                                  <field name="CLEAR_RUNNING">FALSE</field>
                                                  <value name="OID">
                                                    <shadow type="field_oid" id="vteW+w!_2:C,eGV!!1De">
                                                      <field name="oid">Object ID</field>
                                                    </shadow>
                                                    <block type="text_join" id="P:53ISJM8Wt12`LLp5C?">
                                                      <mutation items="2"></mutation>
                                                      <value name="ADD0">
                                                        <block type="variables_get" id="^8EdIaZlvDJ`Z:PxenQJ">
                                                          <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                        </block>
                                                      </value>
                                                      <value name="ADD1">
                                                        <block type="text" id="rpq:atBJz,=pL/Tpfk?j">
                                                          <field name="TEXT">Manual</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="VALUE">
                                                    <shadow type="logic_boolean">
                                                      <field name="BOOL">TRUE</field>
                                                    </shadow>
                                                    <block type="logic_boolean" id="l1zqaM6/jSPS#ZF2YQT]">
                                                      <field name="BOOL">TRUE</field>
                                                    </block>
                                                  </value>
                                                  <value name="DELAY_MS">
                                                    <shadow type="math_number" id="gzX:oq*R46?@J;sEN^Y{">
                                                      <field name="NUM">0</field>
                                                    </shadow>
                                                  </value>
                                                  <next>
                                                    <block type="control_ex" id="a!%A#%_448?cbF0#E20I" inline="true">
                                                      <field name="TYPE">false</field>
                                                      <field name="CLEAR_RUNNING">FALSE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid">
                                                          <field name="oid">Object ID</field>
                                                        </shadow>
                                                        <block type="text_join" id="Z=X7ZS=5{oFLhPFl$6J*">
                                                          <mutation items="2"></mutation>
                                                          <value name="ADD0">
                                                            <block type="variables_get" id="LNZ/Yu]eOv*pYj!.D^Hp">
                                                              <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD1">
                                                            <block type="text" id="f(?W0s5a%=`*e.bl+U;j">
                                                              <field name="TEXT">Automatic</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean">
                                                          <field name="BOOL">TRUE</field>
                                                        </shadow>
                                                        <block type="logic_boolean" id="C;jj4,F7s4Dh0_q^GJ(p">
                                                          <field name="BOOL">FALSE</field>
                                                        </block>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="cY5}Nl-3}~q8av0Z,^:%">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="control_ex" id="vOC7f,;-wN|E6q66A#y5" inline="true">
                                                          <field name="TYPE">false</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="33Vhu-2{oMtX)_7C5xNJ">
                                                              <field name="oid">Object ID</field>
                                                            </shadow>
                                                            <block type="text" id="cwRLYaGfnesiWV4ME~02">
                                                              <field name="TEXT">hm-rpc.0.OEQ0667828.4.SET_TEMPERATUR</field>
                                                            </block>
                                                          </value>
                                                          <value name="VALUE">
                                                            <shadow type="logic_boolean" id="R6~2VB4nRpE-=epf^!.2">
                                                              <field name="BOOL">TRUE</field>
                                                            </shadow>
                                                            <block type="on_source" id="{iIWE58cs91`J:+%zsHP">
                                                              <field name="ATTR">state.val</field>
                                                            </block>
                                                          </value>
                                                          <value name="DELAY_MS">
                                                            <shadow type="math_number" id="IX574hj%MQ)uiFy(QXfC">
                                                              <field name="NUM">0</field>
                                                            </shadow>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="comment" id="~k%4o/5,IR_W}Vo9z5E5">
                                                  <field name="COMMENT">Am NSPanel wird auf Boost geschaltet</field>
                                                  <next>
                                                    <block type="on_ext" id="$[COE^lL{IylevSK@r$N">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                      <field name="CONDITION">ne</field>
                                                      <field name="ACK_CONDITION"></field>
                                                      <value name="OID0">
                                                        <shadow type="field_oid">
                                                          <field name="oid">default</field>
                                                        </shadow>
                                                        <block type="text_join" id="2E}4*|Pr_c6QxjZlXL#4">
                                                          <mutation items="2"></mutation>
                                                          <value name="ADD0">
                                                            <block type="variables_get" id="H{sw([OtBhyRLVy[WQ?@">
                                                              <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD1">
                                                            <block type="text" id="ae-^6mBM`wUFkV9]!SUJ">
                                                              <field name="TEXT">Boost</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="STATEMENT">
                                                        <block type="control_ex" id="t6(RKz=ul#7hL#Yd2xW?" inline="true">
                                                          <field name="TYPE">false</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid">
                                                              <field name="oid">Object ID</field>
                                                            </shadow>
                                                            <block type="text" id="?Z[Yyrpj|OUCHpbA[r2b">
                                                              <field name="TEXT">hm-rpc.0.OEQ0667828.4.BOOST_MODE</field>
                                                            </block>
                                                          </value>
                                                          <value name="VALUE">
                                                            <shadow type="logic_boolean">
                                                              <field name="BOOL">TRUE</field>
                                                            </shadow>
                                                            <block type="logic_boolean" id="ILc-KKS#II*=$?-)1@5;">
                                                              <field name="BOOL">TRUE</field>
                                                            </block>
                                                          </value>
                                                          <value name="DELAY_MS">
                                                            <shadow type="math_number" id="b*rW5=g.eIn$UGCXpk{)">
                                                              <field name="NUM">0</field>
                                                            </shadow>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="comment" id="pq{0z}/,!fFo[r=xL?3^">
                                                          <field name="COMMENT">BATTERY_STATE im Adapter ändert sich</field>
                                                          <next>
                                                            <block type="on_ext" id="2!C]E4+ZovPwb#O![]o0">
                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                              <field name="CONDITION">ne</field>
                                                              <field name="ACK_CONDITION"></field>
                                                              <value name="OID0">
                                                                <shadow type="field_oid" id="v%SYL`)0SR7QG+O,}p:}">
                                                                  <field name="oid">default</field>
                                                                </shadow>
                                                                <block type="text" id="@*2/Gs5Z=d`=xtxpdg9l">
                                                                  <field name="TEXT">hm-rpc.0.OEQ0667828.4.BATTERY_STATE</field>
                                                                </block>
                                                              </value>
                                                              <statement name="STATEMENT">
                                                                <block type="comment" id="7aIa7fh7F8,20!qIV:aN">
                                                                  <field name="COMMENT">Wert 2,5 ist ausgedacht.</field>
                                                                  <next>
                                                                    <block type="comment" id="E{Eyaw120U8hRFMQTPP)">
                                                                      <field name="COMMENT">Keine Ahnung wann die Batterie wirklich leer ist</field>
                                                                      <next>
                                                                        <block type="controls_if" id="Bx%+dY))9YYdkklHAAqI">
                                                                          <mutation else="1"></mutation>
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="THZ:h0AIFqeS8a4Q^/o^">
                                                                              <field name="OP">LT</field>
                                                                              <value name="A">
                                                                                <block type="on_source" id="duq;S)%o5XaWTSmW}n}y">
                                                                                  <field name="ATTR">state.val</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="math_number" id="ie`:G}d9,(LC{q[i_J4h">
                                                                                  <field name="NUM">2.5</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="control_ex" id="LClKu=C?jxEn~Ee]Wzc5" inline="true">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid" id="Nw]~t%7!gKT6i=E)Map8">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="text_join" id="Q!0.BP9.%/0bX%]!wNfV">
                                                                                  <mutation items="2"></mutation>
                                                                                  <value name="ADD0">
                                                                                    <block type="variables_get" id="Tz3eTQdyBs9l;(pW(]]8">
                                                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="ADD1">
                                                                                    <block type="text" id="VmE~0^%|++P{ynPp?AHc">
                                                                                      <field name="TEXT">Lowbat</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="logic_boolean" id="Y}ZJdf5QlTB0=@nDq(%;">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="a!J*o-:pD($Y=(^YE_{K">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <statement name="ELSE">
                                                                            <block type="control_ex" id=":s;z=CrWiuSM}Cs,l3*z" inline="true">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="text_join" id="]c1m)N,]xKl.D]m+I9*w">
                                                                                  <mutation items="2"></mutation>
                                                                                  <value name="ADD0">
                                                                                    <block type="variables_get" id="4!qxcx`M[}GZ)~@7_a9Q">
                                                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="ADD1">
                                                                                    <block type="text" id="lYU+fpFo*l7D0xn;oqp^">
                                                                                      <field name="TEXT">Lowbat</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="logic_boolean" id="8RyZCBo`8%N/(/cJq@c@">
                                                                                  <field name="BOOL">FALSE</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="U=O6uX|-`QW%X}YaBD5]">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <next>
                                                                <block type="comment" id="n`y@58sQ`+Ip[R!kBjk-">
                                                                  <field name="COMMENT">FAULT_REPORTING im Adapter ändert sich</field>
                                                                  <next>
                                                                    <block type="on_ext" id="f,5_N)xx_4E,RbWQiq-I">
                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                                      <field name="CONDITION">ne</field>
                                                                      <field name="ACK_CONDITION"></field>
                                                                      <value name="OID0">
                                                                        <shadow type="field_oid">
                                                                          <field name="oid">default</field>
                                                                        </shadow>
                                                                        <block type="text" id="wO|:^@umOB:5.+=xrC:T">
                                                                          <field name="TEXT">hm-rpc.0.OEQ0667828.4.FAULT_REPORTING</field>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="STATEMENT">
                                                                        <block type="controls_if" id="^Lti.NU)S9tV^JvxY#|V">
                                                                          <mutation else="1"></mutation>
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="twb2_~HKNJLw*t~iei7*">
                                                                              <field name="OP">LT</field>
                                                                              <value name="A">
                                                                                <block type="on_source" id="q;QmlW4j0L@[8SiNG(}!">
                                                                                  <field name="ATTR">state.val</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="math_number" id="P}F@tPT`pXxiD2`1ik,`">
                                                                                  <field name="NUM">2.5</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="control_ex" id="lb15K]4z_=8NE6}RgxvS" inline="true">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="text_join" id="Yy}ZGz$j4Xx;mzJEgM/*">
                                                                                  <mutation items="2"></mutation>
                                                                                  <value name="ADD0">
                                                                                    <block type="variables_get" id="#/N|`jy=,]jS#IOHI=F;">
                                                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="ADD1">
                                                                                    <block type="text" id="TQ?,RMkzfr{;,2bsh[=H">
                                                                                      <field name="TEXT">Maintain</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="logic_boolean" id="l;aa[h.esax%Z[EZy-|`">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="hN}}Siq_!z-@{iHHt-Do">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <statement name="ELSE">
                                                                            <block type="control_ex" id="8=!5C.CtxhZqLmN=dqOs" inline="true">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="text_join" id="q~qtEzni;`24R0C%!2ck">
                                                                                  <mutation items="2"></mutation>
                                                                                  <value name="ADD0">
                                                                                    <block type="variables_get" id="$f.qJVIwYLj4nvyEMxAB">
                                                                                      <field name="VAR" id="%/xR(^)g5^9E^=:iOg`*">userdataPath</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="ADD1">
                                                                                    <block type="text" id="[WKkJ8E,SMv|]t_Su1:~">
                                                                                      <field name="TEXT">Maintain</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="logic_boolean" id="^GMa:eYG*G{gdNUyOK2t">
                                                                                  <field name="BOOL">FALSE</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="p#O@u,+TIl4_)K|MmXI-">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                        </block>
                                                                      </statement>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </xml>
                          

                          Das Blockly geht davon aus, dass du folgende Datenpunkte angelegt hast (Falls andere Pfad gewünscht, dann abändern; im Blockly auch):
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Automatic (boolean)
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Manual (boolean)
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Boost (boolean)
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Setpoint (number)
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Lowbat (boolean)
                          0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Maintain (boolean)

                          Dann benötigst du einen ALIAS vom Gerätetypen Thermostat.
                          SET auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Setpoint
                          ACTUAL auf den bevorzugten Raumtemperatursensor
                          BOOST auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Boost

                          Zusätzliche im ALIAS anlegen
                          LOWBAT auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Lowbat
                          MAINTAIN auf 0_userdata.0.Homatic.Thermostate.OEQ0667828.4.Maintain

                          unter Mode im ALIAS
                          99ae1b6e-e638-433d-a82a-f320f8136140-image.png

                          --> auf Control_Mode im Adapter

                          0499a6e3-8a47-44b3-8f94-f1dd2e71bebd-image.png

                          0 = AUTO
                          1 = MANUAL
                          2 = PARTY
                          3 = BOOST

                          Hoffe dann funktioniert schon alles. Kann es leider nicht testen!

                          C Offline
                          C Offline
                          coto
                          schrieb am zuletzt editiert von
                          #1221

                          @armilar

                          Danke, das werde ich morgen dann mal in Ruhe ausprobieren.

                          Zu Frage 2)
                          Die Seiten müssen in der Config eingetragen sein. Sind die drin unter Subpages?

                          Ich weiß jetzt nicht ob wir da aneinander vorbei sprechen.
                          Die Config ist fast Original. Ich fange gerade an mich da durchzutesten,

                          /*-----------------------------------------------------------------------
                          TypeScript v3.6.0.4 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar/@Sternmiere/@Britzelpuf
                          - abgestimmt auf TFT 45 / v3.6.0 / BerryDriver 6 / Tasmota 12.2.0
                          @joBr99 Projekt: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
                          NsPanelTs.ts (dieses TypeScript in ioBroker) Stable: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
                          icon_mapping.ts: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/icon_mapping.ts (TypeScript muss in global liegen)
                          ioBroker-Unterstützung: https://forum.iobroker.net/topic/50888/sonoff-nspanel
                          WIKI zu diesem Projekt unter: https://github.com/joBr99/nspanel-lovelace-ui/wiki (siehe Sidebar)
                          Icons unter: https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.html
                          *******************************************************************************
                          Achtung Änderung des Sonoff ESP-Temperatursensors
                          !!! Bitte "SetOption146 1" in der Tasmota-Console ausführen !!!
                          *******************************************************************************
                          ReleaseNotes:
                              Bugfixes und Erweiterungen:
                                  - cardQR (für Gäste WLAN)
                                  - cardThermo (Neues Design für Alias Thermostat und zusätzlich für Alias Klimaanlage)
                                  - 08.05.2022 - v2.9.0 - Menüpfeile bei HardwareButtons (button1Page; button2Page) mit Navigation auf Page 0
                                  - 08.05.2022 - v2.9.0 - Standard-Brightness über neuen Parameter active einstellbar (Test mit 2.9.3)
                                  - 08.05.2022 - v2.9.0 - Schalter (Licht, Dimmer, Hue, etc) in cardGrid lassen sich wieder schalten
                                  - 14.06.2022 - v2.9.0 - Aktion auf Submenüs schaltet unmittelbar auf vorheriges Mainmenu (Many thanks to Grrzzz)
                                  - 14.06.2022 - v2.9.0 - Menü-Pfeile in Subpages (z.B. card QR, cardMedia, etc) (Many thanks to Grrzzz)
                                  - 15.06.2022 - v3.0.0 - Date/Time im Screensaver auf Basis localString (de-DE/en-EN/nl-NL/etc.)
                                  - 16.06.2022 - v3.0.0 - Multilingual - config.locale (en-EN, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.)
                                  - 16.06.2022 - v3.0.0 - Bugfix by Grrzzz - Subpages
                                  - 18.06.2022 - v3.1.0 - Längere Textfelder in cardEntities
                                  - 18.06.2022 - V3.1.0 - Detail-Page Lights/Shutter hat neuen Parameter "id"
                                  - 19.06.2022 - v3.1.0 - Bugfix toLocalTimeString in en-EN/en-US
                                  - 19.06.2022 - v3.1.0 - Fehler in findLocale abgefangen
                                  - 19.06.2022 - v3.1.0 - Umstellung auf "Home Assistant" Sprachfile
                                  - 19.06.2022 - v3.1.0 - Alias "light" und "socket" haben optionalen Parameter icon2 für negative Zustände
                                  - 29.06.2022 - v3.1.1 - Bugfix Github #286 (Active Page) + Bugfix pageThermo, pageMedia, pageAlarm as first Page
                                  - 25.08.2022 - v3.1.0 - Code-Verbesserungen (klein0r)
                                  - 26.08.2022 - v3.2.0 - pageItem mit CIE (XY) Parameter für ColorWheel (Steuerung für z.B Deconz-Farben bei denen Hue nicht greift)
                                  - 28.08.2022 - v3.2.0 - Wechsel zwischen Weather-Forecast und eigenen Datenpunkten im Screensaver (minütlich)
                                  - 28.08.2022 - v3.2.0 - Bugfix für 3.2.0 in GenerateDetailPage: Color-Language nicht über findLocales, da nicht in Sprachfile enthalten
                                  - 29.08.2022 - v3.3.0 - Upgrade TFT 40
                                  - 29.08.2022 - v3.3.1 - Upgrade TFT 41
                                  - 04.09.2022 - v3.3.1 - Überarbeitung und BugFix für cardAlarm
                                  - 13.09.2022 - v3.3.1.3 BugFix Screensaver Toggle
                                  - 13.09.2022 - v3.3.1.3 Überarbeitung und BugFix und Refresh Features für cardMedia (Breaking Changes)
                                  - 13.09.2022 - v3.3.1.3 Hinzufügen von SpotifyPremium, Sonos und Chromecast (Google home) zur cardMedia-Logik
                                  - 15.09.2022 - V3.4.0 - BugFix Dimmode
                                  - 15.09.2022 - v3.4.0   Upgrade TFT 42
                                  - 15.09.2022 - V3.4.0 - Colormode für Screensaver + AutoColor WeatherForecast
                                  - 16.09.2022 - v3.4.0.1 Visualisierung der Relay Zustände (MRIcons) im Screensaver + Bugfix Screensaver MRIcon2
                                  - 17.09.2022 - v3.4.0.2 Bugfix for screensaver icons with scaled colors
                                  - 17.09.2022 - v3.4.0.3 Bugfix bNext / bPrev by joBr99
                                  - 18.09.2022 - v3.4.0.4 Add On/Off Colors in config.mrIcon1ScreensaverEntity and config.mrIcon2ScreensaverEntity
                                  - 19.09.2022 - v3.4.0.5 Add Mode to cardThermo (Alias Thermostat)
                                  - 03.10.2022 - v3.4.0.6 Add 5 Entities in US Panel Version to cardEntities
                                  - 03.10.2022 - v3.4.0.6 Fix screenSaverDoubleClick
                                  - 03.10.2022 - v3.4.0.6 Add cardPower (experimental)
                                  - 05.10.2022 - v3.4.0.6 Add sueezeboxrpc to cardMedia
                                  - 07.10.2022 - v3.4.0.6 Time-configurable change for screensaver icons
                                  - 07.10.2022 - v3.5.0   Upgrade TFT 43
                                  - 07.10.2022 - v3.5.0   Add Backgroundcolor to Pages
                                  - 08.10.2022 - v3.5.0   Add Tilt-Slider and TILT_Fucntions (Open/Stop/Close) to Blinds/Cover/Shutter popUp
                                  - 12.10.2022 - v3.5.0   Add PageNavigation via Datapoint
                                  - 25.10.2022 - v3.5.0   Add New Parameters to popUpNotify / Layout 2
                                  - 26.10.2022 - v3.5.0.1 Fix Thermostat for tado Support (by Sternmiere)
                                  - 27.10.2022 - v3.5.0.1 Add VirtualDevice Gate
                                  - 27.10.2022 - v3.5.0.2 Applied Boy Scout Rule (Fixed some typos, changed var to let, fixed min/max colorTemp Bug)
                                  - 30.10.2022 - v3.5.0.3 Fixed Media Play/Pause icon for alexa (and others) devices
                                  - 31.10.2022 - v3.5.0.4 Reengineering Media Subscriptions
                                  - 02.11.2022 - v3.5.0.5 Page navigation continues with page 0 from the last page
                                  - 04.11.2022 - v3.5.0.5 Create Auto-Alias for Service Pages
                                  - 07.11.2022 - v3.5.0.5 Create Auto-Alias for Alexa2, Spotify-Premium, Sonos
                                  - 08.11.2022 - v3.5.0.5 Create Auto-Alias for Wheather-Forcast (Screensaver Big-Icon)
                                  - 07.10.2022 - v3.6.0   Upgrade TFT 45
                                  - 09.11.2022 - v3.6.0   Add new Alias-DeviceTyp cie (control colors with XY)
                                  - 16.11.2022 - v3.6.0   Control Relay 1 + 2 via Datapoints
                                  - 17.11.2022 - v3.6.0   Add Datapoint to Control Screensaver-Dimmode
                                  - 17.11.2022 - v3.6.0   Change to Page after bExit 
                                  - 18.11.2022 - v3.6.0   Add cardChart by fumanchi (only on DEV)
                                  - 24.11.2022 - v3.6.0   Add Background Color Switch via DP
                                  - 26.11.2022 - v3.6.0   Add cardMedia Colors
                                  - 26.11.2022 - v3.6.0   Add cardThermostat Popup 
                                  - 28.11.2022 - v3.6.0.1 Bugfix in bExit
                                  - 29.11.2022 - v3.6.0.2 Update Berry Version 6
                                  - 30.11.2022 - v3.6.0.3 Bugfix string/number compare current BerryDriver (DP as string)
                                  - 05.12.2022 - v3.6.0.4 Add bHome to Navigation
                                  - 05.12.2022 - v3.6.0.4 Add changeable Center-Icon in cardPower with Color and Value
                                  - 08.12.2022 - v3.6.0.4 Bugfix - Use MRIcons in Screensaver with null
                                  - 11.12.2022 - v3.6.0.4 Add new DP to show active page
                                  - 13.12.2022 - v3.6.0.4 Add Sensor-Values to cardGrid
                                  - 13.12.2022 - v3.6.0.4 Hotfix - Update screensaver temperature without weather forecast
                                  Implemented in 3.6.1 DEV
                                  - XX.12.2022 - v3.6.1   Add cardChart on PROD (implemented but working with v3.6.1 --> next TFT)
                                  - XX.12.2022 - v3.6.1   Add Shuffle to Media Player
                                  - XX.12.2022 - v3.6.1   Remove Speakerlist and Add 5 GridCard PageItems
                                  - XX.12.2022 - v3.6.1   Add In_Sel PopUp
                                  Todo's for 3.6.1
                                  - XX.12.2022 - v3.6.1 Add Fan
                          *****************************************************************************************************************
                          * Falls Aliase durch das Skript erstellt werden sollen, muss in der JavaScript Instanz "setObect" gesetzt sein! *
                          *****************************************************************************************************************
                          Wenn Rule definiert, dann können die Hardware-Tasten ebenfalls für Seitensteuerung (dann nicht mehr als Relais) genutzt werden
                          Tasmota Konsole:
                              Rule2 on Button1#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button1"} endon on Button2#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button2"} endon
                              Rule2 1 (Rule aktivieren)
                              Rule2 0 (Rule deaktivieren)
                          Mögliche Seiten-Ansichten:
                              screensaver Page    - wird nach definiertem Zeitraum (config) mit Dimm-Modus aktiv (Uhrzeit, Datum, Aktuelle Temperatur mit Symbol)
                                                    (die 4 kleineren Icons können als Wetter-Vorschau + 4Tage (Symbol + Höchsttemperatur) oder zur Anzeige definierter Infos konfiguriert werden)
                              cardEntities Page   - 4 vertikale angeordnete Steuerelemente - auch als Subpage
                              cardGrid Page       - 6 horizontal angeordnete Steuerelemente in 2 Reihen a 3 Steuerelemente - auch als Subpage
                              cardThermo Page     - Thermostat mit Solltemperatur, Isttemperatur, Mode - Weitere Eigenschaften können im Alias definiert werden
                              cardMedia Page      - Mediaplayer - Ausnahme: Alias sollte mit Alias-Manager automatisch über Alexa-Verzeichnis Player angelegt werden
                              cardAlarm Page      - Alarmseite mit Zustand und Tastenfeld
                              cardPower Page      - Energiefluss
                          Popup-Pages:
                              popupLight Page     - in Abhängigkeit zum gewählten Alias werden "Helligkeit", "Farbtemperatur" und "Farbauswahl" bereitgestellt
                              popupShutter Page   - die Shutter-Position (Rollo, Jalousie, Markise, Leinwand, etc.) kann über einen Slider verändert werden.
                              popupNotify Page    - Info - Seite mit Headline Text und Buttons - Intern für manuelle Updates / Extern zur Befüllung von Datenpunkten unter 0_userdata
                              screensaver Notify  - Über zwei externe Datenpunkte in 0_userdata können "Headline" und "Text" an den Screensaver zur Info gesendet werden
                          Mögliche Aliase: (Vorzugsweise mit ioBroker-Adapter "Geräte verwalten" konfigurieren, da SET, GET, ACTUAL, etc. verwendet werden)
                              Info                - Werte aus Datenpunkt
                              Schieberegler       - Slider numerische Werte (SET/ACTUAL)
                              Lautstärke          - Volume (SET/ACTUAL) und MUTE
                              Lautstärke-Gruppe   - analog Lautstärke
                              Licht               - An/Aus (Schalter)
                              Steckdose           - An/Aus (Schalter)
                              Dimmer              - An/Aus, Brightness
                              Farbtemperatur      - An/Aus, Farbtemperatur und Brightness
                              HUE-Licht           - Zum Schalten von Color-Leuchtmitteln über HUE-Wert, Brightness, Farbtemperatur, An/Aus (HUE kann auch fehlen)
                              RGB-Licht           - RGB-Leuchtmitteln/Stripes welche Rot/Grün/ und Blau separat benötigen (Tasmota, WifiLight, etc.) + Brightness, Farbtemperatur
                              RGB-Licht-einzeln   - RGB-Leuchtmitteln/Stripes welche HEX-Farbwerte benötigen (Tasmota, WifiLight, etc.) + Brightness, Farbtemperatur
                              Jalousien           - Up, Stop, Down, Position
                              Fenster             - Sensor open
                              Tür                 - Sensor open
                              Verschluss          - Türschloss SET/ACTUAL/OPEN
                              Taste               - Für Szenen oder Radiosender, etc. --> Nur Funktionsaufruf - Kein Taster wie MonoButton - True/False
                              Tastensensor        - analog Taste
                              Thermostat          - Aktuelle Raumtemperatur, Setpoint, etc.
                              Klimaanlage         - Buttons zur Steuerung der Klimaanlage im unteren Bereich
                              Temperatur          - Anzeige von Temperatur - Datenpunkten, analog Info
                              Feuchtigkeit        - Anzeige von Humidity - Datenpunkten, analog Info
                              Medien              - Steuerung von Alexa - Über Alias-Manager im Verzeichnis Player automatisch anlegen (Geräte-Manager funktioniert nicht)
                              Wettervorhersage    - Aktuelle Außen-Temperatur (Temp) und aktuelles AccuWeather-Icon (Icon) für Screensaver
                          Interne Sonoff-Sensoren (über Tasmota):
                              ESP-Temperatur      - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden --> SetOption146 1
                              Temperatur          - Raumtemperatur - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden
                                                    (!!! Achtung: der interne Sonoff-Sensor liefert keine exakten Daten, da das NSPanel-Board und der ESP selbst Hitze produzieren !!!
                                                    ggf. Offset einplanen oder besser einen externen Sensor über Zigbee etc. verwenden)
                              Timestamp           - wird in 0_userdata.0. Zeitpunkt der letzten Sensorübertragung
                          Tasmota-Status0 - (zyklische Ausführung)
                              liefert relevanten Tasmota-Informationen und kann bei Bedarf in "function get_tasmota_status0()" erweitert werden. Daten werden in 0_userdata.0. abgelegt
                          Erforderliche Adapter:
                              AccuWeather:        - Bei Nutzung der Wetterfunktionen (und zur Icon-Konvertierung) im Screensaver
                              Alexa2:             - Bei Nutzung der dynamischen SpeakerList in der cardMedia
                              Geräte verwalten    - Für Erstellung der Aliase
                              Alias-Manager       - !!! ausschließlich für MEDIA-Alias
                              MQTT-Adapter        - Für Kommunikation zwischen Skript und Tasmota
                              JavaScript-Adapter
                          Upgrades in Konsole:
                              Tasmota BerryDriver     : Backlog UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be; Restart 1
                              TFT EU STABLE Version   : FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                          ---------------------------------------------------------------------------------------
                          */
                          let Icons = new IconsSelector();
                          let timeoutSlider: any;
                          let manually_Update = false;
                          const autoCreateAlias = true;  //Für diese Option muss der Haken in setObjects in deiner javascript.X. Instanz gesetzt sein.  
                          
                          const NSPanel_Path = '0_userdata.0.NSPanel.1.';
                          const NSPanel_Alarm_Path = '0_userdata.0.NSPanel.'; //Neuer Pfad für gemeinsame Nutzung durch mehrere Panels (bei Nutzung der cardAlarm)
                          
                          let AliasPath: string = 'alias.0.' + NSPanel_Path.substring(13, NSPanel_Path.length);
                          const Debug = false;
                          
                          // Variablen zur Steuerung der Wettericons auf dem Screensaver (Steuerung in 0_userdata.0.XPANELX.ScreensaverInfo)
                          // Wenn weatherForecastTimer auf true, dann Wechsel zwischen Datenpunkten und Wettervorhersage (30 Sekunden nach Minute (Zeit))
                          // Wenn weatherForecastTimer auf false, dann Möglichkeit über weatherForecast, ob Datenpunkte oder Wettervorhersage (true = WeatherForecast/false = Datenpunkte)
                          let weatherForecast: boolean; // Änderung zum Video --> Einstellung siehe Wiki
                          
                          const HMIOff:           RGB = { red:  68, green: 115, blue: 158 };     // Blau-Off - Original Entity Off
                          const HMIOn:            RGB = { red:   3, green: 169, blue: 244 };     // Blau-On
                          const HMIDark:          RGB = { red:  29, green:  29, blue:  29 };     // Original Background Color
                          const Off:              RGB = { red: 253, green: 128, blue:   0 };     // Orange-Off - schönere Farbübergänge
                          const On:               RGB = { red: 253, green: 216, blue:  53 };
                          const MSRed:            RGB = { red: 251, green: 105, blue:  98 };
                          const MSYellow:         RGB = { red: 255, green: 235, blue: 156 };
                          const MSGreen:          RGB = { red: 121, green: 222, blue: 121 };
                          const Red:              RGB = { red: 255, green:   0, blue:   0 };
                          const White:            RGB = { red: 255, green: 255, blue: 255 };
                          const Yellow:           RGB = { red: 255, green: 255, blue:   0 };
                          const Green:            RGB = { red:   0, green: 255, blue:   0 };
                          const Blue:             RGB = { red:   0, green:   0, blue: 255 };
                          const DarkBlue:         RGB = { red:   0, green:   0, blue: 136 };
                          const Gray:             RGB = { red: 136, green: 136, blue: 136 };
                          const Black:            RGB = { red:   0, green:   0, blue:   0 };
                          const colorSpotify:     RGB = { red:  30, green: 215, blue:  96 };
                          const colorAlexa:       RGB = { red:  49, green: 196, blue: 243 };
                          const colorRadio:       RGB = { red: 255, green: 127, blue:   0 };
                          const BatteryFull:      RGB = { red:  96, green: 176, blue:  62 };
                          const BatteryEmpty:     RGB = { red: 179, green:  45, blue:  25 };
                          
                          //Dynamische Indikatoren
                          const colorScale0:      RGB = { red:   99, green: 190, blue: 123 };
                          const colorScale1:      RGB = { red:  129, green: 199, blue: 126 };
                          const colorScale2:      RGB = { red:  161, green: 208, blue: 127 };
                          const colorScale3:      RGB = { red:  129, green: 217, blue: 126 };
                          const colorScale4:      RGB = { red:  222, green: 226, blue: 131 };
                          const colorScale5:      RGB = { red:  254, green: 235, blue: 132 };
                          const colorScale6:      RGB = { red:  255, green: 210, blue: 129 };
                          const colorScale7:      RGB = { red:  251, green: 185, blue: 124 };
                          const colorScale8:      RGB = { red:  251, green: 158, blue: 117 };
                          const colorScale9:      RGB = { red:  248, green: 131, blue: 111 };
                          const colorScale10:     RGB = { red:  248, green: 105, blue: 107 };
                          
                          //Screensaver Default Theme Colors
                          const scbackground:     RGB = { red:   0, green:    0, blue:   0};
                          const scbackgroundInd1: RGB = { red: 255, green:   0,  blue:   0};
                          const scbackgroundInd2: RGB = { red: 121, green: 222,  blue: 121};
                          const scbackgroundInd3: RGB = { red: 255, green: 255,  blue:   0};
                          const sctime:           RGB = { red: 255, green:  255, blue: 255};
                          const sctimeAMPM:       RGB = { red: 255, green:  255, blue: 255};
                          const scdate:           RGB = { red: 255, green:  255, blue: 255};
                          const sctMainIcon:      RGB = { red: 255, green:  255, blue: 255};
                          const sctMainText:      RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast1:     RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast2:     RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast3:     RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast4:     RGB = { red: 255, green:  255, blue: 255};
                          const sctF1Icon:        RGB = { red: 255, green:  235, blue: 156};
                          const sctF2Icon:        RGB = { red: 255, green:  235, blue: 156};
                          const sctF3Icon:        RGB = { red: 255, green:  235, blue: 156};
                          const sctF4Icon:        RGB = { red: 255, green:  235, blue: 156};
                          const sctForecast1Val:  RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast2Val:  RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast3Val:  RGB = { red: 255, green:  255, blue: 255};
                          const sctForecast4Val:  RGB = { red: 255, green:  255, blue: 255};
                          const scbar:            RGB = { red: 255, green:  255, blue: 255};
                          const sctMainIconAlt:   RGB = { red: 255, green:  255, blue: 255};
                          const sctMainTextAlt:   RGB = { red: 255, green:  255, blue: 255};
                          const sctTimeAdd:       RGB = { red: 255, green:  255, blue: 255};
                          
                          //Auto-Weather-Colors
                          const swClearNight:     RGB = { red: 150, green: 150, blue: 100};
                          const swCloudy:         RGB = { red:  75, green:  75, blue:  75};
                          const swExceptional:    RGB = { red: 255, green:  50, blue:  50};
                          const swFog:            RGB = { red: 150, green: 150, blue: 150};
                          const swHail:           RGB = { red: 200, green: 200, blue: 200};
                          const swLightning:      RGB = { red: 200, green: 200, blue:  0};
                          const swLightningRainy: RGB = { red: 200, green: 200, blue: 150};
                          const swPartlycloudy:   RGB = { red: 150, green: 150, blue: 150};
                          const swPouring:        RGB = { red:  50, green:  50, blue: 255};
                          const swRainy:          RGB = { red: 100, green: 100, blue: 255};
                          const swSnowy:          RGB = { red: 150, green: 150, blue: 150};
                          const swSnowyRainy:     RGB = { red: 150, green: 150, blue: 255};
                          const swSunny:          RGB = { red: 255, green: 255, blue:   0};
                          const swWindy:          RGB = { red: 150, green: 150, blue: 150};
                          
                          let vwIconColor = [];
                          
                          
                          //-- Anfang der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich ----------------
                          
                          let Seite1_Broker: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Meine 1 Seite",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "Schlafzimmer Lampe", interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
                              ]
                          };
                          
                          let SensorGrid: PageGrid =
                          {
                              "type": "cardGrid",
                              "heading": "Sensor Werte",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur", name: "Außentemp. °C", offColor: MSRed, onColor: MSGreen, useValue: true },
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte %", offColor: MSYellow, onColor: MSYellow , useValue: true },
                                  <PageItem>{ id: "alias.0.NSPanel_1.Taupunkt", name: "Taupunkt °C", offColor: MSRed, onColor: MSGreen, useValue: true },
                                  <PageItem>{ id: "alias.0.NSPanel_1.UV_Index", name: "UV Index", offColor: White , onColor: White, useValue: true },
                                  <PageItem>{ id: "alias.0.NSPanel_1.Windstaerke", name: "Windstärke bft", offColor: White , onColor: White, useValue: true },
                                  <PageItem>{ id: "alias.0.NSPanel_1.Luftdruck", name: "Luftdruck hPa", offColor: White , onColor: White, useValue: true }
                              ]
                          };
                          
                          //Only DEV --> Test
                          let ChartDemo: PageChart =
                          {
                              "type": "cardChart",
                              "heading": "Charts Demo",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ 
                                          id: 'alias.0.NSPanel_1.cardChart', 
                                          yAxis: 'Gas [kWh]', 
                                          yAxisTicks: [2,4,6,8,10,12,14], 
                                          onColor: Yellow
                                       }]
                          };
                          
                          let CardPowerExample: PagePower =
                          {
                              "type": "cardPower",
                              "heading": "cardPower Emulator",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Power.PowerCard' },
                              ]
                          };
                          
                          let Test_Licht2: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Color Aliase 2",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  //Beispiel für RGB Light mit neuem PageItem-Parameter colormode: "xy" alternativ colormode: "rgb" oder weglassen
                                  //Steuert im z.B. DeConz Adapter unter Lampen die Farben per CIE (XY)
                                  <PageItem>{ id: "alias.0.NSPanel_2.WZ_E14_Fenster_rechts", name: "Fensterbank rechts", minValueBrightness: 0, maxValueBrightness: 100, minValueColorTemp: 500, maxValueColorTemp: 150, interpolateColor: true, colormode: "xy"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
                              ]
                          };
                          
                          let Test_Funktionen: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Sonstige Aliase",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed, onColor: MSGreen, name: "Echo Spot Büro", minValue: 0, maxValue: 100 },
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White },
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White },
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true }
                              ]
                          };
                          
                          let Buero_Seite_1: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Büro",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "power",offColor: MSRed, onColor: MSGreen}
                              ]
                          };
                          
                          let Fenster_1: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Fenster und Türen",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "blinds-horizontal", offColor: White, onColor: Yellow, name: "Büro", secondRow: "Hier Text für 2. Zeile"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
                              ]
                          };
                          //<PageItem>{ id: "alias.0.NS-Panel.Buero.Rollade", icon: "blinds-horizontal", offColor: White, onColor: Yellow, name: "Büro", secondRow: "Hier Text für 2. Zeile"},
                          let Button_1: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Button Aliase",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: 'alarm-light', name: "Alert mit Zielseite", offColor: MSGreen, onColor: MSRed, targetPage: 'Abfall', buttonText: 'Popup'},
                              ]
                          };
                          
                          let Subpages_1: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "Test Subpages",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
                                  <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
                              ]
                          };
                          
                                  //Subpage 1 von Subpages_1
                                  let Abfall: PageEntities =
                                  {
                                      "type": "cardEntities",
                                      "heading": "Abfallkalender",
                                      "useColor": true,
                                      "subPage": true,
                                      "parent": Subpages_1,
                                      "items": [
                                          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
                                          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
                                          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
                                          <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
                                      ]
                                  };
                          
                                  //Subpage 2 von Subpages_1
                                  let WLAN: PageQR = 
                                  {
                                      "type": "cardQR",
                                      "heading": "Gäste WLAN",
                                      "useColor": true,
                                      "subPage": true,
                                      "parent": Subpages_1,
                                      "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi", hidePassword: true }]
                                  };
                          
                          let Buero_Seite_2: PageGrid =
                          {
                              "type": "cardGrid",
                              "heading": "Büro 2",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [
                                  <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
                                  <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer", secondRow: "auch Text"},
                                  <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
                              ]
                          };
                          
                          let Radiosender: PageGrid =
                          {
                              "type": "cardGrid",
                              "heading": "Büro 2",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio}]
                          };
                          
                          // NEW: Neue Definition von Medien-Aliasen
                          // adapterPlayerInstance = alexa2.0. or spotify-premium.0. or sonos.0. or chromecast.0.
                          // MEDIA ALIASE können auch per JS-Script erstellt werden https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen#medien---cardmedia
                          let Alexa: PageMedia = 
                          {
                              'type': 'cardMedia',
                              'heading': 'Alexa',
                              'useColor': true,
                              'subPage': false,
                              'parent': undefined,
                              'items': [<PageItem>{   
                                          id: AliasPath + 'Media.PlayerAlexa', 
                                          adapterPlayerInstance: 'alexa2.0.',
                                          mediaDevice: 'G0XXXXXXXXXXXXXX', 
                                          speakerList: ['Überall','Gartenhaus','Esszimmer','Heimkino','Echo Dot Küche','Echo Spot Buero'],
                                          autoCreateALias : true
                                       }]
                          };
                          
                          let Sonos: PageMedia = 
                          {
                              'type': 'cardMedia',
                              'heading': 'Sonos',
                              'useColor': true,
                              'subPage': false,
                              'parent': undefined,
                              'items': [<PageItem>{   
                                          id: AliasPath + 'Media.PlayerSonos', 
                                          adapterPlayerInstance: "sonos.0.",
                                          mediaDevice: "192_168_1_212",
                                          speakerList: ['Terrasse'],
                                          autoCreateALias : true
                                       }]
                          };
                          
                          let SpotifyPremium: PageMedia = 
                          {
                              "type": "cardMedia",
                              "heading": "Spotify-Premium",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ 
                                          id: AliasPath + 'Media.PlayerSpotifyPremium', 
                                          adapterPlayerInstance: "spotify-premium.0.",
                                          speakerList: ['LENOVO-W11-01','Terrasse','Überall','Gartenhaus','Esszimmer','Heimkino','Echo Dot Küche','Echo Spot Buero'],
                                          colorMediaIcon: colorSpotify,
                                          colorMediaArtist: Yellow,
                                          colorMediaTitle: Yellow,
                                          autoCreateALias : true
                                       }] 
                          };
                          
                          let SqueezeboxRPC: PageMedia = 
                          {
                              "type": "cardMedia",
                              "heading": "SqueezeboxRPC",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ 
                                          id: "alias.0.Media.LMS.SqueezePlay", 
                                          adapterPlayerInstance: "squeezeboxrpc.0.Players.SqueezePlay.",
                                          speakerList: ['SqueezePlay']
                                       }] 
                          };
                          
                          let WZ_Heizung: PageThermo = 
                          {
                              "type": "cardThermo",
                              "heading": "WZ Thermostat",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ id: "alias.0.NSPanel1.HeizungWZ", minValue: 50, maxValue: 300 }]
                          };
                          
                          let Buero_Klimaanlage: PageThermo = 
                          {
                              "type": "cardThermo",
                              "heading": "Test Klimaanlage",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{   
                                          id: "alias.0.NSPanel_1.TestKlimaanlage", 
                                          minValue: 50, 
                                          maxValue: 250,
                                          popupThermoMode1: ['Auto','0','1','2','3'],
                                          popupThermoMode2: ['Auto','0','1','2','3','4','5'],
                                          popupThermoMode3: ['Auto','Manual','Boost',],
                                          popUpThermoName: ["Schwenk-Modus", 'Speed', 'Temperatur'],
                                          icon: 'fan',
                                          setThermoAlias: ['MODE1','MODE2','MODE3'],
                                          //setThermoDestTemp2: 'ACTUAL2'
                                       }]
                          };
                          
                          let Buero_Alarm: PageAlarm = 
                          {
                              "type": "cardAlarm",
                              "heading": "Alarm",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined,
                              "items": [<PageItem>{ id: "alias.0.Alarm" }]
                          };
                          
                          let button1Page: PageGrid =
                          {
                              'type': 'cardGrid',
                              'heading': 'Radio',
                              'useColor': true,
                              'subPage': false,
                              'parent': undefined,
                              'items': [
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.FFN', icon: 'radio', name: 'FFN', onColor: colorRadio},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Antenne' , icon: 'radio', name: 'Antenne Nds.', onColor: colorRadio},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.NDR2', icon: 'radio', name: 'NDR2', onColor: colorRadio},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Bob', icon: 'radio', name: 'Radio BOB', onColor: colorRadio},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Spotify', icon: 'spotify', name: 'Party Playlist', onColor: colorSpotify},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Alexa', icon: 'playlist-music', name: 'Playlist 2021', onColor: colorAlexa}
                              ]
                          };
                          
                          let button2Page: PageEntities =
                          {
                              'type': 'cardEntities',
                              'heading': 'Büro',
                              'useColor': true,
                              'subPage': false,
                              'parent': undefined,
                              'items': [
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Schreibtischlampe'},
                                  <PageItem>{ id: 'alias.0.NSPanel_1.Deckenbeleuchtung'}
                              ]
                          };
                          
                          //-- ENDE der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich ------------------
                          
                          
                          /********************************************************************************************************** */
                          //Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)
                          /********************************************************************************************************** */
                          
                          let Service: PageEntities =
                          {
                              "type": "cardEntities",
                              "heading": "NSPanel Service",
                              "useColor": true,
                              "subPage": false,
                              "parent": undefined, 
                              "items": [
                                  <PageItem>{ id: AliasPath + 'autoUpdate', name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                                  <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                                  <PageItem>{ navigate: true, id: "NSPanel_Firmware_Info", icon: "update", onColor: White, name: "Firmware Infos"},
                                  <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Screensaver"}
                              ]
                          };
                          
                                  //Subpage 1 von Subpages_2
                                  let NSPanel_Infos: PageEntities =
                                  {
                                      "type": "cardEntities",
                                      "heading": "NSPanel Infos",
                                      "useColor": true,
                                      "subPage": true,
                                      "parent": Service,
                                      "items": [
                                          <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: 'Hardware', icon: 'memory', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                                      ]
                                  };
                          
                                  //Subpage 2 von Subpages_2
                                  let NSPanel_Einstellungen: PageEntities =
                                  {
                                      'type': 'cardEntities',
                                      'heading': 'Screensaver',
                                      'useColor': true,
                                      'subPage': true,
                                      'parent': Service,
                                      'items': [
                                          <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: 'Brightness Tag', icon: 'brightness-5', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                                          <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: 'Brightness Nacht', icon: 'brightness-4', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                                          <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: 'Stunde Tag', icon: 'sun-clock', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                                          <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: 'Stunde Nacht', icon: 'sun-clock-outline', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                                      ]
                                  };
                          
                                  //Subpage 3 von Subpages_2
                                  let NSPanel_Firmware_Info: PageEntities =
                                  {
                                      'type': 'cardEntities',
                                      'heading': 'Firmware-Updates',
                                      'useColor': true,
                                      'subPage': true,
                                      'parent': Service,
                                      'items': [
                                          <PageItem>{ id: AliasPath + 'Tasmota.Version', name: 'Tasmota Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Display.TFTVersion', name: 'TFT-Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: 'Berry-Treiber', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                          <PageItem>{ id: AliasPath + 'Display.Model', name: 'NSPanel Version', offColor: MSYellow, onColor: MSYellow, useColor: true}
                                      ]
                                  };
                          
                          export const config: Config = {
                              panelRecvTopic: 'mqtt.0.SmartHome.NSPanel_1.tele.RESULT',       // anpassen
                              panelSendTopic: 'mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend',   // anpassen
                              firstScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Hourly.h0.PrecipitationProbability', ScreensaverEntityIcon: 'weather-pouring', ScreensaverEntityText: 'Regen', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100} },
                              secondScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.WindSpeed', ScreensaverEntityIcon: 'weather-windy', ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: 'km/h', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120} },
                              thirdScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.UVIndex', ScreensaverEntityIcon: 'solar-power', ScreensaverEntityText: 'UV', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 9} },
                              fourthScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity', ScreensaverEntityIcon: 'water-percent', ScreensaverEntityText: 'Luft', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65} },
                              alternativeScreensaverLayout: false,
                              autoWeatherColorScreensaverLayout: true,
                              mrIcon1ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER1', ScreensaverEntityIcon: 'light-switch', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: HMIOff  },
                              mrIcon2ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER2', ScreensaverEntityIcon: 'lightbulb', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: HMIOff  },
                              timeoutScreensaver: 10,
                              dimmode: 20,
                              active: 100, //Standard-Brightness TFT
                              screenSaverDoubleClick: true,
                              locale: 'de-DE',                    // en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
                              timeFormat: '%H:%M',                // currently not used 
                              dateFormat: '%A, %d. %B %Y',        // currently not used 
                              weatherEntity: 'alias.0.Wetter.Ullendorf',    // Dieser Alias muss erstellt werden, damit die 4 kleineren Icons (Wetter oder DP) angezeigt werden können
                              defaultOffColor: Off,
                              defaultOnColor: On,
                              defaultColor: Off,
                              defaultBackgroundColor: Black,    //New Parameter
                              temperatureUnit: '°C',
                              pages: [
                                      Seite1_Broker,        //Beispiel-Seite
                                      Buero_Seite_1,      //Beispiel-Seite
                                      SensorGrid,         //Beispiel-Seite
                                      //CardPowerExample,   //Beispiel-Seite
                                      //SqueezeboxRPC,      //Beispiel-Seite
                                      //Sonos,              //Beispiel-Seite
                                      //SpotifyPremium,     //Beispiel-Seite
                                      //Alexa,              //Beispiel-Seite
                                      Buero_Seite_2,      //Beispiel-Seite
                                      //Buero_Klimaanlage,  //Beispiel-Seite 
                                      Button_1,           //Beispiel-Seite
                                      Test_Licht2,        //Beispiel-Seite
                                      Test_Funktionen,    //Beispiel-Seite    
                                      Fenster_1,          //Beispiel-Seite
                                      Subpages_1,         //Beispiel-Seite
                                      WZ_Heizung,    //Beispiel-Seite
                                      Buero_Alarm,        //Beispiel-Seite
                          
                                      Service             //Auto-Alias Service Page
                              ],
                              subPages: [
                                          Abfall,                     //Beispiel-Unterseite
                                          WLAN,                       //Beispiel-Unterseite
                                          
                                          NSPanel_Infos,              //Auto-Alias Service Page
                                          NSPanel_Einstellungen,      //Auto-Alias Service Page
                                          NSPanel_Firmware_Info       //Auto-Alias Service Page
                              ],
                              button1Page: button1Page,   //Beispiel-Seite auf Button 1, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null, 
                              button2Page: button2Page    //Beispiel-Seite auf Button 2, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null,
                          };
                          
                          // _________________________________ Ab hier keine Konfiguration mehr _____________________________________
                          
                          
                          ArmilarA 1 Antwort Letzte Antwort
                          0
                          • C coto

                            @armilar

                            Danke, das werde ich morgen dann mal in Ruhe ausprobieren.

                            Zu Frage 2)
                            Die Seiten müssen in der Config eingetragen sein. Sind die drin unter Subpages?

                            Ich weiß jetzt nicht ob wir da aneinander vorbei sprechen.
                            Die Config ist fast Original. Ich fange gerade an mich da durchzutesten,

                            /*-----------------------------------------------------------------------
                            TypeScript v3.6.0.4 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar/@Sternmiere/@Britzelpuf
                            - abgestimmt auf TFT 45 / v3.6.0 / BerryDriver 6 / Tasmota 12.2.0
                            @joBr99 Projekt: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
                            NsPanelTs.ts (dieses TypeScript in ioBroker) Stable: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
                            icon_mapping.ts: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/icon_mapping.ts (TypeScript muss in global liegen)
                            ioBroker-Unterstützung: https://forum.iobroker.net/topic/50888/sonoff-nspanel
                            WIKI zu diesem Projekt unter: https://github.com/joBr99/nspanel-lovelace-ui/wiki (siehe Sidebar)
                            Icons unter: https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.html
                            *******************************************************************************
                            Achtung Änderung des Sonoff ESP-Temperatursensors
                            !!! Bitte "SetOption146 1" in der Tasmota-Console ausführen !!!
                            *******************************************************************************
                            ReleaseNotes:
                                Bugfixes und Erweiterungen:
                                    - cardQR (für Gäste WLAN)
                                    - cardThermo (Neues Design für Alias Thermostat und zusätzlich für Alias Klimaanlage)
                                    - 08.05.2022 - v2.9.0 - Menüpfeile bei HardwareButtons (button1Page; button2Page) mit Navigation auf Page 0
                                    - 08.05.2022 - v2.9.0 - Standard-Brightness über neuen Parameter active einstellbar (Test mit 2.9.3)
                                    - 08.05.2022 - v2.9.0 - Schalter (Licht, Dimmer, Hue, etc) in cardGrid lassen sich wieder schalten
                                    - 14.06.2022 - v2.9.0 - Aktion auf Submenüs schaltet unmittelbar auf vorheriges Mainmenu (Many thanks to Grrzzz)
                                    - 14.06.2022 - v2.9.0 - Menü-Pfeile in Subpages (z.B. card QR, cardMedia, etc) (Many thanks to Grrzzz)
                                    - 15.06.2022 - v3.0.0 - Date/Time im Screensaver auf Basis localString (de-DE/en-EN/nl-NL/etc.)
                                    - 16.06.2022 - v3.0.0 - Multilingual - config.locale (en-EN, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.)
                                    - 16.06.2022 - v3.0.0 - Bugfix by Grrzzz - Subpages
                                    - 18.06.2022 - v3.1.0 - Längere Textfelder in cardEntities
                                    - 18.06.2022 - V3.1.0 - Detail-Page Lights/Shutter hat neuen Parameter "id"
                                    - 19.06.2022 - v3.1.0 - Bugfix toLocalTimeString in en-EN/en-US
                                    - 19.06.2022 - v3.1.0 - Fehler in findLocale abgefangen
                                    - 19.06.2022 - v3.1.0 - Umstellung auf "Home Assistant" Sprachfile
                                    - 19.06.2022 - v3.1.0 - Alias "light" und "socket" haben optionalen Parameter icon2 für negative Zustände
                                    - 29.06.2022 - v3.1.1 - Bugfix Github #286 (Active Page) + Bugfix pageThermo, pageMedia, pageAlarm as first Page
                                    - 25.08.2022 - v3.1.0 - Code-Verbesserungen (klein0r)
                                    - 26.08.2022 - v3.2.0 - pageItem mit CIE (XY) Parameter für ColorWheel (Steuerung für z.B Deconz-Farben bei denen Hue nicht greift)
                                    - 28.08.2022 - v3.2.0 - Wechsel zwischen Weather-Forecast und eigenen Datenpunkten im Screensaver (minütlich)
                                    - 28.08.2022 - v3.2.0 - Bugfix für 3.2.0 in GenerateDetailPage: Color-Language nicht über findLocales, da nicht in Sprachfile enthalten
                                    - 29.08.2022 - v3.3.0 - Upgrade TFT 40
                                    - 29.08.2022 - v3.3.1 - Upgrade TFT 41
                                    - 04.09.2022 - v3.3.1 - Überarbeitung und BugFix für cardAlarm
                                    - 13.09.2022 - v3.3.1.3 BugFix Screensaver Toggle
                                    - 13.09.2022 - v3.3.1.3 Überarbeitung und BugFix und Refresh Features für cardMedia (Breaking Changes)
                                    - 13.09.2022 - v3.3.1.3 Hinzufügen von SpotifyPremium, Sonos und Chromecast (Google home) zur cardMedia-Logik
                                    - 15.09.2022 - V3.4.0 - BugFix Dimmode
                                    - 15.09.2022 - v3.4.0   Upgrade TFT 42
                                    - 15.09.2022 - V3.4.0 - Colormode für Screensaver + AutoColor WeatherForecast
                                    - 16.09.2022 - v3.4.0.1 Visualisierung der Relay Zustände (MRIcons) im Screensaver + Bugfix Screensaver MRIcon2
                                    - 17.09.2022 - v3.4.0.2 Bugfix for screensaver icons with scaled colors
                                    - 17.09.2022 - v3.4.0.3 Bugfix bNext / bPrev by joBr99
                                    - 18.09.2022 - v3.4.0.4 Add On/Off Colors in config.mrIcon1ScreensaverEntity and config.mrIcon2ScreensaverEntity
                                    - 19.09.2022 - v3.4.0.5 Add Mode to cardThermo (Alias Thermostat)
                                    - 03.10.2022 - v3.4.0.6 Add 5 Entities in US Panel Version to cardEntities
                                    - 03.10.2022 - v3.4.0.6 Fix screenSaverDoubleClick
                                    - 03.10.2022 - v3.4.0.6 Add cardPower (experimental)
                                    - 05.10.2022 - v3.4.0.6 Add sueezeboxrpc to cardMedia
                                    - 07.10.2022 - v3.4.0.6 Time-configurable change for screensaver icons
                                    - 07.10.2022 - v3.5.0   Upgrade TFT 43
                                    - 07.10.2022 - v3.5.0   Add Backgroundcolor to Pages
                                    - 08.10.2022 - v3.5.0   Add Tilt-Slider and TILT_Fucntions (Open/Stop/Close) to Blinds/Cover/Shutter popUp
                                    - 12.10.2022 - v3.5.0   Add PageNavigation via Datapoint
                                    - 25.10.2022 - v3.5.0   Add New Parameters to popUpNotify / Layout 2
                                    - 26.10.2022 - v3.5.0.1 Fix Thermostat for tado Support (by Sternmiere)
                                    - 27.10.2022 - v3.5.0.1 Add VirtualDevice Gate
                                    - 27.10.2022 - v3.5.0.2 Applied Boy Scout Rule (Fixed some typos, changed var to let, fixed min/max colorTemp Bug)
                                    - 30.10.2022 - v3.5.0.3 Fixed Media Play/Pause icon for alexa (and others) devices
                                    - 31.10.2022 - v3.5.0.4 Reengineering Media Subscriptions
                                    - 02.11.2022 - v3.5.0.5 Page navigation continues with page 0 from the last page
                                    - 04.11.2022 - v3.5.0.5 Create Auto-Alias for Service Pages
                                    - 07.11.2022 - v3.5.0.5 Create Auto-Alias for Alexa2, Spotify-Premium, Sonos
                                    - 08.11.2022 - v3.5.0.5 Create Auto-Alias for Wheather-Forcast (Screensaver Big-Icon)
                                    - 07.10.2022 - v3.6.0   Upgrade TFT 45
                                    - 09.11.2022 - v3.6.0   Add new Alias-DeviceTyp cie (control colors with XY)
                                    - 16.11.2022 - v3.6.0   Control Relay 1 + 2 via Datapoints
                                    - 17.11.2022 - v3.6.0   Add Datapoint to Control Screensaver-Dimmode
                                    - 17.11.2022 - v3.6.0   Change to Page after bExit 
                                    - 18.11.2022 - v3.6.0   Add cardChart by fumanchi (only on DEV)
                                    - 24.11.2022 - v3.6.0   Add Background Color Switch via DP
                                    - 26.11.2022 - v3.6.0   Add cardMedia Colors
                                    - 26.11.2022 - v3.6.0   Add cardThermostat Popup 
                                    - 28.11.2022 - v3.6.0.1 Bugfix in bExit
                                    - 29.11.2022 - v3.6.0.2 Update Berry Version 6
                                    - 30.11.2022 - v3.6.0.3 Bugfix string/number compare current BerryDriver (DP as string)
                                    - 05.12.2022 - v3.6.0.4 Add bHome to Navigation
                                    - 05.12.2022 - v3.6.0.4 Add changeable Center-Icon in cardPower with Color and Value
                                    - 08.12.2022 - v3.6.0.4 Bugfix - Use MRIcons in Screensaver with null
                                    - 11.12.2022 - v3.6.0.4 Add new DP to show active page
                                    - 13.12.2022 - v3.6.0.4 Add Sensor-Values to cardGrid
                                    - 13.12.2022 - v3.6.0.4 Hotfix - Update screensaver temperature without weather forecast
                                    Implemented in 3.6.1 DEV
                                    - XX.12.2022 - v3.6.1   Add cardChart on PROD (implemented but working with v3.6.1 --> next TFT)
                                    - XX.12.2022 - v3.6.1   Add Shuffle to Media Player
                                    - XX.12.2022 - v3.6.1   Remove Speakerlist and Add 5 GridCard PageItems
                                    - XX.12.2022 - v3.6.1   Add In_Sel PopUp
                                    Todo's for 3.6.1
                                    - XX.12.2022 - v3.6.1 Add Fan
                            *****************************************************************************************************************
                            * Falls Aliase durch das Skript erstellt werden sollen, muss in der JavaScript Instanz "setObect" gesetzt sein! *
                            *****************************************************************************************************************
                            Wenn Rule definiert, dann können die Hardware-Tasten ebenfalls für Seitensteuerung (dann nicht mehr als Relais) genutzt werden
                            Tasmota Konsole:
                                Rule2 on Button1#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button1"} endon on Button2#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button2"} endon
                                Rule2 1 (Rule aktivieren)
                                Rule2 0 (Rule deaktivieren)
                            Mögliche Seiten-Ansichten:
                                screensaver Page    - wird nach definiertem Zeitraum (config) mit Dimm-Modus aktiv (Uhrzeit, Datum, Aktuelle Temperatur mit Symbol)
                                                      (die 4 kleineren Icons können als Wetter-Vorschau + 4Tage (Symbol + Höchsttemperatur) oder zur Anzeige definierter Infos konfiguriert werden)
                                cardEntities Page   - 4 vertikale angeordnete Steuerelemente - auch als Subpage
                                cardGrid Page       - 6 horizontal angeordnete Steuerelemente in 2 Reihen a 3 Steuerelemente - auch als Subpage
                                cardThermo Page     - Thermostat mit Solltemperatur, Isttemperatur, Mode - Weitere Eigenschaften können im Alias definiert werden
                                cardMedia Page      - Mediaplayer - Ausnahme: Alias sollte mit Alias-Manager automatisch über Alexa-Verzeichnis Player angelegt werden
                                cardAlarm Page      - Alarmseite mit Zustand und Tastenfeld
                                cardPower Page      - Energiefluss
                            Popup-Pages:
                                popupLight Page     - in Abhängigkeit zum gewählten Alias werden "Helligkeit", "Farbtemperatur" und "Farbauswahl" bereitgestellt
                                popupShutter Page   - die Shutter-Position (Rollo, Jalousie, Markise, Leinwand, etc.) kann über einen Slider verändert werden.
                                popupNotify Page    - Info - Seite mit Headline Text und Buttons - Intern für manuelle Updates / Extern zur Befüllung von Datenpunkten unter 0_userdata
                                screensaver Notify  - Über zwei externe Datenpunkte in 0_userdata können "Headline" und "Text" an den Screensaver zur Info gesendet werden
                            Mögliche Aliase: (Vorzugsweise mit ioBroker-Adapter "Geräte verwalten" konfigurieren, da SET, GET, ACTUAL, etc. verwendet werden)
                                Info                - Werte aus Datenpunkt
                                Schieberegler       - Slider numerische Werte (SET/ACTUAL)
                                Lautstärke          - Volume (SET/ACTUAL) und MUTE
                                Lautstärke-Gruppe   - analog Lautstärke
                                Licht               - An/Aus (Schalter)
                                Steckdose           - An/Aus (Schalter)
                                Dimmer              - An/Aus, Brightness
                                Farbtemperatur      - An/Aus, Farbtemperatur und Brightness
                                HUE-Licht           - Zum Schalten von Color-Leuchtmitteln über HUE-Wert, Brightness, Farbtemperatur, An/Aus (HUE kann auch fehlen)
                                RGB-Licht           - RGB-Leuchtmitteln/Stripes welche Rot/Grün/ und Blau separat benötigen (Tasmota, WifiLight, etc.) + Brightness, Farbtemperatur
                                RGB-Licht-einzeln   - RGB-Leuchtmitteln/Stripes welche HEX-Farbwerte benötigen (Tasmota, WifiLight, etc.) + Brightness, Farbtemperatur
                                Jalousien           - Up, Stop, Down, Position
                                Fenster             - Sensor open
                                Tür                 - Sensor open
                                Verschluss          - Türschloss SET/ACTUAL/OPEN
                                Taste               - Für Szenen oder Radiosender, etc. --> Nur Funktionsaufruf - Kein Taster wie MonoButton - True/False
                                Tastensensor        - analog Taste
                                Thermostat          - Aktuelle Raumtemperatur, Setpoint, etc.
                                Klimaanlage         - Buttons zur Steuerung der Klimaanlage im unteren Bereich
                                Temperatur          - Anzeige von Temperatur - Datenpunkten, analog Info
                                Feuchtigkeit        - Anzeige von Humidity - Datenpunkten, analog Info
                                Medien              - Steuerung von Alexa - Über Alias-Manager im Verzeichnis Player automatisch anlegen (Geräte-Manager funktioniert nicht)
                                Wettervorhersage    - Aktuelle Außen-Temperatur (Temp) und aktuelles AccuWeather-Icon (Icon) für Screensaver
                            Interne Sonoff-Sensoren (über Tasmota):
                                ESP-Temperatur      - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden --> SetOption146 1
                                Temperatur          - Raumtemperatur - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden
                                                      (!!! Achtung: der interne Sonoff-Sensor liefert keine exakten Daten, da das NSPanel-Board und der ESP selbst Hitze produzieren !!!
                                                      ggf. Offset einplanen oder besser einen externen Sensor über Zigbee etc. verwenden)
                                Timestamp           - wird in 0_userdata.0. Zeitpunkt der letzten Sensorübertragung
                            Tasmota-Status0 - (zyklische Ausführung)
                                liefert relevanten Tasmota-Informationen und kann bei Bedarf in "function get_tasmota_status0()" erweitert werden. Daten werden in 0_userdata.0. abgelegt
                            Erforderliche Adapter:
                                AccuWeather:        - Bei Nutzung der Wetterfunktionen (und zur Icon-Konvertierung) im Screensaver
                                Alexa2:             - Bei Nutzung der dynamischen SpeakerList in der cardMedia
                                Geräte verwalten    - Für Erstellung der Aliase
                                Alias-Manager       - !!! ausschließlich für MEDIA-Alias
                                MQTT-Adapter        - Für Kommunikation zwischen Skript und Tasmota
                                JavaScript-Adapter
                            Upgrades in Konsole:
                                Tasmota BerryDriver     : Backlog UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be; Restart 1
                                TFT EU STABLE Version   : FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                            ---------------------------------------------------------------------------------------
                            */
                            let Icons = new IconsSelector();
                            let timeoutSlider: any;
                            let manually_Update = false;
                            const autoCreateAlias = true;  //Für diese Option muss der Haken in setObjects in deiner javascript.X. Instanz gesetzt sein.  
                            
                            const NSPanel_Path = '0_userdata.0.NSPanel.1.';
                            const NSPanel_Alarm_Path = '0_userdata.0.NSPanel.'; //Neuer Pfad für gemeinsame Nutzung durch mehrere Panels (bei Nutzung der cardAlarm)
                            
                            let AliasPath: string = 'alias.0.' + NSPanel_Path.substring(13, NSPanel_Path.length);
                            const Debug = false;
                            
                            // Variablen zur Steuerung der Wettericons auf dem Screensaver (Steuerung in 0_userdata.0.XPANELX.ScreensaverInfo)
                            // Wenn weatherForecastTimer auf true, dann Wechsel zwischen Datenpunkten und Wettervorhersage (30 Sekunden nach Minute (Zeit))
                            // Wenn weatherForecastTimer auf false, dann Möglichkeit über weatherForecast, ob Datenpunkte oder Wettervorhersage (true = WeatherForecast/false = Datenpunkte)
                            let weatherForecast: boolean; // Änderung zum Video --> Einstellung siehe Wiki
                            
                            const HMIOff:           RGB = { red:  68, green: 115, blue: 158 };     // Blau-Off - Original Entity Off
                            const HMIOn:            RGB = { red:   3, green: 169, blue: 244 };     // Blau-On
                            const HMIDark:          RGB = { red:  29, green:  29, blue:  29 };     // Original Background Color
                            const Off:              RGB = { red: 253, green: 128, blue:   0 };     // Orange-Off - schönere Farbübergänge
                            const On:               RGB = { red: 253, green: 216, blue:  53 };
                            const MSRed:            RGB = { red: 251, green: 105, blue:  98 };
                            const MSYellow:         RGB = { red: 255, green: 235, blue: 156 };
                            const MSGreen:          RGB = { red: 121, green: 222, blue: 121 };
                            const Red:              RGB = { red: 255, green:   0, blue:   0 };
                            const White:            RGB = { red: 255, green: 255, blue: 255 };
                            const Yellow:           RGB = { red: 255, green: 255, blue:   0 };
                            const Green:            RGB = { red:   0, green: 255, blue:   0 };
                            const Blue:             RGB = { red:   0, green:   0, blue: 255 };
                            const DarkBlue:         RGB = { red:   0, green:   0, blue: 136 };
                            const Gray:             RGB = { red: 136, green: 136, blue: 136 };
                            const Black:            RGB = { red:   0, green:   0, blue:   0 };
                            const colorSpotify:     RGB = { red:  30, green: 215, blue:  96 };
                            const colorAlexa:       RGB = { red:  49, green: 196, blue: 243 };
                            const colorRadio:       RGB = { red: 255, green: 127, blue:   0 };
                            const BatteryFull:      RGB = { red:  96, green: 176, blue:  62 };
                            const BatteryEmpty:     RGB = { red: 179, green:  45, blue:  25 };
                            
                            //Dynamische Indikatoren
                            const colorScale0:      RGB = { red:   99, green: 190, blue: 123 };
                            const colorScale1:      RGB = { red:  129, green: 199, blue: 126 };
                            const colorScale2:      RGB = { red:  161, green: 208, blue: 127 };
                            const colorScale3:      RGB = { red:  129, green: 217, blue: 126 };
                            const colorScale4:      RGB = { red:  222, green: 226, blue: 131 };
                            const colorScale5:      RGB = { red:  254, green: 235, blue: 132 };
                            const colorScale6:      RGB = { red:  255, green: 210, blue: 129 };
                            const colorScale7:      RGB = { red:  251, green: 185, blue: 124 };
                            const colorScale8:      RGB = { red:  251, green: 158, blue: 117 };
                            const colorScale9:      RGB = { red:  248, green: 131, blue: 111 };
                            const colorScale10:     RGB = { red:  248, green: 105, blue: 107 };
                            
                            //Screensaver Default Theme Colors
                            const scbackground:     RGB = { red:   0, green:    0, blue:   0};
                            const scbackgroundInd1: RGB = { red: 255, green:   0,  blue:   0};
                            const scbackgroundInd2: RGB = { red: 121, green: 222,  blue: 121};
                            const scbackgroundInd3: RGB = { red: 255, green: 255,  blue:   0};
                            const sctime:           RGB = { red: 255, green:  255, blue: 255};
                            const sctimeAMPM:       RGB = { red: 255, green:  255, blue: 255};
                            const scdate:           RGB = { red: 255, green:  255, blue: 255};
                            const sctMainIcon:      RGB = { red: 255, green:  255, blue: 255};
                            const sctMainText:      RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast1:     RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast2:     RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast3:     RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast4:     RGB = { red: 255, green:  255, blue: 255};
                            const sctF1Icon:        RGB = { red: 255, green:  235, blue: 156};
                            const sctF2Icon:        RGB = { red: 255, green:  235, blue: 156};
                            const sctF3Icon:        RGB = { red: 255, green:  235, blue: 156};
                            const sctF4Icon:        RGB = { red: 255, green:  235, blue: 156};
                            const sctForecast1Val:  RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast2Val:  RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast3Val:  RGB = { red: 255, green:  255, blue: 255};
                            const sctForecast4Val:  RGB = { red: 255, green:  255, blue: 255};
                            const scbar:            RGB = { red: 255, green:  255, blue: 255};
                            const sctMainIconAlt:   RGB = { red: 255, green:  255, blue: 255};
                            const sctMainTextAlt:   RGB = { red: 255, green:  255, blue: 255};
                            const sctTimeAdd:       RGB = { red: 255, green:  255, blue: 255};
                            
                            //Auto-Weather-Colors
                            const swClearNight:     RGB = { red: 150, green: 150, blue: 100};
                            const swCloudy:         RGB = { red:  75, green:  75, blue:  75};
                            const swExceptional:    RGB = { red: 255, green:  50, blue:  50};
                            const swFog:            RGB = { red: 150, green: 150, blue: 150};
                            const swHail:           RGB = { red: 200, green: 200, blue: 200};
                            const swLightning:      RGB = { red: 200, green: 200, blue:  0};
                            const swLightningRainy: RGB = { red: 200, green: 200, blue: 150};
                            const swPartlycloudy:   RGB = { red: 150, green: 150, blue: 150};
                            const swPouring:        RGB = { red:  50, green:  50, blue: 255};
                            const swRainy:          RGB = { red: 100, green: 100, blue: 255};
                            const swSnowy:          RGB = { red: 150, green: 150, blue: 150};
                            const swSnowyRainy:     RGB = { red: 150, green: 150, blue: 255};
                            const swSunny:          RGB = { red: 255, green: 255, blue:   0};
                            const swWindy:          RGB = { red: 150, green: 150, blue: 150};
                            
                            let vwIconColor = [];
                            
                            
                            //-- Anfang der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich ----------------
                            
                            let Seite1_Broker: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Meine 1 Seite",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "Schlafzimmer Lampe", interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "RGB-Licht", minValueBrightness: 0, maxValueBrightness: 100, interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "HUE-Licht-CT", minValueBrightness: 0, maxValueBrightness: 70, minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel1.SZLampe", name: "HUE-Licht-Color", minValueColorTemp: 500, maxValueColorTemp: 6500, interpolateColor: true}
                                ]
                            };
                            
                            let SensorGrid: PageGrid =
                            {
                                "type": "cardGrid",
                                "heading": "Sensor Werte",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur", name: "Außentemp. °C", offColor: MSRed, onColor: MSGreen, useValue: true },
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte %", offColor: MSYellow, onColor: MSYellow , useValue: true },
                                    <PageItem>{ id: "alias.0.NSPanel_1.Taupunkt", name: "Taupunkt °C", offColor: MSRed, onColor: MSGreen, useValue: true },
                                    <PageItem>{ id: "alias.0.NSPanel_1.UV_Index", name: "UV Index", offColor: White , onColor: White, useValue: true },
                                    <PageItem>{ id: "alias.0.NSPanel_1.Windstaerke", name: "Windstärke bft", offColor: White , onColor: White, useValue: true },
                                    <PageItem>{ id: "alias.0.NSPanel_1.Luftdruck", name: "Luftdruck hPa", offColor: White , onColor: White, useValue: true }
                                ]
                            };
                            
                            //Only DEV --> Test
                            let ChartDemo: PageChart =
                            {
                                "type": "cardChart",
                                "heading": "Charts Demo",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ 
                                            id: 'alias.0.NSPanel_1.cardChart', 
                                            yAxis: 'Gas [kWh]', 
                                            yAxisTicks: [2,4,6,8,10,12,14], 
                                            onColor: Yellow
                                         }]
                            };
                            
                            let CardPowerExample: PagePower =
                            {
                                "type": "cardPower",
                                "heading": "cardPower Emulator",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Power.PowerCard' },
                                ]
                            };
                            
                            let Test_Licht2: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Color Aliase 2",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    //Beispiel für RGB Light mit neuem PageItem-Parameter colormode: "xy" alternativ colormode: "rgb" oder weglassen
                                    //Steuert im z.B. DeConz Adapter unter Lampen die Farben per CIE (XY)
                                    <PageItem>{ id: "alias.0.NSPanel_2.WZ_E14_Fenster_rechts", name: "Fensterbank rechts", minValueBrightness: 0, maxValueBrightness: 100, minValueColorTemp: 500, maxValueColorTemp: 150, interpolateColor: true, colormode: "xy"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestFarbtemperatur", name: "Farbtemperatur", interpolateColor: true},
                                ]
                            };
                            
                            let Test_Funktionen: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Sonstige Aliase",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestLautstärke", offColor: MSRed, onColor: MSGreen, name: "Echo Spot Büro", minValue: 0, maxValue: 100 },
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestTemperatur",name: "Temperatur außen", icon: "thermometer", onColor: White },
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestFeuchtigkeit", name: "Luftfeuchte außen", icon: "water-percent", unit: "%H", onColor: White },
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestInfo", name: "Windstärke", icon: "wind-power-outline", offColor: MSRed, onColor: MSGreen, unit: "bft", minValue: 0, maxValue: 12, interpolateColor: true, useColor: true }
                                ]
                            };
                            
                            let Buero_Seite_1: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Büro",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Testlampe2", name: "Filamentlampe", minValueBrightness: 0, maxValueBrightness: 70, interpolateColor: true},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", icon2: "power",offColor: MSRed, onColor: MSGreen}
                                ]
                            };
                            
                            let Fenster_1: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Fenster und Türen",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Haustuer", offColor: MSRed, onColor: MSGreen, name: "Haustür"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "blinds-horizontal", offColor: White, onColor: Yellow, name: "Büro", secondRow: "Hier Text für 2. Zeile"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestDoorlock", offColor: MSRed, onColor: MSGreen, name: "Türschloss"},
                                ]
                            };
                            //<PageItem>{ id: "alias.0.NS-Panel.Buero.Rollade", icon: "blinds-horizontal", offColor: White, onColor: Yellow, name: "Büro", secondRow: "Hier Text für 2. Zeile"},
                            let Button_1: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Button Aliase",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestTastensensor", name: "Tastensensor (FFN)"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: "radio", name: "Taste (NDR2)", onColor: colorRadio},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestVentil1", icon: "valve-open", icon2: "valve-closed",offColor: MSRed, onColor: MSGreen, name: "Test-Ventil 1"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Radio.NDR2", icon: 'alarm-light', name: "Alert mit Zielseite", offColor: MSGreen, onColor: MSRed, targetPage: 'Abfall', buttonText: 'Popup'},
                                ]
                            };
                            
                            let Subpages_1: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "Test Subpages",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ navigate: true, id: "Abfall", onColor: White, name: "Abfallkalender"},
                                    <PageItem>{ navigate: true, id: "WLAN", onColor: White, name: "Gäste WLAN"},
                                ]
                            };
                            
                                    //Subpage 1 von Subpages_1
                                    let Abfall: PageEntities =
                                    {
                                        "type": "cardEntities",
                                        "heading": "Abfallkalender",
                                        "useColor": true,
                                        "subPage": true,
                                        "parent": Subpages_1,
                                        "items": [
                                            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event1",icon: "trash-can"},
                                            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event2",icon: "trash-can"},
                                            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event3",icon: "trash-can"},
                                            <PageItem>{ id: "alias.0.NSPanel_1.Abfall.event4",icon: "trash-can"}
                                        ]
                                    };
                            
                                    //Subpage 2 von Subpages_1
                                    let WLAN: PageQR = 
                                    {
                                        "type": "cardQR",
                                        "heading": "Gäste WLAN",
                                        "useColor": true,
                                        "subPage": true,
                                        "parent": Subpages_1,
                                        "items": [<PageItem>{ id: "alias.0.NSPanel_1.Guest_Wifi", hidePassword: true }]
                                    };
                            
                            let Buero_Seite_2: PageGrid =
                            {
                                "type": "cardGrid",
                                "heading": "Büro 2",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [
                                    <PageItem>{ id: "alias.0.NSPanel_1.Schreibtischlampe", name: "Schreibtisch"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Deckenbeleuchtung", name: "Deckenlampe"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestFenster", offColor: MSRed, onColor: MSGreen, name: "Büro Fenster"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Luftreiniger", icon: "power", offColor: MSRed, onColor: MSGreen},
                                    <PageItem>{ id: "alias.0.NSPanel_1.TestBlind", icon: "projector-screen", onColor: White, name: "Beamer", secondRow: "auch Text"},
                                    <PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "play", onColor: White, name: "TuneIn"}
                                ]
                            };
                            
                            let Radiosender: PageGrid =
                            {
                                "type": "cardGrid",
                                "heading": "Büro 2",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ id: "alias.0.NSPanel_1.Radio.Bob", icon: "radio", name: "Radio BOB", onColor: colorRadio}]
                            };
                            
                            // NEW: Neue Definition von Medien-Aliasen
                            // adapterPlayerInstance = alexa2.0. or spotify-premium.0. or sonos.0. or chromecast.0.
                            // MEDIA ALIASE können auch per JS-Script erstellt werden https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen#medien---cardmedia
                            let Alexa: PageMedia = 
                            {
                                'type': 'cardMedia',
                                'heading': 'Alexa',
                                'useColor': true,
                                'subPage': false,
                                'parent': undefined,
                                'items': [<PageItem>{   
                                            id: AliasPath + 'Media.PlayerAlexa', 
                                            adapterPlayerInstance: 'alexa2.0.',
                                            mediaDevice: 'G0XXXXXXXXXXXXXX', 
                                            speakerList: ['Überall','Gartenhaus','Esszimmer','Heimkino','Echo Dot Küche','Echo Spot Buero'],
                                            autoCreateALias : true
                                         }]
                            };
                            
                            let Sonos: PageMedia = 
                            {
                                'type': 'cardMedia',
                                'heading': 'Sonos',
                                'useColor': true,
                                'subPage': false,
                                'parent': undefined,
                                'items': [<PageItem>{   
                                            id: AliasPath + 'Media.PlayerSonos', 
                                            adapterPlayerInstance: "sonos.0.",
                                            mediaDevice: "192_168_1_212",
                                            speakerList: ['Terrasse'],
                                            autoCreateALias : true
                                         }]
                            };
                            
                            let SpotifyPremium: PageMedia = 
                            {
                                "type": "cardMedia",
                                "heading": "Spotify-Premium",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ 
                                            id: AliasPath + 'Media.PlayerSpotifyPremium', 
                                            adapterPlayerInstance: "spotify-premium.0.",
                                            speakerList: ['LENOVO-W11-01','Terrasse','Überall','Gartenhaus','Esszimmer','Heimkino','Echo Dot Küche','Echo Spot Buero'],
                                            colorMediaIcon: colorSpotify,
                                            colorMediaArtist: Yellow,
                                            colorMediaTitle: Yellow,
                                            autoCreateALias : true
                                         }] 
                            };
                            
                            let SqueezeboxRPC: PageMedia = 
                            {
                                "type": "cardMedia",
                                "heading": "SqueezeboxRPC",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ 
                                            id: "alias.0.Media.LMS.SqueezePlay", 
                                            adapterPlayerInstance: "squeezeboxrpc.0.Players.SqueezePlay.",
                                            speakerList: ['SqueezePlay']
                                         }] 
                            };
                            
                            let WZ_Heizung: PageThermo = 
                            {
                                "type": "cardThermo",
                                "heading": "WZ Thermostat",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ id: "alias.0.NSPanel1.HeizungWZ", minValue: 50, maxValue: 300 }]
                            };
                            
                            let Buero_Klimaanlage: PageThermo = 
                            {
                                "type": "cardThermo",
                                "heading": "Test Klimaanlage",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{   
                                            id: "alias.0.NSPanel_1.TestKlimaanlage", 
                                            minValue: 50, 
                                            maxValue: 250,
                                            popupThermoMode1: ['Auto','0','1','2','3'],
                                            popupThermoMode2: ['Auto','0','1','2','3','4','5'],
                                            popupThermoMode3: ['Auto','Manual','Boost',],
                                            popUpThermoName: ["Schwenk-Modus", 'Speed', 'Temperatur'],
                                            icon: 'fan',
                                            setThermoAlias: ['MODE1','MODE2','MODE3'],
                                            //setThermoDestTemp2: 'ACTUAL2'
                                         }]
                            };
                            
                            let Buero_Alarm: PageAlarm = 
                            {
                                "type": "cardAlarm",
                                "heading": "Alarm",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined,
                                "items": [<PageItem>{ id: "alias.0.Alarm" }]
                            };
                            
                            let button1Page: PageGrid =
                            {
                                'type': 'cardGrid',
                                'heading': 'Radio',
                                'useColor': true,
                                'subPage': false,
                                'parent': undefined,
                                'items': [
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.FFN', icon: 'radio', name: 'FFN', onColor: colorRadio},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Antenne' , icon: 'radio', name: 'Antenne Nds.', onColor: colorRadio},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.NDR2', icon: 'radio', name: 'NDR2', onColor: colorRadio},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Bob', icon: 'radio', name: 'Radio BOB', onColor: colorRadio},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Spotify', icon: 'spotify', name: 'Party Playlist', onColor: colorSpotify},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Alexa', icon: 'playlist-music', name: 'Playlist 2021', onColor: colorAlexa}
                                ]
                            };
                            
                            let button2Page: PageEntities =
                            {
                                'type': 'cardEntities',
                                'heading': 'Büro',
                                'useColor': true,
                                'subPage': false,
                                'parent': undefined,
                                'items': [
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Schreibtischlampe'},
                                    <PageItem>{ id: 'alias.0.NSPanel_1.Deckenbeleuchtung'}
                                ]
                            };
                            
                            //-- ENDE der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich ------------------
                            
                            
                            /********************************************************************************************************** */
                            //Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)
                            /********************************************************************************************************** */
                            
                            let Service: PageEntities =
                            {
                                "type": "cardEntities",
                                "heading": "NSPanel Service",
                                "useColor": true,
                                "subPage": false,
                                "parent": undefined, 
                                "items": [
                                    <PageItem>{ id: AliasPath + 'autoUpdate', name: "Auto-Updates" ,icon: "update", offColor: MSRed, onColor: MSGreen},
                                    <PageItem>{ navigate: true, id: "NSPanel_Infos", icon: "information-outline", onColor: White, name: "NSPanel Infos"},
                                    <PageItem>{ navigate: true, id: "NSPanel_Firmware_Info", icon: "update", onColor: White, name: "Firmware Infos"},
                                    <PageItem>{ navigate: true, id: "NSPanel_Einstellungen", icon: "wrench-outline", onColor: White, name: "Screensaver"}
                                ]
                            };
                            
                                    //Subpage 1 von Subpages_2
                                    let NSPanel_Infos: PageEntities =
                                    {
                                        "type": "cardEntities",
                                        "heading": "NSPanel Infos",
                                        "useColor": true,
                                        "subPage": true,
                                        "parent": Service,
                                        "items": [
                                            <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: 'Hardware', icon: 'memory', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: "ESP Temperatur", icon: "thermometer", unit: "°C", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: "Uptime", icon: "timeline-clock-outline", offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: "Wifi-Signal", icon: "signal-distance-variant", unit: "dBm", offColor: MSYellow, onColor: MSYellow, useColor: true}
                                        ]
                                    };
                            
                                    //Subpage 2 von Subpages_2
                                    let NSPanel_Einstellungen: PageEntities =
                                    {
                                        'type': 'cardEntities',
                                        'heading': 'Screensaver',
                                        'useColor': true,
                                        'subPage': true,
                                        'parent': Service,
                                        'items': [
                                            <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: 'Brightness Tag', icon: 'brightness-5', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 5, maxValue: 10},
                                            <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: 'Brightness Nacht', icon: 'brightness-4', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 4},
                                            <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: 'Stunde Tag', icon: 'sun-clock', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23},
                                            <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: 'Stunde Nacht', icon: 'sun-clock-outline', offColor: MSYellow, onColor: MSYellow, useColor: true, minValue: 0, maxValue: 23}
                                        ]
                                    };
                            
                                    //Subpage 3 von Subpages_2
                                    let NSPanel_Firmware_Info: PageEntities =
                                    {
                                        'type': 'cardEntities',
                                        'heading': 'Firmware-Updates',
                                        'useColor': true,
                                        'subPage': true,
                                        'parent': Service,
                                        'items': [
                                            <PageItem>{ id: AliasPath + 'Tasmota.Version', name: 'Tasmota Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Display.TFTVersion', name: 'TFT-Firmware', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: 'Berry-Treiber', offColor: MSYellow, onColor: MSYellow, useColor: true},
                                            <PageItem>{ id: AliasPath + 'Display.Model', name: 'NSPanel Version', offColor: MSYellow, onColor: MSYellow, useColor: true}
                                        ]
                                    };
                            
                            export const config: Config = {
                                panelRecvTopic: 'mqtt.0.SmartHome.NSPanel_1.tele.RESULT',       // anpassen
                                panelSendTopic: 'mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend',   // anpassen
                                firstScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Hourly.h0.PrecipitationProbability', ScreensaverEntityIcon: 'weather-pouring', ScreensaverEntityText: 'Regen', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100} },
                                secondScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.WindSpeed', ScreensaverEntityIcon: 'weather-windy', ScreensaverEntityText: "Wind", ScreensaverEntityUnitText: 'km/h', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120} },
                                thirdScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.UVIndex', ScreensaverEntityIcon: 'solar-power', ScreensaverEntityText: 'UV', ScreensaverEntityUnitText: '', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 9} },
                                fourthScreensaverEntity: { ScreensaverEntity: 'accuweather.0.Current.RelativeHumidity', ScreensaverEntityIcon: 'water-percent', ScreensaverEntityText: 'Luft', ScreensaverEntityUnitText: '%', ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 65} },
                                alternativeScreensaverLayout: false,
                                autoWeatherColorScreensaverLayout: true,
                                mrIcon1ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER1', ScreensaverEntityIcon: 'light-switch', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: HMIOff  },
                                mrIcon2ScreensaverEntity: { ScreensaverEntity: 'mqtt.0.SmartHome.NSPanel_1.stat.POWER2', ScreensaverEntityIcon: 'lightbulb', ScreensaverEntityOnColor: On, ScreensaverEntityOffColor: HMIOff  },
                                timeoutScreensaver: 10,
                                dimmode: 20,
                                active: 100, //Standard-Brightness TFT
                                screenSaverDoubleClick: true,
                                locale: 'de-DE',                    // en-US, de-DE, nl-NL, da-DK, es-ES, fr-FR, it-IT, ru-RU, etc.
                                timeFormat: '%H:%M',                // currently not used 
                                dateFormat: '%A, %d. %B %Y',        // currently not used 
                                weatherEntity: 'alias.0.Wetter.Ullendorf',    // Dieser Alias muss erstellt werden, damit die 4 kleineren Icons (Wetter oder DP) angezeigt werden können
                                defaultOffColor: Off,
                                defaultOnColor: On,
                                defaultColor: Off,
                                defaultBackgroundColor: Black,    //New Parameter
                                temperatureUnit: '°C',
                                pages: [
                                        Seite1_Broker,        //Beispiel-Seite
                                        Buero_Seite_1,      //Beispiel-Seite
                                        SensorGrid,         //Beispiel-Seite
                                        //CardPowerExample,   //Beispiel-Seite
                                        //SqueezeboxRPC,      //Beispiel-Seite
                                        //Sonos,              //Beispiel-Seite
                                        //SpotifyPremium,     //Beispiel-Seite
                                        //Alexa,              //Beispiel-Seite
                                        Buero_Seite_2,      //Beispiel-Seite
                                        //Buero_Klimaanlage,  //Beispiel-Seite 
                                        Button_1,           //Beispiel-Seite
                                        Test_Licht2,        //Beispiel-Seite
                                        Test_Funktionen,    //Beispiel-Seite    
                                        Fenster_1,          //Beispiel-Seite
                                        Subpages_1,         //Beispiel-Seite
                                        WZ_Heizung,    //Beispiel-Seite
                                        Buero_Alarm,        //Beispiel-Seite
                            
                                        Service             //Auto-Alias Service Page
                                ],
                                subPages: [
                                            Abfall,                     //Beispiel-Unterseite
                                            WLAN,                       //Beispiel-Unterseite
                                            
                                            NSPanel_Infos,              //Auto-Alias Service Page
                                            NSPanel_Einstellungen,      //Auto-Alias Service Page
                                            NSPanel_Firmware_Info       //Auto-Alias Service Page
                                ],
                                button1Page: button1Page,   //Beispiel-Seite auf Button 1, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null, 
                                button2Page: button2Page    //Beispiel-Seite auf Button 2, wenn Rule2 definiert - Wenn nicht definiert --> button1Page: null,
                            };
                            
                            // _________________________________ Ab hier keine Konfiguration mehr _____________________________________
                            
                            
                            ArmilarA Offline
                            ArmilarA Offline
                            Armilar
                            Most Active Forum Testing
                            schrieb am zuletzt editiert von Armilar
                            #1222

                            @coto

                            Eine weitere Frage, die Subpages von ServicePage "NSPanel Service" sind bei mir leer. Muss da auch was Manuel angelegt werden?
                            "Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)"

                            Versuche nur nebenher nachzuvollziehen, warum die nicht angezeigt werden. Die Antwort hierzu ist: Nein muss nichts manuell angelegt werden.

                            Aber das ein Alias automatisch und vollständig erzeugt werden kann, dazu benötigt das Script die Einstellung setObjects als Berechtigung im JS-Adapter.

                            Sollten die also immer noch nicht zu sehen sein. Dann bitte mal checken, ob für die Seiten Aliase angelegt wurden.

                            z.B. ein alias.0.NSPanel.1.Sensor.ESP32.Temperature

                            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                            https://github.com/joBr99/nspanel-lovelace-ui/wiki

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            C 1 Antwort Letzte Antwort
                            0
                            • ArmilarA Armilar

                              @coto

                              Eine weitere Frage, die Subpages von ServicePage "NSPanel Service" sind bei mir leer. Muss da auch was Manuel angelegt werden?
                              "Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt)"

                              Versuche nur nebenher nachzuvollziehen, warum die nicht angezeigt werden. Die Antwort hierzu ist: Nein muss nichts manuell angelegt werden.

                              Aber das ein Alias automatisch und vollständig erzeugt werden kann, dazu benötigt das Script die Einstellung setObjects als Berechtigung im JS-Adapter.

                              Sollten die also immer noch nicht zu sehen sein. Dann bitte mal checken, ob für die Seiten Aliase angelegt wurden.

                              z.B. ein alias.0.NSPanel.1.Sensor.ESP32.Temperature

                              C Offline
                              C Offline
                              coto
                              schrieb am zuletzt editiert von
                              #1223

                              @armilar

                              Danke für dein Hilfe.

                              Die Datenpunkte sind alle erstellt, außer
                              'Dimmode.brightnessDay'
                              'Dimmode.brightnessNight'
                              'Dimmode.hourDay'
                              'Dimmode.hourNight'

                              Die Einstellung setObjects hatte ich noch nicht gesetzt. Mit gesetzter Einstellung funktioniert es jetzt auch mit der Anzeige auf dem NSPanel.
                              Die Screensaver SubPage funktionert allerdings nicht wegen der fehlenden Datenpunkte. Die werden wohl nicht automatisch angelegt. Hier sieht die Struktur auch anders aus.

                              a8fb0c8d-082a-4634-a84a-feedf272b500-image.png

                              72c15d9d-e6fd-42cf-8cc2-e567e01f099f-image.png

                              T ArmilarA 2 Antworten Letzte Antwort
                              0
                              • C coto

                                @armilar

                                Danke für dein Hilfe.

                                Die Datenpunkte sind alle erstellt, außer
                                'Dimmode.brightnessDay'
                                'Dimmode.brightnessNight'
                                'Dimmode.hourDay'
                                'Dimmode.hourNight'

                                Die Einstellung setObjects hatte ich noch nicht gesetzt. Mit gesetzter Einstellung funktioniert es jetzt auch mit der Anzeige auf dem NSPanel.
                                Die Screensaver SubPage funktionert allerdings nicht wegen der fehlenden Datenpunkte. Die werden wohl nicht automatisch angelegt. Hier sieht die Struktur auch anders aus.

                                a8fb0c8d-082a-4634-a84a-feedf272b500-image.png

                                72c15d9d-e6fd-42cf-8cc2-e567e01f099f-image.png

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

                                @coto
                                hast du das Script noch einmal neu gestartet? Eigentlich werden sie automatisch angelegt.

                                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

                                1 Antwort Letzte Antwort
                                0
                                • C coto

                                  @armilar

                                  Danke für dein Hilfe.

                                  Die Datenpunkte sind alle erstellt, außer
                                  'Dimmode.brightnessDay'
                                  'Dimmode.brightnessNight'
                                  'Dimmode.hourDay'
                                  'Dimmode.hourNight'

                                  Die Einstellung setObjects hatte ich noch nicht gesetzt. Mit gesetzter Einstellung funktioniert es jetzt auch mit der Anzeige auf dem NSPanel.
                                  Die Screensaver SubPage funktionert allerdings nicht wegen der fehlenden Datenpunkte. Die werden wohl nicht automatisch angelegt. Hier sieht die Struktur auch anders aus.

                                  a8fb0c8d-082a-4634-a84a-feedf272b500-image.png

                                  72c15d9d-e6fd-42cf-8cc2-e567e01f099f-image.png

                                  ArmilarA Offline
                                  ArmilarA Offline
                                  Armilar
                                  Most Active Forum Testing
                                  schrieb am zuletzt editiert von
                                  #1225

                                  @coto

                                  Sollte in etwa so aussehen
                                  8e92eed7-49b5-4674-8035-0ec3c9d8502a-image.png

                                  Falls nicht, dann den ganzen 0_userdata-Baum und Alias-Baum löschen und neu anlegen lassen.

                                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  C T 2 Antworten Letzte Antwort
                                  0
                                  • ArmilarA Armilar

                                    @coto

                                    Sollte in etwa so aussehen
                                    8e92eed7-49b5-4674-8035-0ec3c9d8502a-image.png

                                    Falls nicht, dann den ganzen 0_userdata-Baum und Alias-Baum löschen und neu anlegen lassen.

                                    C Offline
                                    C Offline
                                    coto
                                    schrieb am zuletzt editiert von
                                    #1226

                                    @armilar

                                    Hab alles noch mal gelöscht und geht jetzt.

                                    Danke euch. Für heute reicht das dann erstmal :blush:

                                    1 Antwort Letzte Antwort
                                    0
                                    • ArmilarA Armilar

                                      @coto

                                      Sollte in etwa so aussehen
                                      8e92eed7-49b5-4674-8035-0ec3c9d8502a-image.png

                                      Falls nicht, dann den ganzen 0_userdata-Baum und Alias-Baum löschen und neu anlegen lassen.

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

                                      @armilar
                                      So krass wollte ich nicht gleich rangehen. :blush:

                                      Frage: wie kann man die Farbe von Icon wechseln bei diesem pageItem? Ich wollte als Übersicht das Icon Rot Weden lassen, wenn mein DP größer 1 ist.

                                      <PageItem>{ navigate: true, id: 'Fenster', icon: 'window-closed-variant', onColor: MSGreen, offColor: MSRed, name: 'Fenster'}
                                      

                                      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

                                      ArmilarA 1 Antwort Letzte Antwort
                                      0
                                      • T TT-Tom

                                        @armilar
                                        So krass wollte ich nicht gleich rangehen. :blush:

                                        Frage: wie kann man die Farbe von Icon wechseln bei diesem pageItem? Ich wollte als Übersicht das Icon Rot Weden lassen, wenn mein DP größer 1 ist.

                                        <PageItem>{ navigate: true, id: 'Fenster', icon: 'window-closed-variant', onColor: MSGreen, offColor: MSRed, name: 'Fenster'}
                                        
                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        schrieb am zuletzt editiert von
                                        #1228

                                        @tt-tom

                                        Da kenne ich nix :blush:

                                        Habe es nie ausprobiert, wüsste aber auch keinen Grund warum es nicht gehen sollte...

                                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        T 1 Antwort Letzte Antwort
                                        0
                                        • ArmilarA Armilar

                                          @tt-tom

                                          Da kenne ich nix :blush:

                                          Habe es nie ausprobiert, wüsste aber auch keinen Grund warum es nicht gehen sollte...

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

                                          @armilar
                                          die ID ist ja eine Subpage.

                                          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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          509

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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