Как создать файл ics

Обновлено: 21.11.2024

Приглашения в календаре — одна из наиболее часто используемых функций, особенно сейчас, когда мы все проводим удаленные встречи и проводим их много. Эти события календаря обычно представляют собой файлы событий календаря ICS, прикрепленные к вашей электронной почте, и ваш поставщик услуг электронной почты знает, как их интерпретировать и добавлять в ваш календарь. Кроме того, вам никогда не придется создавать их, потому что ваш почтовый клиент позаботится об этом за вас.

Знаете ли вы, что с помощью Power Automate можно быстро создать и отправить приглашение, если вам нужно отправить кому-то приглашение? Это довольно просто, поэтому позвольте мне показать вам, как это сделать.

6 августа 2021 г. – основная переработка статьи с добавлением новых компонентов и дополнительной информации.
24 августа 2020 г. Большое спасибо Робу из сообщества Power Automate за то, что он обнаружил большую ошибку в этой статье.

Структура

Событие календаря ICS представляет собой текстовый файл с определенной структурой. Как только вы это узнаете, его легко построить, и, к счастью, весь процесс довольно прост. Вот пример:

Это говорит само за себя, но давайте пройдемся по пунктам и проверим структуру каждого из вышеперечисленных. Если вы хотите углубиться, я рекомендую более подробно изучить статью в Википедии, но давайте не будем усложнять.

PRODID может быть статическим, но его необходимо определить. В моем случае я определил свой веб-сайт, но вы можете указать любую строку, которая имеет для вас смысл.

Приложение начинает читать файл и знает, что это файл календаря (VCALENDAR) с версией 2 (V2.0) структуры, и он имеет четное значение (VEVENT). Так что считайте это началом определения события.

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

Отметка времени создания события календаря. Оно должно совпадать не с началом или концом события, а с моментом создания файла ICS.

У некоторых мероприятий есть URL-адреса таких вещей, как конференц-залы, веб-сайты и т. д. Здесь вы можете указать URL-адрес, на который должен указывать ваш календарь. Вы также можете добавить это в описание.

В «DTSTART» указана дата начала события. Обратите внимание, что формат даты должен быть в формате ISO 8601 (броское название, верно. 😀) выше. YYYYMMDDThhmmssZ, поэтому я пример:

  • ГГГГ — полный 2020 год.
  • ММ – 12-й месяц, всегда два символа.
  • ДД. День 24. Всегда два персонажа.
  • T сигнализирует о том, что время придет позже
  • чч — час в 24-часовом формате, всегда с двумя символами.
  • mm – минуты, всегда содержащие два символа.
  • ss — секунды, всегда содержащие два символа
  • Z — указывает, что это UTC (смещение 0 часов)

То же, что и выше, но для даты окончания мероприятия.

Обычно сводка представляет собой название мероприятия в записи календаря.

Это поле представляет собой описание или основную часть записи календаря. Обратите внимание, что вам не нужно использовать двойные кавычки или кавычки в этом поле. Вы можете свободно добавлять текст, но помните о возврате каретки. Это означает, что он не будет переводиться в новую строку в описании, если вы нажмете ввод в тексте. Поэтому вы должны включить вместо n, если хотите это сделать.

Место события в текстовом формате. Некоторые приложения могут преобразовывать это в адреса и другие вещи, но основой всегда является текстовая запись.

Когда приложение читает эту часть, оно знает, что читает конец файла.

Как это сделать в Power Automate

Увидев структуру, вы поймете, насколько просто будет сгенерировать файл. Для этого вам нужно только создать текстовую запись с этим, сохранить файл с расширением .ics и отправить его. Вот полный Power Automate, а затем мы можем двигаться шаг за шагом.

Триггер позволяет получить всю необходимую информацию:

Вы можете легко видеть, что это те поля, которые нам нужны для нашего примера файла выше.

Теперь сформируем файл ICS:

Очень просто, правда? Единственное предостережение в том, что мы должны быть осторожны, чтобы преобразовать дату в формат:

Легко также. Мы получаем дату из триггера и определяем нужный нам формат ISO.

Теперь создадим событие календаря ICS:

