Ankündigung

Einklappen
Keine Ankündigung bisher.

calDAV Integration ?

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

    #16
    Zitat von staehler Beitrag anzeigen
    Ich habe den Entwickler gebeten (querdenker2k), das Binding anzupassen.

    Er hat mir geantwortet und versucht das umsetzen:
    Genial, wie das Forum hier funktioniert!!!
    Ok, speziell beim Müllkalender interessiert mich eigentlich nur, wann der nächste Termin ist. Der übernächste ist ja schon egal. Was mich dann noch interessiert, ob dieser Termin morgen oder übermorgen ist.

    Ich denke in den allermeisten Fällen sind doch nur die nächsten Termine zu einem Thema relevant. Was später kommt ist doch fast schon egal oder etwa nicht?

    Gruß,
    thoern

    Kommentar


      #17
      Hi Thomas,

      ich denke, Du wirst das parametrieren können, wieviele Termine in der Zukunft gesucht werden. Für den Müllkalender ist ein Termin völlig ausreichend. Ich würde mir gerne morgens meine ersten x-Termine (dienstliche) per RSS-Feed auf mein Weckerdisplay (Squeezebox) streamen, um mich schon mal mental darauf vorzubereiten (welcher Wahnsinn heute wieder ansteht) :-)

      Viele Grüße
      Staehler

      Kommentar


        #18
        also ich hab das Binding jetzt mal installiert und configuriert. So ganz kapier ich es aber noch nicht.... Hat das jemand zum laufen gebracht? Mit Google Calendar hab ichs irgendwie nicht hinbekommen...
        Hat jemand ein Beispiel?

        Kommentar


          #19
          Oh Hi potentielle Nutzer des CalDAV Bindings,

          staehler hat mich auf den Post hingewiesen.
          Ich poste einfach mal einen Auszug der privaten Kommunikation von staehler und mir.

          Aktuell bin ich und ein Kumpel die einzigen Anwender des Bindings. Es ist auch noch relativ frisch. Ich bittte daher ggf. Bugs zu entschuldigen.

          Viele Grüße
          robert

          Es gibt noch diese:
          1. Die die übersprungen sind gibt es nicht mehr, die habe ich umbenannt aufgrund der neuen Funktionalität. Dieses Binding brauchst du auf jeden Fall. Es lädt die Kalender.
          https://buildhive.cloudbees.com/job/...hab.io.caldav/

          2. PreloadTime ist der Zeitraum der weiterverarbeitet wird. Alles was danach kommt wird verworfen. Soll dazu dienen etwas RAM zu sparen, könnte sonst ggf. viel im RAM liegen.

          3. Nehmen wir an du hast ein Event im Kalender wo als Inhalt steht:
          Code:
          BEGIN:Heizung_Kueche:21
          Dieser Termin beginnt am 5.3.15 13:00 Uhr.
          Mit diesem Item Binding
          Code:
          Number Naechste_Heizung_Schaltung {caldavCommand="itemName:Heizung_Kueche type:VALUE"}
          würdest du als Wert
          Code:
          21
          bekommen. Natürlich nur unter der Annahme das du keine Events davor im Kalendar hast welche ebenfalls die Küchen-Heizung schalten sollen. Analog dazu bekommst du die Zeit angezeigt mit dem Item
          Code:
          DateTime Naechste_Heizung_Schaltung {caldavCommand="itemName:Heizung_Kueche type:DATE"}
          . Als Wert würde das Item enthalten
          Code:
          5.3.15 13:00 Uhr
          Nochmal zusammengefasst: Wenn du automatisiert Dinge über den Kalendar schalten willst brauchst du das
          Code:
          caldav-command Binding
          . Willst du eine Anwesenheit aus deinem Kalendar erzeugen oder folgende oder aktive Events auflisten so benötigst du das
          Code:
          caldav-personal Binding
          . Das
          Code:
          caldav-io Binding
          benötigst du wie gesagt auf jeden Fall. Es lädt die Termine und reicht sie an die anderen beiden Bindings weiter.

          Grüße
          Robert

          [QUOTE=staehler]Hallo Robert,
          prima, vielen Dank für Deine Arbeit.
          Leider komme ich aktuell noch nicht ganz klar mit Deiner Beschreibung.

          1) welche Binding benötige ich nun? Bei Buildhive finde ich folgendes:
          openHAB CalDav Binding (übersprungen)
          openHAB CalDAV-Command Binding4.5 Sekunden
          openHAB CalDAV-Personal Binding2.1 Sekunden
          openHAB CalDav-Presence Binding (übersprungen)
          2 davon wurden übersprungen? Brauch ich die nicht?

          2) reloadInterval bedeutet vermutlich, wie oft der Kalender neu eingelesen werden soll. Was bedeutet preloadTime?

          3) Leider verstehe ich den Absatz nicht:
          Additionaly you can define an item to listen to upcoming changes of an item (which will be triggered through an event). Two types are available the command which will be set and the trigger time. Syntax is caldavCommand="itemName:<Item-Name to listen to> type:<VALUE|DATE>" Furthermore a switch can be defined to disable the automatic execution (through calendar) of an item. Syntax is caldavCommand="itemName:<Item-Name to listen to> type:<DISABLE>"
          Kannst Du anhand eines Beispieles erklären, was damit gemint ist. Gerne werde ich Deinem Wiki Artikel Beispiel-Code beisteuern, wenn ich es verstanden und getestet habe. Beispiele erklären oft sehr viel.

          Kommentar


            #20
            Hallo zusammen,

            nachdem sich Robert mit mir die Mühe gemacht hat, habe ich meine Beispielkonfiguration dem Wiki beigefügt. Ich hoffe es hilft weiter.

            https://github.com/openhab/openhab/wiki/CalDAV

            Viele Grüße und viel Erfolg

            Kommentar


              #21
              Weis jemand ob und wie SSL verschlüsselte Owncloud server abgefragt werden können.

              Ich bekomme mit SSL Server folgende Error Meldung im log.

              Code:
              20:23:44.886 ERROR o.o.i.c.i.CalDavLoaderImpl[:327]- error while loading calendar entries: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
              javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
              	at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
              	at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1904)
              	at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:279)
              	at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:273)
              	at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1446)
              	at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:209)
              Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
              	at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:385)
              	at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
              	at sun.security.validator.Validator.validate(Validator.java:260)
              	at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:326)
              	at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:231)
              	at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:126)
              Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
              	at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:196)
              	at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)
              	at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:380)
              	at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
              	at sun.security.validator.Validator.validate(Validator.java:260)
              	at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:326)

              Kommentar


                #22
                Den gleichen Fehler habe ich auch und daher erstmal auf http umgestellt. Der Robert (Entwickler dieses Bindings) hat gestern dazu schon einen Fix geschrieben, allerdings scheint es trotzdem noch nicht behoben zu sein. Ich bekomme mit dem neuen Binding jedenfalls immer noch diesen ssl-Fehler.
                Ich hoffe darauf, dass das noch gefixed wird. Jedenfalls habe ich ihm bescheid gegeben.

                Kommentar


                  #23
                  Hi,

                  Ich kann das am Freitag mal bei mir testen...
                  Für die ungeduldigen, probiert mal das hier:
                  https://github.com/escline/InstallCert

                  Gruß
                  robert

                  Kommentar


                    #24
                    Zitat von querdenker2k Beitrag anzeigen
                    Hi,

                    Ich kann das am Freitag mal bei mir testen...
                    Für die ungeduldigen, probiert mal das hier:
                    https://github.com/escline/InstallCert

                    Gruß
                    robert
                    ... solllte aber nur bei selbst signierten Zertifikaten notwendig sein.

                    @napoleon: sieht so aus als hättest du ein self signed Certificate:
                    Code:
                    unable to find valid certification path to requested target
                    Gruß,
                    thoern

                    Kommentar


                      #25
                      Hi Thomas,

                      das vermute ich auch so. Ich habe auch ein selfsigned Zertifikat und das selbe Problem. Java findet die CA nicht.
                      Zwei Lösungen:
                      1. CA und/oder Server-Zertifikat im Java Zertifikatsstore ablegen (das ist der Link von querdenker2k)
                      2. die Zertifikatsprüfung abschaltbar zu machen (ist die aufwandsärmere Variante und für die meisten Fälle völlig ausreichend)

                      Ich warte auf Lösung 2)

                      Gruß Michael

                      Kommentar


                        #26
                        Hallo zusammen,

                        Funktion ist drin. Wenn der Build-Bot durch ist könnt ihr es euch runterladen. Neues Flag ist in der openhab.cfg beschrieben.

                        Kommentar


                          #27
                          Hat es mal jemand probiert?

                          Kommentar


                            #28
                            Ich wollte es gerade probieren... Aber ich finde nicht einmal den download
                            Bei dem buildhive steht nur:
                            openHAB CalDav Binding (übersprungen)
                            openHAB CalDAV-Command Binding (übersprungen)
                            openHAB CalDAV-Personal Binding (übersprungen)
                            openHAB CalDav-Presence Binding (übersprungen)

                            Kommentar


                              #29
                              Hi Robert,

                              ich bekomme jetzt diese Fehlermeldung:
                              Code:
                              2015-03-10 17:53:45.540 [ERROR] [.i.c.internal.CalDavLoaderImpl] - error while loading calendar entries: Unexpected response
                              com.github.sardine.impl.SardineException: Unexpected response
                                      at com.github.sardine.impl.handler.ValidatingResponseHandler.validateResponse(ValidatingResponseHandler.java:48) ~[na:na]
                                      at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:40) ~[na:na]
                                      at com.github.sardine.impl.handler.MultiStatusResponseHandler.handleResponse(MultiStatusResponseHandler.java:35) ~[na:na]
                                      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:218) ~[na:na]
                                      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:160) ~[na:na]
                                      at com.github.sardine.impl.SardineImpl.execute(SardineImpl.java:828) ~[na:na]
                                      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:355) ~[na:na]
                                      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:322) ~[na:na]
                                      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:313) ~[na:na]
                                      at com.github.sardine.impl.SardineImpl.list(SardineImpl.java:307) ~[na:na]
                                      at org.openhab.io.caldav.internal.CalDavLoaderImpl.loadEvents(CalDavLoaderImpl.java:285) ~[na:na]
                                      at org.openhab.io.caldav.internal.CalDavLoaderImpl.access$5(CalDavLoaderImpl.java:251) ~[na:na]
                                      at org.openhab.io.caldav.internal.CalDavLoaderImpl$4$1.run(CalDavLoaderImpl.java:368) ~[na:na]
                                      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_75]
                                      at java.util.concurrent.FutureTask.run(FutureTask.java:262) [na:1.7.0_75]
                                      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_75]
                                      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_75]
                                      at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
                              In der openhab.cfg habe ich jeden Kalendereintrag mit
                              Code:
                              caldavio:dienstlich:disableCertificateVerification=true
                              versehen.

                              Also die Zertifikatsprüfung scheint nun nicht mehr hinzufallen, aber dafür geht jetzt was anderes nicht mehr :-(
                              Bis gestern konnte ich zumindest per http die Kalendereinträge in openhab einlesen, jetzt geht's nicht mehr.

                              Viele Grüße
                              Michael

                              Nachtrag: vergiss, was ich oben geschrieben habe. Es funktioniert!
                              Hatte vergessen in der openhab.cfg die caldav-url wieder auf https zu stellen.

                              DANKE!!!
                              Zuletzt geändert von staehler; 10.03.2015, 18:23.

                              Kommentar


                                #30
                                Zitat von SpawnY0815 Beitrag anzeigen
                                Ich wollte es gerade probieren... Aber ich finde nicht einmal den download
                                Bei dem buildhive steht nur:
                                openHAB CalDav Binding (übersprungen)
                                openHAB CalDAV-Command Binding (übersprungen)
                                openHAB CalDAV-Personal Binding (übersprungen)
                                openHAB CalDav-Presence Binding (übersprungen)
                                Hi,

                                versuche mal die Bindings hier zu laden: https://buildhive.cloudbees.com/job/.../openhab/2457/
                                Du brauchst diese drei Bindings: Außerdem muss zum deaktivieren der Zertifikatsprüfung in die openhab.cfg pro Kalender
                                Code:
                                  
                                 caldavio:<calender-id>:disableCertificateVerification=true
                                eintragen

                                Kommentar

                                Lädt...
                                X