Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      Beowolf @bimmi last edited by Beowolf

      @bimmi

      Ich habe bei mir das Skript so:

      
      
      function getEventsForNextDay(days) {
        var start = new Date();
        start.setHours(0, 0, 0, 0);
        var end = new Date();
        if (days == undefined) days = 14;
        end.setDate(end.getDate() + parseInt(days, 10));
        var calendars = CalendarApp.getAllCalendars();
        var events = [];
        for (var i = 0; i < calendars.length; i++) {
          var calendar = calendars[i];
          var eventsInCalendar = calendar.getEvents(start, end);
          for (var j = 0; j < eventsInCalendar.length; j++) {
            var event = eventsInCalendar[j];
            events.push({
              calendar: i,
              title: event.getTitle(),
              start: Math.floor(event.getStartTime().getTime() / 1000),
              end: Math.floor(event.getEndTime().getTime() / 1000),
              isallday: event.isAllDayEvent()
            });
          }
        }
        events.sort(function(a, b) {
          return a.start - b.start;
        });
        return JSON.stringify(events);
      }
       
      function doGet(e) {
        if(!e) { 
          e = {parameter: {days: 1}};
        }
        const params = e.parameter;
        var content = getEventsForNextDay(params.days);
        var output = ContentService.createTextOutput(content);
        output.setMimeType(ContentService.MimeType.JSON);
        return output;
      }
      

      Angezeigt werden die Einträge auf den kleinen 2.9" TAGs. Einmal die weissen TAGs (FW: 37) und einmal die schwarzen TAGs(FW:35).

      Es werden nur die Termine von heute und dem nächsten Tag angezeigt. Bei der 2.05 werden alle Termine angezeigt (bis der kleine Bildschirm voll ist).

      B 1 Reply Last reply Reply Quote 0
      • B
        bimmi @Beowolf last edited by

        @beowolf Ach am kleinen. Da nutze ich ein anderes Script. Ich kann nur leider am Handy nicht markieren im Google App Script. Ich schicke es heute abend rein!

        Screenshot_20240126-081528.png

        B 1 Reply Last reply Reply Quote 2
        • B
          Beowolf @bimmi last edited by Beowolf

          @bimmi
          Vielen, vielen Dank.

          Ich habe es mal "abgetippt".

          function getEventsForNextDay(days) {
            var start = new Date();
            var end = new Date();
            var time_offset = 0;
            end.setDate(end.getDate() + 8);
            var calendars = CalendarApp.getAllCalendars();
            var events = [];
            for (var i = 0; i < calendars.length; i++) {
              var calendar = calendars[i];
              var eventsInCalendar = calendar.getEvents(start, end);
              for (var j = 0; j < eventsInCalendar.length; j++) {
                var event = eventsInCalendar[j];
                events.push({
                  title: event.getTitle(),
                  start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                  end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                  location: event.getLocation(),
                  description: event.getDescription()
                });
              }
            }
            // Sort events by start date/time
            events.sort(function(a, b) {
              return a.start - b.start;
            });
            return JSON.stringify(events);
          }
           
          function doGet() {
            var content = getEventsForNextDay();
            var output = ContentService.createTextOutput(content);
            output.setMimeType(ContentService.MimeType.JSON);
            return output;
          }
          

          Sollte so richtig sein.

          Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

          Danke

          B R 2 Replies Last reply Reply Quote 1
          • B
            Beowolf last edited by

            Was mir noch aufgefallen ist, bei den weissen TAGs gibt es "Buienradar", also "Regenradar".

            Das gibt es bei den schwarzen TAGs nicht mehr. Schade.

            1 Reply Last reply Reply Quote 0
            • B
              bimmi @Beowolf last edited by

              @beowolf sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

              @bimmi
              Vielen, vielen Dank.

              Ich habe es mal "abgetippt".

              function getEventsForNextDay(days) {
                var start = new Date();
                var end = new Date();
                var time_offset = 0;
                end.setDate(end.getDate() + 8);
                var calendars = CalendarApp.getAllCalendars();
                var events = [];
                for (var i = 0; i < calendars.length; i++) {
                  var calendar = calendars[i];
                  var eventsInCalendar = calendar.getEvents(start, end);
                  for (var j = 0; j < eventsInCalendar.length; j++) {
                    var event = eventsInCalendar[j];
                    events.push({
                      title: event.getTitle(),
                      start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                      end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                      location: event.getLocation(),
                      description: event.getDescription()
                    });
                  }
                }
                // Sort events by start date/time
                events.sort(function(a, b) {
                  return a.start - b.start;
                });
                return JSON.stringify(events);
              }
               
              function doGet() {
                var content = getEventsForNextDay();
                var output = ContentService.createTextOutput(content);
                output.setMimeType(ContentService.MimeType.JSON);
                return output;
              }
              

              Sollte so richtig sein.

              Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

              Danke

              Super 😅😅😅

              haselchen 1 Reply Last reply Reply Quote 0
              • haselchen
                haselchen Most Active @bimmi last edited by

                @bimmi

                Kann ich @Beowolf nur zustimmen.
                Funktioniert. Dankeschön!

                Kleiner Schönheitsmakel.
                Oben rechts das Datum, wie bekomme ich da die Striche weg und "normal" geschrieben hin?
                27-01-2024 steht da jetzt, vorher war es 27.01.2024

                1 Reply Last reply Reply Quote 0
                • R
                  Revobobo @Beowolf last edited by

                  @beowolf sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                  Mal ne Frage: wie kriege ich das Script zum laufen? Wo muss es gespeichert werden?

                  Viele Grüße

                  @bimmi
                  Vielen, vielen Dank.

                  Ich habe es mal "abgetippt".

                  function getEventsForNextDay(days) {
                    var start = new Date();
                    var end = new Date();
                    var time_offset = 0;
                    end.setDate(end.getDate() + 8);
                    var calendars = CalendarApp.getAllCalendars();
                    var events = [];
                    for (var i = 0; i < calendars.length; i++) {
                      var calendar = calendars[i];
                      var eventsInCalendar = calendar.getEvents(start, end);
                      for (var j = 0; j < eventsInCalendar.length; j++) {
                        var event = eventsInCalendar[j];
                        events.push({
                          title: event.getTitle(),
                          start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                          end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                          location: event.getLocation(),
                          description: event.getDescription()
                        });
                      }
                    }
                    // Sort events by start date/time
                    events.sort(function(a, b) {
                      return a.start - b.start;
                    });
                    return JSON.stringify(events);
                  }
                   
                  function doGet() {
                    var content = getEventsForNextDay();
                    var output = ContentService.createTextOutput(content);
                    output.setMimeType(ContentService.MimeType.JSON);
                    return output;
                  }
                  

                  Sollte so richtig sein.

                  Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

                  Danke

                  B 1 Reply Last reply Reply Quote 0
                  • B
                    bimmi @Revobobo last edited by

                    @revobobo Schau mal hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

                    R 1 Reply Last reply Reply Quote 0
                    • R
                      Revobobo @bimmi last edited by

                      Top - hat geklappt - Dank Dir!!

                      Viele Grüße


                      @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
                      @revobobo

                      Schau mal hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

                      1 Reply Last reply Reply Quote 1
                      • B
                        bimmi last edited by bimmi

                        Es kommt demnächst was neues:

                        IMG_5451.jpg

                        Ebenso wird aktuell an folgenden Sachen gearbeitet:

                        • Aktualisierte Webserver-/TCP-Sockets-Bibliothek mit einer stabileren Version.
                        • Warteschlangenbildung von ausstehenden Bildern, sodass ein ausstehendes Bild nicht mehr mit einem neuen während der Übertragung verwechselt wird.
                        • Es wird kein Datei-Handler mehr während des JPEG-Uploads offen gehalten, keine gleichzeitigen Schreibvorgänge mehr.
                        • Zlib-Komprimierung zum Übertragen von Bildern zwischen AP und Tags hinzugefügt. Die bevorstehende Tag-Firmware wird das nutzen.
                        R B 2 Replies Last reply Reply Quote 3
                        • R
                          Revobobo @bimmi last edited by

                          @bimmi
                          Huiuiui - das hört sich nach einem neuen AP an - der MINI schafft dass bestimmt nicht mehr....

                          Viele Grüße

                          R 1 Reply Last reply Reply Quote 0
                          • R
                            Revobobo @Revobobo last edited by

                            Ist das hier der Aktuellste oder gibt es schon Neuere?
                            Link Text

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

                              Ich habe jetzt einen zweiten AP hier bei mir im Haus.

                              In dem LOG Fenster erscheint nun ständig dieses hier:

                              22:28:58 moved AP from local to external 00007E1C3E8CB29D
                              22:28:58 moved AP from external to local 00007E1C3E8CB29D
                              22:28:54 moved AP from local to external 000001811F073B3A
                              22:28:54 moved AP from external to local 000001811F073B3A
                              22:28:51 moved AP from local to external 00007E1BDCACB294
                              22:28:50 moved AP from external to local 00007E1BDCACB294
                              22:28:43 moved AP from local to external 000001814A2E3B31
                              22:28:43 moved AP from external to local 000001814A2E3B31
                              22:28:42 moved AP from local to external 0000018141903B3F
                              22:28:41 moved AP from external to local 0000018141903B3F
                              22:28:39 moved AP from local to external 00007E1BD7F3B295
                              22:28:39 moved AP from external to local 00007E1BD7F3B295
                              22:28:39 moved AP from local to external 000001811F763B3C
                              22:28:38 moved AP from external to local 000001811F763B3C
                              22:28:37 moved AP from local to external 0000018171233B34
                              22:28:37 moved AP from external to local 0000018171233B34
                              22:28:34 moved AP from local to external 00007E1BDDE2B29F
                              22:28:33 moved AP from external to local 00007E1BDDE2B29F
                              22:28:30 moved AP from local to external 00007E1C34B6B29E
                              22:28:29 moved AP from external to local 00007E1C34B6B29E
                              22:28:27 moved AP from local to external 00007E1C46F8B291
                              22:28:27 moved AP from external to local 00007E1C46F8B291
                              22:28:24 moved AP from local to external 00007E211D11B296
                              22:28:23 moved AP from external to local 00007E211D11B296
                              22:28:19 moved AP from local to external 00007E1C3E8CB29D
                              22:28:18 moved AP from external to local 00007E1C3E8CB29D
                              22:28:14 moved AP from local to external 000001811F073B3A
                              22:28:14 moved AP from external to local 000001811F073B3A
                              22:28:06 moved AP from local to external 00007E1BDCACB294
                              22:28:05 moved AP from external to local 00007E1BDCACB294
                              22:28:03 moved AP from local to external 000001814A2E3B31
                              22:28:03 moved AP from external to local 000001814A2E3B31
                              22:27:59 moved AP from local to external 00007E1BD7F3B295
                              22:27:58 moved AP from external to local 00007E1BD7F3B295
                              22:27:58 moved AP from local to external 000001811F763B3C
                              22:27:58 moved AP from external to local 000001811F763B3C
                              22:27:57 moved AP from local to external 0000018171233B34
                              22:27:57 moved AP from external to local 0000018171233B34
                              22:27:49 moved AP from local to external 00007E1C34B6B29E
                              22:27:49 moved AP from external to local 00007E1C34B6B29E
                              22:27:47 moved AP from local to external 00007E1C46F8B291
                              22:27:47 moved AP from external to local 00007E1C46F8B291
                              

                              Das sieht für mich so aus, als ob die TAGs ständig versuchen sich bei dem einen oder anderen AP anzumelden.

                              Ich musste den zweiten AP ausschalten. Es wird nur versucht die TAG hin und her zu schieben. Kein TAG wird mehr aktualisiert.

                              Da funktioniert etwas noch nicht.

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

                                Da sind die ap zu nah bei einander. Das hatte ich auch bei ein paar Tags. Roaming.

                                Das kannst du nur unterbinden indem du beide ap auf unterschiedlichen zigbee Kanälen laufen lässt. Ich habe meine auf 11 und 20.

                                B 1 Reply Last reply Reply Quote 0
                                • B
                                  Beowolf @bimmi last edited by

                                  @bimmi
                                  Kann es sein, das die weissen TAGs nur Kanal 11 können?

                                  B 1 Reply Last reply Reply Quote 0
                                  • B
                                    bimmi @Beowolf last edited by

                                    @beowolf nein. Habe ich bei mir unterschiedlich.

                                    B 1 Reply Last reply Reply Quote 0
                                    • B
                                      Beowolf @bimmi last edited by

                                      @bimmi
                                      Geht jetzt. Die ganze Geschichte benötigt manchml sehr viel Zeit, damit sich alle untereinander finden und zufrieden sind.😊

                                      1 Reply Last reply Reply Quote 1
                                      • B
                                        Beowolf @bimmi last edited by

                                        @bimmi

                                        Gibt es schon etwas zu bewundern?

                                        PS
                                        Warum ist im ersten Beitrag der Link durchgestrichen?

                                        B 1 Reply Last reply Reply Quote 0
                                        • B
                                          bimmi @Beowolf last edited by bimmi

                                          @beowolf ups. Da wollte ich eigentlich den ursprünglichen tindy link durchstreichen und nicht den github link. Danke!

                                          Was sollte es denn zu bewundern geben?

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            Beowolf @bimmi last edited by

                                            @bimmi
                                            Natürlich die angekündigten Neuigkeiten aus diesem Beitrag

                                            https://forum.iobroker.net/topic/66380/eps-e-ink-display-ansteuerung-statusdisplay-für-2/345?_=1707207991400

                                            Freu. 😳

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            950
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            41
                                            987
                                            222283
                                            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