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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blinken der Mülltonne

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Blinken der Mülltonne

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
21 Beiträge 6 Kommentatoren 1.2k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • O Oskar

    Hallo,
    also das mit dem o.a. Eintrag geht, eine der Mülltonnen die in zweit Tage gelehrt wird hat heute das Blinken angefangen. Wie kann ich nun einstellen, dass am Abholtag das Blinken aufgehört hat?
    Für einen weiteren Tip wäre ich dankbar,
    lg Oskar

    M Offline
    M Offline
    marsmännchen
    schrieb am zuletzt editiert von
    #9

    Kann mir jemand helfen wie ich es fertig bringe das Trashschedule Widget mit dem Tag 0 blinken zu lassen?
    Derzeit wird ja nur "nextDaysLeft = 1" blinkend dargestellt. Meine Frau meint Sie hätte gerne das es dann blinkt wenn sie fällig ist, raus gestellt zu werden (die Mültonne).:face_with_rolling_eyes:

    MfG
    Patrick

    Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
    Wago PFC200 mit Dali Lichtsteuerung.

    OliverIOO 1 Antwort Letzte Antwort
    0
    • M marsmännchen

      Kann mir jemand helfen wie ich es fertig bringe das Trashschedule Widget mit dem Tag 0 blinken zu lassen?
      Derzeit wird ja nur "nextDaysLeft = 1" blinkend dargestellt. Meine Frau meint Sie hätte gerne das es dann blinkt wenn sie fällig ist, raus gestellt zu werden (die Mültonne).:face_with_rolling_eyes:

      MfG
      Patrick

      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von
      #10

      @marsmännchen

      gemäß dem obigen post dann

      {val:trashschedule.0.type.Biomüll.daysleft; val<=2 ? "blink-red" : ""}
      

      es blinkt dann an dayleft 0,1 und 2

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      M 1 Antwort Letzte Antwort
      0
      • OliverIOO OliverIO

        @marsmännchen

        gemäß dem obigen post dann

        {val:trashschedule.0.type.Biomüll.daysleft; val<=2 ? "blink-red" : ""}
        

        es blinkt dann an dayleft 0,1 und 2

        M Offline
        M Offline
        marsmännchen
        schrieb am zuletzt editiert von
        #11

        @oliverio
        ja danke nochmal, soweit habe ich das schon verstanden. Aber ich glaube das funktioniert mit diesem "Codeschnipsel" aber nur wenn man eine CSS Klasse? "blink-red" hat und ich vermute auch nur bei einem eigenen Widget welches als HTML widget in der Vis hinterlegt ist. Und das habe ich alles nicht (weil es mich vermutlich Monate kosten würde rauszufinden wie das geht).

        Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
        Wago PFC200 mit Dali Lichtsteuerung.

        OliverIOO 1 Antwort Letzte Antwort
        0
        • M marsmännchen

          @oliverio
          ja danke nochmal, soweit habe ich das schon verstanden. Aber ich glaube das funktioniert mit diesem "Codeschnipsel" aber nur wenn man eine CSS Klasse? "blink-red" hat und ich vermute auch nur bei einem eigenen Widget welches als HTML widget in der Vis hinterlegt ist. Und das habe ich alles nicht (weil es mich vermutlich Monate kosten würde rauszufinden wie das geht).

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von OliverIO
          #12

          @marsmännchen

          was hast du den jetzt schon?`
          aus deinem text interpretiere ich das du das widget trash_schedule hast
          und auch schon das binding eingefügt hast.
          das einzige problem ist, das nicht am 0. tag blinkt.
          um das anzupassen hab ich dir das binding angepasst.
          falls das nicht zutrifft, beschreibe was du jetzt schon hast oder auch nicht hast

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          M 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @marsmännchen

            was hast du den jetzt schon?`
            aus deinem text interpretiere ich das du das widget trash_schedule hast
            und auch schon das binding eingefügt hast.
            das einzige problem ist, das nicht am 0. tag blinkt.
            um das anzupassen hab ich dir das binding angepasst.
            falls das nicht zutrifft, beschreibe was du jetzt schon hast oder auch nicht hast

            M Offline
            M Offline
            marsmännchen
            schrieb am zuletzt editiert von
            #13

            @oliverio
            So gesehen habe ich gar nichts...
            Ich habe schon lange das originale Trashschedule Widget am laufen.
            Dort ein binding eingefügt? Wie und wo? Bindings kenn ich nur für ein HTML Widget. Daher fehlt mir auch der Ansatz für die "Bindings Lösung"

            Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
            Wago PFC200 mit Dali Lichtsteuerung.

            OliverIOO 1 Antwort Letzte Antwort
            0
            • M marsmännchen

              @oliverio
              So gesehen habe ich gar nichts...
              Ich habe schon lange das originale Trashschedule Widget am laufen.
              Dort ein binding eingefügt? Wie und wo? Bindings kenn ich nur für ein HTML Widget. Daher fehlt mir auch der Ansatz für die "Bindings Lösung"

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von OliverIO
              #14

              @marsmännchen
              ein binding kann man auch in den einstellungen eines widgets auf der rechten seite des vis editors eintragen

              in diesem bestimmten beispiel würde das binding in das attribut CSS-Klasse im Abschnitt Generell gehören.
              Solange aber die blink-red CSS Klasse nicht im Reiter CSS eingetragen ist, bringt es nix.
              da wird dann evtl @Oskar helfen können

              8cbcdcd8-853d-40e0-bcb2-6a3f05291a95-image.png

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              M 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                @marsmännchen
                ein binding kann man auch in den einstellungen eines widgets auf der rechten seite des vis editors eintragen

                in diesem bestimmten beispiel würde das binding in das attribut CSS-Klasse im Abschnitt Generell gehören.
                Solange aber die blink-red CSS Klasse nicht im Reiter CSS eingetragen ist, bringt es nix.
                da wird dann evtl @Oskar helfen können

                8cbcdcd8-853d-40e0-bcb2-6a3f05291a95-image.png

                M Offline
                M Offline
                marsmännchen
                schrieb am zuletzt editiert von marsmännchen
                #15

                Ok, der derzeitige Fortschritt besteht aus:
                binding eingetragen:bind1.PNG

                Dann eine CSS Animation erstellt:bind2.PNG

                Beides gemeinsam (wie auch erwartet) ergibt das das ganze Widget durch den "gelben Sack <=6" blinkt.

                Aber wie man das für alle Tonnen und vor allem für Tonnen die bei "daysleft 0" blinken durchführt ist mir noch ein Rätsel.
                Sofern es scheinbar gar kein "daysleft 0" gibt. Weil statt Null wird dann der nächste Abholzeitpunkt gesetzt.

                Also vermute ich als ziemlicher Laie das es generell der Falsche Ansatz ist es über ein Binding zu versuchen.
                Und die Wahrheit in der Datei "trashschedule.js" liegt wo dinge wie

                if (json) {
                            target.empty();
                            var rendered = 0;
                
                            if (size < 100 && size > 0) {
                                target.css('transform', 'scale(' + (size / 100) + ')');
                            }
                
                            $.each(JSON.parse(json), function (i, trashType) {
                
                                if (limit === 0 || rendered < limit) {
                                    var newItem = $('<div class="trashtype"></div>');
                
                                    if (trashType.daysLeft == 1) {
                                        newItem.addClass('trash-tomorrow');
                                    }
                
                                    if (trashType.daysLeft == 0) {
                                        newItem.addClass('trash-today');
                                    }
                
                                    if (glow && trashType.daysLeft <= 1) {
                                        newItem.addClass('trash-glow');
                                    }
                
                                    if (showName) {
                                        $('<span class="name"></span>').html(trashType.name).appendTo(newItem);
                                    }
                
                                    $('<div class="dumpster"></div>').html(trashType.daysLeft).wrapInner('<span class="daysleft"></span>').appendTo(newItem);
                
                                    if (showDate) {
                                        $('<span class="nextdate"></span>').html(new Date(trashType.nextDate).toLocaleDateString(dateLocale, dateOptions)).appendTo(newItem);
                                    }
                
                                    if (trashType._color) {
                                        newItem.find('.dumpster').css('background-image', vis.binds['trashschedule'].getBackgroundImage(trashType._color));
                                    }
                
                                    target.append(newItem);
                                    rendered++;
                                }
                            });
                        }
                
                    }
                };
                
                

                zu finden sind.

                vor allem:

                if (trashType.daysLeft == 0) {
                                        newItem.addClass('trash-today');
                                    }
                 
                                    if (glow && trashType.daysLeft <= 1) {
                                        newItem.addClass('trash-glow');
                

                Aber da kann ich natürlich auch auf dem Holzweg sein....

                Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                Wago PFC200 mit Dali Lichtsteuerung.

                C 1 Antwort Letzte Antwort
                0
                • M marsmännchen

                  Ok, der derzeitige Fortschritt besteht aus:
                  binding eingetragen:bind1.PNG

                  Dann eine CSS Animation erstellt:bind2.PNG

                  Beides gemeinsam (wie auch erwartet) ergibt das das ganze Widget durch den "gelben Sack <=6" blinkt.

                  Aber wie man das für alle Tonnen und vor allem für Tonnen die bei "daysleft 0" blinken durchführt ist mir noch ein Rätsel.
                  Sofern es scheinbar gar kein "daysleft 0" gibt. Weil statt Null wird dann der nächste Abholzeitpunkt gesetzt.

                  Also vermute ich als ziemlicher Laie das es generell der Falsche Ansatz ist es über ein Binding zu versuchen.
                  Und die Wahrheit in der Datei "trashschedule.js" liegt wo dinge wie

                  if (json) {
                              target.empty();
                              var rendered = 0;
                  
                              if (size < 100 && size > 0) {
                                  target.css('transform', 'scale(' + (size / 100) + ')');
                              }
                  
                              $.each(JSON.parse(json), function (i, trashType) {
                  
                                  if (limit === 0 || rendered < limit) {
                                      var newItem = $('<div class="trashtype"></div>');
                  
                                      if (trashType.daysLeft == 1) {
                                          newItem.addClass('trash-tomorrow');
                                      }
                  
                                      if (trashType.daysLeft == 0) {
                                          newItem.addClass('trash-today');
                                      }
                  
                                      if (glow && trashType.daysLeft <= 1) {
                                          newItem.addClass('trash-glow');
                                      }
                  
                                      if (showName) {
                                          $('<span class="name"></span>').html(trashType.name).appendTo(newItem);
                                      }
                  
                                      $('<div class="dumpster"></div>').html(trashType.daysLeft).wrapInner('<span class="daysleft"></span>').appendTo(newItem);
                  
                                      if (showDate) {
                                          $('<span class="nextdate"></span>').html(new Date(trashType.nextDate).toLocaleDateString(dateLocale, dateOptions)).appendTo(newItem);
                                      }
                  
                                      if (trashType._color) {
                                          newItem.find('.dumpster').css('background-image', vis.binds['trashschedule'].getBackgroundImage(trashType._color));
                                      }
                  
                                      target.append(newItem);
                                      rendered++;
                                  }
                              });
                          }
                  
                      }
                  };
                  
                  

                  zu finden sind.

                  vor allem:

                  if (trashType.daysLeft == 0) {
                                          newItem.addClass('trash-today');
                                      }
                   
                                      if (glow && trashType.daysLeft <= 1) {
                                          newItem.addClass('trash-glow');
                  

                  Aber da kann ich natürlich auch auf dem Holzweg sein....

                  C Offline
                  C Offline
                  Chrunchy
                  schrieb am zuletzt editiert von
                  #16

                  @marsmännchen Ein Ansatz, ohne diesen getestet zu haben...

                  Du hast festgestellt, dass in dem Script die css-Klassen "trash-tomorrow" und "trash-today" zugewiesen werden. Ich würde vermuten, dass du diese im Widget-CSS einfach überschreiben kannst.

                  Gruß Chrunchy

                  M 1 Antwort Letzte Antwort
                  0
                  • C Chrunchy

                    @marsmännchen Ein Ansatz, ohne diesen getestet zu haben...

                    Du hast festgestellt, dass in dem Script die css-Klassen "trash-tomorrow" und "trash-today" zugewiesen werden. Ich würde vermuten, dass du diese im Widget-CSS einfach überschreiben kannst.

                    M Offline
                    M Offline
                    marsmännchen
                    schrieb am zuletzt editiert von
                    #17

                    @chrunchy
                    Also "trash today" muss man wohl irgendwie darstellen wenn ich das richtig verstehe.

                    Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                    Wago PFC200 mit Dali Lichtsteuerung.

                    OliverIOO 1 Antwort Letzte Antwort
                    0
                    • M marsmännchen

                      @chrunchy
                      Also "trash today" muss man wohl irgendwie darstellen wenn ich das richtig verstehe.

                      OliverIOO Offline
                      OliverIOO Offline
                      OliverIO
                      schrieb am zuletzt editiert von
                      #18

                      @marsmännchen
                      die vom author vorgesehene css klasse sind genau diese.
                      diese sind vom author selbst nicht belegt.
                      daher kann diese wiederverwendet werden.

                      allerdings fehlt dir ja noch immer das css für das blinken.

                      ob du im obigen ausdruck als css klasse nun blink-red verwendest und diese definierst
                      oder trash-today im obigen ausdruck verwendest und diese als css definierst, ist egal.
                      in diesem fall sind es nur frei definierte namen.

                      Meine Adapter und Widgets
                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                      Links im Profil

                      M 1 Antwort Letzte Antwort
                      0
                      • OliverIOO OliverIO

                        @marsmännchen
                        die vom author vorgesehene css klasse sind genau diese.
                        diese sind vom author selbst nicht belegt.
                        daher kann diese wiederverwendet werden.

                        allerdings fehlt dir ja noch immer das css für das blinken.

                        ob du im obigen ausdruck als css klasse nun blink-red verwendest und diese definierst
                        oder trash-today im obigen ausdruck verwendest und diese als css definierst, ist egal.
                        in diesem fall sind es nur frei definierte namen.

                        M Offline
                        M Offline
                        marsmännchen
                        schrieb am zuletzt editiert von
                        #19

                        @oliverio

                        ich verstehe zwar was ihr meint, aber nicht wie man das durchführt.
                        so geht gar nichts:

                        .trash .trash-today {
                           
                          animation: blinker 2s linear infinite;
                        }
                        @keyframes blinker {
                          40% {
                            opacity: 0;
                          }
                        }
                        

                        Und so blinken wieder alle Tonnen gemeinsam:

                        .trash-today {
                           
                          animation: blinker 2s linear infinite;
                        }
                        @keyframes blinker {
                          40% {
                            opacity: 0;
                          }
                        }
                        

                        Und unter dem Reiter "Generell" gebe ich "trash-today" ein.
                        Aber das der Restmüll (heute fällig) blinkt, geht so mal nicht.

                        Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                        Wago PFC200 mit Dali Lichtsteuerung.

                        OliverIOO 1 Antwort Letzte Antwort
                        0
                        • M marsmännchen

                          @oliverio

                          ich verstehe zwar was ihr meint, aber nicht wie man das durchführt.
                          so geht gar nichts:

                          .trash .trash-today {
                             
                            animation: blinker 2s linear infinite;
                          }
                          @keyframes blinker {
                            40% {
                              opacity: 0;
                            }
                          }
                          

                          Und so blinken wieder alle Tonnen gemeinsam:

                          .trash-today {
                             
                            animation: blinker 2s linear infinite;
                          }
                          @keyframes blinker {
                            40% {
                              opacity: 0;
                            }
                          }
                          

                          Und unter dem Reiter "Generell" gebe ich "trash-today" ein.
                          Aber das der Restmüll (heute fällig) blinkt, geht so mal nicht.

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von
                          #20

                          @marsmännchen

                          trash .trash-today { Ist nicht korrekt
                          .trash-today { ist korrekt

                          trash-today muss nicht im Abschnitt generell in das Feld css-Klasse eingetragen werden, da der Adapter das schon im Hintergrund der einzelnen Mülltonne zuweist.
                          Wenn du es dennoch einträgst dann bekommt das ganze Widget (welches mehrere Mülltonnen enthält) die Eigenschaft das es blinken soll.

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          M 1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @marsmännchen

                            trash .trash-today { Ist nicht korrekt
                            .trash-today { ist korrekt

                            trash-today muss nicht im Abschnitt generell in das Feld css-Klasse eingetragen werden, da der Adapter das schon im Hintergrund der einzelnen Mülltonne zuweist.
                            Wenn du es dennoch einträgst dann bekommt das ganze Widget (welches mehrere Mülltonnen enthält) die Eigenschaft das es blinken soll.

                            M Offline
                            M Offline
                            marsmännchen
                            schrieb am zuletzt editiert von
                            #21

                            @OliverIO
                            Na ja, keine Ahnung wie das gehen soll.
                            Ich versuche gerade von dem Trashschedule Adapter weg zu kommen. Kommt mir ein bisschen zu kompliziert und starr für einen Laien vor. Mit diesem komplett-Widget kann ich echt nicht viel anfangen.

                            Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                            Wago PFC200 mit Dali Lichtsteuerung.

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


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            439

                            Online

                            32.6k

                            Benutzer

                            82.3k

                            Themen

                            1.3m

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

                            • Du hast noch kein Konto? Registrieren

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