Я реализовал caldav api для управления календарем icloud, и все работает, как ожидалось.
Но теперь я пытаюсь отправить событие с описанием, содержащим html-контент вместо обычного текста. Я провел свое исследование и не смог добиться успеха.
Ниже приведен пример API и скриншот события в календаре icloud.
PUT /home/meeting.ics HTTP/1.1
Host: ...
Content-Length: ...
Content-Type: text/calendar; charset=utf-8
BEGIN:VCALENDAR
BEGIN:VEVENT
UID:test123
SUMMARY:Test Event
DESCRIPTION:Hi User <br/><br/> Text...<br/>Note : </br><br/>Thank you
DTSTART:20180920T080000Z
DTEND:20180920T170000Z
END:VEVENT
END:VCALENDAR
На приведенном выше снимке экрана мы видим, что в разделе заметок отображаются html-теги. Я думаю, это потому, что календарь icloud рассматривает все сообщение как текст. Здесь я ищу решение для выравнивания текста с html.
Любая помощь будет оценена по достоинству. Заранее спасибо.
Спецификация ics RFC5545 не допускает использования HTML в описании события. Это предполагает, что ALTREP может указывать на альтернативное HTML-представление tools.ietf.org/html/rfc5545#section-3.2.1. Что еще более важно, календарные приложения могут не поддерживать его и обрабатывать любой HTML по-разному: удалять его или показывать необработанный HTML. См. Также stackoverflow.com/questions/14956048/… и icalevents.com/4019-ics-feed-generation-with-html.
@anmari, вы должны превратить этот комментарий в ответ, это правильно.
Спецификация ics RFC5545 не допускает использования HTML в описании события. Это предполагает, что ALTREP может указывать на альтернативное представление HTML https://tools.ietf.org/html/rfc5545#section-3.2.1
Что еще более важно, календарные приложения могут не поддерживать его и обрабатывать любой HTML по-разному: удалять его или показывать необработанный HTML.
См. Также Поддерживает ли icalendar HTML и CSS? и https://icalevents.com/4019-ics-feed-generation-with-html/. (комментарий репостен как ответ, предложенный hnh)
Было бы здорово, если бы вы могли предоставить минимальный воспроизводимый пример. Убедитесь, что вы четко знаете, что точно не работает.