Ankündigung

Einklappen
Keine Ankündigung bisher.

caldav-Unterstützung

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

    [callidomus] caldav-Unterstützung

    Wer hätte Lust und Muße mitzuhelfen ein caldav-Plugin zu basteln?

    https://pypi.python.org/pypi/caldav

    Das könnte doch eine gute Basis sein, oder?

    Danke und Grüße
    Thorsten

    PS: Anleitung hier unten
    https://knx-user-forum.de/forum/supp...25#post1047625
    Merken
    Zuletzt geändert von RoyalTS; 26.01.2017, 21:17.

    #2
    Hi,
    denke du solltest warten bis das Phyton 3 Problem gelöst ist.

    https://bitbucket.org/cyrilrbt/calda...ency-situation

    oder eine andere Lib finden.

    VG Juergen
    Zuletzt geändert von heckmannju; 10.01.2017, 20:17.

    Kommentar


      #3
      Ich such noch

      Also nächste Möglichkeit vielleicht:
      https://github.com/tobixen/calendar-cli

      Kommentar


        #4
        Zitat von RoyalTS Beitrag anzeigen
        Also nächste Möglichkeit vielleicht:
        https://github.com/tobixen/calendar-cli
        Hi,

        ist aber auch python2...

        Was mich wundert: Marcus ( callidomus ) ist doch ein Apple zugeneigter User - wie macht er das mit seinen Kalendern, wenn Apple nur caldav unterstützt?

        Gruß, Waldemar
        OpenKNX www.openknx.de

        Kommentar


          #5
          Hallo,

          mir kommt keine Cloud ins Haus

          http://baikal-server.com

          Bis bald

          Marcus

          Kommentar


            #6
            AtWork haben wir Opengroupware und dafür bräuchte ich auch caldav
            Merken

            Kommentar


              #7
              Und das?
              https://devhub.io/repos/lwoydziak-caldav

              Kommentar


                #8
                Warum packst du den nicht im Image mit rein?

                VG
                Jürgen

                Kommentar


                  #9
                  Hallo,

                  Zitat von heckmannju Beitrag anzeigen
                  Warum packst du den nicht im Image mit rein?
                  weil das PHP braucht, und ein eigener Dienst wäre der auch supported werden müsste.

                  Bis bald

                  Marcus

                  Kommentar


                    #10
                    Also mit
                    https://devhub.io/repos/lwoydziak-caldav
                    bin ich schon mal weiter gekommen.

                    Code:
                    from datetime import datetime
                    import caldav
                    from caldav.elements import dav, cdav
                    
                    # Caldav url
                    url = "p53-caldav.icloud.com"
                    username = "aaaaa@test.de"
                    password = "xxxxxxxxx"
                    calendar_name = "Privat"
                    final_url = "https://"+username+":"+password+"@"+url
                    
                    client = caldav.DAVClient(final_url)
                    principal = client.principal()
                    calendars = principal.calendars()
                    if len(calendars) > 0:
                        for i in range(0, len(calendars)-1):
                            calendar_displayname = str(calendars[i].get_properties([dav.DisplayName(),]))
                            if calendar_displayname.find(calendar_name) > 0:
                                print("Calendar ", str(i), ": ", calendars[i])
                                calendar = calendars[i]
                                print(calendar.get_properties([dav.DisplayName(),]))
                                print("Looking for events today")
                                results = calendar.date_search(datetime.today())
                                for event in results:
                                    print("Found", event)
                    liefert mir

                    Code:
                    $ python3 caldavtest.py
                    Calendar  2 :  https://p53-caldav.icloud.com:443/123456789/calendars/home/
                    {'{DAV:}displayname': 'Privat'}
                    Looking for events today
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/310548ba77c0e4b0fa2f704ac3dcdd9b.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/4686dcc632c282a2421877ba8d7cae58.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/60610cae0ed3c588c9b9e35358e4533b.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/6d1ef323a79403dd930c8654751aac02.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/68d7c578c50ffc6d0d14020f02a6c934.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/fb6d3893dc1cf0a95332988c6464d280.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/ff9ee233f242fed24471699f33f95ea0.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/e49e3236213d6df5ab340b0feba46b4b.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/e588c2cd4b69e2f7c59f42ab6d65c738.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/040000008200E00074C5B7101A82E00800000000605A67A2E040D20100000000000000001000000030E6EC5D301D904BAE4E5883EB42DAA3.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/a243a57775be94785b28219d81d3181e.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/f86ae580-ce49-4422-9783-84c5e426945b.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/249fd921-6a3f-4eb8-a792-f9a86b29a0cd.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/4B51F06D-6393-4CF5-B077-6E9DB2742255.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/86e8e9785376bc763a5afafb329cf629.ics
                    Found Event: https://p53-caldav.icloud.com:443/123456789/calendars/home/d3eb47c6-0037-4c3a-b8b0-73ff66a9fcc4.ics
                    Demnächst mal weiter schaun

                    Grüße
                    Thorsten

                    Kommentar


                      #11
                      Und bin wieder weiter.
                      Ich kann z.B. aus meiner iCloud die Kalender und Einträge auslesen und stell sie aktuell via Text-Widget dar.

                      Möchte noch wer CALDAV nutzen und hat Lust und Zeit da mit zu basteln?

                      Grüße
                      Thorsten

                      Kommentar


                        #12
                        Hi Thorsten,

                        ich habe meine owncloud-Kalender über CalDav eingebunden. Außerdem habe ich eine Geburtstagskalender-Datenbank, daraus erzeuge ich via PHP-Script die ICS Datei. Das klappt eigentlich alles ganz einwandfrei mit dem CalDav-Widget. Ließe sich aber sicher noch irgendwie optimieren. Was willst du denn genau basteln?

                        Gruß
                        Thomas

                        P.S.: Können wir ja auch am Samstag mal bequatschen ... ;-)

                        Kommentar


                          #13
                          Hi Thomas,

                          Caldav-Widget? Oder meinst du das iCal-Widget?
                          Naja, ich hab mir eine Logik auf Basis von obigen caldav-Teil gebastelt.

                          Aber schwätzen wir mal in Ruhe am Samstag
                          Vielleicht lässt sich da noch was besseres machen. Plane nun irgendwie caldav mit icalendar zu kombinieren.

                          Grüße
                          Thorsten

                          Kommentar


                            #14
                            Hallo Thorsten,

                            in einem anderen Thread konnte ich lesen, dass du geschafft hast einen Caldev Kalender einzubinden. Da wir in der Familie auch iCloud verwenden wollte ich Fragen ob es ggf. möglich wäre eine Anleitung dazu zu posten? Leider ist mein technisches Know-How nicht so gut, dass ich das selber hinkriegen würde.

                            Gruss Marc

                            Kommentar


                              #15
                              Hi!

                              Ich versuch mal kurz eine Anleitung zu stricken

                              1. Benötigte Kalenderdaten bekommen
                              a) Auf www.icloud.com anmelden und auf Kalender klicken.
                              Dann z.B. in Firefox auf Entwicklerumgebung und dort auf Netzwerkanalyse klicken (oder direkt einfach STRG+Umschalt+Q).

                              Bildschirmfoto vom 2017-01-26 20-34-25.png

                              b) Dort einen Eintrag "pXX-calendarws.icloud.com" suchen.
                              Hier brauchen wir die Nummer bei pXX.

                              c) In der iCloud-Anzeige muss man sich noch die Kalendernamen merken, die man einbinden möchte (z.B. Privat, Müll,....)
                              Bildschirmfoto vom 2017-01-26 20-25-17.png

                              2. Notwendige Dateien
                              Angehängt ZIP-Datei nach "/data/callidomus/local" entpacken.

                              3. Persönliche Anpassungen
                              Dann unter logics die Datei "cloudCal.py" mit einem Editor öffnen und nach eigenen Bedürfnissen und Wünschen anpassen.
                              Wichtig die Kalender-Import-Zeilen anpassen (pXX : XX austauschenn, XXloginYY : dein Login, XXXpassYYY : dein Passwort und danach der jeweilige Kalendername):
                              Code:
                              familie_heute = methods.caldavimport(heute,'pXX-caldav.icloud.com','XXloginYY','XXXpassYYY','Family') # holt und parst die Calenderdatei
                              Der Rest ist alles von den Beispielen von Marcus und Co aus dem iCal-Thread übernommen (Danke hierfür)
                              Und mit viel Hilfe angepasst (Danke Stereofeld und @mumpf)

                              4. Items anlegen
                              Ich möchte z.B. die Termine von heute und morgen anzeigen, dafür hab ich 2 Items (Typ Liste) angelegt.
                              a) heute.Kalender und b) morgen.Kalender.

                              5. Logik anlegen
                              Damit die Einträge auch schön aktualisiert werden, muss man eine Logik anlegen. Ich lass alle 60 Minuten die Kalender synchronisieren.
                              Bildschirmfoto vom 2017-01-26 20-59-20.png

                              6. Anzeige in Callidomus
                              Für die Anzeige bediene ich mich dem Kalender-Widget.
                              Bildschirmfoto vom 2017-01-26 20-56-27.png

                              Das war es eigentlich.

                              Bildschirmfoto vom 2017-01-26 21-01-03.png

                              Grüße
                              Thorsten
                              Angehängte Dateien

                              Kommentar

                              Lädt...
                              X