Каталог не важен. Мы удалим файл позже. Имя также не имеет решающего значения, но именно его увидит пользователь, что делает его удобным для пользователя.

Получить содержимое файла:

Мы делаем это, потому что выше у нас нет файла, а есть только текстовая строка. Итак, чтобы отправить файл, прикрепленный к электронному письму, нам нужно его создать, и это то, что здесь происходит. Затем вы можете получить его, используя идентификатор из предыдущего шага.

Мы можем отправить электронное письмо следующим образом:

И, наконец, давайте удалим файл:

Заключительные мысли

Как видите, создавать такие приглашения несложно и выгодно динамически.У меня есть область шаблонов, где я публикую материал, который вы можете импортировать и использовать, не собирая все вместе, если вы не знаете. Так что взгляните и дайте мне знать, если есть что-то, что вы хотели бы видеть там.

Отказ от ответственности. На создание этой статьи меня вдохновил вопрос, на который я ответил в сообществе Microsoft Power Automate.

Есть собственное предложение или вы не согласны с моими словами? Оставляйте комментарии или общайтесь в Twitter и обязательно ознакомьтесь с другими статьями, связанными с Microsoft Power Automate, здесь.

Чтобы преобразовать файл CSV в файл ICS, откройте инструмент преобразования CSV в ICS, выберите файл CSV для преобразования, а затем выберите имя создаваемого файла ICS. Файл ICS не нужно сохранять в ту же папку. Он может быть создан в другой папке на локальном диске, в сетевой папке, на облачном диске и т. д.

Как создать файл ICS в Календаре Google?

  1. Создайте новый временный календарь с помощью знака + в списке календарей.
  2. Перейдите к своему мероприятию и скопируйте/дублируйте его во временный календарь.
  3. Экспорт календаря в файл ics.
  4. Удалить мероприятие из временного календаря.
  5. При необходимости повторите шаги 2–4.

Как создать ссылку на Календарь Google, добавить в файл ICS календаря и отправить по ЛЮБОЙ электронной почте

Найдено 32 похожих вопроса

Как просмотреть файл ICS?

Файл ICS – это формат файла для iCalendar.
.
Как правило, вы можете использовать следующие программы для открытия файлов ICS:

  1. Microsoft Outlook.
  2. Mozilla Thunderbird.
  3. Календарь Apple.
  4. Календарь Google.
  5. Конвертер файлов ICS.

Как связать ICS с Календарем Google?

  1. На компьютере откройте Календарь Google.
  2. В правом верхнем углу нажмите "Настройки". .
  3. На левой панели в разделе "Настройки моих календарей" нажмите на название календаря, который хотите использовать.
  4. Нажмите "Интегрировать календарь".
  5. В разделе "Секретный адрес в формате iCal" скопируйте ссылку.

Как преобразовать ICS в PDF?

  1. Скачайте предложенную выше программу и запустите ее на любом компьютере с Windows.
  2. Выберите формат сохранения PDF и выберите параметр «Имя файла».
  3. Затем нажмите кнопку "Преобразовать", чтобы начать преобразование.

Можно ли конвертировать CSV в iCal?

Многие приложения календаря, включая Microsoft Outlook, форматируют экспортированные события календаря в CSV-документ. Формат ICS или iCal — это универсальный формат календаря, используемый Apple iCal, Google Calendar и Mozilla Sunbird. Вы можете преобразовать файл CSV в формат iCal с помощью программы преобразования CSV в iCal.

Что такое формат файла CSV?

Файл CSV (значения, разделенные запятыми) – это простой текстовый файл, в котором информация разделена запятыми. Файлы CSV чаще всего встречаются в электронных таблицах и базах данных. Вы можете использовать файл CSV для перемещения данных между программами, которые обычно не могут обмениваться данными.

Как выглядит файл ICS?

Формат файла iCalendar

Файл iCalendar состоит из разделов, начинающихся с "BEGIN:" и заканчивающихся "END:". «VCALENDAR» — это глобальный раздел, содержащий все остальные разделы. Другие разделы включают "VEVENT" для событий, "VTODO" для элементов списка дел, "VJOURNAL" для записей журнала и "VTIMEZONE" для информации о часовом поясе.

