Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Sonoff NSPanel

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Sonoff NSPanel

    This topic has been deleted. Only users with topic management privileges can see it.
    • Jens Wozny
      Jens Wozny last edited by

      @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

      Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher 🙂 aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

      Großen Dank!

      Gruß Jens

      Armilar 1 Reply Last reply Reply Quote 0
      • Armilar
        Armilar Most Active Forum Testing @Jens Wozny last edited by

        @jens-wozny sagte in Sonoff NSPanel:

        @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

        Dank euch macht es mächtig viel Spaß sowas umzusetzen, bin leider nur der stille Nachmacher 🙂 aber ohne euch und ohne die Zeit und den Hirnschmalz den ihr da so rein bringt wäre ich nicht mal in der nähe von dem, wo ich jetzt bin!

        Großen Dank!

        Gruß Jens

        Du meinst den Screenshot vom MQTT Explorer?
        https://forum.iobroker.net/post/813557

        O Jens Wozny 2 Replies Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active last edited by

          Hallo zusammen,

          da dieser Thread (und damit auch die einzige Dokumentation) ziemlich verteilt Infos liefert, habe ich probiert das Vorgehen mal in einem Video zusammen zu fassen: https://youtu.be/ZPLJk2ZLo_8

          Danke für die tolle Arbeit @Armilar ! Ich hoffe, dass ich mit meinen letzten Änderungen am Script ein wenig helfen konnte. Keine neuen Features - nur Aufräumarbeiten. Insbesondere wenn das Script erstmalig ausgeführt wurde, gab es sehr viele Warnungen.

          panik Armilar 3 Replies Last reply Reply Quote 1
          • O
            OlliBy67 @Armilar last edited by

            @armilar said in Sonoff NSPanel:

            @jens-wozny sagte in Sonoff NSPanel:

            @olliby67 So... Erfolgreich 5x NSPanel geflasht! Vielen Dank nochmals für den Tipp! Das hat wirklich jedes mal beim ersten mal funktioniert! @Armilar könntest du evtl. in deine ansonsten perfekte Anleitung diesen Hinweis aufnehmen? Das würde bestimmt den einen oder anderen viel Probieren sparen! Vielen Dank! Und natürlich auch dank an @Herbiek für den Initialen Hinweis.

            ....................

            Du meinst den Screenshot vom MQTT Explorer?
            https://forum.iobroker.net/post/813557

            Ja genau. 👍

            1 Reply Last reply Reply Quote 0
            • Jens Wozny
              Jens Wozny @Armilar last edited by

              @armilar ja genau den, ohne den Hinweis gestern hätte ich ihn auch erst nicht gefunden da die Anzahl der Posts doch ziemlich angewachsen ist und auch wenn man sich bemüht irgendwann doch die Übersicht verliert 🙂

              Armilar 1 Reply Last reply Reply Quote 0
              • panik
                panik @haus-automatisierung last edited by

                @haus-automatisierung Dann schaue ich da mal rein, vielleicht gibt es da Hinweise zum Bafallkalender und CardAlarm denn da Hänge ich und habe hier auch nicht den passenden Hinweis finden können bzw. die nötigen Aliase ?!

                T Armilar 2 Replies Last reply Reply Quote 0
                • T
                  TT-Tom @panik last edited by

                  @panik

                  Für den Abfall gibt es hier ein Beitrag.

                  Bei Alarm kann ich dir nicht helfen.

                  Armilar 1 Reply Last reply Reply Quote 0
                  • K
                    Kuckuckmann last edited by Kuckuckmann

                    Ich mal wieder 🙂

                    Ich versuche mich gerade daran den Button2 als meinen Home Button zu deklarieren.

                    Ich habe den Button vom Relay getrennt:

                    Rule2 on Button2#state do Publish SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"} endon
                    

                    und die dann aktiviert mit

                    Rule2 1 (Rule aktivieren)
                    

                    Nun habe ich im ioBroker

                    mqtt.0.SmartHome.nspanel_7C14FC.cmnd.RESULT
                    

                    mit dem Wert

                    {"CustomRecv":"event,button2"}
                    

                    Im Skript habe ich eine PageGrid mit dem Namen "Home".
                    Also habe ich in er Page Definition gesagt:

                    button2Page: Home
                    

                    Wenn ich den Button nun drücke schaltet kein Relay mehr (was so sein soll) ,aber meine Seite "Home" wird nicht geladen.

                    In der Tasmota Konsole sehe ich das:

                    15:14:28.355 APP: Knopf2 Mehrfachdruck 1
                    15:14:28.875 RUL: BUTTON2#STATE performs "Publish SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"}"
                    15:14:28.878 SRC: Rule
                    15:14:28.881 CMD: Grp 0, Cmd 'PUBLISH', Idx 1, Len 71, Pld -99, Data 'SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"}'
                    15:14:28.891 MQT: SmartHome/nspanel_7C14FC/cmnd/RESULT = {"CustomRecv":"event,button2"}
                    15:15:00.039 SRC: MQTT
                    15:15:00.043 CMD: Grp 0, Cmd 'CUSTOMSEND', Idx 1, Len 10, Pld -99, Data 'time~16:15'
                    15:15:00.063 NXP: payload sent = bytes('55BB0A0074696D657E31363A3135BC35')
                    15:15:00.072 MQT: SmartHome/nspanel_7C14FC/stat/RESULT = {"CustomSend":"Done"}
                    

                    Wo ist mein Fehler?

                    Danke vorab.

                    LG

                    Armilar 1 Reply Last reply Reply Quote 0
                    • Armilar
                      Armilar Most Active Forum Testing @TT-Tom last edited by

                      @tt-tom sagte in Sonoff NSPanel:

                      @panik

                      Für den Abfall gibt es hier ein Beitrag.

                      Bei Alarm kann ich dir nicht helfen.

                      o.a. Link von TT-Tom für dynamische Erstellung per ical

                      oder statisch (ebenfalls per ical)
                      https://forum.iobroker.net/post/846494
                      Hier wurde der Adapter "Müllabfuhr-Zeitplan" (trashschedule optional verwendet. Auf diese kann man dann per info-Alias zugreifen.

                      1 Reply Last reply Reply Quote 0
                      • Armilar
                        Armilar Most Active Forum Testing @panik last edited by Armilar

                        @panik sagte in Sonoff NSPanel:

                        @haus-automatisierung Dann schaue ich da mal rein, vielleicht gibt es da Hinweise zum Bafallkalender und CardAlarm denn da Hänge ich und habe hier auch nicht den passenden Hinweis finden können bzw. die nötigen Aliase ?!

                        Keine Panik 😉

                        Gerne folgende Anleitung befolgen:

                        Folgende 3 Datenpunkte unter 0_userdata anlegen (sollten eigentlich schon da sein):
                        83e440f3-b152-4dbd-a514-c758cecbab06-image.png

                        Dann wie in den Beispiel pageItems
                        var Buero_Alarm: PageAlarm =
                        {
                        "type": "cardAlarm",
                        "heading": "Alarm",
                        "useColor": true,
                        "subPage": false,
                        "parent": undefined,
                        "items": [<PageItem>{ id: "alias.0.NSPanel_1.Alarm" }]
                        };

                        1c075d93-b101-455a-bacb-c306b0e092e7-image.png

                        Alias-Feueralarm verwenden oder wie folgt mit Alias-Manager:
                        c562e1ea-33fd-4a3d-965f-b9f4fcd98993-image.png
                        aae6b780-3d15-4017-a566-00059ba885c3-image.png
                        fe07b7b6-97de-4b92-9937-a837b84f2c00-image.png

                        Bei Aktivierung oder Deaktivierung der Alarmanlage wechselt der Status in "arming" oder "pending". Da die Verarbeitung der Alarmlogik außerhalb des Skriptes stattfindet, müssen die Datenpunkte auch entsprechend durch das externe Skript weitergetaktet werden:

                        Nachfolgend ein kurzes Emulationsskript für die Weiterverarbeitung. Diese Logik sollte auch in dein eigenes externes Alarm-Skript übernommen werden.

                        6d784593-e046-434e-a610-7eb1e8464f9a-image.png

                        <xml xmlns="https://developers.google.com/blockly/xml">
                          <block type="on_ext" id="q!?(x}z/f~TClQnNmbyU" x="113" y="38">
                            <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="]~f@4kO$zmxdg=}/810C">
                                <field name="oid">0_userdata.0.NSPanel.1.Alarm.AlarmState</field>
                              </shadow>
                            </value>
                            <statement name="STATEMENT">
                              <block type="controls_if" id="=_e7bf!`Q]$tg*0U1_2F">
                                <mutation elseif="1"></mutation>
                                <value name="IF0">
                                  <block type="logic_compare" id="0_9gv(MmSSJ{2a$j{}(P">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="on_source" id="H$WWrxxX|NaWkT%W]g!Z">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="text" id="_TnyjJ5x!)JY~rQ:Opj)">
                                        <field name="TEXT">arming</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <statement name="DO0">
                                  <block type="control" id="eO}0c$0s~08Di)?sMM0(">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                    <field name="OID">0_userdata.0.NSPanel.1.Alarm.AlarmState</field>
                                    <field name="WITH_DELAY">TRUE</field>
                                    <field name="DELAY_MS">1000</field>
                                    <field name="UNIT">ms</field>
                                    <field name="CLEAR_RUNNING">TRUE</field>
                                    <value name="VALUE">
                                      <block type="text" id="J(va8~n[/dogNBn!W].I">
                                        <field name="TEXT">armed</field>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                                <value name="IF1">
                                  <block type="logic_compare" id="]p3s+ouB~BJkfd:e)G:(">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="on_source" id=":n]Z,t6+q#-l_hP+MEI@">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="text" id="([Ep{MPBu5s.C-lOdHgr">
                                        <field name="TEXT">pending</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <statement name="DO1">
                                  <block type="control" id="s77gpG^9o0A)T{f}{#,c">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                    <field name="OID">0_userdata.0.NSPanel.1.Alarm.AlarmState</field>
                                    <field name="WITH_DELAY">TRUE</field>
                                    <field name="DELAY_MS">1000</field>
                                    <field name="UNIT">ms</field>
                                    <field name="CLEAR_RUNNING">TRUE</field>
                                    <value name="VALUE">
                                      <block type="text" id="4DC5l(?mcdlhZ/jIumty">
                                        <field name="TEXT">disarmed</field>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                              </block>
                            </statement>
                          </block>
                        </xml>
                        

                        Test-Blockly starten

                        Alarm-Code in die cardAlarm eingeben --> Schutz auswählen --> aktiviert
                        Alarm-Code in die cardAlarm eingeben --> Deaktivieren --> deaktiviert

                        panik 1 Reply Last reply Reply Quote 0
                        • K
                          Kuckuckmann @Armilar last edited by Kuckuckmann

                          @armilar said in Sonoff NSPanel:

                          @Armilar Du hast hier geschrieben "darüber liegt jeweils ein Alias vom Typ "warning"". Kannst Du mal beschreiben, welche Felder du mit welchen Daten befüllst?
                          Egal was ich mache, ich bekomme entweder eine blaue Tonne (Symbol) mit dem Datum als Beschreibung und Wert, oder eine schwarze Tonne (Symbol) mit null als Beschreibung und Wert.

                          Ich nutze den Trashschedul Adapter von @haus-automatisierung und beziehe mich dort auf den Datumswert nextdateformat.

                          Danke vorab
                          LG

                          @kuckuckmann sagte in Sonoff NSPanel:

                          @Armilar

                          Beim Abfallkalender hast Du in Deinem Beispiel keine Farben bei der Definition mit angegeben. Dennoch sind auf dem Bsp. Screenshot die typischen Mülltonnenfarben zu sehen. Wo kommen die Farben denn her?

                          //Subpage 1 von Subpages_1
                          var 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"}
                              ]
                          };
                          

                          Unsere Stadt stellt einen ical Kalender zur Verfügung.

                          var i, Muell_JSON, Event2, Color;
                          
                          function subsequenceFromStartLast(sequence, at1) {
                            var start = at1;
                            var end = sequence.length - 1 + 1;
                            return sequence.slice(start, end);
                          }
                          
                          
                          on({id: 'ical.1.data.table', change: "ne"}, async function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            for (i = 0; i <= 3; i++) {
                              Muell_JSON = getState("ical.1.data.table").val;
                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                              Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), 8);
                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                              if (Event2 == 'Reststoff') {
                                Color = 33840;
                              } else if (Event2 == 'Biotonne') {
                                Color = 2016;
                              } else if (Event2 == 'Blaue Tonne') {
                                Color = 31;
                              } else if (Event2 == 'Gelbe Tonne') {
                                Color = 65504;
                              }
                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                            }
                          });
                          

                          Das Script erstellt mir die entsprechenden Datenpunkte unter 0_userdata und dort schreibe ich auch die Farben rein, darüber liegt jeweils ein Alias vom Typ "warning"

                          Somit ist die Sortierung der nächsten Leerung dynamisch nach Datum und nicht statisch nach Tonnenfarbe.

                          Statisch lässt dich das als Alias "info" abbilden

                          Armilar 1 Reply Last reply Reply Quote 1
                          • panik
                            panik @Armilar last edited by

                            @armilar Wie geil! Da werde ich mich nochmal hinsetzen und das Ausprobieren 🙂
                            Vielen Dank!

                            1 Reply Last reply Reply Quote 0
                            • Armilar
                              Armilar Most Active Forum Testing @Kuckuckmann last edited by

                              @kuckuckmann sagte in Sonoff NSPanel:

                              @armilar said in Sonoff NSPanel:

                              @Armilar Du hast hier geschrieben "darüber liegt jeweils ein Alias vom Typ "warning"". Kannst Du mal beschreiben, welche Felder du mit welchen Daten befüllst?
                              Egal was ich mache, ich bekomme entweder eine blaue Tonne (Symbol) mit dem Datum als Beschreibung und Wert, oder eine schwarze Tonne (Symbol) mit null als Beschreibung und Wert.

                              Danke vorab
                              LG

                              @kuckuckmann sagte in Sonoff NSPanel:

                              @Armilar

                              Beim Abfallkalender hast Du in Deinem Beispiel keine Farben bei der Definition mit angegeben. Dennoch sind auf dem Bsp. Screenshot die typischen Mülltonnenfarben zu sehen. Wo kommen die Farben denn her?

                              //Subpage 1 von Subpages_1
                              var 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"}
                                  ]
                              };
                              

                              Unsere Stadt stellt einen ical Kalender zur Verfügung.

                              var i, Muell_JSON, Event2, Color;
                              
                              function subsequenceFromStartLast(sequence, at1) {
                                var start = at1;
                                var end = sequence.length - 1 + 1;
                                return sequence.slice(start, end);
                              }
                              
                              
                              on({id: 'ical.1.data.table', change: "ne"}, async function (obj) {
                                var value = obj.state.val;
                                var oldValue = obj.oldState.val;
                                for (i = 0; i <= 3; i++) {
                                  Muell_JSON = getState("ical.1.data.table").val;
                                  setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                  Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), 8);
                                  setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                  if (Event2 == 'Reststoff') {
                                    Color = 33840;
                                  } else if (Event2 == 'Biotonne') {
                                    Color = 2016;
                                  } else if (Event2 == 'Blaue Tonne') {
                                    Color = 31;
                                  } else if (Event2 == 'Gelbe Tonne') {
                                    Color = 65504;
                                  }
                                  setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                }
                              });
                              

                              Das Script erstellt mir die entsprechenden Datenpunkte unter 0_userdata und dort schreibe ich auch die Farben rein, darüber liegt jeweils ein Alias vom Typ "warning"

                              Somit ist die Sortierung der nächsten Leerung dynamisch nach Datum und nicht statisch nach Tonnenfarbe.

                              Statisch lässt dich das als Alias "info" abbilden

                              ff5c7e62-f840-44de-9c7d-ab9d8317587d-image.png

                              also jeweils für event 1 bis event 4

                              fca79a75-9585-462b-bb9e-c9ffc31159bb-image.png

                              und das sind die Datenpunkte
                              6b9e0fb1-c84d-4d55-9569-59b2ceb7a65a-image.png

                              K 1 Reply Last reply Reply Quote 0
                              • Armilar
                                Armilar Most Active Forum Testing @Kuckuckmann last edited by

                                @kuckuckmann sagte in Sonoff NSPanel:

                                Ich mal wieder 🙂

                                Ich versuche mich gerade daran den Button2 als meinen Home Button zu deklarieren.

                                Ich habe den Button vom Relay getrennt:

                                Rule2 on Button2#state do Publish SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"} endon
                                

                                und die dann aktiviert mit

                                Rule2 1 (Rule aktivieren)
                                

                                Nun habe ich im ioBroker

                                mqtt.0.SmartHome.nspanel_7C14FC.cmnd.RESULT
                                

                                mit dem Wert

                                {"CustomRecv":"event,button2"}
                                

                                Im Skript habe ich eine PageGrid mit dem Namen "Home".
                                Also habe ich in er Page Definition gesagt:

                                button2Page: Home
                                

                                Wenn ich den Button nun drücke schaltet kein Relay mehr (was so sein soll) ,aber meine Seite "Home" wird nicht geladen.

                                In der Tasmota Konsole sehe ich das:

                                15:14:28.355 APP: Knopf2 Mehrfachdruck 1
                                15:14:28.875 RUL: BUTTON2#STATE performs "Publish SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"}"
                                15:14:28.878 SRC: Rule
                                15:14:28.881 CMD: Grp 0, Cmd 'PUBLISH', Idx 1, Len 71, Pld -99, Data 'SmartHome/nspanel_7C14FC/cmnd/RESULT {"CustomRecv":"event,button2"}'
                                15:14:28.891 MQT: SmartHome/nspanel_7C14FC/cmnd/RESULT = {"CustomRecv":"event,button2"}
                                15:15:00.039 SRC: MQTT
                                15:15:00.043 CMD: Grp 0, Cmd 'CUSTOMSEND', Idx 1, Len 10, Pld -99, Data 'time~16:15'
                                15:15:00.063 NXP: payload sent = bytes('55BB0A0074696D657E31363A3135BC35')
                                15:15:00.072 MQT: SmartHome/nspanel_7C14FC/stat/RESULT = {"CustomSend":"Done"}
                                

                                Wo ist mein Fehler?

                                Danke vorab.

                                LG

                                Bei mir funktioniert das auch...

                                Das wichtigste ist eigentlich
                                52d7357f-8fec-41cf-9bc3-792cce957505-image.png

                                Was mich jedoch irritiert ist der Rest. Den habe ich bei mir nicht. Also Zeile 1, 3-9

                                K 1 Reply Last reply Reply Quote 0
                                • Armilar
                                  Armilar Most Active Forum Testing @Jens Wozny last edited by

                                  @jens-wozny sagte in Sonoff NSPanel:

                                  @armilar ja genau den, ohne den Hinweis gestern hätte ich ihn auch erst nicht gefunden da die Anzahl der Posts doch ziemlich angewachsen ist und auch wenn man sich bemüht irgendwann doch die Übersicht verliert 🙂

                                  Habe ich erweitert

                                  1 Reply Last reply Reply Quote 0
                                  • Armilar
                                    Armilar Most Active Forum Testing @haus-automatisierung last edited by

                                    @haus-automatisierung sagte in Sonoff NSPanel:

                                    Hallo zusammen,

                                    da dieser Thread (und damit auch die einzige Dokumentation) ziemlich verteilt Infos liefert, habe ich probiert das Vorgehen mal in einem Video zusammen zu fassen: https://youtu.be/ZPLJk2ZLo_8

                                    Danke für die tolle Arbeit @Armilar ! Ich hoffe, dass ich mit meinen letzten Änderungen am Script ein wenig helfen konnte. Keine neuen Features - nur Aufräumarbeiten. Insbesondere wenn das Script erstmalig ausgeführt wurde, gab es sehr viele Warnungen.

                                    Wie immer ein gutes Video 👍 - Danke fürs aufräumen - gefällt mir 😉

                                    1 Reply Last reply Reply Quote 1
                                    • Armilar
                                      Armilar Most Active Forum Testing @haus-automatisierung last edited by Armilar

                                      @haus-automatisierung sagte in Sonoff NSPanel:

                                      Hallo zusammen,

                                      da dieser Thread (und damit auch die einzige Dokumentation) ziemlich verteilt Infos liefert, habe ich probiert das Vorgehen mal in einem Video zusammen zu fassen: https://youtu.be/ZPLJk2ZLo_8

                                      Danke für die tolle Arbeit @Armilar ! Ich hoffe, dass ich mit meinen letzten Änderungen am Script ein wenig helfen konnte. Keine neuen Features - nur Aufräumarbeiten. Insbesondere wenn das Script erstmalig ausgeführt wurde, gab es sehr viele Warnungen.

                                      Allerdings hätte ich noch eine Frage - Ich habe natürlich versucht (auch vorher schon) per Expertenmodus den CustomSend anzulegen (ist ja im Prinzip auch das einfachste 😉 ) . Hat damals nicht geklappt und nach dem ich das im Video mal nachgespielt habe, ebenfalls nicht. In der Listenebene cmnd bekomme ich das "+" nicht aktiviert. Hast du dazu mal irgendwelche Einstellungen vorgenommen oder etwas anderes verändert?

                                      haus-automatisierung 1 Reply Last reply Reply Quote 0
                                      • K
                                        Kuckuckmann @Armilar last edited by

                                        @armilar said in Sonoff NSPanel:

                                        Super, vielen Dank 🙂
                                        Wenn ich nun Dein Skript nutzen möchte, wie ist das anzulegen?
                                        Einfach nur als JS hinzufügen?
                                        Muss das noch irgendwie angesteuert werden, damit es was macht?

                                        Ich habe es bei mir als JS in einem unterordner angelegt und den ical Adapter auf ical.0 geändert.
                                        Außerdem habe ich unter 0_userdata den Abfallkalender Ordner angelgt.

                                        Das Skript ist gestartet, aber da kommen keine Datenpunkte im Abfallkalender Ordner.

                                        @kuckuckmann sagte in Sonoff NSPanel:

                                        @armilar said in Sonoff NSPanel:

                                        @Armilar Du hast hier geschrieben "darüber liegt jeweils ein Alias vom Typ "warning"". Kannst Du mal beschreiben, welche Felder du mit welchen Daten befüllst?
                                        Egal was ich mache, ich bekomme entweder eine blaue Tonne (Symbol) mit dem Datum als Beschreibung und Wert, oder eine schwarze Tonne (Symbol) mit null als Beschreibung und Wert.

                                        Danke vorab
                                        LG

                                        @kuckuckmann sagte in Sonoff NSPanel:

                                        @Armilar

                                        Beim Abfallkalender hast Du in Deinem Beispiel keine Farben bei der Definition mit angegeben. Dennoch sind auf dem Bsp. Screenshot die typischen Mülltonnenfarben zu sehen. Wo kommen die Farben denn her?

                                        //Subpage 1 von Subpages_1
                                        var 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"}
                                            ]
                                        };
                                        

                                        Unsere Stadt stellt einen ical Kalender zur Verfügung.

                                        var i, Muell_JSON, Event2, Color;
                                        
                                        function subsequenceFromStartLast(sequence, at1) {
                                          var start = at1;
                                          var end = sequence.length - 1 + 1;
                                          return sequence.slice(start, end);
                                        }
                                        
                                        
                                        on({id: 'ical.1.data.table', change: "ne"}, async function (obj) {
                                          var value = obj.state.val;
                                          var oldValue = obj.oldState.val;
                                          for (i = 0; i <= 3; i++) {
                                            Muell_JSON = getState("ical.1.data.table").val;
                                            setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                            Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), 8);
                                            setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                            if (Event2 == 'Reststoff') {
                                              Color = 33840;
                                            } else if (Event2 == 'Biotonne') {
                                              Color = 2016;
                                            } else if (Event2 == 'Blaue Tonne') {
                                              Color = 31;
                                            } else if (Event2 == 'Gelbe Tonne') {
                                              Color = 65504;
                                            }
                                            setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                          }
                                        });
                                        

                                        Das Script erstellt mir die entsprechenden Datenpunkte unter 0_userdata und dort schreibe ich auch die Farben rein, darüber liegt jeweils ein Alias vom Typ "warning"

                                        Somit ist die Sortierung der nächsten Leerung dynamisch nach Datum und nicht statisch nach Tonnenfarbe.

                                        Statisch lässt dich das als Alias "info" abbilden

                                        ff5c7e62-f840-44de-9c7d-ab9d8317587d-image.png

                                        also jeweils für event 1 bis event 4

                                        fca79a75-9585-462b-bb9e-c9ffc31159bb-image.png

                                        und das sind die Datenpunkte
                                        6b9e0fb1-c84d-4d55-9569-59b2ceb7a65a-image.png

                                        Armilar T 2 Replies Last reply Reply Quote 0
                                        • Armilar
                                          Armilar Most Active Forum Testing @Kuckuckmann last edited by Armilar

                                          @kuckuckmann sagte in Sonoff NSPanel:

                                          @armilar said in Sonoff NSPanel:

                                          Super, vielen Dank 🙂
                                          Wenn ich nun Dein Skript nutzen möchte, wie ist das anzulegen?
                                          Einfach nur als JS hinzufügen?
                                          Muss das noch irgendwie angesteuert werden, damit es was macht?

                                          Ich habe es bei mir als JS in einem unterordner angelegt und den ical Adapter auf ical.0 geändert.
                                          Außerdem habe ich unter 0_userdata den Abfallkalender Ordner angelgt.

                                          Das Skript ist gestartet, aber da kommen keine Datenpunkte im Abfallkalender Ordner.

                                          @kuckuckmann sagte in Sonoff NSPanel:

                                          @armilar said in Sonoff NSPanel:

                                          @Armilar Du hast hier geschrieben "darüber liegt jeweils ein Alias vom Typ "warning"". Kannst Du mal beschreiben, welche Felder du mit welchen Daten befüllst?
                                          Egal was ich mache, ich bekomme entweder eine blaue Tonne (Symbol) mit dem Datum als Beschreibung und Wert, oder eine schwarze Tonne (Symbol) mit null als Beschreibung und Wert.

                                          Danke vorab
                                          LG

                                          @kuckuckmann sagte in Sonoff NSPanel:

                                          @Armilar

                                          Beim Abfallkalender hast Du in Deinem Beispiel keine Farben bei der Definition mit angegeben. Dennoch sind auf dem Bsp. Screenshot die typischen Mülltonnenfarben zu sehen. Wo kommen die Farben denn her?

                                          //Subpage 1 von Subpages_1
                                          var 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"}
                                              ]
                                          };
                                          

                                          Unsere Stadt stellt einen ical Kalender zur Verfügung.

                                          var i, Muell_JSON, Event2, Color;
                                          
                                          function subsequenceFromStartLast(sequence, at1) {
                                            var start = at1;
                                            var end = sequence.length - 1 + 1;
                                            return sequence.slice(start, end);
                                          }
                                          
                                          
                                          on({id: 'ical.1.data.table', change: "ne"}, async function (obj) {
                                            var value = obj.state.val;
                                            var oldValue = obj.oldState.val;
                                            for (i = 0; i <= 3; i++) {
                                              Muell_JSON = getState("ical.1.data.table").val;
                                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.date'].join('')), getAttr(Muell_JSON, (String(i) + '.date')), false, parseInt(((0) || "").toString(), 10), false);
                                              Event2 = subsequenceFromStartLast(getAttr(Muell_JSON, (String(i) + '.event')), 8);
                                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.event'].join('')), Event2, false, parseInt(((0) || "").toString(), 10), false);
                                              if (Event2 == 'Reststoff') {
                                                Color = 33840;
                                              } else if (Event2 == 'Biotonne') {
                                                Color = 2016;
                                              } else if (Event2 == 'Blaue Tonne') {
                                                Color = 31;
                                              } else if (Event2 == 'Gelbe Tonne') {
                                                Color = 65504;
                                              }
                                              setStateDelayed((['0_userdata.0.Abfallkalender.',parseFloat(i) + 1,'.color'].join('')), Color, false, parseInt(((0) || "").toString(), 10), false);
                                            }
                                          });
                                          

                                          Das Script erstellt mir die entsprechenden Datenpunkte unter 0_userdata und dort schreibe ich auch die Farben rein, darüber liegt jeweils ein Alias vom Typ "warning"

                                          Somit ist die Sortierung der nächsten Leerung dynamisch nach Datum und nicht statisch nach Tonnenfarbe.

                                          Statisch lässt dich das als Alias "info" abbilden

                                          ff5c7e62-f840-44de-9c7d-ab9d8317587d-image.png

                                          also jeweils für event 1 bis event 4

                                          fca79a75-9585-462b-bb9e-c9ffc31159bb-image.png

                                          und das sind die Datenpunkte
                                          6b9e0fb1-c84d-4d55-9569-59b2ceb7a65a-image.png

                                          Ist egal, ob Javascript oder TypeScript - sollte das gleiche sein.

                                          oder als Blockly

                                          <xml xmlns="https://developers.google.com/blockly/xml">
                                            <variables>
                                              <variable id="h}CE-n1l`S|gRf(0K%./">i</variable>
                                              <variable id="j5C=K+Z.E:im1#q:;A=6">Muell_JSON</variable>
                                              <variable id="^:v=Yb?;aM;Z[}4jCF3-">Event</variable>
                                              <variable id="9^)S?J=tLkC7cUWc-u9w">Color</variable>
                                            </variables>
                                            <block type="on_ext" id="aFeZac36,?)=rfMg%3T|" x="38" y="-287">
                                              <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="GSzQ}epUa))me3m8yyuD">
                                                  <field name="oid">ical.1.data.table</field>
                                                </shadow>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="controls_for" id="wduAM(OBPzLJ@bfYAK5%">
                                                  <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                  <value name="FROM">
                                                    <shadow type="math_number" id="HK~R2U|`xb$U5W+tsHpN">
                                                      <field name="NUM">0</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="TO">
                                                    <shadow type="math_number" id="Ed[L/:1e9-cwxrRaZiIv">
                                                      <field name="NUM">3</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="BY">
                                                    <shadow type="math_number" id="o@5kngFiPpvl5dGo@Q$9">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                  </value>
                                                  <statement name="DO">
                                                    <block type="variables_set" id="0T)vK0k8aikvg7mF6XHo">
                                                      <field name="VAR" id="j5C=K+Z.E:im1#q:;A=6">Muell_JSON</field>
                                                      <value name="VALUE">
                                                        <block type="get_value" id="1~kG;UHn$nw2zzbfOIT]">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">ical.1.data.table</field>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="control_ex" id="UAu,2OBRJp9~Nzyxouyu">
                                                          <field name="TYPE">false</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="J_|uu;{e44n5Z-;qE+hP">
                                                              <field name="oid">Object ID</field>
                                                            </shadow>
                                                            <block type="text_join" id="8/|eHqk))j9Po-O*mK`e">
                                                              <mutation items="3"></mutation>
                                                              <value name="ADD0">
                                                                <block type="text" id="Zp8GRfdfXujkeM41=PeZ">
                                                                  <field name="TEXT">0_userdata.0.Abfallkalender.</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD1">
                                                                <block type="math_arithmetic" id="$!!l@[eJ~4Kdb5/Imo.X">
                                                                  <field name="OP">ADD</field>
                                                                  <value name="A">
                                                                    <shadow type="math_number" id="zaU15{yD43xkuY@?)RY(">
                                                                      <field name="NUM">1</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="o3pJ(+3KE~Co%u-dy.:W">
                                                                      <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <shadow type="math_number" id="_LBb[#z%M$n0~1Y}~8w+">
                                                                      <field name="NUM">1</field>
                                                                    </shadow>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <value name="ADD2">
                                                                <block type="text" id="Vt#-b{iDzusQQx]#0%0,">
                                                                  <field name="TEXT">.date</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <value name="VALUE">
                                                            <shadow type="logic_boolean" id="/y1w}eely@o.gl$]#)o=">
                                                              <field name="BOOL">TRUE</field>
                                                            </shadow>
                                                            <block type="get_attr" id="p~0A1{eb$lD~.9`9R4K)">
                                                              <value name="PATH">
                                                                <shadow type="text">
                                                                  <field name="TEXT">0.date</field>
                                                                </shadow>
                                                                <block type="text_join" id="DDs!.^n(V7=A_TK}DFQt">
                                                                  <mutation items="2"></mutation>
                                                                  <value name="ADD0">
                                                                    <block type="variables_get" id="k1+Dybgb:u2y9v57OrCg">
                                                                      <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD1">
                                                                    <block type="text" id="EXgB=?B}IKiUdQ.2tKoa">
                                                                      <field name="TEXT">.date</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <value name="OBJECT">
                                                                <block type="variables_get" id="dzLb1f^T!(MM,d=cYU9y">
                                                                  <field name="VAR" id="j5C=K+Z.E:im1#q:;A=6">Muell_JSON</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <value name="DELAY_MS">
                                                            <shadow type="math_number" id="f8q~r@+q|8Kov#3EufsI">
                                                              <field name="NUM">0</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="variables_set" id="E[W-)N[vKeufX{v$B[]p">
                                                              <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                              <value name="VALUE">
                                                                <block type="text_getSubstring" id="YU_Q05y^+I.IzV[c9h9B" inline="false">
                                                                  <mutation at1="true" at2="false"></mutation>
                                                                  <field name="WHERE1">FROM_START</field>
                                                                  <field name="WHERE2">LAST</field>
                                                                  <value name="STRING">
                                                                    <block type="get_attr" id=":/^m9o]3:=L%$4[9$f]7">
                                                                      <value name="PATH">
                                                                        <shadow type="text">
                                                                          <field name="TEXT">0.event</field>
                                                                        </shadow>
                                                                        <block type="text_join" id="*MaT-W83R/Y5`?QCQNec">
                                                                          <mutation items="2"></mutation>
                                                                          <value name="ADD0">
                                                                            <block type="variables_get" id="l5d$/glqMm3~+YA`5]wg">
                                                                              <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="ADD1">
                                                                            <block type="text" id="$+g0XH}$`2`+{B}s3ID@">
                                                                              <field name="TEXT">.event</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <value name="OBJECT">
                                                                        <block type="variables_get" id="nSDdx_!gO45lc4.$`wI`">
                                                                          <field name="VAR" id="j5C=K+Z.E:im1#q:;A=6">Muell_JSON</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="AT1">
                                                                    <block type="math_number" id="ic:P:#_w68q^w]#/;w+K">
                                                                      <field name="NUM">9</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="control_ex" id="^[032{A//-EpUE6lh7ml">
                                                                  <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="`@U%x4KdNV~Y0I`#+,BB">
                                                                      <mutation items="3"></mutation>
                                                                      <value name="ADD0">
                                                                        <block type="text" id="Rk[N`gae|lr/9FXmY!no">
                                                                          <field name="TEXT">0_userdata.0.Abfallkalender.</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD1">
                                                                        <block type="math_arithmetic" id="=RY5pU%/0M!J;{^z81qr">
                                                                          <field name="OP">ADD</field>
                                                                          <value name="A">
                                                                            <shadow type="math_number">
                                                                              <field name="NUM">1</field>
                                                                            </shadow>
                                                                            <block type="variables_get" id="TbkkwM2BKh^+;KTQY3C]">
                                                                              <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <shadow type="math_number" id="e,-Pz1Hy!V:=8S,tHo`:">
                                                                              <field name="NUM">1</field>
                                                                            </shadow>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD2">
                                                                        <block type="text" id="SApnes6}k9wDi243W2xp">
                                                                          <field name="TEXT">.event</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="VALUE">
                                                                    <shadow type="logic_boolean" id="70uxCt~?y`hOTCs:tJ^~">
                                                                      <field name="BOOL">TRUE</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="}@7(YP=fmA0l@:FJS$v#">
                                                                      <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="DELAY_MS">
                                                                    <shadow type="math_number" id="@JEhP_3fysDQ6a_x:ILm">
                                                                      <field name="NUM">0</field>
                                                                    </shadow>
                                                                  </value>
                                                                  <next>
                                                                    <block type="controls_if" id="r,.`4GPI|(([[.76Cft~">
                                                                      <mutation elseif="3"></mutation>
                                                                      <value name="IF0">
                                                                        <block type="logic_compare" id="d4g.Ts.`^;_R!bu)T_~|">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="tC!eDI_BV-hGgDc@kuPc">
                                                                              <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="text" id="?3tZotX[hHq9HGFsA(x|">
                                                                              <field name="TEXT">Reststoff</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO0">
                                                                        <block type="variables_set" id="FXPSk]#;ZliNOBw7bVC8">
                                                                          <field name="VAR" id="9^)S?J=tLkC7cUWc-u9w">Color</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_number" id="-6AJ8U932(j5LuWN@Sp,">
                                                                              <field name="NUM">33840</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                      <value name="IF1">
                                                                        <block type="logic_compare" id=":{8uXg8tzuFNCxedDJ:F">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="0A}m@W~711B2u){_B8uP">
                                                                              <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="text" id="x,Cz(O2e|co^a7rJEdO7">
                                                                              <field name="TEXT">Biotonne</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO1">
                                                                        <block type="variables_set" id="Y#|WXlt|w+`5h3B`VI]*">
                                                                          <field name="VAR" id="9^)S?J=tLkC7cUWc-u9w">Color</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_number" id="BVnWo|iSfirB?Vw*M7;o">
                                                                              <field name="NUM">2016</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                      <value name="IF2">
                                                                        <block type="logic_compare" id="Q0ejJ+ovU#35l7SaPd`7">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="/EhoIt{trOOc3*+k5m4C">
                                                                              <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="text" id="BVzI8#S#S*Yqk5v;$?kD">
                                                                              <field name="TEXT">Blaue Tonne</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO2">
                                                                        <block type="variables_set" id="R7DF(c~|*~pR_D]JqW7c">
                                                                          <field name="VAR" id="9^)S?J=tLkC7cUWc-u9w">Color</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_number" id="#A]b|UX(@QPk*SM_q)RZ">
                                                                              <field name="NUM">31</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                      <value name="IF3">
                                                                        <block type="logic_compare" id="MjEHt,7LG#}DST*Iuc.R">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="(WzO?43I0:YSK;VgFmnX">
                                                                              <field name="VAR" id="^:v=Yb?;aM;Z[}4jCF3-">Event</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="text" id="![3nA.95iLG[3]m5%GYS">
                                                                              <field name="TEXT">Gelbe Tonne</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO3">
                                                                        <block type="variables_set" id="959t9eG^*uj2c;pF^HGP">
                                                                          <field name="VAR" id="9^)S?J=tLkC7cUWc-u9w">Color</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_number" id="{*68t/i/Q7}6cb+0$`6Y">
                                                                              <field name="NUM">65504</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                      <next>
                                                                        <block type="control_ex" id="^c0LOh0WChe-1QNTGVAy">
                                                                          <field name="TYPE">false</field>
                                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                                          <value name="OID">
                                                                            <shadow type="field_oid" id="7gi,zaI;54L/Ek{e9,I@">
                                                                              <field name="oid">Object ID</field>
                                                                            </shadow>
                                                                            <block type="text_join" id="J|nD$KZ,I6q=mt,xW@:X">
                                                                              <mutation items="3"></mutation>
                                                                              <value name="ADD0">
                                                                                <block type="text" id="kwm[DP}25YD]Te=}p`S0">
                                                                                  <field name="TEXT">0_userdata.0.Abfallkalender.</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="ADD1">
                                                                                <block type="math_arithmetic" id="pj~|`_~%6}=?B^fK4@;L">
                                                                                  <field name="OP">ADD</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="To0?Cg*f2pZ(Z`zK|=?M">
                                                                                      <field name="VAR" id="h}CE-n1l`S|gRf(0K%./">i</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="=Q|k5qeOIy1ya}{CVNF@">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <value name="ADD2">
                                                                                <block type="text" id="If6$$63npGW3OazEE^46">
                                                                                  <field name="TEXT">.color</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <value name="VALUE">
                                                                            <shadow type="logic_boolean" id=")+b01E8B2-c#vcsGmA+Y">
                                                                              <field name="BOOL">TRUE</field>
                                                                            </shadow>
                                                                            <block type="variables_get" id="/5*6z@-R5w^1i2*XphN|">
                                                                              <field name="VAR" id="9^)S?J=tLkC7cUWc-u9w">Color</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="DELAY_MS">
                                                                            <shadow type="math_number" id="79qt?j;aoK%i)roQkfoE">
                                                                              <field name="NUM">0</field>
                                                                            </shadow>
                                                                          </value>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </xml>
                                          

                                          Wichtig ist, dass ein Abfallkalender über den ical abgegriffen wird. Dann kannst du die events im Skript entsprechend deiner Gemeinde/Lankreis/Stadt anpassen. Ich denke die verwenden da überall unterschiedliche Namen für die Tonnen. Manchmal auch andere Farben per Region. Wir haben z.B. kein braun.

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            TT-Tom @Kuckuckmann last edited by

                                            @kuckuckmann

                                            hast du eine URL zum Kalender oder eine Datei ?

                                            Armilar 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            78
                                            1548
                                            391252
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo