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

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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

NEWS

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

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

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

E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
1.0k Beiträge 48 Kommentatoren 344.6k Aufrufe 52 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.
  • haselchenH haselchen

    @beowolf
    @bimmi

    Habt ihr das mit dem GoogleKalender in 2.07b klären können?
    Würde gerne updaten, aber nur wenn das wie mit der 2.0.5 passt.

    B Offline
    B Offline
    bimmi
    schrieb am zuletzt editiert von bimmi
    #326

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

    @beowolf
    @bimmi

    Habt ihr das mit dem GoogleKalender in 2.07b klären können?
    Würde gerne updaten, aber nur wenn das wie mit der 2.0.5 passt.

    so sieht mein Kalender Google App Script aus für den 4" Tag. Ich habe mein Script soweit umgebaut, dass ich nur einen speziellen Kalender aus meinen Kalendern abgreife. Da wo NAME-DEINES-KALENDERS steht im script da muss der Name von Dem einen Kalender rein, den Du angezeigt haben möchtest.

    function getEventsForNextDay(days) {
      var start = new Date();
      start.setHours(0, 0, 0, 0);
      var end = new Date();
      if (days == undefined) days = 9;
      end.setDate(end.getDate() + parseInt(days, 10));
      //var calendars = CalendarApp.getAllCalendars();
      var calendars = CalendarApp.getCalendarsByName("NAME-DEINES-KALENDERS");
      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;
    }
    

    87104656-2eda-4278-97d2-625e231b31be-image.png

    Gruß Bimmi

    iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

    haselchenH 1 Antwort Letzte Antwort
    0
    • B bimmi

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

      @beowolf
      @bimmi

      Habt ihr das mit dem GoogleKalender in 2.07b klären können?
      Würde gerne updaten, aber nur wenn das wie mit der 2.0.5 passt.

      so sieht mein Kalender Google App Script aus für den 4" Tag. Ich habe mein Script soweit umgebaut, dass ich nur einen speziellen Kalender aus meinen Kalendern abgreife. Da wo NAME-DEINES-KALENDERS steht im script da muss der Name von Dem einen Kalender rein, den Du angezeigt haben möchtest.

      function getEventsForNextDay(days) {
        var start = new Date();
        start.setHours(0, 0, 0, 0);
        var end = new Date();
        if (days == undefined) days = 9;
        end.setDate(end.getDate() + parseInt(days, 10));
        //var calendars = CalendarApp.getAllCalendars();
        var calendars = CalendarApp.getCalendarsByName("NAME-DEINES-KALENDERS");
        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;
      }
      

      87104656-2eda-4278-97d2-625e231b31be-image.png

      haselchenH Offline
      haselchenH Offline
      haselchen
      Most Active
      schrieb am zuletzt editiert von
      #327

      @bimmi

      Es kann und soll ja alles so bleiben .
      Nur mit dem Update, warum auch immer, läuft das Skript nicht mehr so wie jetzt , sondern nur 1 Tag im Voraus.
      Änderungen im Skript haben nichts gebracht.

      Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

      B 1 Antwort Letzte Antwort
      0
      • haselchenH haselchen

        @bimmi

        Es kann und soll ja alles so bleiben .
        Nur mit dem Update, warum auch immer, läuft das Skript nicht mehr so wie jetzt , sondern nur 1 Tag im Voraus.
        Änderungen im Skript haben nichts gebracht.

        B Offline
        B Offline
        bimmi
        schrieb am zuletzt editiert von
        #328

        @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

        Gruß Bimmi

        iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

        B haselchenH 2 Antworten Letzte Antwort
        0
        • B Offline
          B Offline
          Beowolf
          schrieb am zuletzt editiert von
          #329

          Jepp, kann ich bestätigen.

          Bei den kleinen Displays ist nur ein Tag zu sehen.

          Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

          1 Antwort Letzte Antwort
          0
          • B bimmi

            @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

            B Offline
            B Offline
            Beowolf
            schrieb am zuletzt editiert von Beowolf
            #330

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

            @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

            Sowohl als auch. Abfalltermine und einmalige Termine. Immer nur ein Tag.

            Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

            haselchenH 1 Antwort Letzte Antwort
            1
            • B bimmi

              @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

              haselchenH Offline
              haselchenH Offline
              haselchen
              Most Active
              schrieb am zuletzt editiert von
              #331

              @bimmi

              Hatte ich im Discord schon mit Nic diskutiert.
              Die haben da was geändert .
              Warum frage ich mich immer noch .
              Ich soll es selber fixen.
              Aber wie? 🤷‍♂️

              Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

              1 Antwort Letzte Antwort
              0
              • B Beowolf

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

                @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

                Sowohl als auch. Abfalltermine und einmalige Termine. Immer nur ein Tag.

                haselchenH Offline
                haselchenH Offline
                haselchen
                Most Active
                schrieb am zuletzt editiert von
                #332

                @beowolf

                Genauso ist es.
                Sonst hätte ich schön längst geupdatet.

                Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                B 1 Antwort Letzte Antwort
                0
                • haselchenH haselchen

                  @beowolf

                  Genauso ist es.
                  Sonst hätte ich schön längst geupdatet.

                  B Offline
                  B Offline
                  bimmi
                  schrieb am zuletzt editiert von bimmi
                  #333

                  IMG_20240125_190537.jpg

                  So sieht es bei mir mit dem großen Tag aus. Alles mit der aktuellsten Firmware vom Display und 2. 07b

                  @haselchen Pack doch mal dein Script hier rein, dann teste ich es mal bei mir

                  Gruß Bimmi

                  iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                  haselchenH B 2 Antworten Letzte Antwort
                  0
                  • B bimmi

                    IMG_20240125_190537.jpg

                    So sieht es bei mir mit dem großen Tag aus. Alles mit der aktuellsten Firmware vom Display und 2. 07b

                    @haselchen Pack doch mal dein Script hier rein, dann teste ich es mal bei mir

                    haselchenH Offline
                    haselchenH Offline
                    haselchen
                    Most Active
                    schrieb am zuletzt editiert von
                    #334

                    @bimmi

                    Es ist das gleiche von Github.
                    Ich hab nur oben die 1 gegen eine 9 getauscht.
                    Das ist die ganze Zauberei.

                    Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                    B 1 Antwort Letzte Antwort
                    0
                    • haselchenH haselchen

                      @bimmi

                      Es ist das gleiche von Github.
                      Ich hab nur oben die 1 gegen eine 9 getauscht.
                      Das ist die ganze Zauberei.

                      B Offline
                      B Offline
                      bimmi
                      schrieb am zuletzt editiert von
                      #335

                      @haselchen Nein. Das ist von mir so abgeändert, dass nicht jeder Kalender angezeigt wird sondern nur ein spezieller. Teste das doch mal.

                      Fragen:

                      • auf welchem Tag möchtest du den Kalender? Unter 4 Zoll oder ab 4 Zoll
                      • welche Firmware hast du auf dem Tag wo der Kalender angezeigt wird?

                      Pack bitte dein Script trotzdem mal hier in Code Tags rein. Ich würde es gerne sehen und vergleichen.

                      Gruß Bimmi

                      iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                      B 1 Antwort Letzte Antwort
                      0
                      • B bimmi

                        @haselchen Nein. Das ist von mir so abgeändert, dass nicht jeder Kalender angezeigt wird sondern nur ein spezieller. Teste das doch mal.

                        Fragen:

                        • auf welchem Tag möchtest du den Kalender? Unter 4 Zoll oder ab 4 Zoll
                        • welche Firmware hast du auf dem Tag wo der Kalender angezeigt wird?

                        Pack bitte dein Script trotzdem mal hier in Code Tags rein. Ich würde es gerne sehen und vergleichen.

                        B Offline
                        B Offline
                        Beowolf
                        schrieb am zuletzt editiert von Beowolf
                        #336

                        @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).

                        Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                        B 1 Antwort Letzte Antwort
                        0
                        • B 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 Offline
                          B Offline
                          bimmi
                          schrieb am zuletzt editiert von
                          #337

                          @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

                          Gruß Bimmi

                          iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                          B 1 Antwort Letzte Antwort
                          2
                          • B bimmi

                            @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 Offline
                            B Offline
                            Beowolf
                            schrieb am zuletzt editiert von Beowolf
                            #338

                            @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

                            Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                            B R 2 Antworten Letzte Antwort
                            1
                            • B Offline
                              B Offline
                              Beowolf
                              schrieb am zuletzt editiert von
                              #339

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

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

                              Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                              1 Antwort Letzte Antwort
                              0
                              • B 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 Offline
                                B Offline
                                bimmi
                                schrieb am zuletzt editiert von
                                #340

                                @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 😅😅😅

                                Gruß Bimmi

                                iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                haselchenH 1 Antwort Letzte Antwort
                                0
                                • B bimmi

                                  @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 😅😅😅

                                  haselchenH Offline
                                  haselchenH Offline
                                  haselchen
                                  Most Active
                                  schrieb am zuletzt editiert von
                                  #341

                                  @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

                                  Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                                  1 Antwort Letzte Antwort
                                  0
                                  • B 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

                                    R Offline
                                    R Offline
                                    Revobobo
                                    schrieb am zuletzt editiert von
                                    #342

                                    @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 Antwort Letzte Antwort
                                    0
                                    • R Revobobo

                                      @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 Offline
                                      B Offline
                                      bimmi
                                      schrieb am zuletzt editiert von
                                      #343

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

                                      Gruß Bimmi

                                      iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                      R 1 Antwort Letzte Antwort
                                      0
                                      • B bimmi

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

                                        R Offline
                                        R Offline
                                        Revobobo
                                        schrieb am zuletzt editiert von
                                        #344

                                        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 Antwort Letzte Antwort
                                        1
                                        • B Offline
                                          B Offline
                                          bimmi
                                          schrieb am zuletzt editiert von bimmi
                                          #345

                                          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.

                                          Gruß Bimmi

                                          iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                          R B 2 Antworten Letzte Antwort
                                          2
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          416

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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