Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does this support Availability ? #10

Open
signalarun opened this issue Nov 23, 2018 · 13 comments
Open

Does this support Availability ? #10

signalarun opened this issue Nov 23, 2018 · 13 comments

Comments

@signalarun
Copy link

When I tried Availability on Baikel server with the docker image it gives operation not supported error.

@pr3d4t0r
Copy link
Owner

Hi @signalarun!

Yes, it supports the Availability feature as long as both the user making the event and the invited users all are in the same server. Here's an example:

!(Availability example)[http://i.imgur.com/06LNPEq.png]

  • The green outline shows the available times for the user making the request
  • The solid green block is the time for the event being booked
  • The grey blocks are times when either user is unavailable

This snapshot was taken from the macOS Calendar.app while booking a sample event tomorrow, Friday 23.Nov.2018.

I've tested this with Baïkal + Calendar.app, and with Baïkal with Thunderbolt + Lightning.

Please expand details on your request so I can help you figure out what's happening with your set up. Which calendar software do you use?

Cheers!

pr3d

@signalarun
Copy link
Author

I used Caldav4j library to access the Baikal docker.

@pr3d4t0r
Copy link
Owner

Ah, got it -- no idea. Do you have the server logs? They are in /var/log/nginx.

Not sure about that Java library - I haven't used it. But I'm 100% sure that Baïkal reports the availability for all users registered in it.

@pr3d4t0r
Copy link
Owner

@signalarun - Is there an exception that you could show me too? Thanks!

@signalarun
Copy link
Author

Exception in thread "main" java.io.IOException: Error executing method: org.osaf.caldav4j.methods.PutMethod@139ad8e HTTP response code: 409

@pr3d4t0r
Copy link
Owner

OKi - does the response body have anything in it? This issue is on the CalDAV side, not the Docker side, happy to help if I can. Logs and the full response body, if available.

I suggest that you try some interactive way of testing the responses after authenticating.

Here's a great tool for checking what's happening during the exchanges:

https://github.com/asciimoo/wuzz

Cheers!

@pr3d4t0r
Copy link
Owner

One more thing: paste here the full HTTP request that your tool sends to the server. This error may be caused by an incorrect path. The full path should be something like:

http://yourserver.whatever/dav.php/principals/accountname

Headers would be helpful too. Use wuzz to generate the requests so we can see what the server does. SoapUI might also be useful, but I prefer wuzz for expediency.

Cheers!

@signalarun
Copy link
Author

<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:sabredav-version>3.1.3</s:sabredav-version>
<s:exception>Sabre\DAVACL\Exception\NeedPrivileges</s:exception>
<s:message>User did not have the required privileges ({DAV:}write-content) for path "principals/jeena"</s:message>
<d:need-privileges>
<d:resource>
<d:href>/baikal/html/cal.php/principals/jeena</d:href>
<d:privilege>
<d:write-content/>
</d:privilege>
</d:resource>
</d:need-privileges>
</d:error>

@pr3d4t0r
Copy link
Owner

Hola.

Two possibilities:

  1. You need to specify which calendar corresponding to user jeena you want. I have to do that when connecting from the macOS calendar, like this: https://mydomain.com/cal.php/principals/work
  2. User jeena isn't defined OR is defined but using the default calendar (in which case you must specify default) OR it's only using the address book

Check this out: http://sabre.io/dav/acl/ -- this explains how the ACLs work for SabreDAV (and for Baïkal since it leverages it).

Where are you with the wuzz dump? That'll be even more helpful for troubleshooting.

Cheers!

@signalarun
Copy link
Author

The above two possibilities also not working. Can you give the link of working Baikal docker image that you use, so that I can try with that.

@pr3d4t0r
Copy link
Owner

pr3d4t0r commented Dec 6, 2018

The issues that you describe aren't caused by Baïkal. The client is providing wrong or incomplete data to the Sabre/CalDAV/Baïkal server. That's why I keep asking for logs or other diagnostic information.

The Docker image you want for testing is pr3d4t0r/sabre.io - pull that. Read this too: https://ciurana.eu/entry/improved-baikal-sabredav-calendar-in-less-than-10-minutes - please let me know if you have further questions/comments.

@signalarun
Copy link
Author

The above two possibilities also not working. Can you give the link of working Baikal docker image that you use, so that I can try with that.

@pr3d4t0r
Copy link
Owner

pr3d4t0r commented Dec 7, 2018

I did in my previous entry. From Docker Hub: pr3d4t0r/sabre.io, and read the blog entry https://ciurana.eu/entry/improved-baikal-sabredav-calendar-in-less-than-10-minutes - this is my exact "production" set up, except for that my Baïkal server is behind an Nginx reverse proxy for SSL termination.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants