Модул 5 · 5.2
Експортиране на календар и контакти от Google и Microsoft
Модул 5: Календар и контакти · Време за четене: 12 минути
Цел на урока: След този урок ще можете да направите пълен и използваем експорт на календари и контакти от Google и Microsoft, да прочетете ICS и vCard файл и ще знаете какво не се пренася или се пренася по различен начин при експортиране.
Основни понятия: iCalendar (ICS), VCALENDAR, VEVENT, UID, DTSTART, RRULE, EXDATE, VTIMEZONE и TZID, ORGANIZER и ATTENDEE, VALARM, vCard (VCF) 3.0 и 4.0, csv, Google Takeout, инструмент за миграция
Два файлови формата, които почти всеки познава
Календари и контакти се прехвърлят с два отворени формата:
- iCalendar, файлове с разширение
.ics(RFC 5545), за календари и задачи. - vCard, файлове с разширение
.vcf, за контакти. Има две версии, които ще срещнете: 3.0 (RFC 2426) и 4.0 (RFC 6350).
Това са обикновени текстови файлове. Можете да ги отворите в текстов редактор и точно това ще направите в този урок. Който знае какво има вътре, вижда и какво липсва.
Често има по-лесен път от експортирането: много нови услуги разполагат с инструмент за миграция, който с Ваше съгласие изтегля директно от Google или Microsoft Вашите календари и контакти. Това става по-бързо и с по-малко грешки. Все пак собственият Ви експорт е разумен: като проверка (колко срещи и контакти имах?), като резервно копие преди да прекратите старата услуга, и като изход, ако инструментът за миграция не е разрешен от Вашия администратор.
Така изглежда файл с календар
Експортът на календара на Bakkerij De Korrel започва така:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Google Inc//Google Calendar 70.9054//EN
BEGIN:VTIMEZONE
TZID:Europe/Amsterdam
...
END:VTIMEZONE
BEGIN:VEVENT
UID:3f1a9c2e7b@google.com
DTSTART;TZID=Europe/Amsterdam:20261110T060000
DTEND;TZID=Europe/Amsterdam:20261110T070000
RRULE:FREQ=WEEKLY;BYDAY=TU
EXDATE;TZID=Europe/Amsterdam:20261229T060000
SUMMARY:Levering meel
ORGANIZER:mailto:anne@example.com
ATTENDEE;CN=Groothandel:mailto:verkoop@example.net
BEGIN:VALARM
TRIGGER:-PT30M
ACTION:DISPLAY
END:VALARM
END:VEVENT
END:VCALENDARКакво виждате:
| Ред | Значение | Къде може да възникне грешка |
|---|---|---|
BEGIN:VCALENDAR и VERSION:2.0 | това е iCalendar файл | ако липсва, импортът се отхвърля |
BEGIN:VEVENT ... END:VEVENT | една среща | липсващ END прави останалото нечетимо |
UID | постоянният идентификатор на срещата | без UID сървърът не може да разпознае дубликати |
DTSTART;TZID=... | начален час в часова зона | вижте часовите зони по-долу |
RRULE | правило за повторение: всеки вторник | невалидно правило дава една среща вместо серия |
EXDATE | изключение: точно този вторник не | |
ORGANIZER, ATTENDEE | кой е поканил и кой е поканен | вижте поканите по-долу |
VALARM | напомняне, 30 минути предварително | не всяка услуга пренася напомнянията |
Часови зони
Час с TZID=Europe/Amsterdam означава: 6 часа сутринта в Амстердам, дори след преминаването към лятно часово време. Затова файлът трябва да съдържа и блок VTIMEZONE, който описва тази часова зона. Експортите от Outlook често използват имена на Windows като W. Europe Standard Time. Това работи добре, докато блокът VTIMEZONE е включен. Ако липсва, новата услуга прави предположение и ще видите срещи, изместени с час. Час, завършващ на Z (20261110T050000Z), е в UTC и винаги е еднозначен. Час без часова зона и без Z се нарича "плаващ" час: той важи в часовата зона на този, който го разглежда.
Целодневните срещи се записват като дата без час: DTSTART;VALUE=DATE:20261224.
Покани
Среща, която Вие сте организирали, е записана с Вас като ORGANIZER във файла. След импортирането тя е във Вашия нов календар, но участниците все още я виждат в своя собствен календар като покана от стария Ви адрес, с UID от старата услуга. Ако по-късно промените срещата, те получават нова покана. При повтарящи се срещи с външни лица може да е по-чисто да ги поканите отново след преминаването. Срещи, за които Вие сте поканени, се пренасят като обикновена среща; отговорите до организатора се изпращат по имейл.
Експортиране от Google
- Календар: в Google Calendar, в Настройки, раздел Импортиране и експортиране, бутон Експортиране. Получавате zip файл с ics файл за всеки календар, на който сте собственик. Календари, които други споделят с Вас, не се включват; тях ги експортира собственикът, или ги експортирате поотделно от настройките на съответния календар, ако е разрешено.
- Контакти: в Google Contacts избирате контактите (или всички), избирате Export и след това формат vCard. Google предлага също "Google CSV" и "Outlook CSV"; изберете vCard, защото запазва структурата (няколко телефонни номера, адреси, снимка).
- Всичко наведнъж: Google Takeout (takeout.google.com) предоставя календара като ics, контактите като vcf (или csv) и Gmail като mbox, в zip файлове. Удобно като резервно копие на целия акаунт.
Имената на менютата се променят от време на време; при съмнение потърсете в помощта на Google "export calendar" (експортиране на календар).
Експортиране от Microsoft
- Календар: в класическия Outlook за Windows можете да запишете календар като iCalendar файл (Save As / Запиши като, с избор на период и "пълни подробности"). Изберете период, който обхваща достатъчно назад и напред във времето, и изберете пълни подробности, иначе ще експортирате само свободен/зает статус. В Outlook в уеб можете да публикувате календар като ICS връзка и да изтеглите файла чрез тази връзка; след това изключете публикуването отново.
- Контакти: Outlook в уеб експортира контактите като csv, не като vCard. Класическият Outlook също експортира в csv за много контакти едновременно; vCard е възможно само за отделен контакт. Много CardDAV услуги не могат да импортират csv файл директно. Два изхода: да използвате инструмента за миграция на новата услуга (който изтегля контактите директно), или да импортирате csv в адресна книга на Thunderbird и да го експортирате оттам като vCard.
- Споделени календари и календари на зали са календари на организацията. Тях ги експортира администраторът, или ги настройвате отново в новата услуга.
Какво не се пренася или се пренася по различен начин при експортиране
| Елемент | Какво се случва |
|---|---|
| Прикачени файлове към срещи | обикновено не се пренасят; само връзка или нищо |
| Цветове и категории | понякога като CATEGORIES, често не |
| Напомняния | понякога, в зависимост от услугата |
| Връзки за видеоконференции (Teams, Meet) | остават като текст в срещата, но не работят повече след прекратяването на услугата |
| Групи или етикети на контакти | не винаги; проверете след импортирането |
| Снимки на контакти | пренасят се във vCard, но правят файла голям |
Преброяване преди да продължите
Преди експорта запишете колко контакта имате и, за няколко календара, колко срещи има в определен период (например ноември). След импортирането преброявате отново. Това е най-бързият начин да видите, че нещо липсва. В задачата на този урок ще оставите програмата да преброи и провери Вашите файлове.
На практика: така изглежда при доставчик
В Nextcloud на WebOké има два инструмента за миграция, които изтеглят директно: WebOké Import Tool за Google (Drive, Снимки, Календар и Контакти) и Data Migration за OneDrive и Microsoft 365, с който импортирате и контакти и календари от Вашия акаунт на Microsoft. Ако календарът Ви идва от другаде, импортирате ics и vCard файловете сами (урок 5.3). Nextcloud чете vCard 3.0 и 4.0. При други европейски услуги съществуват подобни инструменти за импортиране или бутон за импортиране в календара и адресната книга; файловите формати са еднакви навсякъде.
Обобщение
- Календарите се прехвърлят като ics (iCalendar), контактите като vcf (vCard 3.0 или 4.0); това са четими текстови файлове.
- Инструмент за миграция, който изтегля директно, често е по-лесен, но все пак направете собствен експорт като проверка и резервно копие.
- В ics файл обърнете внимание на UID, RRULE и часовите зони с блок VTIMEZONE; без него срещите се изместват.
- Outlook в уеб експортира контактите само като csv; използвайте инструмент за миграция или преобразувайте csv файла във vCard.
- Пребройте предварително контактите и срещите, за да можете след импортирането да видите дали нещо липсва.
Тест
Задача
Задача A5.2: Проверка на тестов износ. Експортирайте календар (ics) и Вашите контакти (vcf). Първо попълнете колко контакта имате и колко срещи очаквате. След това качете файловете. Програмата проверява дали са валидни, брои срещи, повторения и контакти, търси часови зони без описание и дублирани контакти, и сравнява с посочените от Вас числа. Файловете само се прочитат и не се съхраняват.
Задача E5.2: Какво не се пренася? Отворете Вашия ics файл в текстов редактор. Намерете повтаряща се среща, среща с участници и среща с връзка за видеоконференция. Отбележете за всяка среща какво трябва да направите след преминаването.
Задача E5.2: Какво не се пренася?
Отворете собствения си ics файл в текстов редактор.
Вашите отметки и бележки остават само в този браузър; не ги изпращаме никъде. Ако сте влезли, в Моите курсове запазваме само че сте изпълнили задачата.
За допълнително четене
Стъпките в тези статии важат за услугите на WebOké; при други доставчици работи по подобен начин.
- Nextcloud наръчник 13.5: Прехвърляне на календар и контакти от Google, iCloud или Outlook (ics и vCard)
- Nextcloud наръчник 13.2: Прехвърляне на Google Drive, Снимки, Календар и Контакти с WebOké Import Tool
- Nextcloud наръчник 13.4: Прехвърляне на OneDrive с Миграция на данни
- Nextcloud наръчник 13.6: От Microsoft 365 към WebOké: файлове, документи, поща и календар
- RFC 5545 (iCalendar), RFC 2426 (vCard 3.0), RFC 6350 (vCard 4.0)
- Помощ на Google Calendar: Export events; Помощ на Google Contacts: Export contacts; Поддръжка на Microsoft: Export contacts from Outlook
