Calendar and Contacts Migration: Difference between revisions

No edit summary
 
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
If your mail migration strategy doesn't cover contacts and calendar, you can import via the REST (REpresentational State Transfer) [http://en.wikipedia.org/wiki/Representational_State_Transfer] interface. (Currently, contacts and calendar are only imported with the Exchange migration tool and the PST Import Wizard, so this applies to most IMAP migrations).
{{BC|Community Sandbox}}
__FORCETOC__
<div class="col-md-12 ibox-content">
=Calendar and Contacts Migration=
{{KB|{{Unsupported}}|{{ZCS 7.0}}|{{ZCS 6.0}}|}}
{{Archive}}{{WIP}}
== Migrating Contacts ==
So far, these are step-by-step one-off, per-user migrations.
 
=== Outlook 2003/2007 ===
 
If you bought Zimbra Network Edition, then use the [[ZCS Connector for Outlook]] for your Outlook 2003+ mail clients. If you're on then open source version ...
 
=== Thunderbird ===
 
* Download Dawn Here: http://mysite.verizon.net/zakharin/software/Dawn/
* Use Dawn Wizard to import contacts into Outlook.
* Run the Outlook Import Wizard to import into Zimbra.
 
=== Eudora ===
* In Eudora, select the Address Book that you wish to import to Zimbra. (Select Tools/Address Book) and then Click on the correct Book.
* Select File/Save As, Save as type: CSV Files (*.csv) and type in an appropriate file name. Click Save
* Open Notepad, Open the file.csv that you saved in step 2.
* Insert the following line EXACTLY. (Must be the first line in the file.) <tt>nickname,email,fullName,firstName,lastName,homeStreet,homeCity,homeState,homeCountry,homePostalCode,homePhone,homeFax,homePhone2,homeURL,company,jobTitle,workStreet,workCity,workState,workCountry,workPostalCode,workPhone,workFax,workPhone2,workURL,email2,otherPhone,otherURL,notes</tt>
 
* (Make sure to press enter after the above line and save and close notepad.)
* Login to Zimbra, and go to Options/Address Book, Click Browse and select the file. Click import.
* Select the address book to import into or select New to create new address book. Wait until box in bottom left hand corner says import complete.
* Click Address Book and make sure the contacts imported.


== Overview ==
== Migrating via REST ==
 
If your mail migration strategy doesn't cover contacts and calendar, you can import via the [http://en.wikipedia.org/wiki/Representational_State_Transfer REST] interface.  Currently, contacts and calendar are only imported with the Exchange migration tool and the PST Import Wizard, so this applies to most IMAP migrations.
 
=== Overview ===


The basic procedure is this:
The basic procedure is this:
Line 8: Line 40:
# Migrate that data file to a host that can access the zimbra server
# Migrate that data file to a host that can access the zimbra server
# Use the REST interface to insert the data into Zimbra
# Use the REST interface to insert the data into Zimbra
== REST overview ==


Today, within the Zimbra Collaboration Suite we have a number of different server-side URLs that our client accesses to download an attachment, export contacts as CSV, export a calendar as an ICS, file etc. We are also adding sharing (what would collaboration be without sharing, after all) of calendars, contacts, etc. Not only within a particular Zimbra community, but between Zimbra communities and the public at large.
Today, within the Zimbra Collaboration Suite we have a number of different server-side URLs that our client accesses to download an attachment, export contacts as CSV, export a calendar as an ICS, file etc. We are also adding sharing (what would collaboration be without sharing, after all) of calendars, contacts, etc. Not only within a particular Zimbra community, but between Zimbra communities and the public at large.
Line 57: Line 87:
This last format (user@domain.com) is also necessary when accessing resources in a non-default domain on your local Zimbra server.
This last format (user@domain.com) is also necessary when accessing resources in a non-default domain on your local Zimbra server.


== REST file formats ==
=== REST file formats ===


see this reference page: [[REST File Formats]]
see this reference page: [[REST File Formats]]


== Importing into Zimbra ==
=== Importing into Zimbra ===


We've added the ability to update/create content by POST'ing content to REST urls. GETs continue to remain read only, with no side-effects (as they should be).
We've added the ability to update/create content by POST'ing content to REST urls. GETs continue to remain read only, with no side-effects (as they should be).
Line 67: Line 97:
For example, you can POST an RFC822 formatted message to your inbox REST url to append messages to the inbox folder. Using the popular curl program, this would look like the following:
For example, you can POST an RFC822 formatted message to your inbox REST url to append messages to the inbox folder. Using the popular curl program, this would look like the following:


   <nowiki>curl -u schemers:password --data-binary @/tmp/rfc822.txt https://server/service/home/schemers/inbox</nowiki>
   <nowiki>curl -u schemers:password --upload-file /tmp/rfc822.txt https://server/service/home/schemers/inbox</nowiki>


Note, you currently have to use /service/home for POSTs instead of /zimbra/home, because /zimbra/home issues a redirect, which isn't allowed with POSTs. We'll be fixing that in an upcoming release.
Note, you currently have to use /service/home for POSTs instead of /zimbra/home, because /zimbra/home issues a redirect, which isn't allowed with POSTs. We'll be fixing that in an upcoming release.
Line 73: Line 103:
Other items that can be updated this way are calendar appointments (ICS), and contacts (csv and the new vcf (vCard) format):
Other items that can be updated this way are calendar appointments (ICS), and contacts (csv and the new vcf (vCard) format):


   <nowiki>curl -u username:password --data-binary @/tmp/new.csv http://server/service/home/username/contacts?fmt=csv</nowiki>
   <nowiki>curl -u username:password --upload-file /tmp/new.csv http://server/service/home/username/contacts?fmt=csv</nowiki>


   <nowiki>curl -u username:password --data-binary @/tmp/new.ics http://server/service/home/username/calendar?fmt=ics</nowiki>
   <nowiki>curl -u username:password --upload-file /tmp/new.ics http://server/service/home/username/calendar?fmt=ics</nowiki>


   <nowiki>curl -u username:password --data-binary @/tmp/new.vcf http://server/service/home/username/contacts?fmt=vcf</nowiki>
   <nowiki>curl -u username:password --upload-file /tmp/new.vcf http://server/service/home/username/contacts?fmt=vcf</nowiki>


The full user name (user@domain.com) is required when importing to resources on a non-default domain on your local Zimbra server.
The full user name (user@domain.com) is required when importing to resources on a non-default domain on your local Zimbra server.
Line 85: Line 115:
The target "contacts" in the above command corresponds to the actual folder name on the Zimbra server, rather than a service.  This means that you can import to user-defined folders by specifying the appropriate target name in the command.  If you have created a folder named "SharedContacts", for example, the command to import into this folder would be
The target "contacts" in the above command corresponds to the actual folder name on the Zimbra server, rather than a service.  This means that you can import to user-defined folders by specifying the appropriate target name in the command.  If you have created a folder named "SharedContacts", for example, the command to import into this folder would be


   <nowiki>curl -u username:password --data-binary @/tmp/new.csv http://server/service/home/username/sharedcontacts?fmt=csv</nowiki>
   <nowiki>curl -u username:password --upload-file /tmp/new.csv http://server/service/home/username/sharedcontacts?fmt=csv</nowiki>




On later version's (such as 5.0.10+) instead of --data-binary, you should use --upload-file.
On earlier versions (such as 5.0.10 and earlier) instead of --upload-file , you should use --data-binary.


For example:
For example:
  curl --insecure -u admin:password --upload-file /tmp/test.csv
  curl --insecure -u admin:password --data-binary @/tmp/test.csv
  https://server/service/home/test1@domain.com/contacts?fmt=csv
  https://server/service/home/test1@domain.com/contacts?fmt=csv


Line 97: Line 127:
  zmmailbox -z -m test1@domain.com pru /Contacts /tmp/test.csv
  zmmailbox -z -m test1@domain.com pru /Contacts /tmp/test.csv


== Migrating Contacts ==
=Additional Resources=
*[http://www.zimbra.com/forums/migration/7153-calendar-migration-zimbra-4-5-ne-soap-organizer.html#post38571 Zimbra Forums: Calendar Migration to Zimbra 4.5]


=== Eudora ===
* In Eudora, select the Address Book that you wish to import to Zimbra. (Select Tools/Address Book) and then Click on the correct Book.
* Select File/Save As, Save as type: CSV Files (*.csv) and type in an appropriate file name. Click Save
* Open Notepad, Open the file.csv that you saved in step 2.
* Insert the following line EXACTLY. (Must be the first line in the file.) <tt>nickname,email,fullName,firstName,lastName,homeStreet,homeCity,homeState,homeCountry,homePostalCode,homePhone,homeFax,homePhone2,homeURL,company,jobTitle,workStreet,workCity,workState,workCountry,workPostalCode,workPhone,workFax,workPhone2,workURL,email2,otherPhone,otherURL,notes</tt>


* (Make sure to press enter after the above line and save and close notepad.)
{{Article Footer|unknown|4/26/2009}}
* Login to Zimbra, and go to Options/Address Book, Click Browse and select the file. Click import.
* Select the address book to import into or select New to create new address book. Wait until box in bottom left hand corner says import complete.
* Click Address Book and make sure the contacts imported.


=== Thunderbird ===
[[Category:Migration]]
 
* Download Dawn Here: http://mysite.verizon.net/zakharin/software/Dawn/
* Use Dawn Wizard to import contacts into Outlook.
* Run the Outlook Import Wizard to import into Zimbra.

Latest revision as of 15:03, 11 July 2015

Calendar and Contacts Migration

   KB 2850        Last updated on 2015-07-11  




0.00
(0 votes)

Migrating Contacts

So far, these are step-by-step one-off, per-user migrations.

Outlook 2003/2007

If you bought Zimbra Network Edition, then use the ZCS Connector for Outlook for your Outlook 2003+ mail clients. If you're on then open source version ...

Thunderbird

Eudora

  • In Eudora, select the Address Book that you wish to import to Zimbra. (Select Tools/Address Book) and then Click on the correct Book.
  • Select File/Save As, Save as type: CSV Files (*.csv) and type in an appropriate file name. Click Save
  • Open Notepad, Open the file.csv that you saved in step 2.
  • Insert the following line EXACTLY. (Must be the first line in the file.) nickname,email,fullName,firstName,lastName,homeStreet,homeCity,homeState,homeCountry,homePostalCode,homePhone,homeFax,homePhone2,homeURL,company,jobTitle,workStreet,workCity,workState,workCountry,workPostalCode,workPhone,workFax,workPhone2,workURL,email2,otherPhone,otherURL,notes
  • (Make sure to press enter after the above line and save and close notepad.)
  • Login to Zimbra, and go to Options/Address Book, Click Browse and select the file. Click import.
  • Select the address book to import into or select New to create new address book. Wait until box in bottom left hand corner says import complete.
  • Click Address Book and make sure the contacts imported.

Migrating via REST

If your mail migration strategy doesn't cover contacts and calendar, you can import via the REST interface. Currently, contacts and calendar are only imported with the Exchange migration tool and the PST Import Wizard, so this applies to most IMAP migrations.

Overview

The basic procedure is this:

  1. Export calendar or contact data from your existing server into a csv or ics file
  2. Migrate that data file to a host that can access the zimbra server
  3. Use the REST interface to insert the data into Zimbra

Today, within the Zimbra Collaboration Suite we have a number of different server-side URLs that our client accesses to download an attachment, export contacts as CSV, export a calendar as an ICS, file etc. We are also adding sharing (what would collaboration be without sharing, after all) of calendars, contacts, etc. Not only within a particular Zimbra community, but between Zimbra communities and the public at large.

In order to facilitate this, we are coming up with a clean, consistent URL interface to all our resources. The best way to describe this is with some examples.

Lets say I want access to my calendar folder from within iCal. The URL would look like:

 http://server/zimbra/user/roland/calendar

The default format on calendar folders is ICS, so no need to specify the format.

Lets say I want to export my contacts folder so I can import them into another account:

 http://server/zimbra/user/roland/contacts

Contact folders have a default type of CSV, so like calendars, no need to specify the format.

How about an RSS feed of unread messages in my inbox:

 http://server/zimbra/user/roland/inbox.rss?query=is:unread

By specifying an extension of ".rss" on the inbox folder, the server will automatically generate an RSS feed on it. Adding the "query" parameter lets me further refine what gets returned. You can also specify "?fmt=rss" instead of using the ".rss" extension if you'd like. You can also use the encoding for double quotes, %22 (For example, inbox.rss?query=%22is:unread%22)

Lets do something a little more interesting. How about a zip file containing all messages in my talks/ajax folder:

 http://server/zimbra/user/roland/talks/ajax.zip

The server zips them all up and returns the zip file.

Another interesting example is say you have created a public calendar that you want to share with everyone. Once you have granted access to the calendar, it is up to the consumer to chose what format they want to view it in:

 http://server/zimbra/user/roland/calendar/talks.ics
 http://server/zimbra/user/roland/calendar/talks.html?view=month
 http://server/zimbra/user/roland/calendar/talks.atom
 http://server/zimbra/user/roland/calendar/talks.xml
 http://server/zimbra/user/roland/calendar/talks.txt

How about accessing another user's calendar/folder? Once they grant you access, you can use the same exact syntax:

 http://server/zimbra/user/janie/holidays.ics

One last interesting example to leave you with. Lets say you have a friend at widgets.com who you know is running Zimbra and who has shared their calendar with you, but you don't know the name of their public Zimbra server. As long as they publish some DNS SRV records for _zimbra._tcp.widgets.com, then you can access it directly from your Zimbra without needing to know his server's address:

 http://server/zimbra/user/friend@widgets.com/calendar

This last format (user@domain.com) is also necessary when accessing resources in a non-default domain on your local Zimbra server.

REST file formats

see this reference page: REST File Formats

Importing into Zimbra

We've added the ability to update/create content by POST'ing content to REST urls. GETs continue to remain read only, with no side-effects (as they should be).

For example, you can POST an RFC822 formatted message to your inbox REST url to append messages to the inbox folder. Using the popular curl program, this would look like the following:

 curl -u schemers:password --upload-file /tmp/rfc822.txt https://server/service/home/schemers/inbox

Note, you currently have to use /service/home for POSTs instead of /zimbra/home, because /zimbra/home issues a redirect, which isn't allowed with POSTs. We'll be fixing that in an upcoming release.

Other items that can be updated this way are calendar appointments (ICS), and contacts (csv and the new vcf (vCard) format):

 curl -u username:password --upload-file /tmp/new.csv http://server/service/home/username/contacts?fmt=csv
 curl -u username:password --upload-file /tmp/new.ics http://server/service/home/username/calendar?fmt=ics
 curl -u username:password --upload-file /tmp/new.vcf http://server/service/home/username/contacts?fmt=vcf

The full user name (user@domain.com) is required when importing to resources on a non-default domain on your local Zimbra server.

NOTE - this works for resource accounts as well.

The target "contacts" in the above command corresponds to the actual folder name on the Zimbra server, rather than a service. This means that you can import to user-defined folders by specifying the appropriate target name in the command. If you have created a folder named "SharedContacts", for example, the command to import into this folder would be

 curl -u username:password --upload-file /tmp/new.csv http://server/service/home/username/sharedcontacts?fmt=csv


On earlier versions (such as 5.0.10 and earlier) instead of --upload-file , you should use --data-binary.

For example:

curl --insecure -u admin:password --data-binary @/tmp/test.csv
https://server/service/home/test1@domain.com/contacts?fmt=csv

Alternatively, you can use zmmailbox pru:

zmmailbox -z -m test1@domain.com pru /Contacts /tmp/test.csv

Additional Resources


Verified Against: unknown Date Created: 4/26/2009
Article ID: https://wiki.zimbra.com/index.php?title=Calendar_and_Contacts_Migration Date Modified: 2015-07-11



Try Zimbra

Try Zimbra Collaboration with a 60-day free trial.
Get it now »

Want to get involved?

You can contribute in the Community, Wiki, Code, or development of Zimlets.
Find out more. »

Looking for a Video?

Visit our YouTube channel to get the latest webinars, technology news, product overviews, and so much more.
Go to the YouTube channel »

Jump to: navigation, search