Может ли Календарь Google открыть ICS?

​После экспорта мероприятий их можно импортировать в Календарь Google. Вы можете импортировать файлы ICS и CSV на компьютер. Откройте Календарь Google.

Что означает файл ICS?

Файл ICS (Internet Calendar Scheduling) – это файл календаря, сохраненный в универсальном формате календаря, используемом несколькими программами электронной почты и календаря, включая Microsoft Outlook, Google Calendar, Notes и Apple Calendar. Это позволяет пользователям публиковать информацию календаря и делиться ею в Интернете и по электронной почте.

Как распечатать файл ICS?

  1. Нажмите кнопку "Добавить календарь" на шаге "Источники данных календаря" и выберите параметр "Локальный" -> "Файл iCalendar".
  2. Выберите нужный файл iCalendar и нажмите кнопку «Открыть». Обратите внимание, что расположение файла — это место, где PrintableCal будет искать данные каждый раз при создании календаря.

Как открыть файл ICS в Windows 10?

На панели навигации выберите Импорт календаря. В разделе Импорт календаря выберите Из файла. В разделе «Импорт из файла» выберите «Обзор», выберите файл . ics, а затем выберите Открыть.

Как преобразовать ICS в iCal?

  1. Запустите iCal, затем нажмите меню «Файл» и выберите «Импорт», чтобы открыть диалоговое окно «Импорт».
  2. Нажмите кнопку "Импортировать файл iCal".
  3. Нажмите «Импорт», чтобы открыть диалоговое окно просмотра файлов, затем перейдите к файлу ICS и выберите его, чтобы открыть диалоговое окно «Добавить события».

Как отформатировать CSV-файл в Календаре Google?

  1. Откройте предпочитаемую программу для работы с электронными таблицами.
  2. Введите предпочтительные заголовки. .
  3. Добавьте данные о мероприятии. .
  4. Сохраните готовый файл в формате CSV (с разделителями-запятыми).
  5. Перейти в Календарь Google.
  6. Нажмите стрелку вниз рядом с пунктом Другие календари. .
  7. Найдите и выберите недавно созданный CSV-файл.

Как импортировать CSV-файл в календарь Apple?

  1. В приложении «Календарь» на Mac при необходимости создайте новый календарь для событий.
  2. Выберите «Файл» > «Импорт».
  3. Выберите файл с событиями и нажмите «Импорт».
  4. Выберите календарь, в который нужно добавить события.

Как открыть файл ICS без Outlook?

Чтобы открыть файл ICS, вы можете использовать приложение календаря по вашему выбору или, если у вас его нет, вы можете открыть файл ICS в текстовом редакторе и просмотреть информацию внутри. Поскольку информация в формате файла iCalendar хранится в виде обычного текста, можно интерпретировать информацию внутри файла ICS без специального программного обеспечения.

Как открыть файл ICS на Android?

  1. Сохраните файл vCalendar на устройстве Android. .
  2. Загрузите приложение ICS Importer из Google Play. .
  3. Откройте приложение ICS Importer.
  4. Нажмите кнопку "Выбрать календарь". .
  5. Нажмите кнопку "Открыть файл". .
  6. Нажмите на файл, который хотите импортировать.
  7. Нажмите кнопку "Добавить в календарь", которая заменяет кнопку "Открыть файл" после выбора файла.

Как бесплатно преобразовать PDF в CSV?

  1. Запустите Acrobat и откройте файл PDF.
  2. Выберите инструмент «Экспорт PDF» в строке меню справа.
  3. Выберите формат файла Excel в раскрывающемся меню «Преобразовать в».
  4. Нажмите кнопку "Преобразовать".
  5. Назовите файл Excel и нажмите Сохранить.

Что такое URL-адрес ICS?

URL фида

ics или iCal). Этот URL-адрес фида содержит данные о событиях (такие как время, даты, местоположение, заголовок, описание и часовой пояс) в стандартном формате. Также каждое событие имеет уникальный идентификатор или «UID». . Если он был импортирован ранее, он обновляет фид.

