iCalendar и подписки

iCalendar и подписки

TimelyChurch может как публиковать календарь вашей церкви для внешнего мира (чтобы посетители сайта и участники могли подписаться в личном календарном приложении), так и импортировать другие календари (чтобы мероприятия из деноминационного, партнёрского или общественного календаря появлялись внутри TimelyChurch).

В этой статье рассматриваются три тесно связанных, но различных функции:

  1. Встраивание публичного календаря — виджет iframe, который вы размещаете на сайте церкви.
  2. Исходящие ленты iCal — живые URL .ics, на которые могут подписаться Apple Calendar, Google Calendar и Outlook.
  3. Входящие подписки на календарь — получение мероприятий из внешних URL .ics в TimelyChurch по расписанию.

Совет: Для одноразовых экспортов .ics одного мероприятия, одной серии или диапазона дат см. раздел Экспорт и импорт iCalendar. Экспорт там — статический снимок. Подписочные ленты в этой статье остаются живыми и обновляются при изменении мероприятий.

1. Встраивание публичного календаря

Публичный календарь — самодостаточный виджет, который можно встроить на сайт церкви с помощью iframe. Посетители могут просматривать все публичные мероприятия без учётной записи.

URL встраивания

https://your-app-domain.com/c/{churchSlug}/calendar

Параметры запроса

Встраивание принимает следующие необязательные параметры запроса для настройки того, что видят посетители:

Параметр Значения По умолчанию Эффект
types Список через запятую: worship, class, meeting, event worship,class,meeting,event Ограничить отображаемые типы мероприятий.
theme default или любое имя пользовательской темы default Визуальная тема встраивания.
view month, week, list month Начальное представление календаря.
header true / false true Показать или скрыть верхнюю панель.

Пример кода встраивания

<iframe
  src="https://your-app-domain.com/c/grace-community/calendar?types=worship,event&view=month"
  width="100%"
  height="700"
  frameborder="0"
  title="Grace Community Calendar">
</iframe>

Что видят посетители

Встраивание показывает только мероприятия, отмеченные как Публичное и Активно, отфильтрованные по параметру types и диапазону дат, который просматривается в данный момент. Нажатие на мероприятие открывает его публичную страницу деталей.

2. Исходящие ленты iCal (подписка извне)

Календарь вашей церкви доступен как живая лента iCalendar по двум URL:

URL Поведение
https://your-app-domain.com/c/{churchSlug}/calendar.ics Предназначена для подписок на календарь. Остаётся живой и эффективно обновляется в подписанных приложениях.
https://your-app-domain.com/c/{churchSlug}/calendar/download.ics Запускает одноразовую загрузку того же содержимого .ics как файла.

Обе ленты включают мероприятия с месяца назад до года вперёд, только публичные и активные.

Подписка в Apple Calendar (macOS / iOS)

  1. Скопируйте URL подписки вашей церкви: https://your-app-domain.com/c/grace-community/calendar.ics
  2. Mac: откройте Calendar, затем выберите Файл > Новая подписка на календарь.... Вставьте URL и нажмите Подписаться.
  3. iOS: откройте Настройки > Календарь > Учётные записи > Добавить учётную запись > Другое > Добавить подписанный календарь. Вставьте URL и нажмите Далее.
  4. Установите интервал автообновления (Apple рекомендует каждый 1 час или ежедневно).

Подписка в Google Calendar

  1. Откройте Google Calendar в браузере.
  2. В левой боковой панели в разделе Другие календари нажмите значок + и выберите По URL.
  3. Вставьте URL подписки: https://your-app-domain.com/c/grace-community/calendar.ics
  4. Нажмите Добавить календарь.

Примечание: Google Calendar обновляет внешние подписки .ics только раз в несколько часов. Не ожидайте, что изменения в TimelyChurch появятся в Google мгновенно.

