トップ :: G 物理学 :: G06 計算;計数




【発明の名称】 情報処理装置、情報提供媒体、情報処理方法及び情報処理システム
【発明者】 【氏名】金江 和広

【氏名】松田 晃一

【要約】 【課題】仮想空間を利用することにより、確実性の高いファイル転送を実現することが可能な情報処理装置、情報提供媒体、情報処理方法及び情報処理システムにファイル転送方法を提供する。

【解決手段】各ユーザのユーザPC100のディスプレイ521には、同一仮想空間を共有する各ユーザの分身たるアバタが表示される。ユーザPC100Aを所有するユーザAは、該ディスプレイ521に表示されるファイル受け手側のユーザBのアバタ上に転送すべきファイルFをドラッグアンドドロップする。これにより、ファイルFは、ユーザAのユーザPC100Aからサーバ200を介してファイル受け手側のユーザPC100Bへ転送される。
【特許請求の範囲】
【請求項1】 ネットワークを介して接続されたサーバに対して所望の仮想空間を指定することにより、同一仮想空間を指定した各情報処理装置に対応するオブジェクトを含む仮想空間データを前記サーバから取得し、取得した仮想空間データに基づき仮想空間画像を表示する情報処理装置であって、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示する表示手段と、転送すべきファイルを指定する操作が行われたか否かを検出する第1の検出手段と、転送先オブジェクトを指定する操作が行われたか否かを検出する第2の検出手段と、前記第1の検出手段及び前記第2の検出手段から出力される検出結果に基づいて、転送先オブジェクトに対応した情報処理装置へ転送すべきファイルを前記サーバへ送信する送信手段とを具備することを特徴とする情報処理装置。
【請求項2】 前記表示手段は、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示すると共に、1又は複数のファイルに対応したファイルオブジェクトを表示し、前記第1の検出手段は、1つのファイルオブジェクトがドラッグされたことを検出することにより、転送すべきファイルが指定されたと判断し、前記第2の検出手段は、ドラッグされたファイルオブジェクトがドロップされたことを検出することにより、転送先オブジェクトが指定されたと判断することを特徴とする請求項1に記載の情報処理装置。
【請求項3】 前記サーバへ前記ファイルを送信するのに先立ち、転送先オブジェクトに対応した情報処理装置への前記ファイルの転送要求を前記サーバへ送信するファイル転送要求送信手段と、前記ファイルの転送要求に対する応答メッセージを前記サーバから受信する応答メッセージ受信手段と、をさらに具備し、前記送信手段は、前記応答メッセージ受信手段が受信した応答メッセージに基づき、前記ファイルを前記サーバへ送信するか否かを決定することを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】 前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行う必要があるか否かを判断するための判断情報を記憶した記憶手段をさらに具備し、前記ファイル転送要求送信手段は、前記記憶手段に記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項3に記載の情報処理装置。
【請求項5】 前記ファイル転送要求送信手段は、前記記憶手段に記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行った場合には、前記ユーザによる問い合わせに応じた入力操作を検出し、前記検出結果に基づき前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項4に記載の情報処理装置。
【請求項6】 前記ファイルの転送要求には、前記ファイルに関する情報と、前記ファイルの転送要求を行うユーザを特定するID情報とを含むことを特徴とする請求項3〜5のいずれか1の請求項に記載の情報処理装置。
【請求項7】 ネットワークを介して接続されたサーバに対して所望の仮想空間を指定することにより、同一仮想空間を指定した各情報処理装置に対応するオブジェクトを含む仮想空間データを前記サーバから取得し、取得した仮想空間データに基づき仮想空間画像を表示する情報処理装置によって実行されるプログラムを提供する情報提供媒体であって、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示する表示ステップと、転送すべきファイルを指定する操作が行われたか否かを検出する第1の検出ステップと、転送先オブジェクトを指定する操作が行われたか否かを検出する第2の検出ステップと、前記第1の検出ステップ及び前記第2の検出ステップにおける検出結果に基づいて、転送先オブジェクトに対応した情報処理装置へ転送すべきファイルを前記サーバへ送信する送信ステップとを具備することを特徴とする情報提供媒体。
【請求項8】 前記表示ステップは、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示すると共に、1又は複数のファイルに対応したファイルオブジェクトを表示し、前記第1の検出ステップは、1つのファイルオブジェクトがドラッグされたことを検出することにより、転送すべきファイルが指定されたと判断し、前記第2の検出ステップは、ドラッグされたファイルオブジェクトがドロップされたことを検出することにより、転送先オブジェクトが指定されたと判断することを特徴とする請求項7に記載の情報提供媒体。
【請求項9】 前記サーバへ前記ファイルを送信するのに先立ち、転送先オブジェクトに対応した情報処理装置への前記ファイルの転送要求を前記サーバへ送信するファイル転送要求送信ステップと、前記ファイルの転送要求に対する応答メッセージを前記サーバから受信する応答メッセージ受信ステップと、をさらに具備し、前記送信ステップは、前記応答メッセージ受信手段が受信した応答メッセージに基づき、前記ファイルを前記サーバへ送信するか否かを決定することを特徴とする請求項7または8に記載の情報提供媒体。
【請求項10】 前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行う必要があるか否かを判断するための判断情報を記憶した記憶ステップをさらに具備し、前記ファイル転送要求送信ステップは、前記記憶手段に記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項9に記載の情報提供媒体。
【請求項11】 前記ファイル転送要求送信ステップは、前記記憶ステップにおいて記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行った場合には、前記ユーザによる問い合わせに応じた入力操作を検出し、前記検出結果に基づき前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項10に記載の情報提供媒体。
【請求項12】 前記ファイルの転送要求には、前記ファイルに関する情報と、前記ファイルの転送要求を行うユーザを特定するID情報とを含むことを特徴とする請求項9〜11のいずれか1の請求項に記載の情報提供媒体。
【請求項13】 ネットワークを介して接続されたサーバに対して所望の仮想空間を指定することにより、同一仮想空間を指定した各情報処理装置に対応するオブジェクトを含む仮想空間データを前記サーバから取得し、取得した仮想空間データに基づき仮想空間画像を表示する情報処理方法であって、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示する表示ステップと、転送すべきファイルを指定する操作が行われたか否かを検出する第1の検出ステップと、転送先オブジェクトを指定する操作が行われたか否かを検出する第2の検出ステップと、前記第1の検出ステップ及び前記第2の検出ステップにおける検出結果に基づいて、転送先オブジェクトに対応した情報処理装置へ転送すべきファイルを前記サーバへ送信する送信ステップとを具備することを特徴とする情報処理方法。
【請求項14】 前記表示ステップは、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示すると共に、1又は複数のファイルに対応したファイルオブジェクトを表示し、前記第1の検出ステップは、1つのファイルオブジェクトがドラッグされたことを検出することにより、転送すべきファイルが指定されたと判断し、前記第2の検出ステップは、ドラッグされたファイルオブジェクトがドロップされたことを検出することにより、転送先オブジェクトが指定されたと判断することを特徴とする請求項13に記載の情報処理方法。
【請求項15】 前記サーバへ前記ファイルを送信するのに先立ち、転送先オブジェクトに対応した情報処理装置への前記ファイルの転送要求を前記サーバへ送信するファイル転送要求送信ステップと、前記ファイルの転送要求に対する応答メッセージを前記サーバから受信する応答メッセージ受信ステップと、をさらに具備し、前記送信ステップは、前記応答メッセージ受信手段が受信した応答メッセージに基づき、前記ファイルを前記サーバへ送信するか否かを決定することを特徴とする請求項13または14に記載の情報処理方法。
【請求項16】 前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行う必要があるか否かを判断するための判断情報を記憶した記憶ステップをさらに具備し、前記ファイル転送要求送信ステップは、前記記憶手段に記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項15に記載の情報処理方法。
【請求項17】 前記ファイル転送要求送信ステップは、前記記憶ステップにおいて記憶された判断情報を参照し、前記ファイルの転送要求を前記サーバへ送信する前に、ユーザに対して前記ファイルの転送要求に係る問い合わせを行った場合には、前記ユーザによる問い合わせに応じた入力操作を検出し、前記検出結果に基づき前記ファイルの転送要求を前記サーバへ送信するか否かを判断することを特徴とする請求項16に記載の情報処理方法。
【請求項18】 前記ファイルの転送要求には、前記ファイルに関する情報と、前記ファイルの転送要求を行うユーザを特定するID情報とを含むことを特徴とする請求項15〜17のいずれか1の請求項に記載の情報処理方法。
【請求項19】 複数の情報処理装置と、サーバとを具備する情報処理システムにおいて、情報処理装置は、ネットワークを介して接続されたサーバに対して所望の仮想空間を指定し、前記サーバは、同一仮想空間を指定した各情報処理装置に対応したオブジェクトを含む仮想空間を構成し、当該仮想空間に対応した仮想空間データを前記各情報処理装置に送信し、前記情報処理装置は、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応したオブジェクトから見た前記仮想空間内の画像を表示し、前記情報処理装置は、転送先オブジェクトを指定する操作と転送すべきファイルを指定する操作に応じて、転送先オブジェクトに対応した情報処理装置への前記ファイルの転送要求を前記サーバへ送信し、前記サーバは、前記ファイルの転送要求に従って、転送先オブジェクトに対応した情報処理装置へ前記ファイルを転送することを特徴とする情報処理システム。
【請求項20】 前記サーバは、前記ファイルの転送要求に従って、転送先オブジェクトに対応した情報処理装置へ前記ファイルを転送するのに先立ち、前記ファイルを転送して良いか否かを前記情報処理装置へ問い合わせ、前記情報処理装置から前記転送しても良い旨の応答メッセージを受け取った場合には、前記ファイルを前記情報処理装置へ転送することを特徴とする請求項19に記載の情報処理システム。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、情報処理装置、情報提供媒体、情報処理方法及び情報処理システムに係り、特にインターネットのようなコンピュータネットワーク上でファイル転送を行うファイル転送技術に関する。
【0002】
【従来の技術】コンピュータシステムが広汎に普及している現在、ネットワークに接続されたコンピュータ間でファイルの授受を行う等、コンピュータ間での情報交換が盛んに行われるようになっている。現在、ネットワークを介したファイルの転送には、FTP(File Transfer Protocol)、HTTP(Hyper Text Transfer Protocol)、電子メールへのファイル添付の3つの方法が広く利用されている。各ファイル転送方式について説明すると、次の通りである。
【0003】<FTPを利用する場合>図22は、FTPを利用してファイル転送を行う場合を説明するための図である。ファイルF0を転送するクライアントAは、まずネットワークを介してFTPサーバにアクセスし、ファイルF0をFTPサーバへ送信する。次に、クライアントAは、ファイルF0をFTPサーバに送信した旨を、例えば電子メールを利用してクライアントBに通知する。クライアントBは、クライアントAから該通知を受け取ると、FTPサーバにアクセスし、FTPサーバからファイルF0を入手する。このようにして、ファイルF0は、クライアントAからFTPサーバを介してクライアントBへ転送される。なお、HTTPを利用してファイル転送を行う場合の動作は、FTPを利用してファイル転送を行う場合と同様に説明することができるため、省略する。
【0004】<電子メールを利用する場合>図23は、電子メールを利用してファイル転送を行う場合を説明するための図である。ファイルF1を転送するクライアントCは、まずファイルF1の転送先を記述した電子メールにファイルF1を添付する。次にクライアントCは、ファイルF1を添付した電子メールをネットワークを介してメールサーバに送信する。メールサーバは、ファイルF1の添付された電子メールを受け取ると、該電子メールの宛先を参照し、クライアントD宛のメールであることを確認する。そして、メールサーバは、ファイルF1の添付された電子メールをメールスプールにおけるクライアントDに割り当てられたメールボックスに格納する。クライアントDは、メールサーバにアクセスし、メールスプールに自身宛のメールが届いているか否かを確認し、届いていることを確認するとメールサーバから自身宛のメールを取得する。このようにして、電子メールに添付されたファイルF1は、クライアントCからメールサーバを介してクライアントDへ転送される。
【0005】
【発明が解決しようとする課題】しかしながら、上述した従来のファイル転送方式には、次のような問題があった。まず、FTP又はHTTPを利用してファイル転送を行う場合には、ファイルを転送するクライアントが、ファイル転送先のクライアントに対して所望のファイルをFTPサーバ又はHTTPサーバに送信した旨を通知する必要があった。
【0006】また、電子メールを利用してファイル転送を行う場合には、メールサーバにおけるメールスプールの制約を受けるため、転送すべきファイルに含まれるデータ量が大きい場合においては電子メールに添付してファイルを転送することができないという問題があった。また、電子メールを送信する際には、ユーザログイン名とドメイン名から構成される相手方のメールアドレスを入力する必要があり、メールアドレスを誤って入力した場合には、正しい相手先にファイルの添付された電子メールが届かないといった問題も生じていた。
【0007】さらに、上述した従来のファイル転送方式においては、いずれも転送すべきファイルを一端各サーバに蓄積する必要がある。従って、各サーバがファイル等を受け取ってからクライアントに該ファイル等を供給するまでの間に第3者に覗き見られてしまうといった問題も生じていた。本発明は、以上説明した事情を鑑みてなされたものであり、仮想空間を利用することにより、確実性の高いファイル転送を実現することが可能な情報処理装置、情報提供媒体、情報処理方法及び情報処理システムを提供することを目的とする。
【0008】
【課題を解決するための手段】上記課題を解決するために、請求項1に記載の情報処理装置は、ネットワークを介して接続されたサーバに対して所望の仮想空間を指定することにより、同一仮想空間を指定した各情報処理装置に対応するオブジェクトを含む仮想空間データを前記サーバから取得し、取得した仮想空間データに基づき仮想空間画像を表示する情報処理装置であって、前記サーバから受信した仮想空間データに基づいて、当該情報処理装置に対応するオブジェクトから見た前記仮想空間内の画像を表示する表示手段と、転送すべきファイルを指定する操作が行われたか否かを検出する第1の検出手段と、転送先オブジェクトを指定する操作が行われたか否かを検出する第2の検出手段と、前記第1の検出手段及び前記第2の検出手段から出力される検出結果に基づいて、転送先オブジェクトに対応した情報処理装置へ転送すべきファイルを前記サーバへ送信する送信手段とを具備することを特徴とする。
【0009】請求項1に記載の情報処理装置においては、当該情報処理装置に対応したアバタから見た前記仮想空間内の画像が表示される。ユーザが情報処理装置を操作し、転送すべきファイルを指定すると共に、所望のアバタを指定すると、前記ファイルは、所望のアバタに対応した情報処理装置へ転送される。すなわち、ユーザは、情報処理装置に表示されるファイル受け手側のアバタにより相手の存在を認識しながら、ファイルを転送することが可能となる。
【0010】
【発明の実施の形態】以下、図面を参照しながら本発明の実施形態を詳解する。かかる実施形態は、本発明の一態様を示すものであり、本発明を限定的に解釈されるべきものではない。本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0011】<仮想空間に関する説明>パソコン通信サービスの分野においては、Habitat(商標)と呼ばれるサイバースペース(仮想空間)のサービスが知られている。Habitatは、米国LucasFilm社によって1985年から開発が始められ、米国商業ネットワークであるQuantumLink社で約3年間運用された後、1990年2月に富士通Habitat(商標)としてNIFTY-Serveでそのサービスが開始されたものである。このHabitatにおいては、2次元グラフィックスで描画された「ポピュロポリス(Populopolis)」と呼ばれる仮想の都市に、アバタ(avatar;インド神話に登場する神の化身)と呼ばれるユーザの分身を送り込み、ユーザ同士のチャット(Chat;文字の入力と表示によるテキストベースでのリアルタイムの対話)などを行うことが可能となっている。このHabitatの更に詳細な説明については、サイバースペース,マイケル・ベネディクト編,1994年3月20日初版発行,NTT出版 ISBN4−87188−265−9C0010(原著;Cyberspace:First Steps ,Michael Benedikt,ed. 1991,MITPressCambrige,MA ISBN0−262−02327−X)第282頁〜第307頁を参照されたい。
【0012】また、例えば特開平9-81781号公報には、仮想空間内におけるアバタの歩行や移動の表現力を向上させるために、VRML(Virtual Reality Modeling Language)と呼ばれる3次元グラフィクスデータの記述言語を利用し、仮想空間を3次元グラフィックスで表示すると共に、自己の分身であるアバタの視点から見た仮想空間を表示することができる機能を実現した内容が開示されている。なお、VRMLに関する最新の言語VRML2.0においては、3次元的な仮想空間内におけるオブジェクトの自律的な振る舞い(Behavior)を記述し、表現することが可能となっている。これにより、ユーザは、VRML2.0用ブラウザに表示された3次元的な仮想空間内を自身が実際に歩き回っているかのような感覚を享受することができる。このVRML2.0用ブラウザおよび共有サーバ用ソフトウェアとしては、例えば、本出願人であるソニー株式会社が「Community Place(商標) Browser / Bureau」として開発し、製品化しており、そのβ版(試供版)を、インターネット上のホームページ「http://vs.sony.co.jp」または、「http://www.world.sony.com/JP/Electronics/CommunityPlace」からダウンロードすることが可能とされている。
【0013】1.コミュニティシステム1−1.コミュニティシステムの構成図1は、本発明を実現するために適した共有仮想空間を構築提供することができるネットワークコンピューティングシステム1の構成を模式的に示したものである。
【0014】ここで、ネットワークコンピューティングシステム1は、例えば分散ネットワークであってもよい。そして、この分散ネットワークの環境下においては、各ユーザはプログラムやデータなど資源オブジェクトの所在を特に認識する必要がなくなる。また、コンピュータにおいて実行される手続きやメソッドも、ネットワーク上で分散して保持され、管理されている。これにより、例えば、ネットワーク上のある1つのコンピュータ上で動作しているプロセスが、他のコンピュータ上で動作するプロセスの手続きを呼び出して実行させることができるようになる。
【0015】後述するように、このネットワークコンピューティングシステム1上では、3次元の共有仮想空間に展開されるコミュニティシステムが構築・提供される。このコミュニティ・システムは、仮想空間を表示し、ナビゲーションするCommunity Place(商標)ブラウザ(CPブラウザ)と、共有仮想空間を管理するCommunity Placeサーバ(CPサーバ)と、各々の共有アプリケーションの動作を制御するAO(Application Object)という3つの要素で構成される。
【0016】ネットワークコンピューティングシステム1には、無数のコンピュータシステムが接続されている。これらコンピュータシステムは、世界中に散在しており、一部のコンピュータは各種の資源サービスを有償または無償で提供する「サーバ」として稼動する。また、他の一部はサーバに対して資源サービスを要求する「クライアント」として稼動している。
【0017】また、図1に示すように、ネットワークコンピューティングシステム1は、通信媒体として、インターネット10や、その他の小規模ネットワークとしてのLAN(Local Area Network)20A,20B,…、各国の電話会社が構築提供する公衆電話網30などを含んでいる。勿論、それぞれのLAN20A,20B,…の実体は、単一のネットワークセグメントであっても、あるいは複数のセグメントがルータで接続された構成であってもよい。なお、以下の説明では、LAN20A,20B,…及びルータ21A,21B,…を特に区別する必要がない場合には、単にLAN20及びルータ21という。
【0018】インターネット10やそれぞれの小規模ネットワークLAN20は、ルータ21等を経由して相互に接続されている。また、インターネット10の実体は、小規模ネットワークLAN20のサーバ同士が相互に接続を繰り返した結果として世界規模に成長した巨大ネットワークである。これらインターネット10や小規模ネットワークLAN20上のサーバ同士は、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)などの所定の通信プロトコルにしたがって相互にアクセスが可能である。
【0019】また、インターネット10やLAN20などのネットワークと、公衆電話網30とは、ゲートウェイシステム40によって相互に接続されている。公衆電話網30としては、例えばPSTN(Public Switched Telephone Network)やISDN(Integrated Service Digital Network)がある。
【0020】公衆電話網30は、さらに無数の交換局及び端局(図示略)を擁し、末端には一般の家庭内に設置された電話機が接続されている。また、公衆電話網30とともに、携帯電話サービスプロバイダ、PHS(Personal Handyphone System)サービスプロバイダ、ポケットベル(ページャ)サービスプロバイダなど、無線通信サービスを提供する多数のキャリアによって、多数の無線電話網(いずれも図示略)が敷設されていてもよい。
【0021】インターネット10上のコンピュータシステム(LAN20経由でインターネット接続されているコンピュータを含む)は、インターネット10上で識別可能なIPアドレスを取得している。言い換えれば、IPアドレスが、各コンピュータとインターネット10との論理的な接続点となっている。
【0022】また、インターネット10上には、専用線によるIP接続を行うことができない一般ユーザのために、インターネットへの接続サービスを提供する通信事業者、すなわち「インターネットサービスプロバイダ」(ISP)が存在する。営利のインターネットサービスプロバイダは、第2種電気通信事業者の登録届出が必要となる。一般のユーザは、サービスプロバイダが設置したサーバすなわち「アクセスポイント」(AP)にダイヤルアップすることで、インターネットへのIP接続が行われるので、自分専用のIPアドレス取得という経済的負荷からは解放されている。
【0023】任意のサービスプロバイダ(ISP)経由でIP接続された一般ユーザのコンピュータ(以下、ユーザPC)100は、インターネット10上では主としてクライアントとして稼動し、WWW(World Wide Web)サーバその他の各種のサーバに対してサービスの提供を要求することができる。
【0024】インターネットサービスプロバイダは、一般に、ダイヤルアップIP接続以外にも、チャットやBBS(Bulletin Board System:電子掲示板システム)、電子メールなどの各種アプリケーションをインターネット10上で提供している。
【0025】勿論、インターネットサービスプロバイダ以外の各種の運営母体がチャットやBBS、電子メール等のインターネットアプリケーションを提供することも可能である。
【0026】図1に示す例においては、LAN20Aを運営するインターネットサービスプロバイダが、本実施形態に係る「チャット」、すなわち、コミュニティシステムを提供しているものとする。コミュニティシステムは、ネットワーク上にコミュニティ、すなわち、仮想世界を構築する。各ログインユーザは、アバタを介してチャットを行うことにより、擬似コミュニケーションを楽しむことができる。
【0027】「チャット」(chat)とは、インターネット10を介して遠隔ユーザ間でリアルタイムのコミュニケーションを行うことをいう。特に、本実施形態に係る3次元チャットは、3次元グラフィックスを用いて描画された3次元共有仮想空間上で各ログインユーザが自分の分身である「アバタ」を送り込んで、リアルタイムのコミュニケーションを行う環境を提供するものである。WWWシステム上の3次元共有仮想空間すなわちコミュニティシステムは、例えばISO(International Organization for Standardization)標準のVRML(Virtual RealityModeling Language)97(下記文献[1]参照)で記述することができ、さらに、Javaを用いて動作記述を行うことができる。また、かかる3次元共有仮想空間は、VRMLブラウザを用いることにより、表示等することが可能となる。
文献[1]:http://www.vrml.org/Specifications/VRML97/【0028】LAN20A上には、共有仮想空間をインターネット10上に構築する。さらに、この共有仮想空間上での各種の社会活動を行う環境を提供して共有仮想空間を管理するための共有仮想空間(Community Place :CP)サーバ22や、1以上のアプリケーションオブジェクト(AO)サーバ23−1,23−2…が配設されている。
【0029】また、LAN20Aには、HTML(Hyper Text Markup Language)コンテンツなどのHTTP(Hyper Text Transfer Protocol)資源オブジェクトを提供する1以上のWWWサーバ25などが複数接続されていてもよい。ユーザはLAN20A上の各サーバ22,23−1,23−2,25に対して、インターネット10及びルータ21Aを介してアクセスすることができる。
【0030】本実施形態において、WWWサーバ25は、通常のHTMLコンテンツの他に、3次元仮想世界を記述したVRMLファイルを提供しているものとする。また、このVRMLファイルには、仮想世界と共有アプリケーション(shared application)の記述、共有仮想空間(CP)サーバ22のアドレス(URL:Uniform Resource Locator)またはそのリンク参照が含まれている。
【0031】本実施形態に係る3次元共有仮想空間にログインするユーザPC100は、WWWサーバ25が提供するHTMLコンテンツを解釈し、解釈結果に基づき各種の処理を実行するHTMLブラウザと、VRMLファイルを扱うことができるVRMLブラウザの双方を備えている。本実施形態で使用されるVRMLブラウザは、特に、共有仮想空間(Community Place:CP)を表示し、ナビゲーションすることから、以下では「CPブラウザ」と呼ぶことにする。また、HTMLブラウザとCPブラウザは、例えば米Microsoft社のオペレーティング・システム"Windows95/98/NT"などによって提供される同一のプラットフォーム上で動作することができる。
【0032】VRMLを用いて構築される3次元共有仮想空間において、当該共有仮想空間内に配置された各オブジェクトは、ユーザ操作に応答して発生するイベントや、あらかじめ設定された時間の経過に伴なって発生するタイマーイベントに応答した、自律的な動き、すなわち、"Behavior"を実現することができる。
【0033】Behaviorのメカニズムは、「センサ」、「ルーティング」、「スクリプト」という3つの要素の連携動作によって実現される。すなわち、(1)センサノードとは、3次元仮想世界に配置されたオブジェクトなどのノードに対してあらかじめ関連付けられ、VRMLファイルとして記述されたものである。そして、このセンサノードは、センサノードに含まれるフィールドの変化に基づいて外部イベントを感知して、VRMLシーン内にイベントを発生させる。
【0034】(2)発生したイベントは、VRMLファイルとして記述されたルーティングに基づいて、オブジェクトの挙動を規定するプログラムである外部スクリプトにルーティング、すなわち伝達される。
【0035】(3)外部スクリプトには、イベントが到来した時点で呼び出されるメソッドがあらかじめ記述されている。ルーティングによって伝達されたイベントを受け取った外部スクリプトは、メソッドの記述に基づく処理を実行する。その後、外部スクリプトは、その処理結果とルーティングの記述に基づいてVRMLシーン内の該当するセンサノードのフィールド値を変更する。
【0036】VRMLでは、センサノードとして、例えば、指定されたオブジェクト上をマウスカーソルが通過したりクリックしたときにイベントを発生する"TouchSensor"や、指定された領域内にユーザの視点(ViewPoint)が侵入した場合にイベントを発生する"ProximittySensor"、所定時刻の到来または所定時間間隔が経過する毎に発生する"TimerSensor"などが定義されている。
【0037】なお、図1において、サーバまたはクライアントと呼ばれるホスト端末は、通常、ワークステーションまたはパーソナルコンピュータと呼ばれるコンピュータシステム上で、サーバアプリケーションまたはクライアントアプリケーションを稼動することによって実現される。
【0038】次に、図2を参照して、この種のコンピュータシステム500のハードウェア構成例を説明する。システム500のメイン・コントローラであるプロセッサ511は、例えば、CPU(Central Processing Unit)と呼ばれるLSI(Large Scale Integration)チップで構成される。そして、CPUは、オペレーティングシステムOSの制御下で、各種のアプリケーションを実行するようになっている。OSは、より好ましくはGUI(Graphical User Interferface)環境を提供する方がよい。このようなOSとしては、例えば、UNIX(登録商標)、または、米Microsoft社のWindows98/NT(登録商標)であってもよい。
【0039】図2に示すように、プロセッサ511は、バス517によって他の機器類(後述)と相互に接続されている。バス517上の各機器にはそれぞれ固有のメモリアドレスまたはI/Oアドレスが付与されている。したがって、プロセッサ11はこれらアドレスによって機器へのアクセスが可能となっている。バス17の一例としてはPCI(Peripheral Component Interconnect)バスがある。
【0040】メモリ512は、プロセッサ511において実行されるプログラムコードを格納したり、実行中の作業データを一時保管するために使用される記憶装置である。図2に示すメモリ512は、不揮発性及び揮発性メモリ双方を含むものである。
【0041】ディスプレイ・コントローラ513は、プロセッサ511が発行する描画命令を実際に処理するための専用コントローラである。そして、ディスプレイ・コントローラ513は、例えばSVGA(Super Video Graphic Array)またはXGA(eXtended Graphic Array)相当のビットマップ描画機能をサポートするものである。ディスプレイコントローラ513において処理された描画データは、例えばフレーム・バッファ(図示略)に一旦書き込まれた後、表示装置521に画面出力される。ディスプレイ521としては、例えば、CRT(Cathode RayTube)ディスプレイや、液晶表示ディスプレイ(Liquid Crystal Display)などがある。
【0042】入力機器インターフェース514は、キーボード522やマウス523などのユーザ入力機器をシステム500に接続するための装置である。入力機器インターフェース514は、キーボード522によるキー入力またはマウス523を介した座標指示入力に応答して、プロセッサ511に対して割り込みを発生する。
【0043】ネットワークインターフェース515は、Ethernetなどの所定の通信プロトコルにしたがって、システム500をLAN(Local Area Network)などのネットワークに接続することができる。ネットワークインターフェース515は、一般に、LANアダプタ・カードの形態で提供され、マザーボード(図示略)上のPCIバス・スロットに装着して用いられる。ただし、ネットワークインターフェースではなく、モデム(図示略)経由で外部ネットワークに接続することもできる。
【0044】LAN上では、複数のホスト(コンピュータ)がトランスペアレントな状態で接続され、分散コンピューティング環境が構築されている。また、ホストの一部はルータとして稼動し、さらに他のLANやインターネットなどの外部ネットワークに接続されている。インターネット上では、ソフトウェア・プログラムやデータ・コンテンツなどのディストリビューションが行われる(周知)。
【0045】外部機器インターフェース516は、ハードディスクドライブ(HDD)524やメディアドライブ525などの外部装置をシステム500に接続するための装置である。外部機器インターフェース516は、例えば、IDE(Integrated Drive Electronics)やSCSI(Small Computer System Interface)などのインターフェース規格に準拠しているものとする。
【0046】HDD524は、記憶媒体としての磁気ディスクを固定的に搭載した外部記憶装置であり(周知)、記憶容量やデータ転送速度などの点で他の外部記憶装置よりも優れている。ソフトウェア・プログラムを実行可能な状態でHDD526上に置くことをプログラムのシステムへの「インストール」と呼ぶ。通常、HDD524には、プロセッサ511が実行すべきオペレーティングシステムのプログラムコードや、アプリケーションプログラム、デバイスドライバなどが不揮発的に格納されている。
【0047】また、メディアドライブ525は、CD(Compact Disc)やMO(Magneto-Optical disc)、DVD(Digital Versatile Disc)などの可搬型メディアを装填して、データ記録面にアクセスするための装置である。可搬型メディアは、主として、ソフトウェアプログラムやデータファイルなどをコンピュータ可読形式のデータとしてバックアップすることや、これらをシステム間で移動(販売流通配布を含む)する目的で使用されている。
【0048】なお、このようなコンピュータシステム500の一例は、米IBM社のパーソナルコンピュータPC/AT(Personal Computer/Advanced Technology)の互換機または後継機である。
【0049】1−2.コミュニティシステムの動作アーキテクチャ図3は、本実施形態に係る共有仮想空間、すなわちコミュニティシステムにログインしたユーザのコンピュータ100上で、共有仮想空間を表示しかつナビゲーションするための動作アーキテクチャを模式的に示している。上述したように、各ユーザのコンピュータ、すなわちユーザPC100上では、HTMLブラウザとともに、VRMLコンテンツを解釈することが可能なCPブラウザが稼動している。HTMLブラウザは、米Netscape Communications社の"Netscape Navigator"や、米Microsoft社の"Internet Explorer"のようなものであってもよい。
【0050】ユーザPC100は、例えば、最寄のアクセス・ポイント(AP)へのダイヤルアップIP接続などの所定の手続を経てインターネット10に接続される。さらに、ユーザPC100は、HTMLブラウザによってHTTPプロトコルにしたがってWWWサーバ25にアクセスする。そして、WWWサーバ25から共有仮想空間を記述するVRMLファイルを取得すると、これをCPブラウザに渡す。
【0051】CPブラウザは、渡されたVRMLファイルを解析してブラウザ画面上に表示する。また、VRMLファイルにCPサーバ22のアドレスが指定されている場合には、指定されたアドレスにあるCPサーバ22への接続を試みる。同一のVRMLファイルを取得した各CPブラウザは、同一のCPサーバ22への接続を果たす(すなわちログインする)こととなる。この結果、同一のVRMLファイルを取得した各CPブラウザは、VRMLファイルに記述されているVRMLシーンすなわち同じ3次元仮想世界を共有することができる。
【0052】CPサーバ22への接続、すなわち共有仮想空間へのログインに成功すると、それ以後の通信、すなわちCPサーバ22とCPブラウザ間の通信は、所定のサーバ−クライアント間プロトコル(本明細書中では、VSCP(Virtual Society Server Client Protocol)と呼ぶ;下記文献[2]参照)を用いて行われる。このVSCPプロトコルには、ユーザがCPブラウザ22を介して行った変更(例えば、アバタを移動させるなど)をCPサーバ22に通知する機能や、通知された情報をCPサーバ22からさらに他のCPブラウザに通知する機能が含まれているものとする。
文献[2]:Honda, Y, Matsuda, K., Rekimoto, J and Lea, R. "Virtual society". Proc. of VRML'95, San Diego. USA. ACM press, pp. 109-116, 1995.【0053】CPサーバ22は、各CPブラウザが知る必要がある情報(すなわちCPブラウザに送信すべき情報)の配信を、オーラアルゴリズム(下記文献[3]参照)を用いて制限することができる。オーラとは、アバタの周辺の領域、例えばユーザが興味を持つと想定される領域等を意味し、オーラの外側にある事物は興味を持たないとみなして情報を送らないことができる。オーラアルゴリズムを適用することで、配信すべき情報量を制限することができ、各ログインユーザへのネットワークトラフィックが規定の通信容量を越えないように配慮することができる。
文献[3]:Beford, S., and Fahlen, L., "A spacial model of interaction in large virtual environments", Proc. Of G. DeMichelis et al (Eds.) ThirdEuropean Conference on Computer Supported Cooperative Work, Kluwer Academic Publishers, pp. 109-124, 1993.【0054】CPサーバ22によって提供される共有仮想空間上には、仮想空間の町並み等を構成するビルディングや、各ユーザの分身であるアバタなど、さまざまな物体が存在している。これらの物体や物体の動作、その他仮想世界上のアプリケーションは、共有仮想空間に存在する(すなわちログインしている)各ユーザ間で共有され、本明細書中では「共有アプリケーション」と呼ばれる。
【0055】AO(Application Object)サーバ23上のAOは、共有アプリケーション(shared application)を管理する。AOの開発環境は、主にJava言語やC++言語などである。AOは、CPサーバ22の内部情報へのアクセスやタイマーなどのイベントハンドラ、AOが管理する共有物体を制御するAPI(Application Programming Interface)を提供する。ここで言う共有物体には、各ユーザPCのブラウザ上に出現する(すなわち共有される)オブジェクト、例えば仮想空間の町並みを構成するビルディング等、基本的な状態が変化しないオブジェクト(基本オブジェクト)や、ログインユーザの分身であるアバタ等、更新可能なオブジェクト(更新オブジェクト)、さらには、ログインユーザが取得し保管するアイテムや機能などが含まれる。また、ログインユーザによるアイテムや機能の取得や廃棄は、例えば自分の分身であるアバタ等が、所望のアイテムを道端で「拾う」等の仮想的な行為によって実現される。
【0056】図4は、CPサーバ22におけるユーザ管理テーブルTAを説明するための図である。同図に示すように、ユーザ管理テーブルTAは、ログインユーザの分身であるアバタ等、更新可能なオブジェクト(更新オブジェクト)を管理するためのテーブルである。ユーザ管理テーブルTAは、ユーザIDと、更新オブジェクトのニックネームと、更新オブジェクトの各種パラメータと、更新オブジェクトの位置座標と、更新オブジェクトの視点座標と、IPアドレスとにより構成されている。ユーザIDは、共有仮想空間の提供を受けるユーザ毎に付与されるユニークなIDである。更新オブジェクトの各種パラメータは、例えば更新オブジェクトの形状、色等である。更新オブジェクトの位置座標及び視点座標は、例えば更新オブジェクトが各ユーザのアバタである場合には、該アバタの位置及び該アバタの視点位置を示す座標である。
【0057】このような構成のユーザ管理テーブルTAは、次のようにして作成される。まず、ユーザPC100のブラウザとCPサーバ22が接続のためのデータの授受を開始すると、CPサーバ22は、該ブラウザにユニークなユーザIDを付与する。そして、CPサーバ22は、該ブラウザからユーザの更新オブジェクト(例えば、アバタ)に係るニックネーム、該更新オブジェクトの各種パラメータ、共有仮想空間における更新オブジェクトの位置座標及び視点座標、及びIPアドレスを取得し、これらをユーザIDに対応付けてユーザ管理テーブルに登録する。
【0058】なお、本実施形態では、CPサーバ22に接続しに来た順番に、「1」、「2」・・・、といったユーザIDが付与される。また、各ブラウザに付与されたユニークなユーザIDは、ユーザPC100のメモリ512にそれぞれ格納される。また、CPサーバ22は、図4に示すユーザ管理テーブルの他に、仮想空間の町並みを構成するビルディング等、基本的な状態が変化しないオブジェクト(基本オブジェクト)を管理するためのテーブルを備えているが、本願発明の趣旨とは直接関係がないため、図示及び説明を省略する。
【0059】図5は、ユーザPC100と、CPサーバ22と、AOサーバ23との間における通信手順を説明するための図である。共有仮想空間の提供を希望するユーザAがユーザPC100AのKBD522等を操作し、WWWサーバ25へアクセスすると、WWWサーバ25は、ユーザPC100AへVRMLファイル(例えば、ユーザが希望する共有仮想空間を選択するためのメニュー画面情報等)を送信する。ユーザPC100Aは、WWWサーバ25からVRMLファイルを受信すると、該VRMLファイルをCPブラウザに渡す。CPブラウザは、渡されたVRMLファイルを解析してブラウザ画面上に表示する。ユーザAは、ブラウザ画面を確認しながらユーザPC100AのKBD522等を操作して、希望する共有仮想空間の選択を行う。
【0060】ユーザAによって共有仮想空間の選択が行われると、ユーザAのCPブラウザは、該共有仮想空間に対応するアドレス(URL)を取得すると共に、自ブラウザに付与されたユニークなユーザIDを読み出し、指定されたアドレスにあるCPサーバ22への接続を試みる(ステップC1)。CPサーバ22への接続、すなわち共有空間へのログインに成功すると、CPサーバ22は、該要求に含まれるユーザID及び前述したユーザ管理テーブル(図4参照)を参照して、仮想空間の提供を希望するユーザを特定すると共に、該ユーザの周囲に存在する他のユーザのユーザIDと共有データ等からなる周囲情報テーブルTB(図6参照)を作成する。
【0061】具体的には、CPサーバ22は、該要求からユーザAのCPブラウザに付与されたユーザIDを取得すると、図7に示すように、例えばそのCPブラウザのユーザ(ユーザA)に対応したアバタaを中心とする所定の半径Rvの球面体を視認可能領域として設定する。そして、この視認可能領域内に存在する他のユーザ(ユーザB)に対応したアバタbを、ユーザ管理テーブルTAに登録されている位置座標等から認識し、認識した他のユーザに係る更新オブジェクトとユーザIDとをテーブル化することで、図6に示す周囲情報テーブルTBを生成する。なお、この周囲情報テーブルに関しては、ネットワークのトラヒックを考慮して例えば視認可能領域内に所定人数を超えるアバタが入り込んだときは、そのうちの視認可能領域の中心から近い位置にいる所定人数のアバタに係る情報のみを、周囲情報テーブルTBに登録するようにしても良い。
【0062】CPサーバ22は、周囲情報テーブルTBを生成すると、該周囲情報テーブルTBをユーザPC100A宛てに送信する(ステップC2)。この結果、ユーザPC100AのCPブラウザ、すなわちユーザAのディスプレイ521には、ユーザに対応したアバタから見た共有物体(ここでは、ユーザBのアバタb)を含む共有仮想空間が表示される。このような処理が同一共有仮想空間の提供を希望する各ユーザ毎に行われることにより、各ユーザのディスプレイ521には、各ユーザに対応したアバタから見た共有物体を含む共有仮想空間が表示される。
【0063】このようにCPサーバ22に接続された状態において、ユーザがPC100のKBD522等を操作して自己を表すアバタを移動させると、対応するスクリプトがCPブラウザ上で起動する。このスクリプトは、CPサーバ22に対してVSCPプロトコルに従ったメッセージを送信する。CPサーバ22は、該CPサーバ22と接続されている他の全てのCPブラウザに対して同じメッセージを送り返す。この結果、メッセージを受信した各CPブラウザ、すなわち各ユーザのモニタ画面には、移動したアバタが表示される。
【0064】2.コミュニティ・システムを利用したファイル転送処理前掲図5に示すように、各ユーザが同一仮想空間を共有している状態において、ユーザAは自己が所有するファイルをユーザBに転送しようと考えたとする。ユーザAは、PC100Aのディスプレイ521にユーザBのアバタbが表示されていることを確認すると、KBD522等を操作して、複数のファイルが格納されているフォルダウインドウFWを開く。次にユーザAは、ユーザBに転送すべきファイルFをマウス523でドラッグし、ドラッグしたファイルFを仮想空間画像ウインドウVWに表示されているアバタbに対応する位置でドロップする(図8参照)。
【0065】ユーザAによってドラッグアンドドロップ操作が行われると、ユーザPC100Aのブラウザは、図9に示すファイル転送要求処理を実行する。ユーザPC100Aのブラウザは、アバタb上にファイルFがドラッグアンドドロップされたことを検知すると、メモリ512に格納されている周囲情報テーブルからアバタbに対応するユーザBのユーザIDを取得すると共に、転送すべきファイルとして指定されたファイルFに関する情報(例えば、ファイル名等)を取得する。(ステップS1)。
【0066】ユーザPC100Aのブラウザは、ステップS2に進むと、メモリ512に格納された自動転送要求フラグを参照し、ファイル転送要求を行って良いか否かを判断する。この自動転送要求フラグは、無条件でファイル転送要求を行って良いか否かを判断するためのフラグであり、ユーザがKBD522等を操作することにより設定変更可能となっている。ここで、ユーザPC100Aのブラウザは、自動転送要求フラグが“0”であり、無条件でファイルの転送要求を行うべきではないと判断すると(ステップS2;NO)、ステップS3に進み、ユーザAにファイル転送要求を行って良いか否かの判断を仰ぐべく、「ユーザAさん、ユーザBさんにファイルの転送要求を行いますか?」といったメッセージを含むダイアログを立ち上げ、ダイアログボックスDB1をディスプレイ521に表示する(図10参照)。
【0067】ユーザAは、ディスプレイ521に表示されたメッセージを確認した後、ファイルの転送要求を行うべき旨の入力操作(例えば、「O.K」ボタンをクリックする等)を行う。ユーザPC100Aのブラウザは、ユーザAによりファイルFの転送要求を行うべき旨の入力操作が行われたことを検出すると(ステップS4;YES)、ステップS5に進む。ユーザPC100Aのブラウザは、ステップS5において、ユーザPC100B(ユーザBに対応)にファイルFの転送要求を行うべく、ユーザAのユーザIDをメモリ512から読み出し、読み出したユーザAのユーザIDと、ファイルFの受け手側ユーザBのユーザIDと、ファイルFに関する情報とを含む転送要求情報を生成する。そして、ユーザPC100Aのブラウザは、ステップS6に進み、生成した転送要求情報に宛先IPアドレス(CPサーバ22のIPアドレス)を付加してCPサーバ22へ送信し(図11に示す■)、処理を終了する。
【0068】一方、ユーザPC100Aのブラウザは、ステップS2において、参照した自動転送要求フラグが“1”であり、無条件でファイル転送要求を行っても良いと判断すると(ステップS2;YES)、ステップS5→ステップS6と進み、生成した転送要求情報をCPサーバ22へ送信し、処理を終了する。また、ユーザPC100Aのブラウザは、ステップS3において、ダイアログボックスDB1をディスプレイ521に表示した後、ユーザAによりファイルFの転送要求を行うべきでない旨の入力操作が行われたことを検出した場合には(ステップS4;NO)、転送要求情報を生成することなく、処理を終了する。
【0069】ユーザPC100Aが上述した処理を実行し、転送要求情報をCPサーバ22へ送信すると、CPサーバ22は、該転送要求情報の送信先を特定すべく、前述したユーザ管理テーブルを参照し、該ユーザIDに対応するIPアドレスを読み出す。
【0070】CPサーバ22は、読み出したIPアドレスに基づき、ユーザBに対応したユーザPC100Bへ転送要求情報を転送する(図11に示す■)。ユーザPC100Bのブラウザは、ユーザPC100AからCPサーバ22経由で該転送要求情報を受け取ると、図12に示ファイル転送要求受入処理を実行する。
【0071】ユーザPC100Bのブラウザは、ネットワークインタフェース515を介して転送要求情報を受け取ると(ステップSa1)、ステップSa2に進む。ユーザPC100Bのブラウザは、ステップSa2において、メモリ512に格納された転送要求受入フラグを参照し、無条件に(すなわち、ファイルの送り手が誰であるかを問わずに)ファイル転送要求を拒絶するか否かを判断する。ユーザPC100Bのブラウザは、転送要求受入フラグが“1”であり、無条件にファイル転送要求を拒絶すべきでないと判断すると(ステップSa2;NO)、ステップSa3に進む。ステップSa3に進むと、ユーザPC100Bのブラウザは、メモリ512に格納されている転送要求受入管理テーブルを参照し、該ファイル転送要求を受け入れるべきか否かを判断する。
【0072】図13は、転送要求受入管理テーブルの内容を示した図である。転送要求受入管理テーブルは、ユーザIDと、ファイル転送要求の受け入れ有無を示す情報とを対応付けした表である。同図から明らかなように、ユーザAを示すユーザID(ID:「1」)には、ファイル転送要求を受け入れるべき「許可」が対応付けられている。なお、各ユーザに対応するユーザIDは、例えば周囲情報テーブルTB(図6参照)から取得することが可能である。ユーザPC100Bのブラウザは、転送要求情報に含まれるユーザA(転送要求情報の送信元)のユーザIDと、該ファイル受け入れ管理テーブルとを比較する。
【0073】そして、ユーザPC100Bのブラウザは、ユーザAからのファイル転送要求を許可すべきであると判断すると(ステップSa4;YES)、ユーザBにファイル転送要求を許可して良いか否かの判断を促すダイアログを立ち上げ、「ユーザBさん、ユーザAさんからファイルFの転送要求がきました。ファイル転送を許可しますか?」といったメッセージを含むダイアログボックスDB2(図14参照)をディスプレイ521に表示する(ステップSa5)。
【0074】ユーザBは、ディスプレイ521に表示されたメッセージを確認した後、KBD522を操作して、ユーザAからのファイル転送を許可すべき旨の入力(例えば、「O.K」ボタンをクリックする等)を行う。ユーザPC100Bのブラウザは、ユーザBによってファイル転送要求を許可すべき旨の入力操作が行われたことを検知すると(ステップSa6;YES)、ファイル転送要求を許可する旨の応答メッセージを作成すると共に、該応答メッセージをCPサーバ22へ送信し(ステップSa7)、処理をする(図11に示す■)。
【0075】一方、ユーザPC100Bのブラウザは、ステップSa2において、参照した転送要求受入フラグが“0”であり、無条件にファイル転送要求を拒絶すべきであると判断すると(ステップSa2;YES)、ステップSa8に進む。ユーザPC100Bのブラウザは、ステップSa8において、ファイル転送要求を拒絶する旨の応答メッセージを作成すると共に、該応答メッセージをCPサーバ22へ送信し、処理を終了する。
【0076】また、ユーザPC100Bのブラウザは、ユーザAからのファイル転送要求を拒絶すべきであると判断した場合(ステップSa4;NO)、及びユーザBによってファイル転送要求を拒絶すべき旨の入力操作が行われたことを検知した場合には(ステップSa6;NO)、ステップSa8に進み、ファイル転送を拒絶する旨の応答メッセージを作成すると共に、該応答メッセージをCPサーバ22へ送信し、処理を終了する。
【0077】ユーザPC100Bが上述した処理を実行し、ファイル転送要求に対する応答メッセージをCPサーバ22へ送信すると、CPサーバ22は該応答メッセージをユーザPC100Aへ転送する(図11に示す■、■)。ユーザPC100Aのブラウザは、ネットワークインタフェース515を介して応答メッセージを受け取ると、該応答メッセージの内容に基づき、ファイルを転送するか否かを決定する。すなわち、ユーザPC100Aのブラウザは、受け取った応答メッセージがファイル転送を許可する旨の応答メッセージであると判断すると、ユーザBに転送すべきファイルFをメモリ512から読み出し、読み出したファイルFをCPサーバ22経由でユーザPC100Bへ送信する(図15参照)。
【0078】ユーザPC100Bのブラウザは、CPサーバ22、ネットワークインタフェース515を介してファイルFを受け取ると、ユーザBに受け取ったファイルFの格納先を特定させるべく、図16に示すダイアログボックスDB3をディスプレイ521に表示する。ユーザBは、ディスプレイ521に表示されたメッセージを確認した後、ファイルFの格納先を特定するための入力操作(例えば、ファイルFの格納先としてデスクトップを選択する等)を行う。このようにして、ファイルFは、ユーザAのユーザPC100AからユーザBのユーザPC100Bへ転送される。
【0079】一方、ユーザPC100Aのブラウザは、受け取った応答メッセージがファイル転送を拒絶する旨の応答メッセージであると判断すると、ユーザBによってファイルの転送が拒絶された旨をユーザAに報知すべく、図17に示すダイアログボックスDB4をディスプレイ521に表示して、ファイルFの転送処理を終了する。
【0080】以上説明したように、本実施形態に係る仮想空間システム100によれば、ユーザは仮想空間を利用してファイルの授受を行うことができる。また、ユーザは、表示装置420に表示されるファイル受け手側のアバタにより相手の存在を認識しながら、転送すべきファイルを該アバタ上にドラッグアンドドロップするという直感的な操作により、ファイルを転送することができる。すなわち、ユーザは、実際にものを相手に渡す感覚でファイルを転送することができるため、転送間違いを減らすことが可能となる。
【0081】また、仮想空間を利用してファイルの授受を行う際には、受け手側がファイルの受け取りを了承したか否かの確認を行う。受け手側では、ファイルを受け取る前に、ファイルの送り主、ファイルの内容等を把握することができるため、受け手側のユーザは必要のないファイルを受け取らずに済むことができる。また、受け手側がファイルの受け取りを了承した場合のみ、ファイルが転送されるため、各クライアント端末400の間に介在するサーバ200は、ファイル蓄積手段を新たに設ける必要もない。また、ファイルの転送は、送り手と受け手の1対1通信であるため、第3者による覗き等も軽減することができる。
【0082】なお、上述した本実施形態では、ドラッグアンドドロップ操作により、転送すべきファイル及び転送すべき相手の特定を行ったが、例えば転送すべきファイルをクリック操作等によって特定し、次いで転送すべき相手のアバタをクリック操作等によって特定するようにしても良い。
【0083】また、上述した本実施形態に係る転送要求情報は、自己のユーザIDを含む構成であったが、自己のユーザIDを含まない構成とすることも可能である。すなわち、ファイル転送元のユーザPC100のブラウザは、ファイル受け手側ユーザのユーザIDと、ファイルFに関する情報を含む転送要求情報を生成し、CPサーバ22へ送信する。
【0084】CPサーバ22は、ユーザ管理テーブルを参照して転送要求情報受け手側のユーザに対応するIPアドレスを読み出すと共に、該転送要求情報パケットのヘッダに含まれる送信元IPアドレスを取得して、送信元ユーザのユーザIDを読み出す。
【0085】CPサーバ22は、読み出した転送要求情報送信元のユーザに対応するユーザIDを転送要求情報に含めると共に、該転送要求情報に転送要求情報受け手側のユーザに対応するIPアドレスを付加して、PC100へ送信する。
【0086】また、上述した本実施形態は、CPサーバ22と、AOサーバ23と、WWWサーバ25がそれぞれ独立したコンピュータシステムとして存在するアーキテクチャを想定しているが、CPサーバ22、AOサーバ23、WWWサーバ25が単一のサーバ・マシン上で動作する構成としても良い。
【0087】3.変形例3−1.ネットワークシステムの全体構成図18において、200は全体として本発明を適用した携帯電話機MS3が接続されているネットワークシステムを示し、通信サービスの提供エリアの所望の大きさに分割したセル内にそれぞれ固定無線局である基地局CS1〜CS4が設置されている。
【0088】これらの基地局CS1〜CS4には、移動無線局である携帯情報端末MS1及びMS2やカメラ付ディジタル携帯電話機MS3及びMS4が例えばW−CDMA(Wideband-Code Division Multiple Access)と呼ばれる符号分割多元接続方式によって無線接続されるようになされており、2[GHz]の周波数帯域を使用して最大2[Mbps]のデータ転送速度で大容量データを高速にデータ通信し得るようになされている。
【0089】このように携帯情報端末MS1及びMS2やカメラ付ディジタル携帯電話機MS3及びMS4は、W−CDMA方式によって大容量データを高速にデータ通信し得るようになされていることにより、音声通話だけでなく電子メールの送受信、簡易ホームページの閲覧、画像の送受信等の多種に及びデータ通信を実行し得るようになされている。また基地局CS1〜CS4は、有線回線を介して公衆回線網INWに接続されており、当該公衆回線網INWにはインターネット10や、図示しない多くの加入者有線端末、コンピュータネットワーク及び企業内ネットワーク等が接続されている。
【0090】公衆回線網INWには、インターネット・サービス・プロバイダ(IPS)のアクセスサーバASも接続されており、当該アクセスポイントASには当該インターネットサービスプロバイダが保有するコンテンツサーバTS等が接続されている。このコンテンツサーバTSは、加入者有線端末や携帯情報端末MS1、MS2及びカメラ付ディジタル携帯電話機MS3、MS4からの要求に応じて例えば簡易ホームページ等のコンテンツをたとえばコンパクトHTML(Hyper Text Markup Language)形式のファイルとして提供するようになされている。
【0091】このコンパクトHTMLとは、HTMLのサブセットであり、限られたサイズの表示装置の中で反映可能なタグのみ残し他の部分を切り捨てたものである。例えばNTTドコモ社のサービスであるiModeではiモード用HTMLを採用しており、これは携帯電話に必要な機能を絞り込み約30種のタグを使用している、テキストの文字属性や色は指定できず、画像も2階調のGIFファイルが推奨されるなどの限定条件がある。このようなコンパクトHTMLや移動通信用プロトコルのWAP(Wireless Application Pritocol)にて使われる記述言語であるHDML(handheld Device Markup Language)、WML(Wireless Markup Language)等を用いることで、表示領域や表示能力に制限のある携帯端末などで閲覧する簡易ホームページのファイルを作成することができる。
【0092】ところでインターネット10には、上述した本実施形態と同様、ルータ21及びLAN20を介してCPサーバ、AOサーバ23、WWWサーバ25等の多数のサーバが接続されており、TCP/IP(Transmission Control Protocol/Internet Protocol)及びVSCP(Virtual Society Server Client Protocol)に従って加入者有線端末や携帯情報端末MS1、MS2及びカメラ付ディジタル携帯電話機MS3、MS4からCPサーバ、AOサーバ23、WWWサーバ25等に対してアクセスし得るようになされている。
【0093】因みに携帯情報端末MS1、MS2及びカメラ付ディジタル携帯電話機、MS3、MS4は、図示しない基地局CS1〜CS4までを2[Mbps]の簡易トランスポートプロトコルで通信し、当該基地局CS1〜CS4からインターネット10を介してCPサーバ、AOサーバ23、WWWサーバ25等までをTCP/IP及びVSCPで通信するようになされている。
【0094】なお管理制御装置MCUは、公衆回線網INWを介して加入者有線端末や携帯情報端末MS1、MS2及びカメラ付ディジタル携帯電話機MS3、MS4に接続されており、当該加入者有線端末や携帯情報端末MS1、MS2及びカメラ付ディジタル携帯電話機MS3、MS4に対する認証処理や課金処理等を行うようになされている。
【0095】3−2.カメラ付ディジタル携帯電話機の外観構成次に本発明を適用したカメラ付ディジタル携帯電話機MS3の外観構成について説明する。図19に示すようにカメラ付ディジタル携帯電話機MS3は、中央のヒンジ部211を境に表示部212と本体213とに分けられており、当該ヒンジ部211を介して折り畳み可能に形成されている。
【0096】表示部212には、上端左部に送受信用のアンテナ214が引出し及び収納可能な状態に取り付けられており、当該アンテナ214を介して基地局CS3との間で電波を送受信するようになされている。また表示部212には、上端中央部にほぼ180度の角度範囲で回動自在なカメラ部215が設けられており、当該カメラ部215のCCDカメラ216によって所望の撮像対象を撮像し得るようになされている。ここで表示部212は、カメラ部215がユーザによってほぼ180度回動されて位置決めされた場合、図20に示すように当該カメラ部215の背面側中央に設けられたスピーカ217が正面側に位置することになり、これにより通常の音声通話状態に切り換わるようになされている。
【0097】さらに表示部212には、その正面に液晶ディスプレイ218設けられており、電波の受信状態、電池残量、電話帳として登録されている相手先名や電話番号及び発信履歴等の他、電子メールの内容、簡易ホームページ、カメラ部215のCCDカメラ216で撮像した画像を表示し得るようになされている。一方、本体213には、その表面「0」〜「9」の数字キー、発呼キー、リダイヤルキー、終話及び電源キー、クリアキー及び電子メールキー等の操作キー219が設けられており、当該操作キー219を用いて各種指示を入力し得るようになされている。
【0098】また本体213には、操作キー219の下部にメモボタン220やマイクロフォン221が設けられており、当該メモボタン220によって通話中の間の音声を録音し得ると共に、マイクロフォン221によって通話時のユーザの音声を集音するようになされている。さらに本体213には、操作キー219の上部に回動自在なジョグダイヤル222が当該本体213の表面から僅かに突出した状態で設け等られており、当該ジョグダイヤル222に対する回動操作に応じて液晶ディスプレイ218に表示されている電話帳リストや電子メールのスクロール動作、簡易ホームページの捲り動作及び画像の送り動作等の種々の動作を実行するようになされている。
【0099】例えば本体213は、ユーザによジョグダイヤル222の回動操作に応じて液晶ディスプレイ218に表示された電話帳リストの複数の電話番号の中から所望の電話番号が選択され、当該ジョグダイヤル222が本体213の内部方向に押圧されると、選択された電話番号を確定して当該電話番号に対して自動的に発呼処理を行うようになされている。なお本体213は、背面側に図示しないバッテリパックが挿着されており、終話及び電源キーがオン状態になると、当該バッテリパックから各回路部に対して電力が供給されて動作可能な状態に起動する。
【0100】ところで本体213には、当該本体213の左側面上部に抜差自在なメモリスティック(ソニー株式会社の商標)223を挿着するためのメモリスティックスロット224が設けられており、メモボタン220が押下されるとメモリスティック223に通話中の相手の音声を記録したり、ユーザの操作に応じて電子メール、簡易ホームページ、CCDカメラ216で撮像した画像を記録し得るようになされている。
【0101】ここでメモリスティック223は、本願出願人であるソニー株式会社によって開発されたフラッシュメモリカードの一種である。このメモリスティック223は、縦21.5×横50×厚さ2.8[mm]の小型薄型形状のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(ElectricallyErasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものであり、10ピン端子を介して画像や音声、音楽等の各種データの書き込み及び読み出しが可能となっている。
【0102】またメモリスティック223は、大容量化等による内蔵フラッシュメモリの仕様変更に対しても、使用する機器で互換性を確保することができる独自のシリアルプロトコルを採用し、最大書込速度1.5[MB/S]、最大読出速度2.45[MB/S]の高速性能を実現していると共に、誤消去防止スイッチを設けて高い信頼性を確保している。従ってカメラ付ディジタル携帯電話機MS3は、このようなメモリスティック223を挿着可能に構成されているために、当該メモリスティック223を介して他の電子機器との間でデータの共有化を図ることができるようになされている。
【0103】3−3.カメラ付ディジタル携帯電話機の回路構成図21に示すように、カメラ付ディジタル携帯電話機MS3は、表示部212及び本体213の各部を統括的に制御するようになされた主制御部250に対して、電源回路部251、操作入力制御部252、画像エンコーダ253、カメラインターフェース部254、LCD(Liquid Crystal Display)制御部255、画像デコーダ256、多重分離部257、記録再生部262、変復調回路部258及び音声コーデック259がメインバス260を介して互いに接続されると共に、画像エンコーダ253、画像デコーダ256、多重分離部257、変復調回路部258及び音声コーデック259が同期バス261を介して互いに接続されて構成されている。
【0104】電源回路部251は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話機MS3を動作可能な状態に起動する。カメラ付ディジタル携帯電話機MS3は、CPU、ROM及びRAM等でなる主制御部250の制御に基づいて、音声通話モード時にマイクロフォン221で集音した音声信号を音声コーデック259によってディジタル音声データに変換し、これを変復調回路部258でスペクトラム拡散処理し、送受信回路部262でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ214を介して送信する。
【0105】またカメラ付ディジタル携帯電話機MS3は、音声通話モード時にアンテナ214で受信した受信信号を増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部258でスペクトラム逆拡散処理し、音声コーデック259によってアナログ音声信号に変換した後、これをスピーカ217を介して出力する。さらにカメラ付ディジタル携帯電話機MS3は、データ通信モード時に電子メールを送信する場合、操作キー219及びジョグダイヤル222の操作によって入力された電子メールのテキストデータを操作入力制御部252を介して主制御部250に送出する。
【0106】主制御部250は、テキストデータを変復調回路部258でスペクトラム拡散処理し、送受信回路部262でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ214を介して基地局CS3(図18参照)へ送信する。これに対してカメラ付ディジタル携帯電話機MS3は、データ通信モード時に電子メールを受信する場合、アンテナ214を介して基地局CS3から受信した受信信号を変復調回路部258でスペクトラム逆拡散処理して元のテクストデータを復元した後、LCD制御部255を介して液晶ディスプレイ218に電子メールとして表示する。この後カメラ付ディジタル携帯電話機MS3は、ユーザの操作に応じて受信した電子メールを記録再生部262を介してメモリスティック223に記録することも可能である。
【0107】一方、カメラ付ディジタル携帯電話機MS3は、データ通信モード時に画像データを送信する場合、CCDカメラ216で撮像された画像データをカメラインターフェース部254を介して画像エンコーダ253に供給する。因みにカメラ付ディジタル携帯電話機MS3は、画像データを送信しない場合には、CCDカメラ216で撮像した画像データをカメラインターフェース部254及びLCD制御部255を介して液晶ディスプレイ218に直接表示することも可能である。画像エンコーダ253は、CCDカメラ216から供給された画像データを例えばMPEG(Moving Picture Experts Group )2やMPEG4等の所定の符号化方式によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部257に送出する。
【0108】このとき同時にカメラ付ディジタル携帯電話機MS3は、CCDカメラ216で撮像中にマイクロフォン221で集音した音声を音声コーデック259を介してディジタルの音声データとして多重分離部257に送出する。多重分離部257は、画像エンコーダ253から供給された符号化画像データと音声コーデック259から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部258でスペクトラム拡散処理し、送受信回路部262でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナ214を介して送信する。これに対してカメラ付ディジタル携帯電話機MS3は、データ通信モード時に例えば簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナ214を介して基地局CS3から受信した受信信号を変復調回路部258でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部257に送出する。
【0109】多重分離部257は、多重化データを分離することにより符号化画像データと音声データとに分け、同期バス261を介して当該符号化画像データを画像デコーダ256に供給すると共に当該音声データを音声コーデック259に供給する。画像デコーダ256は、符号化画像データをMPEG2やMPEG4等の所定の符号化方式に対応した復号化方式でデコードすることにより再生動画像データを生成し、これをLCD制御部255を介して液晶ディスプレイ218に供給し、これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが表示される。
【0110】このとき同時に音声コーデック259は、音声データをアナログ音声信号に変換した後、これをスピーカ217に供給し、これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まる音声データが再生される。この場合も電子メールの場合と同様にカメラ付ディジタル携帯電話機MS3は、受信した簡易ホームページ等にリンクされたデータをユーザの操作により記録再生部262を介してメモリスティック223に記録することが可能である。かかる構成に加えてカメラ付ディジタル携帯電話機MS3の主制御部250のROMには、本実施形態と同様のHTMLブラウザ、CPブラウザが格納されると共に、ファイル転送要求処理を実行するためのプログラム(図9参照)やファイル転送要求受入処理を実行するためのプログラム(図12参照)が格納されており、これら各種プログラム等に基づいてファイル転送要求処理、ファイル転送要求受入処理、ファイル転送処理等を実行し得るようになされている。
【0111】このように上述した一連の処理を実行するプログラム、ブラウザ等をノートパソコン1及びカメラ付ディジタル携帯電話機MS3にインストールし、当該ノートパソコン1及びカメラ付ディジタル携帯電話機MS3にインストールにおいて実行可能な状態にするために用いられるプログラム格納媒体としては、例えばフロッピー(登録商標)ディスク、CD−ROM(Compact Disc-Read Only Memory)、DVD(Digital Versataile Disc )等のパッケージメディアのみならず、サイバージェスチャープログラム180が一時的もしくは永続的に格納される半導体メモリや磁気ディスク等で実現しても良い。
【0112】また、これらプログラム格納媒体に上述した一連の処理を実行するプログラム、ブラウザ等を格納する手段としては、ローカルエリアネットワークやインターネット、ディジタル衛星放送等の有線及び無線通信媒体を利用しても良く、ルータやモデム等の各種通信インターフェースを介して格納するようにしても良い。さらに上述した変形例においては、本発明の情報処理装置としてノートパソコン1及びカメラ付ディジタル携帯電話機MS3に適用するようにした場合について述べたが、携帯情報端末MS1及びMS2等の他の種々の情報処理装置に適用するようにしても良い。
【0113】
【発明の効果】以上説明したように、本発明によれば、ファイル転送を行う際、仮想空間内のアバタをユーザインタフェースとして利用することにより、確実性の高いファイル転送を実現することができる。
【出願人】 【識別番号】000002185
【氏名又は名称】ソニー株式会社
【出願日】 平成12年10月27日(2000.10.27)
【代理人】 【識別番号】100098084
【弁理士】
【氏名又は名称】川▲崎▼ 研二 (外2名)
【公開番号】 特開2002−132618(P2002−132618A)
【公開日】 平成14年5月10日(2002.5.10)
【出願番号】 特願2000−329382(P2000−329382)