Ошибка iCal STANDARD или DAYLIGHT, если она уже определена - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть файл iCal, который я проверяю здесь

https://icalendar.org/validator.html?url=https: // www.youreontime.com/calendar/syncstaff/d72e6edb-90da-4cc7-86c0-16fee6f3ad2e

Выдает ошибку По крайней мере одно свойство STANDARD или DAYLIGHT должно быть определено здесь рядом со строкой # 4

Здесь находится файл, в верхней части которого есть раздел часового пояса.

BEGIN:VCALENDAR
PRODID:-//github.com/rianjs/ical.net//NONSGML ical.net 4.0//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Australia/Sydney
X-LIC-LOCATION:Australia/Sydney
END:VTIMEZONE
BEGIN:VEVENT
ATTENDEE;CN=Adriane Bews;ROLE=REQ-PARTICIPANT:MAILTO:demo@youreontime.com
DESCRIPTION:Walter Jones (Ph 12456788)  Dry off. Staff Adriane Bews
DTEND;TZID=Australia/Sydney:20200215T133500
DTSTAMP:20200215T105625Z
DTSTART;TZID=Australia/Sydney:20200215T132000
SEQUENCE:0
STATUS:TENTATIVE
SUMMARY:Walter Jones Dry off
UID:yot-10025135
END:VEVENT
END:VCALENDAR

1 Ответ

1 голос
/ 17 февраля 2020

Крейг, Эван указал вам правильное направление.

В сообщении говорится, что «по крайней мере, ОДИН СТАНДАРТ ИЛИ НЕДВИЖИМОСТЬ» должен быть определен, ЕСЛИ кто-то определяет VTIMEZONE. VTIMEZONE - это полное определение часового пояса для периода ваших событий - ie если есть переход на летнее время, то необходимо определить, когда происходит переход, как в примере

  BEGIN:VTIMEZONE
  TZID:US-Eastern
  LAST-MODIFIED:19870101T000000Z
  BEGIN:STANDARD
  DTSTART:19971026T020000
  RDATE:19971026T020000
  TZOFFSETFROM:-0400
  TZOFFSETTO:-0500
  TZNAME:EST
  END:STANDARD
  BEGIN:DAYLIGHT
  DTSTART:19971026T020000
  RDATE:19970406T020000
  TZOFFSETFROM:-0500
  TZOFFSETTO:-0400
  TZNAME:EDT
  END:DAYLIGHT
  END:VTIMEZONE

Лично я думаю, было бы замечательно, если бы можно было предположить, что как собственная система, так и принимающая система имели самые последние определения часовых поясов базы данных Олсона и, таким образом, что любые повторяющиеся события заканчиваются тем же днем ​​и временем. Однако я предположил, что нет никакой гарантии, что VTIMEZONE позволяет определять изменения летнего времени и c, которые использует система.

Многие системы могут принимать файлы ics без VTIMEZONES, НО они должны быть там и правильно определены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...