Navigation

    Kopano
    • Register
    • Login
    • Search
    • Categories
    • Get Official Kopano Support
    • Recent
    Statement regarding the closure of the Kopano community forum and the end of the community edition

    Problem with CalDav/Ical request with time-range filter

    Kopano Groupware Core
    3
    7
    872
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • norman
      norman last edited by

      Hi,

      is it possible to get only a few events from Kopano CalDav/Ical Server with a time-range filter?
      I always get every event that exists in the calendar - a lot of items.

      <?xml version="1.0" encoding="utf-8" ?>
      <C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
        <D:prop>
          <C:calendar-data/>
          <D:getetag/>
        </D:prop>  <C:filter>
          <C:comp-filter name="VCALENDAR">
            <C:comp-filter name="VEVENT">
              <C:time-range start="20180901T000000Z" end="20180930T240000Z"/>
            </C:comp-filter>
          </C:comp-filter>
        </C:filter>
      </C:calendar-query>
      

      Thank you very much,
      Norman

      1 Reply Last reply Reply Quote 0
      • fbartels
        fbartels Kopano last edited by

        Hi @norman ,

        Can you check if it’s any different with https://forum.kopano.io/topic/1341/request-for-feedback-new-caldav-and-carddav-implementation-for-kopano ?

        Regards Felix

        Resources:
        https://kopano.com/blog/how-to-get-kopano/
        https://documentation.kopano.io/
        https://kb.kopano.io/

        Support overview:
        https://kopano.com/support/

        1 Reply Last reply Reply Quote 0
        • norman
          norman last edited by

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • norman
            norman last edited by

            This post is deleted!
            1 Reply Last reply Reply Quote 0
            • norman
              norman last edited by norman

              And here are the results of the german vote…

              Now I have installed the new CalDav implementation on Kopano version 8.3.0 (not supported).

              The result is much better! Now with the query (first post) I get all events in this time range, but also the repeating events. I don’t know why - but for me it’s ok, because I can filter this ones in a second step.

              To the background: I need this functionality for my home automation and for Alexa.

              Thanks, Norman

              Manfred 1 Reply Last reply Reply Quote 0
              • Manfred
                Manfred Kopano @norman last edited by

                Hi Norman,

                @norman said in Problem with CalDav/Ical request with time-range filter:

                The result is much better! Now with the query (first post) I get all events in this time range, but also the repeating events. I don’t know why - but for me it’s ok, because I can filter this ones in a second step.

                That’s because the recurring events which might occur in the filter range (e.g. the recurrence end is after the start of the range or the recurrence start is before the end of the range) are also included in the list. kdav doesn’t expand the recurrences to check if one or more of the occurrences of the recurrence would happen in the range because that’s quite expensive operation.

                Manfred

                1 Reply Last reply Reply Quote 0
                • norman
                  norman last edited by

                  Ok - now I use a PHP RRule Parser (https://github.com/rlanvin/php-rrule) to get the event list from the reccuring events. That works fine.

                  $rrule = new RRule($eventArray["RRULE"], $datetime->format('Ymd\THis\Z'));
                  $res = $rrule->getOccurrencesBetween($startZ->getTimestamp(), $endZ->getTimestamp());
                  

                  Norman

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post