LoginSignup
16
17

More than 5 years have passed since last update.

iCalendarに登録するファイルを作成し、自動的にスケジュール登録する

Last updated at Posted at 2015-02-27

カレンダー機能を有効活用する

スクリーンショット 0027-02-27 15.29.44.png

Appleイベントなどに出てくる便利なカレンダー登録機能。

自分が近々出演するライブイベントにいれて簡単にカレンダー登録できるようにしたいなと思い、少し調べてみた。

icsファイルを生成することによって、達成できる

これは、icsファイルというのを読み込んで作っているらしい。試しに作ってみた。

BEGIN:VCALENDAR
CALSCALE:GREGORIAN
VERSION:2.0
X-WR-CALNAME:Apple Special Event
METHOD:PUBLISH
PRODID:-//Apple Inc.//Mac OS X 10.9.5//EN
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
DTSTART:20070311T020000
TZNAME:PDT
TZOFFSETTO:-0700
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
DTSTART:20071104T020000
TZNAME:PST
TZOFFSETTO:-0800
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20140905T011216Z
UID:8E8A007C-046D-48ED-9F29-29E716E98666
URL;VALUE=URI:http://www.apple.com/live/
DTEND;TZID=America/Los_Angeles:20150309T120000
TRANSP:OPAQUE
SUMMARY:Apple Special Event
DTSTART;TZID=America/Los_Angeles:20150309T100000
DTSTAMP:20140930T231427Z
LOCATION:www.apple.com/live/
SEQUENCE:10
DESCRIPTION:We reserved the best seat in the house for you.
BEGIN:VALARM
X-WR-ALARMUID:4E556E46-E3D5-4ED1-89E3-5A1D3242C3C0
UID:4E556E46-E3D5-4ED1-89E3-5A1D3242C3C0
TRIGGER;VALUE=DATE-TIME:19760401T005545Z
ACTION:NONE
END:VALARM
BEGIN:VALARM
X-WR-ALARMUID:6E8DE064-1239-40FA-B4A0-16CBE051E68E
UID:6E8DE064-1239-40FA-B4A0-16CBE051E68E
TRIGGER:PT0S
ATTACH;VALUE=URI:Basso
ACTION:AUDIO
END:VALARM
END:VEVENT
END:VCALENDAR

ざっくりとみてみると、

  • DTSTART;TZID 開始時刻
  • DTEND;TZID 終了時刻
  • SUMMARY カレンダータイトル
  • URL サイトURL
  • DESCRIPTION 内容
  • LOCATION 場所

となっているようだ。

実装してみる

今回はこちらのサイトを利用させてもらい、作りました。実際に読み込んでみると、

スクリーンショット 0027-02-27 15.45.50.png

このように表示されました。

サイトに埋め込むのも簡単で、単純にHTMLで下記のように書けばよい。

<a href="event/the_live.ics">
  カレンダーに登録する
</a>

リンクをクリックした時に、自動的にカレンダーに登録される。便利!

スクリーンショット 0027-02-27 15.24.44.png

皆様もイベントの告知などにお役立てください。イベントを動的に作るようなサイトなどあれば、同じくicsファイルを動的に生成して、カレンダーに登録するという機能を作れればそれだけで(少し)利便性が増すと思います。

例となるものをサイトに埋め込んでありますので、もしよろしければご参考程度に触ってみてください。
ライブもお待ちしております笑

よろしければおためしください。

16
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
17