iCal MEMO

CGIからの生成メモ

最終更新:

匿名ユーザー

- view
メンバー限定 登録/ログイン
WebDAV非対応のサーバでもCGIからカレンダー購読ができたので、その辺のメモ。
LWP HTTP::Liteなどで他サーバーのHTMLを読み込み、
加工したものを購読、ということも可能です。

UTF-8で以下の(1)〜(4)を順にprintする


1)Content-type宣言

 Content-type: text/calendar

2)カレンダーのヘッダー

  • BEGIN:VCALENDARだけあれば動く

 BEGIN:VCALENDAR
 VERSION:2.0
 X-WR-CALNAME:カレンダーのタイトル
 PRODID:カレンダーを生成したアプリケーション名 適当でOK
 X-WR-TIMEZONE:Asia/Tokyo
 CALSCALE:GREGORIAN
 METHOD:PUBLISH

3)カレンダーの内容

  • 一度に複数件登録する場合は、ここのコラムを繰り返す
 ただし、Outlook2000では複数件の登録に対応してないとの情報も有り。
  • URLやイベントの詳細は無くても動く
  • 日時の表記:2006年2月23日17時25分30秒=20060223T172530

 BEGIN:VEVENT
 DTSTART;TZID=Asia/Tokyo:20060223T000000 →開始日時
 DTEND;TZID=Asia/Tokyo:20060223T000001 →終了日時
 SUMMARY:イベント名
 DESCRIPTION:イベントの詳細
 URL;VALUE=URI:関連のURL
 END:VEVENT

4)カレンダーのフッター

 END:VCALENDAR

以上。項目の詳細、その他の項目に付いては
野村 真人の Web ページ:iCalendar仕様が参考になる。

メモ

  • 書き出すイベントがない場合でも、少なくともヘッダーとフッターが必要。なにもprintされないと照会中のままになってしまう。
  • URLのhttp:をwebcal:に換えてブラウザからアクセス、またはiCalから照会することでwebcalで購読。
  • 拡張子は.cgiでも構わないようです。(Safari2.0.3、iCal2.0.3)



目安箱バナー