Skip to main content

Календарь в Apple Calendar, Outlook и CalDAV

Актуально для: SimpleTwo 0.9.x · Проверено: 07.09.2026

Календарь платформы читается не только нашим приложением: подписанный Outlook обновляет подписку по своему расписанию, CalDAV-клиент опрашивает сервер сам. Именно поэтому служба календаря стоит рядом с чатом, а не внутри него, и именно поэтому у неё публичное имя.

Три способа подключить сторонний клиент, от простого к полному:

СпособЧто даётНаправлениеКому
ICS-подпискакалендарь виден в любом клиенте, понимающем webcal://только чтениеApple Calendar, Outlook, Google Calendar, экран в переговорной
CalDAVучётная запись календаря целиком: список календарей, события, свободно/заняточтение (запись — по мере готовности, см. ниже)Apple Calendar на macOS/iOS, Thunderbird, любой CalDAV-клиент
CardDAVкорпоративный каталог как адресная книгатолько чтениете же клиенты, отдельная настройка

1. ICS-подписка — самый короткий путь

Подписка выдаётся на конкретный календарь и содержит секрет в самой ссылке. Секрет показывается один раз: ротация выдаёт новую ссылку и обесценивает прежнюю.

Получить ссылку:

curl -fsS -X POST "https://cal.s2.<домен>/v1/calendars/<id>/subscriptions" \
-H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' \
-d '{"label":"Мой ноутбук"}'

В ответе две ссылки на один и тот же ресурс:

{
"calendar_id": "cal-…",
"url": "https://cal.s2.<домен>/v1/calendars/cal-…/subscribe.ics?key=…",
"webcal_url": "webcal://cal.s2.<домен>/v1/calendars/cal-…/subscribe.ics?key=…",
"note": "shown once — rotating replaces it"
}

Разница между ними практическая: https:// клиент скачает как файл, а webcal:// воспримет как подписку и будет обновлять. Apple Calendar и Outlook ждут именно второй.

Ссылка — это и есть доступ

В ней нет пароля и нет вашей сессии: кто получил ссылку, тот видит календарь. Поэтому выдавайте по одной на устройство с понятной меткой — так отзыв не ломает остальные, — и не кладите её в общий чат. Отозвать: DELETE /v1/credentials/{id}.

Apple Calendar (macOS). Файл → Новая подписка на календарь → вставить webcal://… → частота обновления 15 минут. Оповещения от подписки лучше выключить: они дублируют напоминания, которые уже приходят пушем в SimpleTwo Connect.

Apple Calendar (iOS). Настройки → Приложения → Календарь → Учётные записи → Добавить → Другое → Подписной календарь → вставить ссылку.

Outlook (новый и веб). Календарь → Добавить календарь → Подписаться из интернета → вставить https://…-вариант.

Экран в переговорной. У календаря-ресурса та же выдача возвращает ещё и адрес панели (now_url): панель на стене — не подписчик, она спрашивает «что здесь сейчас». Один секрет открывает и подписку, и панель.

2. CalDAV — учётная запись, а не один календарь

CalDAV даёт клиенту всё сразу: список календарей, события, свободно/занято. Обнаружение работает штатно, поэтому в клиенте достаточно ввести имя сервера и учётные данные.

ЧтоЗначение
Серверcal.s2.<домен>
Адрес обнаруженияhttps://cal.s2.<домен>/.well-known/caldav
Кореньhttps://cal.s2.<домен>/dav/
Пользовательрабочий адрес, тот же, с которым вы входите в SimpleTwo
Парольпароль приложения из POST /v1/credentials (сессионный токен здесь не подходит)

Apple Calendar (macOS). Настройки → Учётные записи → добавить CalDAV → тип «Вручную» → имя пользователя, пароль приложения, сервер cal.s2.<домен>.

Статус: чтение. Обнаружение, PROPFIND, GET и отчёты (в том числе calendar-query и sync-collection) работают; запись со стороны CalDAV-клиента включается по мере готовности — до этого созданное в сторонней программе событие в платформу не уедет. Проверить, что включено в вашей установке, можно в консоли: карточка календаря показывает состояние CalDAV для тенанта.

Почему CalDAV, а не «просто наше приложение»

Потому что у половины сотрудников календарь уже открыт в другой программе, и просить их смотреть расписание в двух местах — верный способ получить расписание, которое никто не ведёт. Сервер отдаёт то же, что видит наш клиент, с теми же правами.

3. CardDAV — каталог как адресная книга

Корпоративный каталог отдаётся по CardDAV, поэтому в телефоне у сотрудника коллеги находятся штатным поиском по контактам, включая набор номера.

ЧтоЗначение
Адрес обнаруженияhttps://s2.<домен>/.well-known/carddav
Пользовательрабочий адрес
Парольпароль приложения (там же, где для CalDAV)

Каталог доступен только на чтение — это копия того, чем управляет ваш AD/LDAP, и исправлять запись сотрудника надо там, где она заведена.

Что делать, когда не работает

СимптомПричина
Клиент скачал один файл и больше не обновляетвзяли https://-ссылку вместо webcal://
Подписка пустаяу ссылки уровень доступа, при котором календарь виден без содержимого, либо в календаре действительно нет записей в окне подписки
CalDAV не логинится с рабочим паролемпароль домена здесь не подходит: нужен пароль приложения из POST /v1/credentials
Событие, созданное в Apple Calendar, не появилось в SimpleTwoзапись со стороны CalDAV в этой установке ещё не включена — см. §2
Ссылка перестала работать после ротациитак и задумано: ротация обесценивает прежний секрет, выдайте новую подписку
Клиент не находит сервер по именине отвечает /.well-known/caldav: проверьте, что имя cal.s2.<домен> заведено в DNS и у службы есть сертификат