Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter TrashSchedule

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter TrashSchedule

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thomas Braun
      Thomas Braun Most Active @jensven last edited by

      @jensven
      Könnte am Umlaut liegen. Andere Zeichen-Kodierung probieren, wenn das einstellbar ist.

      locale
      

      sagt?

      J 1 Reply Last reply Reply Quote 0
      • da_Woody
        da_Woody @jensven last edited by

        @jensven sagte in Test Adapter TrashSchedule:

        "Grüne Tonne" steht genau so im Kalender drinnen.

        eventuell zu wenige tage im ical?

        1 Reply Last reply Reply Quote 0
        • J
          jensven @Thomas Braun last edited by

          @thomas-braun

          pi@raspberrypi:~ $ locale
          LANG=de_DE.UTF-8
          LANGUAGE=
          LC_CTYPE="de_DE.UTF-8"
          LC_NUMERIC="de_DE.UTF-8"
          LC_TIME="de_DE.UTF-8"
          LC_COLLATE="de_DE.UTF-8"
          LC_MONETARY="de_DE.UTF-8"
          LC_MESSAGES="de_DE.UTF-8"
          LC_PAPER="de_DE.UTF-8"
          LC_NAME="de_DE.UTF-8"
          LC_ADDRESS="de_DE.UTF-8"
          LC_TELEPHONE="de_DE.UTF-8"
          LC_MEASUREMENT="de_DE.UTF-8"
          LC_IDENTIFICATION="de_DE.UTF-8"
          LC_ALL=
          

          @da_woody said in Test Adapter TrashSchedule:

          eventuell zu wenige tage im ical?

          Was meinst du damit? Zu wenige Termine von "Grüne Tonne" im Kalender?
          Falls Ja > Kann nicht sein, der Kalender wurde von der Gemeinde Importiert, sind genug Termine vorhanden.

          da_Woody 1 Reply Last reply Reply Quote 0
          • da_Woody
            da_Woody @jensven last edited by

            @jensven das ist ja ok! geht um die einstellungen im ical.
            2624a497-c4a8-4366-bc69-1e8464873aad-grafik.png
            wenn da vllt der termin zu lange ist, dann knallts.

            J 1 Reply Last reply Reply Quote 1
            • J
              jensven @da_Woody last edited by

              @da_woody said in Test Adapter TrashSchedule:

              @jensven das ist ja ok! geht um die einstellungen im ical.
              2624a497-c4a8-4366-bc69-1e8464873aad-grafik.png
              wenn da vllt der termin zu lange ist, dann knallts.

              Das wars. Da habe ich nicht einmal drauf geschaut 🤦‍♂️
              Danke dir 👍

              da_Woody 1 Reply Last reply Reply Quote 0
              • da_Woody
                da_Woody @jensven last edited by

                @jensven 😄 gefällt mich! (ösi ansage, eigener humor)
                freut mich, dir geholfen zu haben tun am sein... 😉

                1 Reply Last reply Reply Quote 0
                • ?
                  A Former User @SBorg last edited by A Former User

                  @sborg Ist zwar schon ne Weile her aber könntest du mir den Flow zur Verfügung stellen? Bin nicht ganz so fit in Node Red um mir das selbst zusammenzubasteln...Danke!

                  f47c1fe7-c701-490b-8276-37bad2d473d2-image.png

                  SBorg 1 Reply Last reply Reply Quote 0
                  • SBorg
                    SBorg Forum Testing Most Active @Guest last edited by

                    @noah3112 Logisch 🙂
                    Bild 001.png


                    [
                    {
                    "id": "98b0e1d0468f771d",
                    "type": "tab",
                    "label": "Trash",
                    "disabled": false,
                    "info": "",
                    "env": []
                    },
                    {
                    "id": "07fd153d2d8a948f",
                    "type": "ioBroker in",
                    "z": "98b0e1d0468f771d",
                    "name": "Nächste Leerung",
                    "topic": "trashschedule.0.next.dateFormat",
                    "payloadType": "value",
                    "onlyack": "update",
                    "func": "all",
                    "gap": "",
                    "fireOnStart": "true",
                    "x": 120,
                    "y": 100,
                    "wires": [
                    [
                    "61f404b6c5a8e42a"
                    ]
                    ]
                    },
                    {
                    "id": "236c3f232abaf316",
                    "type": "ioBroker in",
                    "z": "98b0e1d0468f771d",
                    "name": "Nächste Leerung Typ",
                    "topic": "trashschedule.0.next.typesText",
                    "payloadType": "value",
                    "onlyack": true,
                    "func": "all",
                    "gap": "",
                    "fireOnStart": "true",
                    "x": 140,
                    "y": 160,
                    "wires": [
                    [
                    "6116e8118cb79333"
                    ]
                    ]
                    },
                    {
                    "id": "edaebd5a59672257",
                    "type": "ioBroker in",
                    "z": "98b0e1d0468f771d",
                    "name": "danach Leerung",
                    "topic": "trashschedule.0.nextAfter.dateFormat",
                    "payloadType": "value",
                    "onlyack": true,
                    "func": "all",
                    "gap": "",
                    "fireOnStart": "true",
                    "x": 120,
                    "y": 220,
                    "wires": [
                    [
                    "d690a95ed606fa04"
                    ]
                    ]
                    },
                    {
                    "id": "1976d92b6613e225",
                    "type": "ioBroker in",
                    "z": "98b0e1d0468f771d",
                    "name": "danach Typ",
                    "topic": "trashschedule.0.nextAfter.typesText",
                    "payloadType": "value",
                    "onlyack": "update",
                    "func": "all",
                    "gap": "",
                    "fireOnStart": "true",
                    "x": 110,
                    "y": 280,
                    "wires": [
                    [
                    "8b7d9b71479d6ab0"
                    ]
                    ]
                    },
                    {
                    "id": "956ccc37aa28fd4a",
                    "type": "ui_template",
                    "z": "98b0e1d0468f771d",
                    "group": "7ceaf9a.8ba7c08",
                    "name": "Abfalltyp",
                    "order": 2,
                    "width": 0,
                    "height": 0,
                    "format": "",
                    "storeOutMessages": true,
                    "fwdInMessages": true,
                    "resendOnRefresh": true,
                    "templateScope": "local",
                    "className": "",
                    "x": 580,
                    "y": 160,
                    "wires": [
                    []
                    ]
                    },
                    {
                    "id": "3a36dc8fae08f48c",
                    "type": "ui_template",
                    "z": "98b0e1d0468f771d",
                    "group": "7ceaf9a.8ba7c08",
                    "name": "danach Abfalltyp",
                    "order": 4,
                    "width": 0,
                    "height": 0,
                    "format": "",
                    "storeOutMessages": true,
                    "fwdInMessages": true,
                    "resendOnRefresh": true,
                    "templateScope": "local",
                    "x": 610,
                    "y": 280,
                    "wires": [
                    []
                    ]
                    },
                    {
                    "id": "01b9a8bb6d240bca",
                    "type": "ui_template",
                    "z": "98b0e1d0468f771d",
                    "group": "7ceaf9a.8ba7c08",
                    "name": "nächste Leerung",
                    "order": 1,
                    "width": 0,
                    "height": 0,
                    "format": "<div layout="row" layout-align="space-between center" style="padding: 0 6px;">\n <p>Nächste Leerung</p>\n <font size="3" color="white">\n <b>{{msg.payload}}</b>\n </font>\n</div>\n",
                    "storeOutMessages": true,
                    "fwdInMessages": true,
                    "resendOnRefresh": true,
                    "templateScope": "local",
                    "className": "",
                    "x": 610,
                    "y": 100,
                    "wires": [
                    []
                    ]
                    },
                    {
                    "id": "d690a95ed606fa04",
                    "type": "ui_template",
                    "z": "98b0e1d0468f771d",
                    "group": "7ceaf9a.8ba7c08",
                    "name": "danach",
                    "order": 3,
                    "width": 0,
                    "height": 0,
                    "format": "<div layout="row" layout-align="space-between center" style="padding: 0 6px;">\n <p>danach</p>\n <font size="3" color="white">\n <b>{{msg.payload}}</b>\n </font>\n</div>",
                    "storeOutMessages": true,
                    "fwdInMessages": true,
                    "resendOnRefresh": true,
                    "templateScope": "local",
                    "x": 580,
                    "y": 220,
                    "wires": [
                    []
                    ]
                    },
                    {
                    "id": "8ed21c9a8bc6c01f",
                    "type": "comment",
                    "z": "98b0e1d0468f771d",
                    "name": "Abfallkalender (Dashboard)",
                    "info": "",
                    "x": 160,
                    "y": 60,
                    "wires": []
                    },
                    {
                    "id": "61f404b6c5a8e42a",
                    "type": "function",
                    "z": "98b0e1d0468f771d",
                    "name": "Heute / Morgen ...",
                    "func": "let Datum=msg.payload.split(".");\nlet Abholung = (new Date(Datum[2],Datum[1]-1,Datum[0],0,0,0).getTime())/1000;\nlet jetzt = new Date();\nlet Heute = (new Date(jetzt.getFullYear(),jetzt.getMonth(),jetzt.getDate(),0,0,0).getTime())/1000;\n\nif (Heute == Abholung) { msg.payload="Heute"; } \n else if (Heute + (186400) == Abholung) { msg.payload="Morgen"; } \n else if (Heute + (286400) == Abholung) { msg.payload="übermorgen"; } \n else { msg.payload="in " + (Abholung-Heute)/86400 + " Tagen"; }\n\nreturn msg;",
                    "outputs": 1,
                    "noerr": 0,
                    "initialize": "",
                    "finalize": "",
                    "libs": [],
                    "x": 370,
                    "y": 100,
                    "wires": [
                    [
                    "01b9a8bb6d240bca"
                    ]
                    ]
                    },
                    {
                    "id": "6116e8118cb79333",
                    "type": "function",
                    "z": "98b0e1d0468f771d",
                    "name": "Zuordnungen",
                    "func": "let Trash = [{ "ical": "Sack", "Name": "Gelber Sack", "Farbe": "yellow" },\n { "ical": "Papier", "Name": "Papiertonne", "Farbe": "blue" },\n { "ical": "Bio", "Name": "Biotonne", "Farbe": "#00ff00" },\n { "ical": "Müll", "Name": "Mülltonne", "Farbe": "black" },\n { "ical": "Mobil", "Name": "Schadstoffmobil", "Farbe": "orange" }];\n\nlet Abfuhr=msg.payload;\nmsg.template="<div layout=\"row\" layout-align=\"space-between center\" style=\"padding: 0 6px;\"><p>was</p>";\nfor(let i=0; i<Trash.length; i++) {\n\n if (Abfuhr.indexOf(Trash[i].ical)>=0) { \n msg.template+="<font size=\"4\" color=\"" + Trash[i].Farbe + "\"><b>" + Trash[i].Name + "</b></font>";\n Abfuhr=Abfuhr.replace(Trash[i].ical, "");\n }\n \n}\nmsg.template+="</div>";\n\nreturn msg;",
                    "outputs": 1,
                    "noerr": 0,
                    "initialize": "",
                    "finalize": "",
                    "libs": [],
                    "x": 360,
                    "y": 160,
                    "wires": [
                    [
                    "956ccc37aa28fd4a"
                    ]
                    ]
                    },
                    {
                    "id": "8b7d9b71479d6ab0",
                    "type": "function",
                    "z": "98b0e1d0468f771d",
                    "name": "Zuordnungen",
                    "func": "\nlet Trash = [{ "ical": "Sack", "Name": "Gelber Sack", "Farbe": "yellow" },\n { "ical": "Papier", "Name": "Papiertonne", "Farbe": "blue" },\n { "ical": "Bio", "Name": "Biotonne", "Farbe": "#00ff00" },\n { "ical": "Müll", "Name": "Mülltonne", "Farbe": "black" },\n { "ical": "Mobil", "Name": "Schadstoffmobil", "Farbe": "orange" }];\n\nlet Abfuhr=msg.payload;\nmsg.template="<div layout=\"row\" layout-align=\"space-between center\" style=\"padding: 0 6px;\"><p>ist dran</p>";\nfor(let i=0; i<Trash.length; i++) {\n\n if (Abfuhr.indexOf(Trash[i].ical)>=0) { \n msg.template+="<font size=\"4\" color=\"" + Trash[i].Farbe + "\"><b>" + Trash[i].Name + "</b></font>";\n Abfuhr=Abfuhr.replace(Trash[i].ical, "");\n }\n \n}\nmsg.template+="</div>";\n\nreturn msg;",
                    "outputs": 1,
                    "noerr": 0,
                    "initialize": "",
                    "finalize": "",
                    "libs": [],
                    "x": 360,
                    "y": 280,
                    "wires": [
                    [
                    "3a36dc8fae08f48c"
                    ]
                    ]
                    },
                    {
                    "id": "7ceaf9a.8ba7c08",
                    "type": "ui_group",
                    "name": "Abfallkalender",
                    "tab": "9081d8f6.325c2",
                    "order": 1,
                    "disp": true,
                    "width": "6",
                    "collapse": false
                    },
                    {
                    "id": "9081d8f6.325c2",
                    "type": "ui_tab",
                    "name": "HAMS",
                    "icon": "store",
                    "order": 1,
                    "disabled": false,
                    "hidden": false
                    }
                    ]

                    Musst dann nur in den beiden Zuordnungen den Anfang konfigurieren:

                    let Trash = [{ "ical": "Sack",   "Name": "Gelber Sack",     "Farbe": "yellow"  },
                                 { "ical": "Papier", "Name": "Papiertonne",     "Farbe": "blue"    },
                                 { "ical": "Bio",    "Name": "Biotonne",        "Farbe": "#00ff00" },
                                 { "ical": "Müll",   "Name": "Mülltonne",       "Farbe": "black"   },
                                 { "ical": "Mobil",  "Name": "Schadstoffmobil", "Farbe": "orange"  }];
                    

                    Sollte relativ selbsterklärend sein, aber ical wie es eben im Kalender steht, Name wie es dann im Dashboard angezeigt werden soll und Farbe als engl. Bezeichnung oder per "#" als RGB- Hexwert.

                    ...und wie man sieht werden auch Mehrfachabfuhren berücksichtigt 😎

                    ? 1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @SBorg last edited by

                      @sborg Danke...leider bekomme ich eine Fehlermeldung beim importieren.

                      09c75d23-8b35-4690-a729-6a1f871867b8-image.png

                      SBorg 1 Reply Last reply Reply Quote 0
                      • SBorg
                        SBorg Forum Testing Most Active @Guest last edited by

                        @noah3112 Ev. hat er da mal wieder was "dazu gebastelt"... 😞

                        Noch mal direkt aus der Zwischenablage :

                        [
                           {
                               "id": "6724d07c.d30ee",
                               "type": "ioBroker in",
                               "z": "9935d2ef.9e5928",
                               "name": "Nächste Leerung",
                               "topic": "trashschedule.0.next.dateFormat",
                               "payloadType": "value",
                               "onlyack": "update",
                               "func": "all",
                               "gap": "",
                               "fireOnStart": "true",
                               "x": 100,
                               "y": 80,
                               "wires": [
                                   [
                                       "51c87098.8ca89"
                                   ]
                               ]
                           },
                           {
                               "id": "54c13585.5b52cc",
                               "type": "ioBroker in",
                               "z": "9935d2ef.9e5928",
                               "name": "Nächste Leerung Typ",
                               "topic": "trashschedule.0.next.typesText",
                               "payloadType": "value",
                               "onlyack": true,
                               "func": "all",
                               "gap": "",
                               "fireOnStart": "true",
                               "x": 120,
                               "y": 140,
                               "wires": [
                                   [
                                       "556903ab.809234"
                                   ]
                               ]
                           },
                           {
                               "id": "31d12d29.1091b2",
                               "type": "ioBroker in",
                               "z": "9935d2ef.9e5928",
                               "name": "danach Leerung",
                               "topic": "trashschedule.0.nextAfter.dateFormat",
                               "payloadType": "value",
                               "onlyack": true,
                               "func": "all",
                               "gap": "",
                               "fireOnStart": "true",
                               "x": 100,
                               "y": 200,
                               "wires": [
                                   [
                                       "c268e0a.ca2e7a"
                                   ]
                               ]
                           },
                           {
                               "id": "1cdf03bd.77738c",
                               "type": "ioBroker in",
                               "z": "9935d2ef.9e5928",
                               "name": "danach Typ",
                               "topic": "trashschedule.0.nextAfter.typesText",
                               "payloadType": "value",
                               "onlyack": "update",
                               "func": "all",
                               "gap": "",
                               "fireOnStart": "true",
                               "x": 90,
                               "y": 260,
                               "wires": [
                                   [
                                       "b43b5da.84f56a"
                                   ]
                               ]
                           },
                           {
                               "id": "9f681fa0.0e3e7",
                               "type": "ui_template",
                               "z": "9935d2ef.9e5928",
                               "group": "7ceaf9a.8ba7c08",
                               "name": "Abfalltyp",
                               "order": 2,
                               "width": 0,
                               "height": 0,
                               "format": "",
                               "storeOutMessages": true,
                               "fwdInMessages": true,
                               "resendOnRefresh": true,
                               "templateScope": "local",
                               "className": "",
                               "x": 560,
                               "y": 140,
                               "wires": [
                                   []
                               ]
                           },
                           {
                               "id": "e322ebf0.9756d",
                               "type": "ui_template",
                               "z": "9935d2ef.9e5928",
                               "group": "7ceaf9a.8ba7c08",
                               "name": "danach Abfalltyp",
                               "order": 4,
                               "width": 0,
                               "height": 0,
                               "format": "",
                               "storeOutMessages": true,
                               "fwdInMessages": true,
                               "resendOnRefresh": true,
                               "templateScope": "local",
                               "x": 590,
                               "y": 260,
                               "wires": [
                                   []
                               ]
                           },
                           {
                               "id": "f65d7dca.63388",
                               "type": "ui_template",
                               "z": "9935d2ef.9e5928",
                               "group": "7ceaf9a.8ba7c08",
                               "name": "nächste Leerung",
                               "order": 1,
                               "width": 0,
                               "height": 0,
                               "format": "<div layout=\"row\" layout-align=\"space-between center\" style=\"padding: 0 6px;\">\n  <p>Nächste Leerung</p>\n  <font size=\"3\" color=\"white\">\n    <b>{{msg.payload}}</b>\n  </font>\n</div>\n",
                               "storeOutMessages": true,
                               "fwdInMessages": true,
                               "resendOnRefresh": true,
                               "templateScope": "local",
                               "className": "",
                               "x": 590,
                               "y": 80,
                               "wires": [
                                   []
                               ]
                           },
                           {
                               "id": "c268e0a.ca2e7a",
                               "type": "ui_template",
                               "z": "9935d2ef.9e5928",
                               "group": "7ceaf9a.8ba7c08",
                               "name": "danach",
                               "order": 3,
                               "width": 0,
                               "height": 0,
                               "format": "<div layout=\"row\" layout-align=\"space-between center\" style=\"padding: 0 6px;\">\n  <p>danach</p>\n  <font size=\"3\" color=\"white\">\n    <b>{{msg.payload}}</b>\n  </font>\n</div>",
                               "storeOutMessages": true,
                               "fwdInMessages": true,
                               "resendOnRefresh": true,
                               "templateScope": "local",
                               "x": 560,
                               "y": 200,
                               "wires": [
                                   []
                               ]
                           },
                           {
                               "id": "aa16944.5d916e8",
                               "type": "comment",
                               "z": "9935d2ef.9e5928",
                               "name": "Abfallkalender (Dashboard)",
                               "info": "",
                               "x": 140,
                               "y": 40,
                               "wires": []
                           },
                           {
                               "id": "51c87098.8ca89",
                               "type": "function",
                               "z": "9935d2ef.9e5928",
                               "name": "Heute / Morgen ...",
                               "func": "let Datum=msg.payload.split(\".\");\nlet Abholung = (new Date(Datum[2],Datum[1]-1,Datum[0],0,0,0).getTime())/1000;\nlet jetzt = new Date();\nlet Heute = (new Date(jetzt.getFullYear(),jetzt.getMonth(),jetzt.getDate(),0,0,0).getTime())/1000;\n\nif (Heute == Abholung) { msg.payload=\"Heute\"; } \n else if (Heute + (1*86400) == Abholung) { msg.payload=\"Morgen\"; } \n else if (Heute + (2*86400) == Abholung) { msg.payload=\"Übermorgen\"; } \n else { msg.payload=\"in \" + (Abholung-Heute)/86400 + \" Tagen\"; }\n\nreturn msg;",
                               "outputs": 1,
                               "noerr": 0,
                               "initialize": "",
                               "finalize": "",
                               "libs": [],
                               "x": 350,
                               "y": 80,
                               "wires": [
                                   [
                                       "f65d7dca.63388"
                                   ]
                               ]
                           },
                           {
                               "id": "556903ab.809234",
                               "type": "function",
                               "z": "9935d2ef.9e5928",
                               "name": "Zuordnungen",
                               "func": "let Trash = [{ \"ical\": \"Sack\",   \"Name\": \"Gelber Sack\",     \"Farbe\": \"yellow\"  },\n             { \"ical\": \"Papier\", \"Name\": \"Papiertonne\",     \"Farbe\": \"blue\"    },\n             { \"ical\": \"Bio\",    \"Name\": \"Biotonne\",        \"Farbe\": \"#00ff00\" },\n             { \"ical\": \"Müll\",   \"Name\": \"Mülltonne\",       \"Farbe\": \"black\"   },\n             { \"ical\": \"Mobil\",  \"Name\": \"Schadstoffmobil\", \"Farbe\": \"orange\"  }];\n\nlet Abfuhr=msg.payload;\nmsg.template=\"<div layout=\\\"row\\\" layout-align=\\\"space-between center\\\" style=\\\"padding: 0 6px;\\\"><p>was</p>\";\nfor(let i=0; i<Trash.length; i++) {\n\n  if (Abfuhr.indexOf(Trash[i].ical)>=0) { \n      msg.template+=\"<font size=\\\"4\\\" color=\\\"\" + Trash[i].Farbe + \"\\\"><b>\" + Trash[i].Name + \"</b></font>\";\n      Abfuhr=Abfuhr.replace(Trash[i].ical, \"\");\n  }\n  \n}\nmsg.template+=\"</div>\";\n\nreturn msg;",
                               "outputs": 1,
                               "noerr": 0,
                               "initialize": "",
                               "finalize": "",
                               "libs": [],
                               "x": 340,
                               "y": 140,
                               "wires": [
                                   [
                                       "9f681fa0.0e3e7"
                                   ]
                               ]
                           },
                           {
                               "id": "b43b5da.84f56a",
                               "type": "function",
                               "z": "9935d2ef.9e5928",
                               "name": "Zuordnungen",
                               "func": "\nlet Trash = [{ \"ical\": \"Sack\",   \"Name\": \"Gelber Sack\",     \"Farbe\": \"yellow\"  },\n             { \"ical\": \"Papier\", \"Name\": \"Papiertonne\",     \"Farbe\": \"blue\"    },\n             { \"ical\": \"Bio\",    \"Name\": \"Biotonne\",        \"Farbe\": \"#00ff00\" },\n             { \"ical\": \"Müll\",   \"Name\": \"Mülltonne\",       \"Farbe\": \"black\"   },\n             { \"ical\": \"Mobil\",  \"Name\": \"Schadstoffmobil\", \"Farbe\": \"orange\"  }];\n\nlet Abfuhr=msg.payload;\nmsg.template=\"<div layout=\\\"row\\\" layout-align=\\\"space-between center\\\" style=\\\"padding: 0 6px;\\\"><p>ist dran</p>\";\nfor(let i=0; i<Trash.length; i++) {\n\n  if (Abfuhr.indexOf(Trash[i].ical)>=0) { \n      msg.template+=\"<font size=\\\"4\\\" color=\\\"\" + Trash[i].Farbe + \"\\\"><b>\" + Trash[i].Name + \"</b></font>\";\n      Abfuhr=Abfuhr.replace(Trash[i].ical, \"\");\n  }\n  \n}\nmsg.template+=\"</div>\";\n\nreturn msg;",
                               "outputs": 1,
                               "noerr": 0,
                               "initialize": "",
                               "finalize": "",
                               "libs": [],
                               "x": 340,
                               "y": 260,
                               "wires": [
                                   [
                                       "e322ebf0.9756d"
                                   ]
                               ]
                           },
                           {
                               "id": "7ceaf9a.8ba7c08",
                               "type": "ui_group",
                               "name": "Abfallkalender",
                               "tab": "9081d8f6.325c2",
                               "order": 1,
                               "disp": true,
                               "width": "6",
                               "collapse": false
                           },
                           {
                               "id": "9081d8f6.325c2",
                               "type": "ui_tab",
                               "name": "HAMS",
                               "icon": "store",
                               "order": 1,
                               "disabled": false,
                               "hidden": false
                           }
                        ]
                        

                        ? 1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User @SBorg last edited by

                          @sborg Jetzt hat es funktioniert...vielen Dank 👍

                          1 Reply Last reply Reply Quote 0
                          • JB_Sullivan
                            JB_Sullivan last edited by

                            Auch wenn das hier nur bedingt rein passt, aber hatte hier nicht jemand ein Trash Mülltonnen Widget mit anders designten Mülltonnen gebaut?

                            Wie macht man so ein Widget? Kann gerne auch einen eigenen Thread dafür eröffnen, aber der Trashscheduler mit seinem VIS Widget ist so nah an dem dran was mir vorschwebt, das ich erstmal hier in der Runde die Experten fragen möchte.

                            Konkrekt geht es um ein Fahrzeug Widget welches über 15 verschiedene Datenpunkte die Zustände der Türen, Hauben, Fenster und Schiebedach darstellen soll.

                            Ich habe keinen blassen Schimmer wie man so ein Widet baut, das man dann ggf. aus der ioBroker Adapter Liste heraus in den VIS Editor installieren lassen kann.

                            Wie gesagt, ich mache gerne einen neuen Thread auf, wenn ich hier ein paar "wissende" dafür gewinnen kann, in dem neuen Thread zu dem Thema weiter zu diskutieren.

                            haus-automatisierung 1 Reply Last reply Reply Quote 0
                            • haus-automatisierung
                              haus-automatisierung Developer Most Active @JB_Sullivan last edited by

                              @jb_sullivan sagte in Test Adapter TrashSchedule:

                              Ich habe keinen blassen Schimmer wie man so ein Widet baut, das man dann ggf. aus der ioBroker Adapter Liste heraus in den VIS Editor installieren lassen kann.

                              Na den Workflow dafür habe ich schonmal vorgestellt: https://www.youtube.com/watch?v=A9UETXyAmL4

                              Es gibt dann Adapter, welche in der io-package.json so konfiguriert sind, dass sie keine Adapter sind, sondern "nur" Web-Dateien bereitstellen: "onlyWWW": true

                              Beispiele findest Du dafür ja in der Adapterliste zu genüge. Einfach mal die Repos anschauen und das widget Verzeichnis. Du solltest fit in HTML, CSS und JavaScript sein.

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

                                @haus-automatisierung sagte in Test Adapter TrashSchedule:

                                Du solltest fit in HTML, CSS und JavaScript sein.

                                Hmm - danke für die Links - ich dachte "nur so ein Widget" wäre einfacher als ein "ganzer" ioB Adapter - OK, dann bin ich raus 😒

                                Na gut dann halt doch nach alter Methode, 14 Bilder übereinander stapeln und über die Sichtbarkeitsregel aktivieren. Naja war ein Versuch ......

                                haus-automatisierung 1 Reply Last reply Reply Quote 0
                                • haus-automatisierung
                                  haus-automatisierung Developer Most Active @JB_Sullivan last edited by

                                  @jb_sullivan sagte in Test Adapter TrashSchedule:

                                  ich dachte "nur so ein Widget" wäre einfacher als ein "ganzer" ioB Adapter

                                  Natürlich muss das alles zu npm und dann mit ins Repository aufgenommen werden. Der Weg ist ja 1:1 der gleiche. Nur was im Paket / Repo zu finden ist, unterscheidet sich dann halt.

                                  1 Reply Last reply Reply Quote 0
                                  • B
                                    Bones13 last edited by

                                    Hallo zusammen, hat jemand eine Idee, ob uns falls ja wie man das Widget so hinbekommt, dass sich die Größe anpasst? Also auf dem Handy bzw. auf dem Tablet. So wie ich es jetzt habe sieht es auf dem Tablet gut aus, ist aber auf dem Handy viel zu groß.

                                    haus-automatisierung 1 Reply Last reply Reply Quote 0
                                    • haus-automatisierung
                                      haus-automatisierung Developer Most Active @Bones13 last edited by

                                      @bones13 sagte in Test Adapter TrashSchedule:

                                      Hallo zusammen, hat jemand eine Idee, ob uns falls ja wie man das Widget so hinbekommt, dass sich die Größe anpasst?

                                      Mir fehlt dafür die Zeit... https://github.com/klein0r/ioBroker.trashschedule/issues/90

                                      vonCartman created this issue in klein0r/ioBroker.trashschedule

                                      open widget Rahmen / Rand (margin) lässt sich nicht kleiner machen #90

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        Bones13 @haus-automatisierung last edited by

                                        @haus-automatisierung

                                        Ja alles gut. Bin ja schon froh, dass alles soweit funktioniert 🙂

                                        Habe übrigens eine Lösung gefunden, welche jetzt für meine Zwecke sehr gut funktioniert:
                                        Ich verwende in meiner vis hauptsächlich den Material Adapter mit den dazugehörigen Widgets. Dort setzte ich für alle Seiten das Widget "Grid-Views" ein. Ich habe nun einfach zwei verschiedene "Müll-Views" erstellt. Ein normales und ein kleines. In den jeweiligen Einstellungen des Grid-View habe ich bei einem dann ausgewählt, dass es bei einer Auflösung von größer als 500px angezeigt wird und bei dem anderen kleiner als 500px. Somit kommt immer der jeweilige View. Funktioniert bis jetzt perfekt.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Shermy last edited by Shermy

                                          Ich nutze den Trashscheduler nur als Erinnerung, dass am nächsten Tag Müllabfuhr ist. Deshalb habe ich ein Rechteck in Hintergrundfarbe darüber gelegt, das verschwindet, wenn der Datenpunkt „days left“ =< 1 ist.
                                          Kann man diese Last Minute Erinnerung auch direkt in den Adapter integrieren ?
                                          Meine Vorgehensweise hat halt die Schwäche, dass ich nur max. ein bis 2 Wochen in der Vorschau haben darf - ansonsten wird die zukünftige Tonne mit angezeigt.

                                          1 Reply Last reply Reply Quote 0
                                          • Hiltex
                                            Hiltex last edited by

                                            @haus-automatisierung

                                            Ich habe mir diesen Adapter angeschaut und finde ihn garnicht so schlecht, also erstmal danke dafür.
                                            Was mir jedoch fehlt ist das "Mülltonnen-Handling". Damit meine ich die Möglichkeit, per VIS abzuhaken, dass ich die Mülltonnen vors Haus gestellt habe.

                                            Das macht (für mich) insofern Sinn, als dass ich mit unterschiedlichen Müllarten auch unterschiedlich umgehe. Die Tonnen werden bei uns immer ziemlich zeitig abgeholt, da bin ich teilweise noch garnicht wach, sodass die unbedingt abends an die Straße geschoben werden müssen.
                                            Der gelbe Sack hingegen wird bei uns relativ spät eingesammelt. Hier im Norden (SH) ist es oft windig, sodass ich den immer erst früh am Abholtag raus lege.

                                            Mit dem "Mülltonnen-Handling" will ich nun folgendes realisieren: Ein Popup-Dialog auf meiner VIS erinnert mich an die Müllabfuhr. Wenn eine Tonne draußen steht, hake ich die einfach ab, sodass diese aus der Liste des abzuholenden Mülls verschwinden soll. Bleibt etwas in der Liste, zum Beispiel der Gelbe Sack, den ich ja erst am Tag der Abholung raus lege, so erscheint der Popup-Dialog zu gegebener Zeit erneut. Da der Inhalt des Dialoges dynamisch ist und sich an dem orientiert, was ansteht, werde ich bei gleichzeitiger Abfuhr nur an das erinnert, was noch zu erledigen ist.

                                            Die Logik ist eigentlich relativ simpel: jede Abfallart bekommt einen beschreibbaren boolschen Erledigt-Datenpunkt. Was erledigt ist, fliegt aus der Liste trashschedule.0.next.types. Am Abend wird der jeweilige Datenpunkt zurückgesetzt, ein zusätzlicher Datenpunkt setzt alle manuell zurück (falls man sich vertippt hat).

                                            Mir ist klar, dass man das auch recht simpel mit einem Script machen kann, aber ich finde, das würde auch gut in diesen Adapter passen.

                                            Ist das etwas, das für dich interessant genug klingt, dass du das in den Adapter integrieren würdest?

                                            haus-automatisierung 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            565
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter calendar ical kalender müll trash
                                            184
                                            1432
                                            362486
                                            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