カレンダー:ICSファイルにタイムゾーン情報が不足!

なぜかカレンダーに関する投稿はこちらでするようにとの他の投稿で見たのですが、ディスコースはこの問題とは関係ないと思いますが、投稿は7日で閉じられてしまうので、YOLO!

.ics ファイルの仕様を見てみましたが、どれが必要なのか分かりませんが、これらが不足しています…

  1. X-WR-TIMEZONE
  2. TZID
  3. X-LIC-LOCATION

なので、パックの設定でタイムゾーンを取得し、それに合わせて X-WR-TIMEZONE を追加する必要があると思います… Google からインポートするとローカルタイムゾーンが想定されますが、GoDaddy ではどこで設定できるのか全く見つけられません…以前は機能していたのは、古い ICS カレンダーにタイムゾーン情報が含まれていたからだと思います。

適切なタイムゾーン情報が含まれている例… X-WR-TIMEZONE と X-LIC-LOCATION が設定されており、イベントには DTSTART;TZID=“America/Los_Angeles”:20160206T074400 と DTEND;TZID=“America/Los_Angeles”:20160206T084400 があります。

最低限の修正としては、X-WR-TIMEZONE と X-LIC-LOCATION を追加し、適切な仕様では各イベントに独自の開始と終了のタイムゾーンを持たせることができるはずです…皆さんは飛行機に乗って移動する際に、カレンダーに正しく設定されていればタイムゾーン設定が調整されると思います。

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 19.0 MIMEDIR//EN
VERSION:2.0
X-WR-TIMEZONE:America/Los_Angeles
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
X-LIC-LOCATION:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
SUMMARY:Appointment
LOCATION:Pune
DESCRIPTION:Your appointment Details:\n\nPatient Details:Kou Kul\nKeven\n\nAppointment Type:Counselling (30 min)\n\nThanks.
DTSTART;TZID="America/Los_Angeles":20160206T074400
DTEND;TZID="America/Los_Angeles":20160206T084400
PRIORITY:5
STATUS:CONFIRMED
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

stephen_Hornak
ChristopherCamacho
Matt.Johnson
jacobfetzer

「いいね!」 4

これに関するニュースはありますか?ICSファイルにはまだタイムゾーン情報がありません。そのため、ユーザーがDiscourseからICSファイルをカレンダーにインポートすると、時刻が正しく表示されません。

生成される ics ファイルは iCalendar 仕様に従います。具体的には、Time については、UTC タイムスタンプ (ソースコード 1, ソースコード 2) を Z でサフィックスを付けて生成しており、これは以下に準拠しています。

FORM #2: UTC TIME

      UTC time, or absolute time, is identified by a LATIN CAPITAL
      LETTER Z suffix character, the UTC designator, appended to the
      time value.  For example, the following represents 07:00 AM UTC:

       070000Z

      The "TZID" property parameter MUST NOT be applied to TIME
      properties whose time values are specified in UTC.

その他のプロパティである X-WR-TIMEZONE および X-LIC-LOCATION は、この仕様の一部ではありません。

OP の元のトピックに続いて、関連トピック で他の人が指摘しているように、この問題は godaddy のカレンダービューに固有のものであることがわかりました。おそらく、ical ファイルをインポートする際に、アダプターで処理する方法に問題があるのでしょう。他のカレンダーでもこの問題に気づきましたか?

「いいね!」 1

タイムゾーン識別子 TZID は、その仕様の一部です RFC 5545 - Internet Calendaring and Scheduling Core Object Specification (iCalendar)

はい、その部分は理解しています。同じ仕様にも次のように記載されています。

「TZID」プロパティパラメータは、DATEプロパティ、および時刻値がUTCで指定されているDATE-TIMEまたはTIMEプロパティには適用してはなりません。

私たちのタイムスタンプはUTCで指定されているため、TZIDプロパティを適用してはなりません。