Как добавить ICS-файл в мой Календарь Google для iPhone?

  1. Нажмите «Настройки» → «Почта, контакты, календарь».
  2. Нажмите «Добавить аккаунт».
  3. Нажмите "Другое".
  4. Нажмите «Добавить календарь с подпиской» (в нижней части экрана).
  5. Введите адрес сервера для календаря на экране подписки.
  6. Нажмите «Далее». .
  7. Календарь отображается в списке календарей в приложении "Календарь".

Что такое ссылка ICS?

Файл ICS – это файл календаря, сохраненный в универсальном формате календаря, который используется несколькими программами электронной почты и календаря, включая Microsoft Outlook, Календарь Google и Календарь Apple. . Файлы ICS чаще всего используются для отправки приглашений на собрания другим пользователям, которые могут импортировать сведения о собрании в свои календари.

Тим Фишер имеет более чем 30-летний опыт работы в сфере технологий. Он пишет о технологиях более двух десятилетий и является вице-президентом и генеральным директором Lifewire.

Что нужно знать

  • Файл ICS – это файл iCalendar.
  • Откройте один с помощью Outlook, Календаря Google и других приложений электронной почты и календарей.
  • Преобразуйте один файл в CSV с помощью Indigoblue.eu или в другие форматы с помощью специализированных конвертеров.

В этой статье описывается, что такое файлы ICS и для чего они используются, как открыть файл на различных устройствах и как преобразовать файл в более удобный формат, чтобы его можно было открыть в такой программе, как Excel.< /p>

Что такое файл ICS?

Файл ICS — это файл iCalendar. Это простые текстовые файлы, содержащие сведения о событиях календаря, такие как описание, время начала и окончания, местонахождение и т. д. Формат ICS обычно используется для отправки приглашений на встречи, а также является популярным средством подписки на календари праздников или дней рождения.

Хотя ICS намного популярнее, файлы iCalendar вместо этого могут использовать расширение ICAL или ICALENDER. Файлы iCalendar, содержащие только информацию о доступности (свободен или занят), сохраняются с расширением IFB или IFBF на компьютерах Mac.

Файлы ICS, которые не являются файлами iCalendar, могут быть либо файлами чертежей IronCAD 3D, либо звуковыми файлами IC Recorder, созданными диктофоном Sony IC.

ICS также является аббревиатурой нескольких технологических терминов, которые не имеют ничего общего с файлами календаря, таких как "Общий доступ к подключению к Интернету", "Сервер захвата изображений" и "Компьютерное общество IEEE".

Как открыть файл ICS

Файлы календаря ICS можно использовать в почтовых клиентах, таких как Microsoft Outlook, Windows Live Mail и IBM Notes (ранее известный как IBM Lotus Notes), а также в самых популярных программах календаря, таких как Календарь Google для веб-браузеров, Календарь Apple (ранее под названием Apple iCal) для мобильных устройств iOS и компьютеров Mac, Yahoo! Calendar, Mozilla Thunderbird Lightning Calendar и VueMinder.

В качестве примера предположим, что вы хотите подписаться на календарь праздников, подобный тем, которые можно найти в Calendar Labs. При открытии одного из этих файлов ICS в такой программе, как Microsoft Outlook, все события будут импортированы в виде нового календаря, который затем можно будет наложить на другие события из других календарей, которые вы используете.

Однако использование локального календаря, подобного этому, полезно для таких событий, как праздники, которые не меняются в течение всего года, вместо этого вы можете поделиться календарем с кем-то еще, чтобы изменения, которые кто-либо вносит, затем отражались в других календари людей, например, при организации встреч или приглашении людей на мероприятия.

Для этого вы можете хранить свой календарь в Интернете с помощью чего-то вроде Календаря Google, чтобы им было легко делиться с другими, а также легко редактировать, где бы вы ни находились. Вы можете импортировать файл ICS в Календарь Google, что позволит вам поделиться своим календарем с помощью уникального URL-адреса и редактировать файл .ICS с новыми событиями.

Обычный текстовый редактор, такой как Блокнот, также может открывать файлы ICS (см. другие в нашем списке лучших бесплатных текстовых редакторов). Однако, несмотря на то, что вся информация не повреждена и доступна для просмотра, то, на что вы будете смотреть, представлено в формате, который не является самым простым для чтения или редактирования. Для открытия и редактирования файлов ICS лучше всего использовать одну из перечисленных выше программ.

