前へ     目次     索引     DocHome     次へ     
iPlanet Calendar Server 5.1 プログラマーズマニュアル



第 6 章   Web カレンダーアクセスプロトコル (WCAP) の概要


この章では、Web カレンダーアクセスプロトコル (WCAP) について説明します。WCAP は、iPlanet Calendar Server との通信に使用する高度なコマンドベースのプロトコルです。この章は、以下の節で構成されています。



はじめに

iPlanet Calendar Server 5.x で採用しているデフォルトのクライアント UI プロトコルは SHTML で、これは非公開プロトコルです。ただし、互換性を保つために、 WCAP を使用して、iPlanet Calendar Server 2.x クライアント UI プロトコルをサポートすることができます。WCAP を使用しても、text/calendar 形式および text/xml 形式のカレンダーデータを取得できます。

WCAP はコマンドベースのシステムで、カレンダー操作データを転送するクライアントのリクエストとサーバの応答で構成されます。WCAP では、HTTP 経由でカレンダー操作データが返されます。ほとんどの場合、iPlanet Calendar Server では、URL エンコードの引数でデータを受け取ります。

WCAP は、HTTP メッセージで出力を返します。返される HTTP メッセージの本文には、次の形式のカレンダーデータを含むことができます。

  • text/calendar 形式 (iCalendar).

  • text/xml 形式

    この XML 形式は iCalendar DTD に従います。

  • JavaScript オブジェクトが埋め込まれた text/js

    この形式は、iPlanet Calendar Server 2.x ユーザインタフェースのデフォルトでした。.shtml アプローチを採用したため、iPlanet Calendar Server 5.x ではこの形式は廃止されています。

WCAP コマンドは、次の 4 つの全般的なカテゴリで構成されます。

  • ユーザ設定情報

  • Web カレンダー操作データ

  • グループスケジューリングに関するコミュニケーション送信

  • その他のコマンド



コマンドの概要

表 6-1 に、WCAP でサポートしているコマンドの概要を一覧で示します。各コマンドの詳細な説明は、第 7 章「WCAP コマンド」を参照してください。


表 6-1 WCAP コマンドの概要 

WCAP コマンド

説明

addlink  

あるカレンダーから別のカレンダーへイベントリンクを追加する  

change_password  

ユーザのパスワードを変更する  

createcalendar  

新しいカレンダーを作成する  

deletecalendar  

既存のカレンダーを削除する  

deletecomponents_by_range  

カレンダーに設定された特定の期間内のイベントと予定の両方を削除する  

deleteevents_by_id  

特定の CALID と UID または繰り返し ID のペアを指定してイベントを削除する  

deleteevents_by_range  

カレンダーに設定された特定の期間内のイベントを削除する  

deletetodos_by_id  

特定の CALID と UID または繰り返し ID のペアを指定して予定を削除する  

deletetodos_by_range  

カレンダーに設定された特定の期間内の予定を削除する  

export  

カレンダーをファイルにエクスポートする  

fetchcomponents_by_alarmrange  

特定の期間内にアラームが発行されるコンポーネントを照会する  

fetchcomponents_by_attendee_error  

グループのスケジューリングメッセージの送信中に、エラーが発生したコンポーネントを照会する  

fetchcomponents_by_lastmod  

特定の期間内に変更されたコンポーネントを照会する  

fetchcomponents_by_range  

特定の期間内のコンポーネントを、フィルタリング属性で照会する  

fetchevents_by_id  

一意の識別子 (UID、繰り返し ID、修飾子) を使用して、1 つまたは複数のイベントを照会する  

fetchtodos_by_id  

一意の識別子 (UID、繰り返し ID、修飾子) を使用して、1 つまたは複数の予定を照会する  

get_all_timezones  

サーバがサポートしているすべてのタイムゾーンを返す  

get_calprops  

カレンダーのプロパティを返す  

get_freebusy  

カレンダーの予定の空き時間を返す  

get_guids  

ランダム UID のセットを返す  

get_userprefs  

ユーザ設定および一部のサーバ設定を返す  

import  

カレンダーを、ファイルからユーザのカレンダーへインポートする  

login  

ユーザを認証し、最初の HTML ビューへリダイレクトする  

logout  

現在のユーザのセッションを終了し、ログイン画面に戻る  

ping  

Calender Server に ping する。管理者専用  

search_calprops  

指定されたパラメータ値でカレンダーを検索する  

set_calprops  

カレンダーのプロパティを設定する  

set_userprefs  

ユーザの設定を定義する  

storeevents  

application / urlencoded 形式で指定されたイベントを格納する。
イベントを格納する場合は、プロパティを URL で渡す
 

storetodos  

