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. Error/Bug
  4. Ical-Adapter fkt. nicht. getHours is not a function at checkDates

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Ical-Adapter fkt. nicht. getHours is not a function at checkDates

Geplant Angeheftet Gesperrt Verschoben Error/Bug
9 Beiträge 3 Kommentatoren 1.4k Aufrufe
  • Ä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.
  • S Offline
    S Offline
    steinwedel
    schrieb am zuletzt editiert von
    #1

    Seit meiner letzten Update-Orgie funktioniert der ical-Apdater nicht. Folgender Fehler wird angezeigt:
    > TypeError: ev.start.getHours is not a function at checkDates (/opt/iobroker/node_modules/iobroker.ical/main.js:238:18) at Request._callback (/opt/iobroker/node_modules/iobroker.ical/main.js:20

    Die Fehlermeldung deutet darauf hin, dass das Objekt kein Date Objekt ist. Da der iCal-Adapter keine Update erfahren hat (1.1.1), muss der Fehler woanders herkommen.

    Vielleicht kann jemand weiterhelfen.

    Gruß Gerhard

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      steinwedel
      schrieb am zuletzt editiert von
      #2

      So inzwischen konnte ich mich dem Problem etwas nähern.

      Grundsätzlich scheint der Adapter zu funktionieren. Ich habe zwecks Analyse die Variable ev.start ausgeben lassen.

      Es gibt ein Ereignis, bei dem kein Type vom Wert Date () zurückgegeben wird, sondern lediglich eine Zahl (hier 20160619). Bei dem Ereignis handelt es sich um ein ganztägiges Ereignis. Datum ist 19.6.2016.

      1 Antwort Letzte Antwort
      0
      • S Offline
        S Offline
        steinwedel
        schrieb am zuletzt editiert von
        #3

        Das betreffende Ereignis ist vom Datentyp String. Da dieses als ganztägiges Ereignis nicht relevant ist, habe ich folgenden Bugfix in main.js des Adapter eingebaut:

        nach Zeile 235:

        // If not type Date return
            if (typeof ev.start === 'string') return;
        
        

        Ich denke, die Lösung dürfte auch anderen gegebenenfalls helfen. Vielleicht wird er in die nächste Version des Adapters übernommen.

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          aquapro
          schrieb am zuletzt editiert von
          #4

          Jip, kann ich bestätigen. http://forum.iobroker.net/viewtopic.php?f=22&t=2928

          <size size="85">BananaPi / Jessie / ioBroker deinstalliert, keine Upgradesicherheit</size>

          1 Antwort Letzte Antwort
          0
          • G Offline
            G Offline
            GeosShark
            schrieb am zuletzt editiert von
            #5

            @steinwedel:

            Das betreffende Ereignis ist vom Datentyp String. Da dieses als ganztägiges Ereignis nicht relevant ist, habe ich folgenden Bugfix in main.js des Adapter eingebaut:

            nach Zeile 235:

            // If not type Date return
                if (typeof ev.start === 'string') return;
            
            

            Ich denke, die Lösung dürfte auch anderen gegebenenfalls helfen. Vielleicht wird er in die nächste Version des Adapters übernommen. `

            Funktioniert bei mir leider nicht.

             pi	02 11:30:08.502	error	host.pi instance system.adapter.ical.0 terminated with code 6 (uncaught exception)
            ical.0	02 11:30:08.191	error	TypeError: Object 20160519 has no method 'getMonth' at Object.RRule (/opt/iobroker/node_modules/iobroker.ical/node_modules/rrule/lib/rrule.js:537:49) at Request._callback (/opt/iobroker/node_m
            

            :-(

            Gruß

            Frank


            CCU2, Raspberry3+

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              steinwedel
              schrieb am zuletzt editiert von
              #6

              Vielleicht finden wir Dein Problem auch noch. Bitte füge vor der Zeile, die den Fehler auslöst folgendes ein:

              adapter.log.info('Content von ev.start: '+ev.start);
              
              

              Mich interessiert, was dann im Log zurück gegeben wird.

              1 Antwort Letzte Antwort
              0
              • G Offline
                G Offline
                GeosShark
                schrieb am zuletzt editiert von
                #7

                @steinwedel:

                Mich interessiert, was dann im Log zurück gegeben wird. `

                Hier die Ausgabe:

                pi	03 09:08:18.254	error	host.pi instance system.adapter.ical.0 terminated with code 6 (uncaught exception)
                ical.0	03 09:08:17.941	error	Error: Content von opts.dtstart: 20160519 at Object.RRule (/opt/iobroker/node_modules/iobroker.ical/node_modules/rrule/lib/rrule.js:534:7) at Request._callback (/opt/iobroker/node_modules/iobr
                ical.0	03 09:08:17.940	error	uncaught exception: Content von opts.dtstart: 20160519
                

                Das ist dann mein Geburtstag yyyymmdd: 19.05.2016 (in diesem Jahr)

                Allerdings muss da Kommand wie folgt lauten…

                throw new Error('Content von opts.dtstart: '+opts.dtstart);
                
                

                das ursprünglich angemeckerte Kommando lautet:

                                if (!opts.bymonth) {
                                    opts.bymonth = opts.dtstart.getMonth() + 1;
                                }
                
                

                Gruß

                Frank


                CCU2, Raspberry3+

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  steinwedel
                  schrieb am zuletzt editiert von
                  #8

                  Danke Frank. Das Problem ist dasselbe nur an einer anderen Stelle. Eigentlich wird ein Javascript Date-Objekt von dem Programm erwartet. Tatsächlich kommt hier manschmal auch ein einfacher String mit dem Datum vor. Der Fehler tritt offensichtlich nur bei ganztätigen Ereignissen auf. Dann aber wohl auch nicht immer. Ich hatte schon früher ganztätige Ereignisse ohne diesen Fehler.

                  Das sinnvollste dürfte für eine dauerhafte Lösung sein, zu prüfen, ob es sich um einen String mit Datum handelt und dieses dann in ein Date-Objekt umgewandelt wird. Dann dürfter dieser Fehler nicht mehr auftreten.

                  1 Antwort Letzte Antwort
                  0
                  • G Offline
                    G Offline
                    GeosShark
                    schrieb am zuletzt editiert von
                    #9

                    Hallo zusammen,

                    ich nochmal.

                    Gibt es mittlerweile eine offizielle Korrektur?

                    Ich habe schon versucht, aus dem String ein Date-Objekt zu machen, mit dem Erfolg, dass die Fehlermeldungen weg sind.

                    Allerdings funktioniert dann der gesamte Kalender nicht mehr…..

                    Gruß

                    Frank


                    CCU2, Raspberry3+

                    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

                    807

                    Online

                    32.5k

                    Benutzer

                    81.7k

                    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