Файлы ICS, являющиеся файлами 3D-чертежей IronCAD, можно открывать с помощью IronCAD.

Файлы ICS, являющиеся звуковыми файлами IC Recorder, можно открыть с помощью Sony Digital Voice Player и Digital Voice Editor. Проигрыватель Windows Media также может работать, если установлен подключаемый модуль Sony Player.

Если вы обнаружите, что приложение на вашем ПК пытается открыть файл ICS, но это неправильное приложение, или если вы предпочитаете, чтобы другая установленная программа открывала файлы ICS, см. раздел Как изменить программу по умолчанию для определенного расширения файла для помогите внести это изменение в Windows.

Как преобразовать файл ICS

Вы можете преобразовать файл календаря ICS в CSV для использования в программе для работы с электронными таблицами с помощью бесплатного онлайн-конвертера от Indigoblue.eu. Вы также можете экспортировать или сохранить файл календаря ICS в другом формате с помощью одного из почтовых клиентов или программ календаря, указанных выше.

IronCAD, безусловно, может экспортировать файл ICS в другой формат САПР с помощью пункта меню «Файл» > «Сохранить как» или «Экспорт».

То же самое относится и к звуковым файлам IC Recorder. Поскольку они содержат аудиоданные, было бы неудивительно, если бы упомянутые выше программы Sony могли преобразовать файл ICS в более распространенный аудиоформат.

Все еще не можете открыть файл?

Самая распространенная причина, по которой файл ICS не открывается даже после выполнения всех вышеперечисленных рекомендаций, заключается в том, что этот файл на самом деле не является файлом календаря. Это может произойти, если вы неправильно прочитали расширение файла.

Например, файлы ISC можно легко спутать с файлами ICS, хотя на самом деле они являются файлами конфигурации устройств Xilinx. Файлы ISC нельзя открыть в программе календаря или онлайн-службе календаря, вместо этого они используются с пакетом Xilinx ISE Design Suite.

Еще один суффикс, который может навести вас на мысль, что у вас есть файл ICS, – это LCC, который используется для файлов коррекции слепоты объектива Capture One. Эти файлы открываются с помощью Capture One from Phase One.

Чтобы импортировать файл ICS в Календарь Google, откройте Календарь и выберите "Настройки" (значок шестеренки), затем нажмите "Импорт и экспорт". Нажмите «Выбрать файл на своем компьютере», а затем перейдите к файлу ICS и выберите его. Выберите календарь, в который вы хотите импортировать файл ICS, затем нажмите «Импорт».

Чтобы создать файл ICS в Outlook для Windows, создайте элемент календаря, затем выберите «Файл» > «Сохранить как» > «Формат iCalendar» (*.ics). Создайте новое сообщение и прикрепите файл для совместного использования. Чтобы создать файл ICS в Outlook на Mac, создайте событие и выберите «Сохранить и закрыть», а затем перетащите событие в заголовок сообщения новой электронной почты; файл календаря появится как вложение ICS. Чтобы создать файл ICS в Календаре Google, откройте Календарь Google на рабочем столе и выберите «Настройки» (значок шестеренки) «Импорт и экспорт» > «Экспорт». На ваш компьютер будет загружен ZIP-файл, содержащий файлы ICS для всех ваших календарей. Чтобы создать файл ICS с помощью Календаря на Mac, создайте событие, а затем перетащите его на рабочий стол. Это автоматически создаст файл ICS.

Откройте приложение «Почта» на iPhone, затем коснитесь сообщения электронной почты с вложенным файлом ICS. Коснитесь файла ICS, затем выберите «Добавить все» и выберите календарь, в который вы хотите добавить события календаря файла ICS. Откройте Календарь на своем iPhone, чтобы получить доступ к новым событиям.

Это описание содержит удобный скрипт для создания файлов iCalendar (.ics) на лету в PHP.

Кнопка, которая загружает файл ICS при нажатии