application / urlencoded 形式で指定された予定を格納する  

upload_file  

ファイルをサーバへアップロードする  

version  

サーバがサポートしている WCAP のバージョンを返す  

write_file  

ファイルをデータベースへ書き込む  


セッション ID

多くの WCAP コマンドでは、login コマンドによって返されるセッション ID (id) を指定する必要があります。セッション ID は、必要なレベルの権限または所有権を持つ、認証されたユーザだけがデータにアクセスできるようにします。

システムにログインする際に、ユーザは識別情報によって認証されます。デフォルトの認証メカニズムでは、プレーンテキストのパスワードとユーザ名が使用されます。iPlanet Calendar Server は、認証に成功した場合のみセッション ID を生成します。セッション ID は、以降のカレンダー操作で認証の証明の役割を果たします。

認証メカニズムをカスタマイズして、ローカルまたは外部の認証スキームを使用することができます。第 2 章「CSAPI リファレンス」モの26ページの「csIAccessControl」を参照してください。



コマンドの形式



プラグインアーキテクチャにより、iPlanet Calendar Server は複数のコマンド形式をサポートできます。クライアントとサーバの両方で様々なデータ形式を使用して、様々な ISP のニーズを満たすことができます。

コマンドプロトコルは HTTP を使用し、WC3 URL 仕様で定義されている規格に準拠しています。

iPlanet Calendar Server の WCAP は、XML または iCalendar 形式の JavaScript オブジェクトで構成され、クライアントサイドとサーバサイドの両方で HTTP 上で HTML ドキュメントとして送信されます。クライアントは、Internet Explorer 4.0 以上および Netscape CommunicatorTM 4.05 以上をサポートしています。


クライアントのリクエスト形式

クライアントは、URI (Universal Resource Identifier) データの形式、または HTML 形式によってコマンドリクエストを iPlanet Calendar Server へ送信します。

コマンドの形式

説明

URI

標準 URI 構文を使用してクライアントから送信されるリクエスト

HTML フォーム - urlencoded

ネイティブ JavaScript オブジェクトを使用してクライアントから送信されるリクエスト

HTML フォーム - text/xml

XML 形式の JavaScript オブジェクトを使用してクライアントから送信されるリクエスト

HTML フォーム- text/calendar

iCalendar 形式の JavaScript オブジェクトを使用してクライアントから送信されるリクエスト


URI 形式

次の形式を使用して、URI リクエストを送信します。

http://webcalenderserver/COMMAND?PARAM=VAL&PARAM=VAL...

複数の項目は、セミコロンで区切ります。文字列にセミコロンが含まれている場合、セミコロンは quoted-printable の等価な文字 %3B で置き換えます。たとえば、ID が列挙されている中で文字列「gh;i」を表すには、次の形式を使用します。

http://webcalendarserver/fetchcomponents_by_range.wcap?uid=abc;def; gh%3bi;jkl



これは、iPlanet Calendar Server 2.x の WCAP から変更されています。以前のバージョンでは、セミコロンの quoted-printable の等価な文字は =3B でした。



第 7 章「WCAP コマンド」86ページの「共通のトピック」も参照してください。


HTML フォーム

method=[GET|POST] および action=command の形式でフォームを送信します (command は実行するコマンドを表します)。パラメータは、エンコーディングで指定した形式にする必要があります。


クライアントサイドのイベント通知

応答ページの親フレームでは、クライアントサイド JavaScript コードはすべて、CalcommandCallback() というメソッドを実装する必要があります (command は、要求するコマンドの名前を表します)。このコールバックは、HTML 応答の読み込みが完了すると呼び出されます。

HTTP GET で使用する場合、上記のコマンドはデータの取得に使用されます。

HTTP POST で使用する場合、上記のコマンドはデータの変更 (作成または削除を含む) に使用されます。


サーバの応答形式

iPlanet Calendar Server は、JavaScript オブジェクトを含む HTML を提供して、クライアントのリクエストに応答します。サーバ、ユーザ、または個別のリクエストに対して応答形式を設定することができます。

クライアントは、次の 3 つの形式で出力を要求できます。

応答形式

説明

JavaScript オブジェクトを含む HTML - text/js

HTML に JavaScript オブジェクトが含まれている応答。すべての WCAP コマンドに対するデフォルトの出力形式

JavaScript オブジェクトを含む HTML - text/calendar

HTML に iCalendar 形式の JavaScript オブジェクトが含まれている応答

JavaScript オブジェクトを含む HTML - text/xml

HTML に XML 形式の JavaScript オブジェクトが含まれている応答


前へ     目次     索引     DocHome     次へ     
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.

最終更新日: 2002 年 1 月 30 日