本発明のサーバ及びその制御方法、並びにプログラムの実施の形態について、図面を参照しながら説明する。なお、本実施の形態に記載されている構成要素の相対配置や表示画面等は、特に特定的な記載がない限り、本発明の範囲をそれらのみに限定する趣旨のものではない。
<情報提供システムの構成>
図1は、本発明の実施の一形態に係る情報提供システムの構成を示すブロック図である。
フォトサイトは、オーナユーザ用PC102Aからの画像データをアップロードしたり、オーナユーザ用PC102Aと通信してアップロード画像データに編集を施して電子カードを作成したり、オーナユーザ用PC102Aから指定された閲覧者用PC102Bに対して電子カードを公開したりするサービスをインターネット104経由で提供する。 フォトサイトのWebサーバ105と、オーナユーザ用PC102A、閲覧者用PC102Bとは、インターネット104を介して接続されている。Webサーバ105は、フォトシェアリングモジュール106、画像データベース117、及び情報データベース118を備えて構成されている。画像データベース117には、オーナユーザ用PC102Aからアップロードされた画像データが保管されている。
フォトシェアリングモジュール106は、Webサーバのプロセッサによって実行されるプログラムモジュールであり、以下で説明する、オーナユーザPCからの画像データのアップロードに関わる処理、オーナユーザPCと通信して画像データに基づく電子カードの作成に関わる処理、閲覧者用PC102Bへの電子カードの公開通知に関わる処理、閲覧者用PC102Bへの電子カードの公開に関わる処理、閲覧者用PC102Bと通信して電子カードへの編集に関わる処理や、閲覧者用PC102Bによって編集された電子カードのオーナユーザPC102Aへの通知に関わる処理などのフォトシェアリング機能を実現するために実行される。
情報データベース118は、オーナユーザPC102Aからアップロードされた画像データの属性情報、オーナユーザの名称、電子メールアドレス等のオーナユーザの属性情報、電子カードの作成に使用された画像データを特定するための情報や電子カードに施された編集内容を示す編集データ等の属性情報、閲覧者の名称や電子メールアドレス等の閲覧者の属性情報等の各種データが一元管理されている。
なお、オーナユーザ用PC102Aや閲覧者用PC102Bは、インターネット104上に少なくとも一台以上存在し、インターネット104にモバイルネットを介して接続された携帯端末となることもあり得る。
また、オーナユーザ用PC102A及び閲覧者用PC102Bは、インターネット104での情報転送が可能なhttpプロトコル等の標準プロトコルを有するWebブラウザを備えている。オーナユーザ用PC102Aには、データ転送用インターフェース116を介して画像入力機器101が接続されている。
画像入力機器101は、静止画を撮影して画像データとして記録できるデジタルスチルカメラ、或いは動画を撮影して動画像データとして記録できるデジタルビデオカメラなどであり、イメージ情報である光学像を電気信号に変換し、所定の画像処理をした後、デジタル情報として記録/再生する装置である。データ転送用インターフェース116は、画像入力装置101とオーナユーザ用PC102Aとの間で、撮影された画像データを転送するためのデータ転送用インターフェースであり、USBやIEEE1394に代表される有線インターフェースの場合や、IrDAやBluetooth(登録商標)に代表される無線系インターフェースの場合もある。
<画像データの公開>
次に、オーナユーザがインターネット104上のフォトサイトのWebサーバ105を利用して画像データを所望の閲覧者に公開する手法について、図2を参照して説明する。ここでは、特に、オーナユーザPC102AからWebサーバ105へアップロードしたままの画像データを閲覧者用PC102Bへ公開する場合について説明する。
図2は、本実施の形態に係る情報提供システムにおける画像データの公開処理を示すシーケンス図である。この画像データの公開処理は、フォトサイトのWebサーバ105では、そのCPUがフォトシェアリングモジュール106を実行することによって実現され、また、オーナユーザ用PC102A及び閲覧者用PC102BではそれぞれのCPUがOSを実行し、Webブラウザを起動することによって実現される。
I.オーナユーザ用PC102Aでの画像データの取得(図2のT11)
画像入力装置101で撮影されたデジタル画像データは、データ転送用インターフェース116を介して、オーナ用PC102Aの情報記憶装置(HDD等)の記憶領域に転送される(図2のT11)。この画像入力装置101からオーナユーザ用PC102Aへの画像データ転送に関しては、オーナユーザ用PC102AにインストールされているOS又は専用のソフトウェアからの命令で、画像入力装置101内にある情報記憶装置に格納されている画像データを一括転送する場合と、画像入力装置101から送られた転送コマンドでオーナユーザ用PC102AのOS又は専用ソフトウェアがオーナユーザ用PC102Aの情報記録部にデータ記録領域を確保し、画像データを転送する場合とがある。
II.オーナユーザPC102AからフォトサイトのWebサーバ105への画像データのアップロード(図2のT12〜T16)
このようにして、オーナユーザ用PC102Aが取得した画像データは、以下の手順によって、インターネット104に接続されているフォトサイトのWebサーバ105にアップロードされる。
まず、オーナユーザ用PC102A上で動作するWebブラウザは、httpプロトコル等の標準プロトコルを用いてフォトサイトのWebサーバ105にアクセスし(図2のT12)、フォトサイトのWebサーバ105が管理するHTMLやXML等の記述言語で作成された画像、音声等のマルチメディア情報とリンクされているWebページ情報を取得して表示する(図2のT13)。この動作により、オーナユーザ用PC102Aは、通信インフラとしてインターネット104を利用したサービスをフォトサイトから受けることができる。
次に、オーナユーザ用PC102Aの情報記憶領域に格納されている画像データは、オーナユーザの要求によりオーナ用PC102Aからフォトサイト105へアップロードされる(図2のT14)。この画像アップロードは、先に述べたWebブラウザから転送したい画像データを選択して、画像アップロードの要求アクションに連動して転送される場合や、画像アップロード専用ソフトウェア等を用いて画像データを選択し、画像アップロード専用ソフトウェアから直接、転送される場合がある。いずれの場合も、インターネット104で利用可能なプロトコル(httpやftp)に基づいて実行される。
フォトシェアリングモジュール106は、アップロードされた画像データがフォトサイトのWebサーバ105で使用可能なデータであるか否かをチェックし(図2のT15)、利用可能であると判断した場合は、アップロードされた画像データを画像データベース117に格納し、その属性情報を情報データベース118に格納する(図2のT16)。そして、フォトシェアリングモジュール106は、正常に画像データがアップロードされたことを、オーナユーザ用PC102Aに通知する。
オーナユーザは、オーナユーザ用PC102AでWebブラウザを起動してフォトサイトのWebサーバ105へアクセスすることにより、アップロードされた画像データを閲覧することができる。ここで、フォトサイトのWebサーバ105はオーナユーザを予め会員として登録しておき、アクセスがあった際はログイン認証を実行し、どのオーナユーザ用PC102Aがアクセスしてきたかを識別する。そして、アクセスしてきたオーナユーザがアップロードした画像データを特定し、オーナユーザ用PC102Aへ特定された画像データを表示するための表示用データを返信する。
また、オーナユーザはアップロードした画像データを指定した閲覧者に公開したり、アップロードした画像を使用して電子カードを作成することもできる。これらを実現するための手順については、後述する。
III.画像データの公開通知(図2のT17〜T22)
オーナユーザ用PC102AはWebブラウザを起動してフォトサイトのWebサーバ105へアクセスし、オーナユーザが所望する閲覧者の氏名や電子メールアドレス等の閲覧者の属性情報及び公開したい画像データの指定を通知する(図2のT17)。
フォトサイト105は、会員登録時に発行したオーナユーザのユーザIDと、新たに発行した閲覧者の閲覧者IDと、画像データベース117における画像データのファイルパスの3要素によって画像データ公開用のURLを決定して作成する。
画像データ公開用のURLの一例を以下に示す。
http://○○○.com/PhotoSite/Album/AlbumEntry.cgi?OwnerCardID=XXX&GuestID=YYY&GusetSVGData=ZZZ
この画像データ公開用のURLでは、オーナユーザのユーザIDとして"XXX"、新たに発行した閲覧者の閲覧者IDとして"YYY"と、画像データベース117における画像データのファイルパスとして"ZZZ"の値が、それぞれ引数として渡されている。ただし、このような構成のURLでは、第三者による類推が容易であるので、不正に作成したURLを使用して画像にアクセスされる可能性があるため、引数名(OwnerCardID、GuestID、GuestSVGData)として、容易に連想できない一般値(例えばA、B、Cなど。)を使用するようにしたり、引数の値(XXX、YYY、ZZZ)を公開鍵方式や秘密鍵方式などによって暗号化するようにしてもよい。
画像データ公開用のURLの一例として他に以下のようなものも挙げられる。
http://○○○.com/PhotoSite/Album/AlbumEntry.cgi?accessID=XXXXX
この画像データ公開用のURLの引数"accessID"の値"XXXXX"には、オーナユーザのユーザIDと、閲覧者IDと、画像データベース117における画像データのファイルパスの値を並べて一意に作成される数値が与えられる。さらに、この数値を暗号化することによって安全性が高くなる。
以上のように、同じ画像データを公開するためのURLであっても、閲覧者ごとに異なったものとなる。
そして、フォトサイト105は作成された閲覧者ごとの画像データ公開用のURLを情報データベース118に閲覧者の属性情報として登録する(後述する図5を参照)(図2のT18)。フォトサイトのWebサーバ105は、このように用意された画像データ公開用のURLを(必要ならば閲覧に必要なパスワード情報を付加して)記載した電子メールを、閲覧者用PC102Bへ送信する(図2のT19)。
電子メールを受け取った閲覧者は、閲覧者用PC102BでWebブラウザを起動して、電子メールに記載された画像データ公開用URLを入力してフォトサイトのWebサーバ105へアクセスすることで(図2のT20)、オーナユーザがアップロードした画像データを表示するためのWebページデータを取得し、画像データを閲覧することができる(図2のT21,T22)。
また、フォトサイトのWebサーバ105は、このアクセスに使用された画像データ公開用のURLに基づき、情報データベース118を参照することによって、どの閲覧者がアクセスして画像データを閲覧したかを識別することができる。そして、オーナユーザに、どの閲覧者が画像データを閲覧したかを知らせるようなサービスも提供することができる。
<電子カードの公開>
以下、オーナユーザがアップロードした画像データを使って電子カードを作成し、所望の閲覧者に公開する手順について説明する。
I.情報データベースの構成
初めに、フォトサイトのWebサーバ105が管理している情報データベース118の構成について、図3〜図5を参照して説明する。
図3は、情報データベース118で管理される電子カード情報テーブルのデータ保存形式を示すテーブル形式図である。
この電子カード情報テーブル200は、オーナユーザの操作によってオーナユーザ用PC102AとWebサーバ105が通信することにより作成された電子カードに関する情報を管理するテーブルである。電子カードが作成されると、フォトサイトのWebサーバ105は、電子カードのIDを新たに発行し、電子カード情報テーブル200に1枚の電子カードに付き、1レコード作成して、情報データベース118に登録し管理する。この電子カード情報テーブル200のレコードは、該当電子カードが削除されたときに情報データベース118より削除される。
電子カード情報テーブル200では、電子カードのID(OwnerCardID)202をキーとして、電子カードを作成したオーナユーザのユーザID(UID)201と、電子カードに使用している画像データのID(OwnerCardImageID)203と、電子カード作成時に画像データに施された編集内容を示す編集データへのパス(OwnerSVGDate)204と、オーナユーザのコメントデータ(OwnerCommentDate)205と、オーナユーザが電子カードを閲覧する際に使用する電子カード参照用のURL(OwnerCardURL)206とを管理している。
図4は、情報データベース118で管理する電子カード閲覧者情報テーブルのデータ保存形式を示すテーブル形式図である。
電子カード閲覧者情報テーブル300は、閲覧者ごとに電子カードに関する情報を管理するためのテーブルである。オーナユーザ用PC102Aが電子カードの閲覧者をWebサーバ105に対して指定すると、Webサーバ105は電子カード閲覧者情報テーブル300に閲覧者一人に付き、閲覧者のIDを発行して1レコードを作成し、情報データベース118に登録し管理する。この電子カード閲覧者情報テーブル300では、電子カードを削除すると対応するレコードが情報データベース118より削除される。
電子カード閲覧者情報テーブル300では、電子カードのID(OwnerCardID)301をキーとして、オーナユーザに対する閲覧者のID(GuestID)302と、閲覧者の電子メールアドレス(GuestAdress)303と、閲覧者により施された電子カードへの編集内容を示す編集データのパス(GuestSVGDate)304と、閲覧者のコメントデータ(GuestCommentDate)305と、閲覧者への電子カード公開用のURL(GuestURL)306とを管理している。
図5は、情報データベース118で管理する上記各テーブル200,300の関係を示す関係図である。
この関係図は、電子カードごとにID(OwnerCardID)が発行され、この電子カードのIDによって、図3の電子カード情報テーブル200と、図4の電子カード閲覧者情報テーブル300が結び付けられていることを示している。また、電子カード閲覧者情報テーブル300は、オーナユーザが公開するように指定した閲覧者の数だけ作成される。
このように、情報データベース118を構築することで、閲覧者は閲覧者用PC102BのWebブラウザを起動して電子カード公開用のURL(電子カード閲覧者情報テーブル300のGuestURL306に相当する)を入力することによって、オーナユーザが公開した電子カードにアクセスし、閲覧することが可能になる。
電子カード公開用のURLは、図5に示されるように、電子カードID(OwnerCardID)と、閲覧者ID(GuestID)と、閲覧者の電子カードの編集データへのパス(GuestSVGData)とに関連付けられて保存される。すなわち、これら3要素によって公開用のURLが決定される。
電子カード公開用のURLの一例を以下に示す。
http://○○○.com/PhotoSite/Album/AlbumEntry.cgi?OwnerCardID=XXX&GuestID=YYY&GusetSVGData=ZZZ
この電子カード公開用のURLでは、オーナユーザのユーザIDとして"XXX"、閲覧者IDとして"YYY"と、情報データベース118における閲覧者の電子カードの編集データへのパスとして"ZZZ"の値が、それぞれ引数として渡されている。ただし、このような構成のURLでは、第三者による類推が容易であるので、不正に作成したURLを使用して画像にアクセスされる可能性があるため、引数名(OwnerCardID、GuestID、GuestSVGData)として、容易に連想できない一般値(例えば、A、B、Cなど。)を使用したり、引数の値(XXX、YYY、ZZZ)を公開鍵方式や秘密鍵方式などによって暗号化するようにしてもよい。
電子カード公開用のURLの一例として他に以下のようなものも挙げられる。
http://○○○.com/PhotoSite/Album/AlbumEntry.cgi?accessID=XXXXX
この画像データ公開用のURLの引数"accessID"の値"XXXXX"には、オーナユーザのユーザIDと、閲覧者IDと、情報データベース118における閲覧者の電子カードの編集データへのパスの値を並べて、一意に作成される数値が与えられる。さらに、この数値を暗号化することによって安全性が高くなる。
要するに、オーナユーザがアップロードした画像に編集を加えて電子カードを作成してフォトサイトのWebサーバ105を用いて閲覧者へ公開し、さらに、閲覧者が公開された電子カードを閲覧して編集し、オーナユーザへ返信する場合において、本実施形態では、フォトサイトのWebサーバ105は、閲覧者ごとに編集を加えた画像データを保存管理するのではない。本実施形態では、Webサーバ105は、電子カードの作成に使用されたオリジナル画像と、各閲覧者及びオーナユーザによって加えられた編集の内容を示す編集データとを別に保存管理し、電子カードの表示を要求された時に編集データに基づきオリジナル画像を加工して電子カードデータを作成して表示する。したがって、電子カードを編集した後には、オーナユーザ用PC102Aあるいは閲覧者用PC102Bからは編集データのみを送受信すればよいので、通信するデータ量や、Webサーバ105が保存管理するデータ量を削減することができる。
これを実現するために、まず、電子カードの公開用のURLを、電子カードID(OwnerCardID)と、閲覧者ID(GuestID)と、閲覧者による電子カードへの編集の内容を示す編集データのパス(GuestSVGData)とに関連付けておく。そして、電子カード公開用のURLを利用して閲覧者が閲覧した電子カードに編集を加えて返信する際には、フォトサイトのWebサーバ105は、電子カードを編集した時に閲覧者用PC102Bから送られて情報データベース118に登録された編集データを編集データのパス(GuestSVGData)を基に読み出す。それと同時に、電子カードID(OwnerCardID)を基に電子カードに使用された画像データを画像データベース117から読み出し、画像データに編集データが示す編集内容を反映させた返信電子カードを作成して、オーナ用PC102Aに提示する。また、閲覧者ID(GuestID)は、閲覧者ごとの管理を行うために使用される。
この点が本実施の形態の特徴であり、以下にその具体的な処理を説明する。
II.電子カードの作成・公開
オーナユーザがアップロードした画像データを使用して電子カードを作成して、所望の閲覧者へ公開する方法について、図6〜図14を参照して具体的に説明する。
図6は、本実施の形態に係る情報提供システムにおける電子カード作成・公開処理を示すシーケンス図である。この電子カード作成・公開処理は、主に、フォトサイトのWebサーバ105ではフォトシェアリングモジュール106により実行され、またオーナユーザ用PC102AではWebブラウザによって実行される。図7は、オーナユーザが閲覧者に対して電子カードを公開する際の手順を示したフローチャートである。図8は、画像管理画面の一例を示す画面図である。図9は、写真選択画面の一例を示す画面図である。図10は、カード編集画面の一例を示す画面図である。図11は、閲覧者指定画面の一例を示す画面図であり、図12は、閲覧者の追加画面の一例を示す画面図であり、図13は、カード公開通知画面の一例を示す画面図である。図14は、オーナユーザが指定した公開先である閲覧者に送信する招待メールの内容の一例を示す図である。
まず、オーナユーザ用PC102Aは、図8に示すように、電子カードに使用したい画像を含むアルバム画面800を表示している必要がある。すなわち、オーナユーザ用PC102A上でWebブラウザを動作させ、httpプロトコル等の標準プロトコルを用いてインターネット経由でフォトサイトのWebサーバ105にアクセスし(図6のT31)、Webページ情報を取得してアルバム画面800を表示する(図6のT32,T33,T34)。
ここでアルバム画面800について説明する。ボタン801はオーナユーザ情報変更用のボタンであり、ボタン802はログアウトボタンである。領域803には、この画面800に表示されているアルバムに対する編集操作を行うためのボタンが配置されている。ボタン804はアルバムのプロパティを設定するためのボタンであり、ボタン805はアルバム通知ボタンであり、ボタン806はアルバムを新規作成するためのボタンであり、ボタン807はアルバム削除のためのボタンである。
また、ボタン808は画像をアップロードするためのボタンであり、ボタン809はプリントオーダボタンであり、ボタン810は電子カードの作成を指示するボタンである。領域811はアルバム選択を行うためのボタンが表示される領域である。この領域811の先頭には、フォトサイト105のWebサーバ上に保管している画像のサイズや許容使用量に対する比率が表示される。また、その下にオーナユーザが作成したアルバムの数だけのボタンが配置される。図8における画面800では、オーナユーザが5個のアルバムを作成したことがボタン812〜816によって確認することができる。それぞれのボタン812〜816を押下すると、フォトサイトのWebサーバ105は、アルバム表示領域824に表示されている画像を、選択されたアルバムに応じて変更し、アルバム表示領域824の左上端にそのアルバムのアルバム名を表示する。
領域817は、アルバム内の各画像に関する編集を行うためのボタンを配置するための領域である。ボタン818〜823の各ボタンを押下すると、領域824内に表示されている各画像に対応するチェックボタンのチェックされている画像に対して、各ボタン818〜823に対応する編集処理が行われる。領域824は、アルバム画像の表示領域である。この領域824には、アルバムに格納されている画像が順次表示され、画像に応じたチェックボックスが配置される。各画像が押下されると各画像のプロパティ設定画面が表示される。
次に、オーナユーザ用PC102で、ポインティングデバイスによる画面800のボタン810の押下操作があると、電子カードに使用する画像を指定する図7のステップS610に移行する。
まず、ステップS610は、オーナユーザが電子カードに使用したい画像を選択するステップである。具体的なインターフェースとしては、図9の写真選択画面900が表示される。オーナユーザ用PC102Aでポインティングデバイスにより画像データのチェックボックスをオンにする操作と次へボタン902を押下する操作があると、電子カードに使用する画像が選択される(図6のT35)。画面900において、ボタン901は図8の画像管理画面の表示に戻ることを指示するボタンである。ボタン902は図10のカード編集画面の表示に進むことを指示するボタンである。領域903には現在選択されているアルバムに格納されている画像が順次表示され、画像に応じたチェックボックスが配置される。
ここで、図9に示す写真選択画面900に代えて、図20に示すような写真選択画面1700を使って画像を選択するようにしてもよい。画面1700において、領域1701はアップロードする画像のサムネイルを表示する領域である。入力領域1702は、アップロードする画像のファイルパスを直接入力する領域である。ボタン1703はファイルパスを指定するためのパネルを表示するボタンである。ボタン1704はアップロードを開始するボタンである。ボタン1705は図8の画像管理画面に戻るボタンである。入力領域1702にアップロードする画像のファイルパスを直接入力するか、或いはボタン1703を押下し、ファイルパスを指定するパネルからアップロードする画像のファイルパスを選択することにより、領域1701に選択した画像のサムネイルが表示され、アップロードするボタン1704を押下することで、該当する画像がアップロードされ、図10の電子カード編集画面1000が表示され、ステップS620に移行する。
ステップS610にて、電子カードに使用する画像が選択されると、図10のカード編集画面1000が表示され(図6のT36,T37)、ステップS620に移行する。ステップS620は、ステップS610で選択した画像上に手書き文字やキーボードで入力される文字列、図形を追加するなどして編集するステップである。オーナユーザ用PC102AのWebブラウザに表示されている図10のカード編集画面1000において、オーナユーザは選択した画像を編集して、電子カードを作成する(図6のT38)。
画面1000のボタン1001は、領域1004上に表示されている文字や図形を選択するためのモードに移行するボタンであり、ボタン1002は領域1004上に表示されている文字や図形を削除するためのモードに移行するボタンである。ボタン1003は文字を入力するためのモードに移行するボタンである。領域1005に表示されているボタン1006,1007,1008は、領域1004上にスタンプやペン(手書き文字)、連続スタンプを入力するためのモードに移行するボタンである。
ボタン1006のスタンプモードは、星型やハート型などのような定型のイラストやマークのようなスタンプを、オーナユーザがポインティングデバイスなどを使って画像上で指定した位置に描画するモードであり、このスタンプはフォトサイトのWebサーバ105が用意してオーナユーザ用PC102Aに提供する。ボタン1007のペンモードは、オーナユーザがポインティングデバイスなどを使って、選択された画像上に自由に線を描画するモードであり、手書き文字やイラストなどを描画することができる。
ボタン1008の連続スタンプモードはオーナユーザがポインティングデバイスなどを使って画像上で連続して指定した位置に複数のスタンプを描画するモードである。画像1009から画像1014はスタンプモード及び連続スタンプモードで使用するスタンプ画像の一例である。
領域1015は、文字入力モードで使用されるテキストを入力する領域である。リストボックス1016からリストボックス1019とチェックボックス1020とチェックボックス1021は、文字入力モードで入力されたテキストの属性変更に使用され、ボタン1022を押下することで属性変更がテキストに反映される。ボタン1023は図9の写真選択画面の表示に戻ることを指示するボタンである。ボタン1025は電子カード作成を中止し、図8の画像管理画面の表示に戻ることを指示するボタンである。なお、図10中の図形データ1026は、スタンプモードでスタンプ画像1012を選択し、画像上にスタンプ画像をした例である。
オーナユーザが文字や図形を描画して画像を編集することにより電子カードを作成した後、オーナユーザ用PC102Aでポインティングデバイスにより次へボタン1024の押下操作があると、フォトサイトのWebサーバ105は当該電子カードのIDを発行して、図3の電子カード情報テーブル200に新規に1レコードを作成する。さらに、Webサーバ105はステップS610で選択した画像をステップS620で編集した内容を示す編集データをオーナユーザ用PC102Aから受信して情報データベース118に保存する(図6のT39)。
そして、オーナユーザ用PC102AはWebサーバ105からWebページ情報を取得して図11の閲覧者指定画面1100を表示し(図6のT40,T41)、ステップS630に移行する。ステップS630においては、オーナユーザが公開したい閲覧者の電子メールアドレスが図11の閲覧者指定画面1100のアドレス帳に登録されているかどうかを確認する。もし、なければ新規に閲覧者の電子メールアドレスを追加登録することとなる。そして、Webサーバ105は、オーナユーザ用PC102Aでポインティングデバイスにより閲覧者の電子メールアドレスの追加登録を指示するボタン1101を押下する操作があったかどうかにより、閲覧者の電子メールアドレスを追加登録するかどうか判断する。
画面1100において、ボタン1101は電子メールアドレスを新規追加するためのボタンである。電子メールアドレスの新規登録に関しては画面1200を用いて詳細は後述する。ボタン1102は電子メールアドレスの削除を指示するためのボタンである。オーナユーザPC102Aでポインティングデバイスによりチェックボックス1105にチェックを入れた状態で、この削除ボタン1102を押下することで、登録されている閲覧者の電子メールアドレスを削除するようWebサーバ105へ指示することができる。指示を受けたWebサーバ105は該当する電子メールアドレスを含む電子カード閲覧者情報テーブル300を削除する。
ボタン1103はチェックボックス1105のチェックを一度にすべて選択するボタンであり、ボタン1104はチェックボックス1105のチェックの選択を一度にすべて外すよう指示するボタンである。チェックボックス1105は電子メールアドレスを削除又は電子メールの宛先としての選択を示すチェックである。ボタン1106は、チェックボックス1105で選択した電子メールアドレスを宛先として、電子カード公開用のURLを記載した電子メールの送信を指示するための図13の画面1300へ遷移するためのボタンである。以下、このようにオーナユーザが指定した閲覧者へ送信される、電子カード公開用のURLが記載された電子メールを招待メールという。
ステップS640は、前記ステップS630において、ユーザが公開したい閲覧者の電子メールアドレスが閲覧者指定画面1100に表示されない、つまり情報データベース118に該当する閲覧者の電子カード閲覧者情報テーブル300が存在しない場合に画面1100のボタン1101がオーナユーザPC102Aでポインティングデバイスにより押下されることで、遷移する。
ステップS640では、オーナユーザ用PC102AはWebサーバ105からWebページ情報を受信して、新規の閲覧者の電子メールアドレスを登録するための図12の「閲覧者の追加」画面1200を表示し、名前入力領域1201に閲覧者の氏名、メールアドレス入力領域1202に電子メールアドレスを入力し、ポインティングデバイスによるボタン1203の押下があると、入力された各種情報をWebサーバ105へ転送し、情報データベース118に新規に電子カード閲覧者情報テーブル300を登録するよう依頼する。
閲覧者の電子メ入力された各種情報を転送する際に通信エラーが発生したり、Webサーバ105で障害が発生したり、領域1201及び領域1202に不正な値が入力されたりして、Webサーバ105が電子カード閲覧者情報テーブル300の新規登録に失敗した場合には、Webサーバ105はオーナユーザPC102AへWebページ情報を送信し、エラー画面を表示させる。
一方、Webサーバ105が電子カード閲覧者情報テーブル300の新規登録に成功した場合には、オーナユーザPC102AへWebページ情報を送信し、呼び出し元である画面1100を表示させる。ここで、登録が成功したことを通知するためのダイアログ画面も表示させるようにしてもよい。
また、オーナユーザ用PC102Aでポインティングデバイスによりボタン1204の押下操作があった場合には、名前入力領域1201や電子メールアドレス入力領域1202に入力された名前と電子メールアドレスはアップロードせずに、オーナユーザ用PC102Aには画面1100を表示する。
尚、電子カード閲覧者情報テーブル300の新規登録が成功している場合には、画面1100を表示した際に閲覧者指定画面1100にカラムが追加されて、その閲覧者の情報が記載されており、オーナユーザは目視により登録内容を確認することができる。
次のステップS650は、オーナユーザPC102AのWebブラウザに表示された閲覧者指定画面1100において、閲覧者のチェックボックス1105がチェックされ、ポインティングデバイスによりボタン1106の押下操作があることで、オーナユーザPC102Aは招待メールの宛先となる閲覧者の電子メールアドレスをWebサーバ105に指定し(図6のT42)、Webページ情報を受信して図13の電子カード公開通知画面1300を表示する(図6のT43,T44)。ボタン1106の押下時にチェックボックス1105のいずれにもチェックが入っていない場合には、オーナユーザPC102Aのディスプレイ上にチェックを促すようなアラートのダイアログが表示される。
ステップS660は、オーナユーザが、オーナユーザ用PC102AのWebブラウザに表示された図13のカード公開通知画面1300において、件名やコメントの入力を行う(図6のT45)。カード公開通知画面1300において、入力領域1301には、ステップS650で指定した閲覧者の電子メールアドレスが表示され、入力領域1302はオーナユーザの氏名を入力する欄であり、オーナユーザにより手動で入力されるか、あるいは既に情報データベース118に登録されているオーナユーザの名称がデフォルト値として自動的に入力されて表示される。
入力領域1303はオーナユーザの電子メールアドレスを入力する欄であり、オーナユーザにより電子メールアドレスが手動で入力されるか、あるいは既に情報データベース118に登録されているオーナユーザの電子メールアドレスがデフォルト値として自動的に入力されて表示される。入力領域1304は招待メールの件名を入力する欄であり、オーナユーザが任意の文字列を入力することで設定することができる。入力領域1305は招待メールの本文に記載されるコメントを入力する欄であり、オーナユーザが任意の文字列を入力することで設定することができる。
続くステップS670では、図13の電子カード公開通知画面1300においてオーナユーザが電子カードを公開する日の指定を行う。カード公開通知画面1300において、入力領域1306は公開する年を入力する欄であり、オーナユーザが電子カードを公開したい年を入力する。入力領域1307は公開する月を入力する欄であり、ユーザが電子カードを公開したい月を入力する。入力領域1308は公開する日を入力する欄であり、ユーザが公開したい日を入力する。ユーザが入力領域1306から入力領域1308に指定した期日に、閲覧者は招待メールに記載された電子カード公開用のURLをWebブラウザに入力することによって、ユーザの電子カードを閲覧できるようになる。なお、図13では公開する日が1日となっているが、さらに入力欄を設けて任意の日数の期間で指定するようにしてもよい。
また、Webサーバ105は、入力領域1306から1308で指定された公開日にフォトサイトのWebサーバ105のメンテナンスが行われる予定になっている等によって、電子カードを公開できないと検知した場合には、オーナユーザ用PC102AへWebページ情報を送信して、オーナユーザに公開日の指定の変更を促すようなアラート画面を表示させる。
また、図13に示す公開通知画面1300に代えて、図21に示すような公開通知画面1801を使って電子カードの公開に関する情報を入力するようにしてもよい。同図において、ラジオボタン1806は、ステップS670において、送信日を指定するためのラジオボタンである。具体的なインターフェースとしては、画面1800のラジオボタン1806にチェックを入れることにより、送信日を指定することができる。
チェックボックス1807は、電子カードへの編集の許可設定を行うための領域である。具体的なインターフェースとしては、図形編集許可チェックボックス18071にチェックを入れることにより、オーナユーザが作成した電子カードの図形編集を閲覧者に許可することができる。図形編集が許可される場合に限り、閲覧者は返信時に電子カードへの図形編集を行うことができる。図形編集許可チェックボックス18071にチェックを入れない場合は、閲覧者は電子カードへの図形編集を行うことができない。
印刷許可チェックボックス18072にチェックを入れることにより、オーナユーザが作成した電子カードに対して閲覧者にローカルでの印刷を許可することができる。印刷が許可される場合に限り、閲覧者はローカル環境のプリンタにより電子カードの印刷を行うことができる。印刷許可チェックボックス18072にチェックを入れない場合は、閲覧者PC102Bは電子カードの印刷用データをダウンロードできないように制御され、ローカル環境のプリンタでの印刷を行うことができない。
注文許可チェックボックス18073にチェックを入れることにより、オーナユーザが作成した電子カードに対して閲覧者にプリント注文を許可することができる。注文が許可される場合に限り、閲覧者は電子カードのプリント注文を印刷業者へ行うことができる。注文許可チェックボックス18073にチェックを入れない場合は、閲覧者はプリント注文を行うことができない。
保存許可チェックボックス18074にチェックを入れることにより、オーナユーザが作成した電子カードに対して閲覧者にローカルでの保存を許可することができる。保存が許可される場合に限り、閲覧者はローカル環境に電子カードをダウンロードして保存を行うことができる。保存許可チェックボックス18074にチェックを入れない場合は、閲覧者は電子カードのデータをダウンロードできないように制御され、ローカルでの保存を行うことができない。
チェックボックス1808は、電子カードの装飾設定を行うための領域である。具体的なインターフェースとしては、画面1800のラジオボタン1808にチェックを入れることにより、電子カードのオープニングの装飾を指定することができる。また、ボタン18081を押下すると、任意の画像を電子カードの表紙画像として指定することができる。また、ボタン18082を押下すると、任意のアニメーションを電子カードの表紙画像として指定することができる。また、ラジオボタン1809にチェックを入れることにより、電子カードのBGMの曲を指定することができる。また、ボタン18091を押下すると、任意の曲を電子カードのBGMとして指定することができる。
そして、ステップS680では、図13のカード公開通知画面1300においてオーナユーザがすべての情報を入力し、ポインティングデバイスにより送信ボタン1310を押下すると、Webサーバ105はオーナユーザPC102Aから各入力情報を受信し、情報データベース118に当該電子カードに対応した電子カード情報テーブル200を作成して、情報データベース118に保存する(図6のT47)。このとき、上記したように、電子カードを作成したオーナユーザと、電子カードの公開先である閲覧者と、オーナユーザ及び閲覧者のカード編集データのパスの4要素によって電子カード公開用のURLが決定され、作成されて情報データベース118(図5の記憶エリア206,306)に保存される(図6のT48)。そして、Webサーバ105は、招待メールを作成し、指定された閲覧者宛に送信する。
なお、オーナユーザ用PC102Aでの送信ボタン1310の押下時に、Webサーバ105が招待メールの送信処理を行えなかった場合には、Webページ情報をオーナユーザ用PC102Aへ送信して、送信エラーを通知するためのアラート画面を表示させる。
また、オーナユーザ用PC102Aでキャンセルボタン1311の押下があると、オーナユーザ用PC102Aは各入力内容Webサーバ105へアップロードせずに、したがってWebサーバ105は招待メールを送信せずに、Webページ情報をオーナユーザ用PC102Aへ送信して、アルバム画面800を表示させる。また、ボタン1309は図11の閲覧者指定画面の表示に戻ることを指示するボタンである。
図14は、オーナユーザが指定した公開先である閲覧者に送信する招待メールの内容の一例を示す文面図である。招待メールは画面1300で送信ボタン1310を押下した際に、閲覧者宛に送信され、画面1300で入力された内容が文面に反映されている。
III.電子カードの閲覧・返信
次に、閲覧者が公開された電子カードを閲覧し、電子カードにさらに編集を加えてオーナユーザへ返信する方法について、図15〜図19を参照して説明する。
ここで、図15は、本実施の形態に係る情報提供システムにおける電子カード閲覧・返信処理を示すシーケンス図である。この電子カード閲覧・返信処理は、主に、フォトサイトのWebサーバ105ではフォトシェアリングモジュール106により実行され、また閲覧者用PC102BではWebブラウザによって実行される。図16は、閲覧者が公開された電子カードを閲覧して返信する場合のフローチャートである。また、図17は、閲覧者が電子カードを返信する際に編集を行うためのカード返信編集画面の一例を示す表示画面図であり、図18は、閲覧者が電子カードの返信を通知するための電子カード返信通知画面の一例を示す表示画面図である。図19は、閲覧者からオーナユーザに電子カードの返信を通知する返信メールの一例を示す文面図である。
閲覧者が招待メールに記載された電子カード公開用のURLに基づいてWebブラウザで電子カードを閲覧し、その電子カードに編集を加えてオーナユーザに返信する手順は、図16のステップS710からステップS790に示すフローチャートにしたがって行われる。
まず、オーナユーザ用PC102Aで画面1300においてボタン1310の押下があると、Webサーバ105は招待メール(図14)を送信し、閲覧者用PC102Bが受信する(図15のT50、図16のステップS710)。閲覧者用PC102Bが招待メールを受信すると、ステップS720に移行する。
ステップS720は、閲覧者が公開された電子カードを閲覧するかどうかを判定するステップである。具体的には、閲覧者用PC102Bは、閲覧者がポインティングデバイスを使って図14の招待メールに記載された電子カード公開用のURLをクリックする操作があったかどうかを判定する。上記操作が無ければ閲覧者が電子カードを閲覧しないと判定し、終了する。上記操作があれば閲覧者が電子カードを閲覧すると判定し、ステップS730に移行する。
ステップS730は、閲覧者用PC102BがWebブラウザを起動して招待メールに記載された電子カード公開用のURLを入力するステップである(図15のT51)。電子カード公開用のURLがWebブラウザに入力されると、図17のカード返信編集画面1500が表示され、閲覧者は公開された電子カードを閲覧することができる(図15のT52,T53)。このとき、カード返信編集画面1500に表示される電子カードは、オーナユーザが電子カードの作成時に情報データベース118にアップロードされた編集データを、画像データベース117に保存されているオリジナル画像(オーナユーザがフォトサイト105へアップロードした画像)に反映させて表示される。そして、ステップS740に移行する。
ステップS740は、閲覧者が電子カードに返信を行うかどうかを判定するステップである。具体的には、閲覧者がポインティングデバイスにより「閉じる」ボタン1524をクリックする操作をしたかどうかを判定する。「閉じる」ボタン1524をクリックする操作があったと判定されれば、招待ユーザは電子カードに返信しないと判定し、終了する。「閉じる」ボタン1524をクリックする操作がなかったと判定されれば、閲覧者は電子カードに返信すると判断し、ステップS750に移行する。
ステップS750は、閲覧者が電子カードへの返信において、図形編集を行うかどうかを判断するステップである。具体的には、Webサーバ105は、閲覧者用PC102Cにおいて、ポインティングデバイスやキーボード等を使って領域1505に表示される各種ボタンやアイコン、または入力領域1515へ入力する操作があったかどうかに基づき判断する。上記操作があれば、閲覧者が電子カードに対して図形編集を行うと判断し、ステップS760に移行する。上記操作が無く、閉じるボタン1524をクリックする操作があれば、閲覧者は電子カードに対して図形編集を行わないと判断し、閲覧者用PC102BへWebページ情報を送信し、図18のカード返信通知画面1600を表示して、ステップS770に移行する。
ステップS760は、閲覧者が電子カード返信編集画面1500に表示された電子カードに対して図形編集を行うステップである(図15のT54)。画面1500において、領域1505、1515〜1522は、それぞれ図10の領域1005、1015〜1022と同様の機能を有する。
閲覧者がポインティングデバイスやキーボードなどを使って、電子カードに対する文字や図形の編集をした後、返信するボタン1523を押下することで、閲覧者用PC102Bは電子カードへの返信の図形編集結果を閲覧者による編集データとしてWebサーバ105へアップロードし、電子カード閲覧者情報テーブル300の編集データへのパスにしたがって情報データベース118に保存される(図15のT55)。
そして、図18の電子カード返信通知画面1600が表示され(図15のT56,T57)、ステップS770に移行する。ステップS770は、閲覧者が図18の電子カード返信通知画面1600で表示される各種項目に対して入力を行う。
電子カード返信通知画面1600において、入力領域1601には、オーナユーザの電子メールアドレスがデフォルト値として表示されている。ここで、オーナユーザの電子メールアドレスは、情報データベース118に登録されているオーナユーザの電子メールアドレスであってもよいし、招待メールに設定されている送信者アドレスであってもよい。
また、入力領域1602は閲覧者の氏名を入力する欄であり、閲覧者により手動で入力されるか、あるいは既に情報データベース118の電子カード閲覧者情報テーブル300に登録されている閲覧者の氏名がデフォルト値として入力されて表示される。入力領域1603は電子カードへの返信を行う閲覧者の電子メールアドレスを入力する欄であり、閲覧者が手動で入力するか、あるいは既に情報データベース118のアドレス帳に登録されている閲覧者の電子メールアドレスがデフォルト値として入力されて表示される。入力領域1604は返信電子カードが作成されたことをオーナユーザに通知するための電子メール(以下、返信通知メールという)件名を入力する欄であり、閲覧者が任意の文字列を入力することで設定することができる。入力領域1605は返信通知メールの本文に記載されるコメントを入力する欄であり、閲覧者が任意の文字列を入力することで、設定することができる。
図18のカード返信通知画面1600において、閲覧者がすべての項目に情報を入力し、送信ボタン1606を押下すると(図15のT59)、閲覧者用PC102Bは各入力内容をWebサーバ105へアップロードし、情報データベース118に保存され(図15のT60)、ステップS780へ移行する。
ステップS780では、Webサーバ105が、図19に示すような、電子カード公開用のURLを含む返信通知メールを作成し、オーナ用PC102Aへ送信する(図15のT61)。なお、送信ボタン1606ではなく、キャンセルボタン1607を押下すると、各入力内容はフォトサイト105にアップロードされず、終了する。
オーナ用PC102Aは、返信通知メールメールに含まれる電子カード公開用のURLをクリックして、Webブラウザを起動し、電子カード公開用のURLを入力することにより(図15のT62)、閲覧者によって編集が加えられた電子カードを閲覧することができる(図15のT63,T64)。
ここで、Webサーバ105は、入力された電子カード公開用のURLに基づき、電子カード閲覧者情報テーブル300の編集データパス304を参照して情報データベース118から閲覧者の編集データを取得する。さらに、Webサーバ105は、入力された電子カード公開用のURLに基づき、電子カード閲覧者情報テーブル300の電子カードID301を参照して、対応する電子カード情報テーブル200の編集データパス204を参照してデータベースからオーナユーザの編集データを取得する。さらに、Webサーバ105は入力された電子カード公開用のURLに基づき、電子カード閲覧者情報テーブル300の電子カードID301を参照して、カードに使用された画像の画像IDを参照して、画像データベース117から該当する画像データを取得する。そして、Webサーバ105は、取得した閲覧者及びオーナユーザの編集データにしたがって画像データを編集して電子カードを作成している。
このように本実施の形態によれば、電子カードの編集は、オーナユーザ、閲覧者共に可能であり、閲覧者が電子カードを編集して返信し、さらにオーナユーザがその電子カードを編集する、といったやり取りを繰り返すことができ、オーナユーザがアップロードした画像に様々な編集が加わって、画像を魅力的なものにすることができる。
また、電子カード公開用のURLは、オーナユーザが作成した電子カードのID(OwnerCardID)と、閲覧者ID(GuestID)と、閲覧者の電子カード編集データのパス(GuestSVGData)とによって決定されるためオーナユーザから閲覧者へ、または閲覧者からオーナユーザへといったように電子カードの編集を加えてやり取りしても変わらないので同じ電子カード公開用のURLを使用し続けることができ、オーナユーザにとっても閲覧者にとっても電子カード公開用のURLを管理しやすい。
また、本実施の形態では、フォトサイト105はオーナユーザ用PC102Aがフォトサイト105へアップロードした電子カードのオリジナル画像は編集前のアップロード時の状態で画像DB117に保存しておき、オーナユーザと閲覧者間で送受信される編集データ及びオリジナル画像とにしたがって表示用画像を作成して表示している。したがって、例えば、オーナユーザが3人の閲覧者A,B,Cに電子カードを公開する場合では、フォトサイト105側で管理するデータが、オリジナル画像と、オーナユーザ及び閲覧者Aの編集データと、オーナユーザ及び閲覧者Bの編集データと、オーナユーザ及び閲覧者Cの編集データになるので、閲覧者ごとに編集されたオリジナル画像を複数管理するのに比べて、フォトサイト105で保存するデータ量を低減することができる。
さらに、各閲覧者によって電子カード公開用のURLが異なるので、フォトサイト105はアクセスしてきた閲覧者を区別することができるので、例えば、上述したように、カード返信通知画面1600において、入力領域1602,1603にそれぞれ閲覧者の氏名、閲覧者のアドレスを自動的に表示することで閲覧者が手動で入力する手間を省くことができる。あるいは、フォトサイト105は、電子カードへのアクセスに使用された電子カード公開用のURLに基づき、どの閲覧者が電子カードを閲覧したかを把握することもできる。なお、電子カードに使用される画像は、静止画像であってもよいし、動画像であってもよい。
また、本実施の形態のWebサーバ装置、オーナユーザ用PCや閲覧者用PCを構成するコンピュータ装置の構成について、図22のブロック図を参照して説明する。サーバ装置やクライアント装置はそれぞれ単一のコンピュータ装置で実現してもよいし、必要に応じた複数のコンピュータ装置に各機能を分散して実現するようにしてもよい。複数のコンピュータ装置で構成される場合は、互いに通信可能なようにLocal Area Network(LAN)などで接続されている。
図22において、2201はコンピュータ装置2200全体を制御するCentral Processing Unit(CPU)である。2202は変更を必要としないプログラムやパラメータを格納するRead Only Memory(ROM)である。2203は外部装置などから供給されるプログラムやデータを一時記憶するRandom Access Memory(RAM)である。2204はコンピュータ装置2200に固定して設置されたハードディスクやメモリカード、あるいはコンピュータ装置2200から着脱可能なフロッピー(登録商標)ディスク(FD)やCompact Disk(CD)等の光ディスク、磁気や光カード、ICカード、メモリカードなどを含む外部記憶装置である。2205はユーザの操作を受け、データを入力するポインティングデバイスやキーボード2209などの入力デバイスとのインターフェイスである。
2206はコンピュータ装置2200の保持するデータや供給されたデータを表示するためのモニタ2210とのインターフェイスである。2207はインターネット103などのネットワーク回線に接続するためのネットワークインタフェイスである。2208は2201〜2207の各ユニットを通信可能に接続するシステムバスである。
なお、本発明は、上述した実施形態のシステムに適用しても、1つの機器から成る装置に適用しても良い。前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体をシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、完成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、不揮発性メモリを用いることができる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、次のプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるCPUなどが処理を行って実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。