Google Calendar の予定表を表示する - ぐぐるかる

Posted by
ぴろり
Posted at
2006/05/23 16:45
Trackbacks
関連記事 (2)
Comments
コメント (1)
Post Comment
コメントできます
Category
ソフトウェア カテゴリ

 "ぐぐるかる"は、Google Calendar で作成した予定表を、あなたの Web サイトに自由にデザイン・カスタマイズして表示するための仕組みです。週間予定表や個別予定表などのように複数のテンプレートを用意して、 予定表を様々なフォーマットでプレゼンテーションできます。ただ表示するだけでなく、それらをハイパーリンクでブラウズできるような、簡単なインタラクション機能も提供しています。

ぐぐるかる beta - Google Calendar Proxy

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  

動作の概要

 Google Calendar によって生成されたAtom フィードを取得するためのプロキシ(CGI)と、それを非同期的に呼び出す Ajax エンジンの組み合わせで動作します。

ぐぐるかる動作概念図

ダウンロード

 ぐぐるかるの配布アーカイブをダウンロードできます。

ぐぐるかる  new

ver.0.10, '06/05/23, 0 bytes
  • 初版公開

導入方法

  1. 配布アーカイブをダウンロードします
  2. アーカイブに含まれているファイルをサーバにアップロードします
  3. 必要な CPAN モジュールをインストールします
    1. CGI
    2. LWP
    3. XML::Simple
    4. XML::LibXML
    5. XML::LibXSLT
    6. Digest::MD5

    さくらインターネットのレンタルサーバであれば、全て標準でインストールされています。

  4. gglcal-proxy.cgi に CGI の実行権限を与えます
  5. ./cache/00000000.xml を開き、初期画面に表示するフィード URI に変更してください
    <?xml version='1.0' encoding='UTF-8'?>
    <feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:gd='http://schemas.google.com/g/2005'>
      <id>http://www.google.com/calendar/feeds/crmnpdstjm500ftblr7o055mg4@group.calendar.google.com/public/basic</id>
    </feed>
    
  6. 必要に応じて gglcal-proxy.cgi の動作設定を修正してください (後述)
  7. 必要に応じて XSL スタイルシートを修正してください

gglcal-proxy.cgi の動作設定

 gglcal-proxy.cgi のソースコードの該当箇所を修正することで、CGI 動作をカスタマイズできます。

HASH_KEY_LENGTH
 URL ハッシュ値の長さを指定します。最大値は 32 です。
 gglcal-proxy.cgi では、フィード URL をそのまま扱わず、そのハッシュ値を扱います。このパラメータを大きくすることでハッシュ値の衝突確率が減ることを期待できますが、それでも重要なパラメータとは言えません。例えば、HASH_KEY_LENGTH に 8 を指定して 1000 件のフィードを扱った場合、ハッシュ値の衝突確率は高々 0.00003% です。
DIR_FEED
 Google Calendar から取得したフィードを保存するキャッシュディレクトリへのパスを指定します。
DIR_XSLT
 フィードを整形するための XSL スタイルシートが保存されたディレクトリへのパスを指定します。
CACHE_EXPIRE
 DIR_XSLT にキャッシュされたフィードの有効期間を秒単位で指定します。 この値を短くすることで、Google Calendar への変更が即座に反映されるようになりますが、その分、頻繁にネットワーク接続を行うことになります。

GET じゃなくて HEAD で更新を確認しろって? …ごもっとも!

LWP_TIMEOUT
 Google Calendar から最新のフィードを取得するために HTTP 通信を行いますが、この時の通信タイムアウト時間を設定します。
DEFAULT_MODE
 mode 指定がされなかった場合、標準で適用するスタイルシート名です。
HASH_MAGICWORD
 URL ハッシュ値を生成する時に使用します。好きな文字列に変えてみてください。
XMLNS_GGLCAL_FUNC
 特に変更する必要はありません。ぐぐるかるが独自定義した XPath 関数の名前空間を定義します。
LWP_USER_AGENT
 特に変更する必要はありません。gglcal-proxy.cgi が Google Calendar にフィードを取得する際に通知するユーザエージェント名です。

XSL スタイルシートの書き方

 この項目は執筆中です。

トラブルシューティング

 この項目は執筆中です。

ライセンス、他

この記事を Delicious に追加する   このエントリーをはてなブックマークに追加  



関連記事/トラックバック (全 2 件中、最新 5 件まで表示しています)

Open MagicVox.net のスクリーンショット
タイトル
『ぐぐるかる』で作る俺ポータル
Trackbacked at
2006/05/29 01:17
from
Open MagicVox.net
概要
 自分が必要とする情報に素早くアクセスできるよう、 Web サイトを『俺ポータルサイト』として使うために、 ぐぐるかるができることのメモ。 イントラネットで運用...

Open MagicVox.net のスクリーンショット
タイトル
『ぐぐるかる』をプチRSSリーダーとして使うhack
Trackbacked at
2006/05/24 14:14
from
Open MagicVox.net
概要
ぐぐるかるは、 Google Calendar の予定表を表示するだけでなく、 簡易な RSS リーダーのように使うことが可能です。 また、RSS フィードに限...

この記事にトラックバックを送るには?

寄せられたコメント (全 1 件中、最新 5 件まで表示しています)

Posted by
yukotanyukotan
at
2006/05/24 22:57
ID
9090rzLI
最初「ぐぐかる」って見えました。
呼びやすいので「ぐぐかる」っていう名前もいかがでしょうか?

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。