Этот пример содержит форму во внешнем интерфейсе, которая отправляет скрипт PHP, который инициирует загрузку файла ICS. В этом примере используются скрытые поля формы для динамического задания свойств.

index.html

скачать-ics.php

Этот файл содержит двунаправленный текст Unicode, который может быть интерпретирован или скомпилирован не так, как показано ниже. Для просмотра откройте файл в редакторе, который показывает скрытые символы Unicode. Подробнее о двунаправленных символах Юникода

< td ><* < tr> < td >* dtstart < td >* location < /tr> < tr> < td >foreach ($ props as $k => $v)
/**
* Это бесплатное и бесплатное программное обеспечение, выпущенное в общественное достояние.
* Любой может свободно копировать, изменять, публиковать, использовать, компилировать, продавать или
<* распространять это программное обеспечение либо в виде исходного кода, либо в виде скомпилированного
* бинарного файла для любых целей, коммерческих или некоммерческих, и любым
* означает.
*
* В юрисдикциях, признающих законы об авторском праве, автор или авторы
<* этого программного обеспечения передают любые и все авторские права на программное обеспечение
>* в общественное достояние. Мы совершаем это посвящение на благо
* общества в целом и в ущерб нашим наследникам и
<* преемники. Мы предполагаем, что это посвящение будет явным актом
* отказа на неопределенный срок от всех настоящих и будущих прав на это
* программное обеспечение защищено законом об авторском праве.
<*
* ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ ,
* ЯВНЫЕ ИЛИ ПОДРАЗУМЕВАЕМЫЕ, ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ГАРАНТИИ
* КОММЕРЧЕСКАЯ ПРИГОДНОСТЬ, ПРИГОДНОСТЬ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ И НЕНАРУШЕНИЕ ПРАВ.
* АВТОРЫ НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УЩЕРБ ИЛИ
<* ИНУЮ ОТВЕТСТВЕННОСТЬ, БУДУТ ДОГОВОРОМ, ПРАВОМ ИЛИ ИНЫМ ОБРАЗОМ,
* ВОЗНИКАЮЩИМ ИЗ, ИЗ ИЛИ В СВЯЗИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ИЛИ
* ДРУГИЕ ОПЕРАЦИИ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ.
*
* Для получения дополнительной информации см. < /td>
*
* ICS.php
* === ================= ================================================== =======
* Используйте этот класс для создания файла .ics.
<*
<*
* Использование
<* ------- -------------------------------------------------- --------------------
* Основное использование — создание содержимого файла ics (доступные свойства см. ниже):
* $ics = new ICS($props);
* $ics_file_contents = $ics->to_string() ;
<*
* Установка свойств после создания экземпляра
<* $ics = new ICS();
* $ics->set('summary', 'Мое потрясающее событие');
* Вы также можете установить несколько свойств одновременно, используя массив:
* $ics->set(array(
* 'dtstart' => 'сейчас + 30 минут',
* 'dtend' => 'сейчас + 1 час'
<* ));
<*
* Доступные свойства
* ----------- -------------------------------------------------- ----------------
* описание
* Строковое описание событие.
* dtend
* Отметка даты/времени, обозначающая конец события. Вы можете использовать либо объект
* DateTime, либо строку формата даты и времени PHP (например, «сейчас + 1 час»).
* Отметка даты/времени, обозначающая начало события. Вы можете использовать либо объект
* DateTime, либо строку формата даты и времени PHP (например, «сейчас + 1 час»).
* Строковый адрес или описание места проведения мероприятия.
<* summary
* Строковое краткое описание события — обычно используется в качестве заголовка.
* url
> URL-адрес для прикрепления к событию. Обязательно добавьте протокол (http://
> или https://).
*/
класс ICS
const DT_FORMAT = 'Ymd\THis\ Z' ;
защищенные $ properties = array ();
private $ available_properties = array (
'описание',
'dtend',
'dtstart',< /td>
'местоположение',
'резюме',
' url'
);
public function __construct ( $ props )
$ this -> set ($ props);
>
набор открытых функций ($ key, $ val = false)
if ( is_array ( $ key ))
foreach ( $ key as $ k => $ v )
$ this -> set ( $ k , $ v );
>
> else
if (in_array ($key, $this -> available_properties))
$this -> properties [$key] = $this->sanitize_val($val, $key) ;
>
>
>
public function to_string()
$ rows = $this -> build_props();
return implode( "\r\n", $ rows );
>
частная функция build_props()
// Сборка Свойства ICS — добавить заголовок
$ ics_props = array (
'BEGIN:VCALENDAR',
'VERSION:2.0',
'PRODID:-//hacksw/handcal//NONSGML v1.0//EN',
'CALSCALE:GREGORIAN' ,
'BEGIN:VEVENT'
);
// Строим свойства ICS - добавляем заголовок
$ props = array();
foreach ($this -> properties as $k => $v)
$ props [strtoupper ($k. ( $ k === 'url' ? ';VALUE=URI' : '' ))] = $ v ;
>
// Установить некоторые значения по умолчанию
$ props ['DTSTAMP'] = $ this -> format_timestamp ('now');
$ props [ 'UID' ] = uniqid ();
// Добавляем свойства
$ ics_props [] = "$k:$v" ;
>
// Создание свойств ICS — добавление нижнего колонтитула
$ ics_props [] = 'END:VEVENT' ;< /td>
$ ics_props [] = 'END:VCALENDAR' ;
return $ ics_props ;
>
закрытая функция sanitize_val ($val, $key = false)
switch ($key)
case 'dtend' :
case 'dtstamp' :
case 'dtstart' :
$ val = $ this -> format_timestamp ( $ val );
break ;
по умолчанию:
$ val = $ this -> escape_string ( $ val );
>
return $ val ;
>
закрытая функция format_timestamp ( $ timestamp )
$ dt = new DateTime ( $ timestamp );
return $ dt -> format ( self :: DT_FORMAT );
>
закрытая функция escape_string ( $ str )
return preg_replace ( '/([\,;])/' , '\ \\$1' , $str );
>
>

