Ankündigung

Einklappen
Keine Ankündigung bisher.

Openhab 2.4 mit CalDav mit Nextcloud verbinden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Openhab 2.4 mit CalDav mit Nextcloud verbinden

    Hallo zusammen,

    bin gerade etwas verzweifelt, probiere mich schon einige Tage damit rum, Openhab und Nextcloud miteinander sprechen zu lassen, um den Nextcloud Kalender für diverse Kommandos zu nutzen, aber irgendwie spukt mir Openhab im Logviewer immer Fehler aus. Habe auch, anstatt den Nextcloud Kalender schon einmal den Google Kalender versucht zu nutzen, gleiche Fehler.
    Vielleicht habt ihr noch eine Idee, wo ich nachschauen könnte.

    Meine Konfiguration ist wie folgt:

    caldavio.cfg
    Code:
    caldavio:Anwesenheit:url=https://>meine_ip_bzw_fqdn</index.php/apps/calendar/
    caldavio:Anwesenheit:username=>meinnutzer<
    caldavio:Anwesenheit:password=>meinpasswort<
    caldavio:Anwesenheit:reloadInterval=1
    caldavio:Anwesenheit:preloadTime=20000
    caldavio:Anwesenheit:disableCertificateVerification=true
    Ich weiß, das man "caldavio" normalerweise nicht reinschreiben brauch', aber das ist ein bekannter Bug, steht so in der Openhab-Doku.

    caldavCommand.cfg
    Code:
    readCalendars=Anwesenheit
    Ausgaben im LogViewer:
    Code:
    2019-12-20 08:12:56.882 [INFO ] [.io.caldav.internal.CalDavLoaderImpl] - CalDAV IO is properly configured.
    2019-12-20 08:12:56.888 [INFO ] [b.core.service.AbstractActiveService] - CalDav Loader has been started
    2019-12-20 08:12:56.898 [INFO ] [.io.caldav.internal.CalDavLoaderImpl] - reload job scheduled for: Anwesenheit
    2019-12-20 08:12:56.902 [INFO ] [.io.caldav.internal.CalDavLoaderImpl] - reload job scheduled for: Openhab
    2019-12-20 08:12:56.905 [INFO ] [.io.caldav.internal.CalDavLoaderImpl] - reload job scheduled for: PreSim
    2019-12-20 08:12:57.316 [thome.event.ExtensionEvent] - Extension 'binding-caldav-command1' has been installed.
    
    2019-12-20 08:13:08.118 [WARN ] [caldav.internal.job.EventReloaderJob] - Sardine error while loading calendar entries: Unexpected response (405 - Method Not Allowed)
    com.github.sardine.impl.SardineException: Unexpected response
        at com.github.sardine.impl.handler.ValidatingResponseHandler.validateResponse(ValidatingResponseHandler.java:48) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:40) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:35) ~[253:org.openhab.io.caldav:1.13.0]
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:218) ~[253:org.openhab.io.caldav:1.13.0]
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:160) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.execute(SardineImpl.java:962) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:417) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:409) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:386) ~[253:org.openhab.io.caldav:1.13.0]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:246) ~[253:org.openhab.io.caldav:1.13.0]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:137) [253:org.openhab.io.caldav:1.13.0]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
    
    2019-12-20 08:13:17.100 [WARN ] [caldav.internal.job.EventReloaderJob] - Sardine error while loading calendar entries: Unexpected response (401 - Unauthorized)
    com.github.sardine.impl.SardineException: Unexpected response
        at com.github.sardine.impl.handler.ValidatingResponseHandler.validateResponse(ValidatingResponseHandler.java:48) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:40) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:35) ~[253:org.openhab.io.caldav:1.13.0]
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:218) ~[253:org.openhab.io.caldav:1.13.0]
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:160) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.execute(SardineImpl.java:962) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:417) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:409) ~[253:org.openhab.io.caldav:1.13.0]
        at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:386) ~[253:org.openhab.io.caldav:1.13.0]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:246) ~[253:org.openhab.io.caldav:1.13.0]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:137) [253:org.openhab.io.caldav:1.13.0]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
    Die Fehler kommen alle Minute und hauen mir munter den Viewer voll...

    Für Lösungsansätze wäre ich sehr dankbar.

    Grüße

    #2
    Zitat von sven2908 Beitrag anzeigen
    caldavio:Anwesenheit:url=https://>meine_ip_bzw_fqdn</index.php/apps/calendar/
    Ich habe den Rest nicht gelesen, aber das ist schon mal falsch, es muss mit nextCloud wie folgt aussehen:
    Code:
    caldavio:Anwesenheit:url=https://<url>/remote.php/dav/calendars/<username>/<kalendername>

    Kommentar


      #3
      Danke sihui, für die schnelle Antwort...das war der erste Fehler...hätte ich selbst drauf kommen können...Fehler 405 ist weg...

      Der Fehler 401 mit folgendem Code ist noch vorhanden:
      Code:
      2019-12-20 10:32:27.191 [WARN ] [caldav.internal.job.EventReloaderJob] - Sardine error while loading calendar entries: Unexpected response (401 - Unauthorized)
      com.github.sardine.impl.SardineException: Unexpected response
      at com.github.sardine.impl.handler.ValidatingResponseHandler.validateResponse(ValidatingResponseHandler.java:48) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:40) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:35) ~[253:org.openhab.io.caldav:1.13.0]
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:218) ~[253:org.openhab.io.caldav:1.13.0]
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:160) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.SardineImpl.execute(SardineImpl.java:962) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:417) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:409) ~[253:org.openhab.io.caldav:1.13.0]
      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:386) ~[253:org.openhab.io.caldav:1.13.0]
      at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:246) ~[253:org.openhab.io.caldav:1.13.0]
      at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:137) [253:org.openhab.io.caldav:1.13.0]
      at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
      at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
      Dieser kommt zweimal innerhalb 10 Sekunden und danach minütlich wieder.

      Als kleine Ergänzung: Der Kalender ist aktuell noch leer.

      Kommentar


        #4
        Zitat von sven2908 Beitrag anzeigen
        Der Fehler 401 mit folgendem Code ist noch vorhanden
        In 2.4 hatte ich den auch immer wieder, seit 2.5 ist der weg.
        Mach mal einen Eintrag in deinem Kalender und teste ...

        Kommentar


          #5
          Habe mal im Kalender einen Schaltbefehl konfiguriert, der auch auch ohne Probleme funktioniert hat.
          Der Fehler ist, wie auch bei dir, weiterhin vorhanden. Sa mir das schon ziemlich auf die Nerven geht, werde ich heute mal ein Openhab-Backup machen und dann auch mal auf die Version 2.5 updaten. Vielleicht ist der Fehler ja dann auch weg. Werde berichten.

          Kommentar


            #6
            Zitat von sihui Beitrag anzeigen
            In 2.4 hatte ich den auch immer wieder
            Da fehlt noch eine wichtige Info: trotz dieser Warnung (!) in den Logs funktionierte das Binding immer ohne Probleme.

            Kommentar


              #7
              Da fehlt noch eine wichtige Info: trotz dieser Warnung (!) in den Logs funktionierte das Binding immer ohne Probleme.
              Das hatte ich auch so interpretiert.

              Habe jetzt auf 2.5 geupdated...es funktioniert weiterhin...die Fehlermeldung ist nur etwas anders:

              Code:
              2019-12-20 17:41:07.038 [WARN ] [caldav.internal.job.EventReloaderJob] - Sardine error while loading calendar entries: Unexpected response (401 - Unauthorized)
              com.github.sardine.impl.SardineException: Unexpected response
              at com.github.sardine.impl.handler.ValidatingResponseHandler.validateResponse(ValidatingResponseHandler.java:48) ~[sardine-5.6.jar:5.6]
              at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:40) ~[sardine-5.6.jar:5.6]
              at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:35) ~[sardine-5.6.jar:5.6]
              at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:222) ~[httpclient-4.4.1.jar:4.4.1]
              at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:164) ~[httpclient-4.4.1.jar:4.4.1]
              at com.github.sardine.impl.SardineImpl.execute(SardineImpl.java:962) ~[sardine-5.6.jar:5.6]
              at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:417) ~[sardine-5.6.jar:5.6]
              at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:409) ~[sardine-5.6.jar:5.6]
              at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:386) ~[sardine-5.6.jar:5.6]
              at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:250) ~[bundleFile:?]
              at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) [bundleFile:?]
              at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [bundleFile:?]
              at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [bundleFile:?]
              Naja, ist zwar schade zwecks der Übersicht bei der Fehlersuche in anderen Bereichen...aber damit kann ich leben.

              Danke für die Unterstützung sihui!

              Kommentar


                #8
                Versuch es mal mit diesen beiden zusätzlichen Einstellungen:

                Code:
                caldavio:Anwesenheit:disableCertificateVerification=true
                caldavio:timeZone=Europe/Berlin

                Kommentar


                  #9
                  Hab's ausprobiert...leider ohne Erfolg....Fehlermeldung ist unverändert.

                  Kommentar


                    #10
                    Hallo zusammen,

                    stehe auf dem Schlauch, seit ein paar Tagen macht meine Nextcloud Probleme bei der Verbindung zum Openhab Server. Einstellungen habe ich keine geändert...deswegen wundert es mich.

                    Folgende Fehlermeldung wird im Log von Openhab ausgespuckt, wenn ich caldavio.cfg neu speichere, um eine Fehlermeldung zu produzieren:

                    Code:
                    ​​​​​​
                    2020-07-04 17:00:38.413 [ERROR] [org.apache.felix.configadmin ] - [org.osgi.service.cm.ManagedService, org.openhab.io.caldav.CalDavLoader, id=127, bundle=238/mvnrg.openhab.io/org.openhab.io.caldav/1.14.0]: Updating property CalDAV IO of configuration org.openhab.caldavio caused a problem: Unable to parse configuration parameter: charset
                    
                    org.osgi.service.cm.ConfigurationException: CalDAV IO : Unable to parse configuration parameter: charset
                    
                    at org.openhab.io.caldav.internal.CalDavLoaderImpl.up dated(CalDavLoaderImpl.java:187) ~[?:?]
                    
                    at org.apache.felix.cm.impl.helper.ManagedServiceTrac ker.updated(ManagedServiceTracker.java:189) ~[bundleFile:?]
                    
                    at org.apache.felix.cm.impl.helper.ManagedServiceTrac ker.updateService(ManagedServiceTracker.java:152) [bundleFile:?]
                    
                    at org.apache.felix.cm.impl.helper.ManagedServiceTrac ker.provideConfiguration(ManagedServiceTracker.jav a:85) [bundleFile:?]
                    
                    at org.apache.felix.cm.impl.ConfigurationManager$Upda teConfiguration.run(ConfigurationManager.java:1405 ) [bundleFile:?]
                    
                    at org.apache.felix.cm.impl.UpdateThread.run0(UpdateT hread.java:138) [bundleFile:?]
                    
                    at org.apache.felix.cm.impl.UpdateThread.run(UpdateTh read.java:105) [bundleFile:?]
                    
                    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222]
                    Ich verstehe nicht, warum er Probleme mit dem Zeichensatz hat.

                    Was übersehe ich?

                    Im caldavio.cfg steht folgendes:
                    Code:
                    caldavio:Anwesenheit:url=https://nextcloudpi.local/remote.php/dav/calendars/ncp/personal/
                    caldavio:Anwesenheit:username=benutzername
                    caldavio:Anwesenheitassword=passwort
                    caldavio:Anwesenheit:reloadInterval=1
                    caldavio:AnwesenheitreloadTime=20000
                    caldavio:Anwesenheit:disableCertificateVerificatio n=true
                    caldavio:timeZone=Europe/Berlin

                    Kommentar


                      #11
                      Zitat von ;n1523630
                      caldavio:Anwesenheit:disableCertificateVerificatio n=true
                      Hier ist schon mal ein Leerzeichen zu viel drin.

                      Ansonsten bitte sicherstellen das der von dir verwendete Editor als UTF-8 speichert (ohne BOM).

                      Kommentar


                        #12
                        Habe gesehen, das sich da ein Fehler beim Kopieren ins Forum eingeschlichen hat...

                        Code:
                        caldavio:Anwesenheit:url=https://nextcloudpi.local/remote.php/dav/calendars/ncp/personal/
                        caldavio:Anwesenheit:username=ncp
                        caldavio:Anwesenheit:password=password
                        caldavio:Anwesenheit:reloadInterval=1
                        caldavio:Anwesenheit:reloadTime=20000
                        caldavio:Anwesenheit:disableCertificateVerification=true
                        caldavio:timeZone=Europe/Berlin
                        Ich nutze Visual Studio Code als Editor, da ging ich davon aus, das er in UTF-8 speichert...macht er auch, habs kontrolliert.

                        Kommentar


                          #13
                          Zitat von sven2908 Beitrag anzeigen
                          Ich nutze Visual Studio Code als Editor, da ging ich davon aus, das er in UTF-8 speichert...macht er auch, habs kontrolliert.
                          Da die Fehlermeldung auf ein falsches Character Set hinweist, du aber bereits UTF-8 kontrolliert hast, habe ich keine weiteren Ideen.

                          Kommentar


                            #14
                            Eventuell ist der Parameter charset nicht (mehr) optional. charset ist nämlich oben in der Liste der Parameter gar nicht enthalten, aber in der Dokumentation erwähnt...

                            Kommentar

                            Lädt...
                            X