Importing ICAL ics files into Zarafa
From Zarafa wiki
| Line 51: | Line 51: | ||
</pre> | </pre> | ||
After this change restart the zarafa-ical service. | After this change restart the zarafa-ical service. | ||
| - | |||
| - | |||
You can now import calendars (both to default calendars and to calendars that need to be newly created) as the user. But now the zarafa-ical service will accept any password as the users' password as long as it is not empty: | You can now import calendars (both to default calendars and to calendars that need to be newly created) as the user. But now the zarafa-ical service will accept any password as the users' password as long as it is not empty: | ||
<pre> | <pre> | ||
curl -u [username]:[any password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]/[calendar name] | curl -u [username]:[any password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]/[calendar name] | ||
| + | </pre> | ||
| + | |||
| + | <FONT COLOR=RED>'''Important: Revert the server_socket back to it's original setting before going into production, as setting the server to a unix socket creates a security leak, so edit the file /etc/zarafa/ical.cfg and change server_socket to:'''</FONT> | ||
| + | <pre> | ||
| + | server_socket = http://localhost:236/zarafa | ||
</pre> | </pre> | ||
Revision as of 14:42, 6 July 2009
This page describes the import of ICal calendar files into Zarafa via the zarafa-ical gateway.
For the import of the ICal ics files we will use curl. The curl package will be installable on most linux distributions via the default repositories.
On Centos/Redhat:
yum install curl
On Ubuntu/Debian:
apt-get install curl
With curl you are able to import ICal ics files into Zarafa. Before you do this, you need to make sure that the zarafa-ical service is started:
/etc/init.d/zarafa-ical start
The zarafa-ical service runs on port 8080 by default. You can change these settings in /etc/zarafa/ical.cfg. In this document we use the default settings.
Now you can import ics files to the users default calendar using curl:
curl -u [username]:[password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]
You can also import to users default calendar using a zarafa-admin user:
curl -u [zarafa-admin user]:[password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]
If you want to import calendars to different calendars then the default calendar, use:
curl -u [username]:[password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]/[calendar name]
Or if you want to import to a subfolder of a yet existing calendar (in the next example we import to a subfolder of a calendar named "Calendar"):
curl -u [username]:[password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]/Calendar/[calendar name]
If the calendar does not exist yet, the last example will not work when using a zarafa-admin user. This needs to be done as the user itself. There is a workaround however if you need to do some massive scripting on this and you don't know the users' passwords.
You will need to run the zarafa-ical service and zarafa-server on the same host and the zarafa-ical service needs to run as root. Change the server_socket in /etc/zarafa/ical.cfg to:
server_socket = file:///var/run/zarafa
After this change restart the zarafa-ical service.
You can now import calendars (both to default calendars and to calendars that need to be newly created) as the user. But now the zarafa-ical service will accept any password as the users' password as long as it is not empty:
curl -u [username]:[any password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]/[calendar name]
Important: Revert the server_socket back to it's original setting before going into production, as setting the server to a unix socket creates a security leak, so edit the file /etc/zarafa/ical.cfg and change server_socket to:
server_socket = http://localhost:236/zarafa