[kronolith] Kronolith 3.0.9 : Remote calendar : error davical
Gerard Breiner
gerard.breiner at ias.u-psud.fr
Wed Nov 30 15:11:56 UTC 2011
Le 30/11/2011 14:48, Gerard Breiner a écrit :
> Le 30/11/2011 11:19, Jan Schneider a écrit :
>>
>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>
>>> Le 15/09/2011 14:30, Jan Schneider a écrit :
>>>>
>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>
>>>>> Le 14/09/2011 13:06, Jan Schneider a écrit :
>>>>>>
>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>
>>>>>>> Le 14/09/2011 11:24, Jan Schneider a écrit :
>>>>>>>>
>>>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> I use kronolith 3.0.9 under horde 4.0.8. My server caldav is
>>>>>>>>> davical version 0.9.9.3 . I created a remote calendar toward
>>>>>>>>> my server davical
>>>>>>>>> (https://calendar.domain/caldav.php/username/agenda). When I
>>>>>>>>> try to add an event from kronolith (client) to davical
>>>>>>>>> (server) I get the error
>>>>>>>>> "The event could not be added to the remote server".
>>>>>>>>>
>>>>>>>>> The davical's logs says the content type is incorrect... It
>>>>>>>>> seems that expect to have xml content but is not.
>>>>>>>>> Does caldav is full supported by kronolith 3.0.9 ?
>>>>>>>>
>>>>>>>> Yes.
>>>>>>>>
>>>>>>>>> Any help would be appreciated.
>>>>>>>>>
>>>>>>>>> Thanks in advance
>>>>>>>>>
>>>>>>>>> Gerard Breiner
>>>>>>>>>
>>>>>>>>> [LOGS]
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: NOTICE:Unusual content-type of "(null)" and first word of
>>>>>>>>> content is ""
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: :***************** Response Header ****************
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->X-Powered-By: PHP/5.3.3-7+squeeze1
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->Server: 0.9
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->DAV: 1, 2, 3, access-control, calendar-access,
>>>>>>>>> calendar-schedule
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->DAV: extended-mkcol, calendar-proxy, bind,
>>>>>>>>> addressbook
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->X-DAViCal-Version: DAViCal/0.9.9; DB/1.2.9
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: headers:-->Content-type: text/xml; charset="utf-8"
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: :******************** Response ********************
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: response:--><?xml version="1.0" encoding="utf-8" ?>
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: response:--><error xmlns="DAV:">
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: response:-->
>>>>>>>>> <urn:ietf:params:xml:ns:caldav:supported-calendar-data/>Incorrect
>>>>>>>>> content type for calendar:
>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x] DAViCal:
>>>>>>>>> LOG: response:--></error>
>>>>>>>>> [LOGS]
>>>>>>>>
>>>>>>>> If possible, try to trace the communication between Kronolith
>>>>>>>> and DAViCal.
>>>>>>> By using firebug ?
>>>>>>
>>>>>> No, Firebug only traces the communication between the browser and
>>>>>> Kronolith. Use something like wireshark.
>>>>>>
>>>>>>>> Jan.
>>>>>>>>
>>>>>>>
>>>>>>> However, I've just made a try and the good news is it works very
>>>>>>> fine IF I comment in kronolith/lib/Driver/Ical.php the lines :
>>>>>>>
>>>>>>> [CODE]
>>>>>>> 435 if (!in_array($response->code, array(200, 201,
>>>>>>> 204))) {
>>>>>>> 436 Horde::logMessage(sprintf('Failed to create
>>>>>>> event on remote calendar: url = "%s", status = %s',
>>>>>>> 437 $url,
>>>>>>> $response->code), 'INFO');
>>>>>>> 438 throw new Kronolith_Exception(_("The event could
>>>>>>> not be added to the remote server."));
>>>>>>> 439
>>>>>>> [CODE]
>>>>>>
>>>>>> If commenting this out worked, you have a log entry in the horde
>>>>>> log that you didn't mention.
>>>>>>
>>>>> Here is :
>>>>> INFO: HORDE4 [kronolith] Failed to create event on remote
>>>>> calendar: url = "", status = 412 [pid 16916 on line 437 of
>>>>> "/www/horde4/kronolith/lib/Driver/Ical.php"]
>>>>
>>>> Response status 412 means that a precondition failed while PUTing
>>>> the event on the server. Unfortunately we don't read the
>>>> precondition error message yet. Can you check if davical logs some
>>>> error message?
>>>>
>>>> Jan.
>>>>
>>>
>>> Hello Jan
>>>
>>> I've kept on working about the "add event" that can't be added from
>>> kronolith to davical.
>>> So, I've used tshark for checking whether kronolith was actually
>>> sending the PUT data. I precise that kronolith and davical are
>>> located on
>>> the same server and their web interfaces are accessible by
>>> virtualhosts. So, I made tshark to listen on the server himself like
>>> this .
>>>
>>> tshark -n -i 3 -V -z conv,udp,ip.addr==x.x.x.x src host x.x.x.x >
>>> /tmp/tshark.txt
>>>
>>> give :
>>> ---------------------------------------------------------
>>> PUT
>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>> HTTP/1.1\r\n
>>> [Expert Info (Chat/Sequence): PUT
>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>> HTTP/1.1\r\n]
>>> [Message: PUT
>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>> HTTP/1.1\r\n]
>>> [Severity level: Chat]
>>> [Group: Sequence]
>>> Request Method: PUT
>>> Request URI:
>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>> Request Version: HTTP/1.1
>>> Authorization: Basic Z2JyZWluZXI6JGFuYWlzJA==
>>> Credentials: <mylogin>:<mypassword>
>>> User-Agent: PECL::HTTP/1.7.1 (PHP/5.3.3-7+squeeze3)
>>> Host: davicalserver.mydomain.fr
>>> Accept: */*
>>> Content-Type: text/calendar
>>> Content-Length: 0
>>> [Content length: 0]
>>> --------------------------------------------------------------
>>> My question is : An idea why the content-Length is 0 ? I guess it is
>>> why I can't add the event...
>>
>> No idea, this header is added by the HTTP extension (in your case).
>>
>>> However the data calendar that I try to add to davical server are :
>>
>> And are you sure that this data is sent with the PUT request? If yes,
>> then your HTTP extension is broken.
>>
>>> -------------------------------------
>>> BEGIN:VCALENDAR
>>> VERSION:2.0
>>> X-WR-CALNAME:Calendar of gerard breiner
>>> PRODID:-//The Horde Project//Horde iCalendar Library//EN
>>> METHOD:PUBLISH
>>> BEGIN:VEVENT
>>> DTSTART;VALUE=DATE:20111130
>>> DTEND;VALUE=DATE:20111130
>>> X-FUNAMBOL-ALLDAY:1
>>> DTSTAMP:20111129T145536Z
>>> UID:20111129155523.eVDkMKLWZNpO1PJbuVvGJuA at webmail1.ias.u-psud.fr
>>> CREATED:20111129T145523Z
>>> LAST-MODIFIED:20111129T145523Z
>>> SUMMARY:TITLE
>>> DESCRIPTION:DESCRIPTION
>>> LOCATION:PLACE
>>> CLASS:PUBLIC
>>> STATUS:CONFIRMED
>>> TRANSP:OPAQUE
>>> END:VEVENT
>>> END:VCALENDAR
>>> --------------------------------------------------
>>>
>>> Thanks in advance.
>>>
>>> Best regards.
>>>
>>> Gerard Breiner
>>> --
>>> Kronolith mailing list
>>> Frequently Asked Questions: http://horde.org/faq/
>>> To unsubscribe, mail: kronolith-unsubscribe at lists.horde.org
>>
>>
>> Jan.
>>
> Many thanks Jan! According to answers I've got from davical list
> (Andrew), data is sent with the PUT request. So I'm going to check the
> HTTP extension...
>
> Best regards
>
> Gerard Breiner
Jan,
According to what I see from phpinfo, it seems that HTTP extension is
enabled...
HTTP Support enabled
Extension Version 1.7.1
Registered Classes HttpUtil, HttpMessage, HttpRequest, HttpRequestPool,
HttpRequestDataShare, HttpDeflateStream, HttpInflateStream,
HttpResponse, HttpQueryString
Output Handlers ob_deflatehandler, ob_inflatehandler, ob_etaghandler
Stream Filters http.chunked_decode, http.chunked_encode, http.deflate,
http.inflate
Used Library Compiled Linked
libcurl 7.21.0 7.21.0
libevent disabled disabled
libz 1.2.3.4 1.2.3.4
libmagic unknown unknown
Persistent Handles
Provider Ident Used Free
http_request N/A 0 0
http_request_datashare GLOBAL 1 0
http_request_pool N/A 0 0
Request Methods
Registered GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE, CONNECT,
PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK, VERSION-CONTROL,
REPORT, CHECKOUT, CHECKIN, UNCHECKOUT, MKWORKSPACE, UPDATE, LABEL,
MERGE, BASELINE-CONTROL, MKACTIVITY, ACL,
Allowed (ANY)
Best regards.
Gerard Breiner
More information about the kronolith
mailing list