Summary | CalDAV subscriptions do not work |
Queue | Kronolith |
Queue Version | Git master |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | jan (at) horde (dot) org |
Requester | fabian.schlager (at) skyr (dot) at |
Created | 05/25/2013 (4461 days ago) |
Due | |
Updated | 07/01/2014 (4059 days ago) |
Assigned | 05/27/2013 (4459 days ago) |
Resolved | 05/28/2013 (4458 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
Version ⇒ Git master
let me know what you have done there.
Tank You
and the following URL:
http://horde.myhost.tld/rpc.php/calendars/myuser@myhost.tld/calendar:{id of
the calendar}/ _works_
http://horde.myhost.tld/rpc.php/calendars/myuser@myhost.tld now lists
all my calendars, subscribing to one calendar using Thunderbird (with
CalDAV) and the following URL:
http://horde.myhost.tld/rpc.php/calendars/myuser@myhost.tld/calendar:{id of
the calendar}/
The account URL
(http://horde.myhost.tld/rpc.php/principals/myuser@myhost.tld/) yields
an empty directory in my browser and does not work on my Android phone
(using CalDAV Sync Beta - I can not guarantee that the application
itself is flawless, but I tested it with DaviCal as CalDAV-Server and
it worked).
The function Kronolith_Application::davGetCollections() seems to
return a valid result:
array(2) {
[0]=>
array(7) {
["id"]=>
string(32) "calendar:vWinF3HZnIl5NXmL1JvCag1"
["uri"]=>
string(32) "calendar:vWinF3HZnIl5NXmL1JvCag1"
["principaluri"]=>
string(34) "principals/myuser@myhost.tld"
["{DAV:}displayname"]=>
string(4) "Main"
["{urn:ietf:params:xml:ns:caldav}calendar-description"]=>
string(0) ""
["{http://apple.com/ns/ical/}calendar-color"]=>
string(7) "#456eff"
["{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set"]=>
object(Sabre\CalDAV\Property\SupportedCalendarComponentSet)#277 (1) {
["components":"Sabre\CalDAV\Property\SupportedCalendarComponentSet":private]=>
array(1) {
[0]=>
string(6) "VEVENT"
}
}
}
[1]=>
array(7) {
["id"]=>
string(32) "calendar:i9s9BnlV_pyP-xaCLVOoTw1"
["uri"]=>
string(32) "calendar:i9s9BnlV_pyP-xaCLVOoTw1"
["principaluri"]=>
string(34) "principals/myuser@myhost.tld"
["{DAV:}displayname"]=>
string(8) "BarCraft"
["{urn:ietf:params:xml:ns:caldav}calendar-description"]=>
string(0) ""
["{http://apple.com/ns/ical/}calendar-color"]=>
string(7) "#179000"
["{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set"]=>
object(Sabre\CalDAV\Property\SupportedCalendarComponentSet)#278 (1) {
["components":"Sabre\CalDAV\Property\SupportedCalendarComponentSet":private]=>
array(1) {
[0]=>
string(6) "VEVENT"
}
}
}
}
commit 59aeec910112043594849c85d8bf47ec63b31240
Author: Jan Schneider <jan@horde.org>
Date: Mon May 27 21:51:35 2013 +0200
Cast null to array (
Bug #12275).There is way to determine whether an Horde_Registry_Application
method exists
and we don't want to implement these methods as stubs in the base
class either.
framework/Dav/lib/Horde/Dav/Calendar/Backend.php | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
http://git.horde.org/horde-git/-/commit/59aeec910112043594849c85d8bf47ec63b31240
provides the "calendars" and "addressbooks" entries), but it doesn't
provide the calendars/task lists/address books, even though it uses
almost the same code like what provides the entries below
kronolith/nag/turba.
I'm afraid you need to dig inside
Kronolith_Application::davGetCollections() and see why it doesn't
return anything, while Kronolith_Api::browse() does.
http://horde.myhost.tld/rpc.php/calendars/ with the browser manually?
principals -> empty
calendars -> empty
addressbooks -> empty
kronolith
myuser@myhost.tld
vWinF3HZnIl5NXmL1JvCag1 (Collection, contains lots of
text/calendar files)
vWinF3HZnIl5NXmL1JvCag1.ics
i9s9BnlV_pyP-xaCLVOoTw1 (Collection, contains lots of text/calendar files)
i9s9BnlV_pyP-xaCLVOoTw1.ics
turba
global
favourites -> empty
myuser@myhost.tld
4gRMs8YWEopql_NaGpd2FA6 -> empty
nag
myuser@myhost.tld
4XBVL6tfUb7OfI2Riwy0XQ1 -> empty
4XBVL6tfUb7OfI2Riwy0XQ1.ics
I have two calendars, they seem to show up in kronolith/myuser@myhost.tld.
Hope this helps
in any log file.
http://horde.myhost.tld/rpc.php/calendars/ with the browser manually?
in any log file.
Tasks (nag) 4.0.2
<d:error>
<s:exception>Sabre\DAV\Exception</s:exception>
<s:message>Method does not exist.</s:message>
<s:sabredav-version>1.8.4</s:sabredav-version>
</d:error>
State ⇒ Feedback
Assigned to Jan Schneider
commit d14869ecd02f8800e63f63a86de6ed27e328ef1b
Author: Jan Schneider <jan@horde.org>
Date: Mon May 27 20:42:33 2013 +0200
Throw exception on error (
Bug #12275).framework/Dav/lib/Horde/Dav/Calendar/Backend.php | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
http://git.horde.org/horde-git/-/commit/d14869ecd02f8800e63f63a86de6ed27e328ef1b
Priority ⇒ 1. Low
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Summary ⇒ CalDAV subscriptions do not work
Type ⇒ Bug
Queue ⇒ Kronolith
CalDAV Sync Beta on Android).
I have installed everything according to instructions and then
upgraded kronolith to kronolith-beta (using pear, it now is at version
4.1.0beta2).
The subscription URL for my calendar is (I have redacted my host
information):
http://horde.myhost.tld/rpc.php/calendars/myuser@myhost.tld/calendar:vWinF3HZnIl5NXmL1JvCag1/
Opening this URL in my browser prints a Sabre-Exception: "Calendar
with name 'calendar:vWinF3HZnIl5NXmL1JvCag1' could not be found" and
the following lines in my syslog:
May 25 15:33:31 x HORDE: [horde] PHP ERROR: array_merge(): Argument
#2is not an array [pid 20279 on line 92 of
"/usr/share/php/Horde/Dav/Calendar/Backend.php"]
May 25 15:33:31 x HORDE: [horde] PHP ERROR: Invalid argument supplied
for foreach() [pid 20279 on line 164 of
"/usr/share/php/Sabre/CalDAV/UserCalendars.php"]
May 25 15:33:31 x HORDE: [horde] PHP ERROR: array_merge(): Argument
#2is not an array [pid 20279 on line 92 of
"/usr/share/php/Horde/Dav/Calendar/Backend.php"]
May 25 15:33:31 x HORDE: [horde] PHP ERROR: Invalid argument supplied
for foreach() [pid 20279 on line 164 of
"/usr/share/php/Sabre/CalDAV/UserCalendars.php"]
The account subscription URL
(http://horde.myhost.tld/rpc.php/principals/myuser@myhost.tld/)
doesn't work either, altough no errors appear in syslog.
Regards,
Fabian