Sun ONE logo     前へ     目次     索引     次へ     
Sun ONE Calendar Server プログラマーズガイド



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


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


はじめに

Sun™ ONE Calendar Server のデフォルトのクライアント UI プロトコルは、SHTML であり、これは非公開プロトコルです。 このプロトコルは、いくつかの JavaScript が埋め込まれた HTML (テキスト) データを返します。 text/calendar 形式、およびtext/xml形式のカレンダーデータを検索するには、WCAP コマンドの fmt-out パラメータに text/calendar または text/xmlを設定します。

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

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

  • text/calendar 形式 (iCalendar)

  • text/xml 形式

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

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

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

  • ユーザ設定情報

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

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

  • その他のコマンド


コマンドの概要

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


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

WCAP コマンド

説明

addlink  

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

change_password  

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

createcalendar  

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

deletecalendar  

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

deletecomponents_by_range  

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

deleteevents_by_id  

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

deleteevents_by_range  

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

deletetodos_by_id  

特定の CALID と、UID または繰り返し ID のペアを指定して todo(仕事) を削除する  

deletetodos_by_range  

カレンダーに設定された特定の期間内のtodo(仕事)を削除する  

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 つまたは複数のtodo (仕事)を照会する  

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 形式で指定されたtodo(仕事)を格納する  

upload_file  

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

verifyevents_by_ids  

 

verifytodos_by_ids  

 

version  

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

write_file  

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

セッション ID

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

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

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


コマンドの形式

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

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

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



各パラメータに渡せる文字数には制限があります。 1 つのパラメータにつき、1000 文字に制限されています。



クライアントの要求形式

クライアントは、URI (Universal Resource Identifier) データ形式、または HTML 形式でコマンド要求をSun ONE 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


これは、Sun™ ONE Calendar Server 2.x の WCAP から変更されています。 以前のバージョンでは、セミコロンの quoted-printable に相当する文字は =3B でした。



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

HTML 形式

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

WCAP パラメータの最長は 1000 文字です。



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

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

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

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

サーバの応答形式

Sun ONE 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 オブジェクトが含まれている応答


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

最終更新日 2002 年 8 月 29 日