walesmd прокомментировал 20 июня 2019 г. •

@jakebellacera Не могли бы вы обновить этот Gist с помощью соответствующей лицензии, отражающей ваше намерение делиться (возможно, MIT или GPL)? Отсутствие лицензии по своей сути дает вам полные авторские права без каких-либо подразумеваемых прав других на использование этого кода.

Если вы не хотите, чтобы другие пользователи не могли этим воспользоваться, это также будет полезной информацией.

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

Чтобы убедиться, что гости действительно приходят, может быть полезно включить ссылку "Добавить в календарь" в электронные письма о мероприятиях. При этом подписчики могут добавлять события в свои календари, что упрощает предотвращение конфликтов календарей и позволяет им устанавливать собственные напоминания.

Традиционно это делается с помощью файла ICS, также известного как iCalendar. Это распространенный формат календаря, который обычно использует расширение файла .ics и широко используется в большинстве календарей. Не путать с iCal от Apple, который имеет похожее имя, хотя файлы iCalendar там тоже работают. Для ясности мы будем называть его ICS или файлом календаря в этом сообщении блога.

Некоторые календари также могут добавлять события с помощью веб-ссылок, которые мы будем называть ссылками календаря.Потратив дополнительное время на динамическое отображение ссылки «Добавить в календарь», которая соответствует конкретному почтовому клиенту каждого подписчика, вы можете сделать ваше мероприятие более доступным для них. Другими словами, вашим подписчикам будет проще и быстрее добавить ваше мероприятие в свой календарь.

Мы покажем вам, какие календари вам нужны, создадим файлы и ссылки календаря, а затем вставим эти файлы и ссылки в электронное письмо о мероприятии, чтобы подписчикам было удобнее работать.

Шаг 1. Выберите календари для таргетинга

Существует бесчисленное множество различных приложений календаря: те, которые доступны по умолчанию через операционную систему вашего компьютера, как часть вашей веб-почты или другое приложение календаря, которое вы загрузили. Практически невозможно поддерживать все существующие приложения календаря.

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

Все календари могут использовать файл ICS для добавления в него новых событий. Но для этого требуется, чтобы люди сначала скачали файл ICS, а затем загрузили его в свой календарь.

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

Читайте также: