Як синхронізувати календар ICloud?


10

Я хочу мати доступ до наявних у моєму обліковому записі ICloud календарів без використання веб-браузера та, можливо, в автономному режимі.

Як я можу синхронізувати свої календарі з ICloud з деяким клієнтом календаря в Ubuntu?

Відповіді:


12

Відповідь на OP дуже корисно , але не вистачає деяких ключових елементів. Зокрема, як визначити повну URL-адресу калдаву, замінивши XXXXвище.

Подяка за мою відповідь пов’язана з цією публікацією в блозі (зауважте: я використовую Thunderbird / Lightning як мій клієнт caldav, але це не має значення).

Формат URL-адреси календаря iCloud такий:

https://pXX-caldav.icloud.com/<DSid>/calendars/<pGUID>

Щоб визначити відповідні параметри, спочатку увійдіть у свій обліковий запис icloud.com, а потім запустіть консоль налагодження Firefox ( F12). Етапи зображені на скріншотах нижче, на яких відображається консоль налагодження веб-сторінки під сторінкою календаря iCloud. За допомогою вибраної вкладки "Мережа" -step (1) - генеруйте деякий трафік на бажаних календарях (наприклад: створіть фіктивну зустріч). Шукайте відповідні POST(або GET) взаємодії.

  • DSidПараметр яке - то числовий ідентифікатор користувача , так що буде однаковою для кількох календарів / списків завдань , що належать одній і тій же обліковим записом. Перейдіть до пункту "Параметри" (2) та (3) - щоб розкрити його. Визначення 'dsid'
  • Він pGUIDзмінюється від календаря до календаря (він може бути просто "Головна" або "Завдання", якщо у вас не встановлено кілька календарів / списків завдань). На нього можна зазирнути з тих самих взаємодій, але за допомогою вкладки "Відповідь" - кроки (4) та (5) - Можливо, вам доведеться трохи розгорнутись у структурах JSON, щоб виявити її. Визначення "pGUID"

Це все добре і добре. Однак це все перестало працювати зовсім недавно, і коментарі внизу вищезгаданого повідомлення в блозі вдячно вказували на джерело проблеми: з червня 2017 року Apple мігрує облікові записи iCloud для застосування паролів додатків як дуже розумного заходу безпеки. Це означає, що більше не можна просто використовувати основний пароль iCloud для автентифікації під час синхронізації календарів.

Після того, як відбудеться міграція з вашим обліковим записом iCloud (ви помітите, що синхронізація календаря не вдається), необхідно виконати наступні кроки:

  1. Увімкніть двофакторну автентифікацію у своєму акаунті iCloud
  2. Створіть пароль для програми та використовуйте його у своєму клієнті caldav
  3. Цілком ймовірно, що ваш сервер caldav змінився в рамках міграції (мій пішов з p03 до p40), тому URL-адреси потребують коригування.

Цей новинний текст (німецькою мовою, за потреби використовуйте Google translate) містить довідкову інформацію про конкретні паролі додатків.

BTW: Я не думаю, що календарі не повинні ділитися для того, щоб отримати доступ до них таким чином.


8

Ось оновлення 2018 року. Якщо ви хочете використовувати свій календар iCloud у календарі Gnome, вам все одно потрібно встановити Evolution. Після додавання календаря ви можете видалити Evolution.

  • Перейдіть на icloud.com і тимчасово діліться календарем, щоб отримати URL-адресу сервера і десь запишіть його (наприклад, https://p12-caldav.icloud.com ). Тепер відключіть спільний доступ до календаря. Якщо цього не зробити, кожен може переглянути цей спільний календар!
  • Увійдіть до свого облікового запису Apple і створіть для програми Evolution пароль для доступу до календарів.
  • У Evolution створіть новий календар, виберіть CalDAV та введіть URL-адресу сервера. Не вводьте повну URL-адресу календаря, лише доменну частину (наприклад, https://p12-caldav.icloud.com ).
  • Для користувача введіть свій AppleId-Email та натисніть знайти календарі. Тепер вам буде запропоновано створений раніше пароль (збережіть його) і ви зможете вибрати стільки календарів, скільки хочете синхронізувати.

4

Для синхронізації ваших календарів ICloud вам потрібен клієнт-календар, який підтримує CalDAV , наприклад, Evolution , який я покажу, оскільки він автоматично відображає той самий вміст у календарі за замовчуванням Ubuntu.

1. Завантажте клієнт електронної пошти / календаря Evolution:

Встановіть його з Software Center:

Еволюція в Центрі програмного забезпечення

або бігати sudo apt install evolution.

2. Відкрийте icloud.com у веб-браузері та перейдіть до своїх календарів. Клацніть на круговій піктограмі бездротового зв'язку праворуч від назви календаря, який ви хочете використовувати.

Значок частки ICloud

Календар, який ви хочете використовувати, повинен бути спільним (темна піктограма). Якщо це не так, вам буде запропонований варіант.

3. Після того, як календар поділився, відмітьте ім'я сервера відразу після webcal://(приклад p02-www.icloud.com:)

4. Відкрита еволюція:

  • Файл> Новий ...> Календар

Налаштуйте його як:

Тип :CalDAV

Увімкнути доступCopy calendar contents locally... до нього в режимі офлайн.

URL : Якщо сервер був p02-www.icloud.com/abc/123, ви б замінити wwwз caldavі ввести p02-caldav.icloud.com/abc/123. І завжди має бути схожим http://pXX..., а не такимhttp://webcal://pXX...

Користувач :YOUR-APPLE-ID@icloud.com

введіть тут опис зображення

5. Клацніть на Знайти календарі , введіть свій пароль ICloud та виберіть той календар, який ви хочете синхронізувати.

6. Якщо ви хочете синхронізувати більше одного календаря, просто повторіть крок 3 заздалегідь.


Тепер ваші календарі ICloud з’являться у календарі, і ви отримаєте попередній перегляд на покажчику календаря верхньої панелі

введіть тут опис зображення


Для аутентифікації на кроці 4 вам потрібно увійти в appleid.apple.com та створити специфічний пароль програми для кожного календаря, до якого ви хочете отримати доступ. ("Користувач" не повинен бути адресою електронної пошти icloud.)
Джон Мі

2

Обов’язково, щоб він працював Ви також повинні зайти за адресою нижче, потім на вкладку Безпека , паролі для програм . Введіть Е поле в поле, потім скопіюйте згенерований код і вставте його в еволюцію в запитуваний пароль .

https://appleid.apple.com

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.