View Issue Details

IDProjectCategoryView StatusLast Update
0005276SOGoBackend Calendarpublic2021-03-12 19:50
Reportertobixen Assigned Tofrancis  
PrioritynormalSeverityblockReproducibilityalways
Status closedResolutionwon't fix 
Product Version5.0.1 
Summary0005276: CalDAV access seems broken; REPORT, MKCALENDAR, PUT etc gives "501 Not Implemented"
Description

I'm the author of the python caldav library, and I'm currently trying to run the test suite towards the SOGo demo account, but most things seems to fail.

I can log in, and I can get a list of calendars - but I'm unable to get out a list of events, create a new calendar or create a new event using the caldav interface.

Have I misunderstood something, or is the caldav interface just very broken in 5.0.1?

Steps To Reproduce

(I created a calendar with uid 2F31-6048DA00-3-68799280 through the web ui)

$ python
>>> import caldav
>>> principal = caldav.DAVClient(username='sogo1', password='sogo1', url='https://demo.sogo.nu/SOGo/dav/').principal()
>>> principal.url
URL(https://demo.sogo.nu/SOGo/dav/sogo1/)
>>> calendars = principal.calendars()
>>> calendars
[Calendar(https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/personal/), Calendar(https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/2F31-6048DA00-3-68799280/)]
>>> principal.make_calendar(name='caldav-test', cal_id='1F31-5048DA00-3-58799280')
(...)
caldav.lib.error.MkcalendarError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>
MKCALENDAR to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/1F31-5048DA00-3-58799280/ not supported.
(...)
>>> calendars[0].events()
caldav.lib.error.ReportError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>
REPORT to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/personal/ not supported.
>>> calendars.objects()
(as above)
>>> calendars[1].add_event("""BEGIN:VCALENDAR
... VERSION:2.0
... PRODID:-//Example Corp.//CalDAV Client//EN
... BEGIN:VEVENT
... UID:19970901T130000Z-123403@example.com
... DTSTAMP:19970901T130000Z
... DTSTART;VALUE=DATE:19971102
... SUMMARY:Our Blissful Anniversary
... TRANSP:TRANSPARENT
... CLASS:CONFIDENTIAL
... CATEGORIES:ANNIVERSARY,PERSONAL,SPECIAL OCCASION
... RRULE:FREQ=YEARLY
... END:VEVENT
... END:VCALENDAR""")
(...)
caldav.lib.error.PutError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>\nPUT to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/2F31-6048DA00-3-68799280/19970901T130000Z-123403%40example.com.ics not supported.<

That's when I gave up.

Additional Information

From the debug logs:

MKCALENDAR https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/1F31-5048DA00-3-58799280/
User-Agent: Mozilla/5.0
Content-Type: text/xml
Accept: text/xml, text/calendar

<?xml version='1.0' encoding='utf-8'?>
<C:mkcalendar xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav"><D:set><D:prop><D:displayname>caldav-test</D:displayname></D:prop></D:set></C:mkcalendar>

---

REPORT https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/personal/
User-Agent: Mozilla/5.0
Content-Type: application/xml; charset="utf-8"
Accept: text/xml, text/calendar
Depth: 1

<?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:prop><C:filter><C:comp-filter name="VCALENDAR"><C:comp-filter name="VEVENT"/></C:comp-filter></C:filter></C:calendar-query>

etc

TagsCalDAV

Activities

tobixen

tobixen

2021-03-10 15:35

reporter   ~0015131

The interactive python session did not render very well, I'm not familiar with mantis syntax. Let's try to prepend two spaces and see if that helps:

$ python

import caldav
principal = caldav.DAVClient(username='sogo1', password='sogo1', url='https://demo.sogo.nu/SOGo/dav/').principal()
principal.url
URL(https://demo.sogo.nu/SOGo/dav/sogo1/)
calendars = principal.calendars()
calendars
[Calendar(https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/personal/), Calendar(https://demo.sogo.nu/SOGo/dav/sogo1/Calendar/2F31-6048DA00-3-68799280/)]
principal.make_calendar(name='caldav-test', cal_id='1F31-5048DA00-3-58799280')
(...)
caldav.lib.error.MkcalendarError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>
MKCALENDAR to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/1F31-5048DA00-3-58799280/ not supported.
(...)
calendars[0].events()
caldav.lib.error.ReportError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>
REPORT to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/personal/ not supported.
calendars.objects()
(as above)
calendars[1].add_event("""BEGIN:VCALENDAR
... VERSION:2.0
... PRODID:-//Example Corp.//CalDAV Client//EN
... BEGIN:VEVENT
... UID:19970901T130000Z-123403@example.com
... DTSTAMP:19970901T130000Z
... DTSTART;VALUE=DATE:19971102
... SUMMARY:Our Blissful Anniversary
... TRANSP:TRANSPARENT
... CLASS:CONFIDENTIAL
... CATEGORIES:ANNIVERSARY,PERSONAL,SPECIAL OCCASION
... RRULE:FREQ=YEARLY
... END:VEVENT
... END:VCALENDAR""")
(...)
caldav.lib.error.PutError: 501 Not Implemented
(...)
<H1>Unsupported Request</H1>\nPUT to http://demo.sogo.nu/SOGo/dav/sogo1/Calendar/2F31-6048DA00-3-68799280/19970901T130000Z-123403%40example.com.ics not
supported.

francis

francis

2021-03-10 15:58

administrator   ~0015134

WebDAV is not enabled on demo.sogo.nu. You could use the ZEG instead.

tobixen

tobixen

2021-03-12 19:40

reporter   ~0015138

Thanks, this can be closed now (seems like I can't do it myself?)

Issue History

Date Modified Username Field Change
2021-03-10 15:32 tobixen New Issue
2021-03-10 15:32 tobixen Tag Attached: CalDAV
2021-03-10 15:35 tobixen Note Added: 0015131
2021-03-10 15:37 tobixen Issue cloned: 0005277
2021-03-10 15:56 francis Steps to Reproduce Updated
2021-03-10 15:56 francis Additional Information Updated
2021-03-10 15:58 francis Note Added: 0015134
2021-03-12 19:40 tobixen Note Added: 0015138
2021-03-12 19:50 francis Assigned To => francis
2021-03-12 19:50 francis Status new => closed
2021-03-12 19:50 francis Resolution open => won't fix