Подписка в Microsoft Outlook (настольный или веб)

  1. Outlook в вебе: нажмите Добавить календарь > Подписаться из веба. Вставьте URL подписки и нажмите Импорт.
  2. Настольный Outlook: выберите Добавить календарь > Из интернета, вставьте URL и нажмите ОК.

Фильтрация ленты по типу мероприятия

Добавьте параметр запроса types к любому URL ленты для ограничения:

https://your-app-domain.com/c/grace-community/calendar.ics?types=worship

Значения можно комбинировать через запятую: ?types=worship,class.

3. Входящие подписки на календарь (получение в TimelyChurch)

Вы также можете подписать TimelyChurch на внешнюю ленту календаря. Это полезно, когда:

  • Деноминационный орган публикует общий календарь мероприятий.
  • Партнёрская церковь хочет поделиться своим календарём с вами.
  • Вы хотите, чтобы общественный/гражданский календарь мероприятий отображался рядом с вашим.

Внешние мероприятия импортируются в TimelyChurch и показываются в календаре администратора. Их также можно автоматически публиковать в публичном календаре.

Где управлять подписками

Перейдите к Настройки > Подписки на календарь в области администрирования.

Добавление подписки

Нажмите Добавить подписку и заполните:

Поле Описание
Название Метка для этого календаря (например, «Мероприятия епархии XYZ»).
URL Внешний URL .ics для подписки.
Описание Необязательные заметки о содержании календаря.
Категория Одна из: Внешний календарь, Деноминационный, Общественный, Партнёрская церковь.
Цвет Цвет отображения мероприятий из этого календаря.
Частота синхронизации Как часто получать обновления: Каждый час, Каждые 3/6/12 часов или Ежедневно.
Тип мероприятия по умолчанию Богослужение, Класс, Встреча или Мероприятие (используется, когда импортированные мероприятия не указывают тип).
Автопубликация При включении импортированные мероприятия автоматически появляются в публичном календаре.
Преобразовать часовой пояс При включении часовые пояса исходного календаря преобразуются в часовой пояс вашей церкви.
Исходный часовой пояс Необязательное переопределение часового пояса исходной ленты.

При сохранении TimelyChurch проверяет доступность URL и наличие корректных данных iCalendar, затем выполняет немедленную первую синхронизацию.

Как работает синхронизация

  • У каждой подписки есть интервал синхронизации, определяющий, как часто TimelyChurch повторно получает ленту.
  • Во время синхронизации мероприятия из внешней ленты сопоставляются по UID. Новые создаются, существующие обновляются, исчезнувшие из источника удаляются.
  • Импортированные мероприятия помечены подпиской, поэтому вы всегда можете отличить локальные от внешних.
  • Нажмите Синхронизировать сейчас у любой подписки для принудительного немедленного обновления.

Удаление подписки

При удалении подписки вы выбираете, что произойдёт с импортированными мероприятиями:

  • Сохранить импортированные мероприятия — отвязать мероприятия от подписки, чтобы они стали обычными локальными.
  • Удалить импортированные мероприятия — удалить все мероприятия из этой подписки.

Примечания по безопасности

  • Подписками на календарь могут управлять только пользователи, у которых есть разрешение на функцию «Календарь».
  • URL внешних лент проверяются перед добавлением, поэтому эту функцию нельзя использовать для загрузки произвольных URL.

Выбор правильного инструмента

Цель Используйте
Показать календарь на сайте церкви Встраивание публичного календаря (iframe)
Дать посетителям добавить календарь на телефон Исходящая подписочная лента iCal
Отправить кому-то статический файл .ics одного мероприятия Одноразовый экспорт iCal мероприятия
Показать внешние деноминационные/партнёрские мероприятия внутри TimelyChurch Входящая подписка на календарь

Мы используем файлы cookie для персонализации вашего опыта. Продолжая посещать этот сайт, вы соглашаетесь на использование нами файлов cookie

Ещё