本発明の実施の形態を図1ないし図25に基づいて説明する。
図1は、仮想オフィス空間提供システム全体のシステム構成例を示すブロック図である。
本システムは、一例として、本社オフィス101、サテライトオフィス201、及びホームオフィス301がLANやWAN等の構内ネットワーク401、インターネット等の外部ネットワーク501を介して接続されてシステム構築されている。構内ネットワーク401及び外部ネットワーク501は通信ネットワークを構成する。図1では、サテライトオフィス201及びホームオフィス301は、象徴的に一つだけ示しているが、実際には、それらのサテライトオフィス201及びホームオフィス301は複数設けられている。
本社オフィス101には、仮想オフィス空間提供装置として機能するサーバ端末111と複数のクライアント端末121とが構内ネットワーク401を介して接続されたサーバクライアントシステムとして構築されている。クライアント端末121は、ユーザ毎に設けられたオフィス122、図1に示す例ではオフィスA、B、Cからなるオフィス122毎に設けられ、各オフィス122にはクライアント端末121を操作するユーザを撮像してユーザの勤務状況を表す画像データを取得するためのCCDカメラ123が設置されている。このCCDカメラ123は、例えばクライアント端末121の後述するディスプレイ1209(図2参照)に固定されたりこのディスプレイ1209に埋め込まれたりするような構成でも良く、あるいは、オフィス122内に設置されたりするような構成でも良く、その両者でも良い。
このようなクライアント端末121は、サーバ端末111に構内ネットワーク401を介して接続されており、この構内ネットワーク401には、他に、通信サーバ151と他の機器161とが接続されている。他の機器161は、例えば、MFPやプリンタ、ネットワークスキャナ等である(全て図示せず)。
サテライトオフィス201は、基本的に本社オフィス101と同様のサーバクライアントシステムが構築されている。つまり、サテライトオフィス201には、仮想オフィス空間提供装置として機能するサーバ端末111と複数のクライアント端末121とが構内ネットワーク401を介して接続されたサーバクライアントシステムとして構築されている。クライアント端末121は、ユーザ毎に設けられたオフィス122、図1に示す例ではオフィスA、B、Cからなるオフィス122毎に設けられ、各オフィス122にはクライアント端末121を操作するユーザを撮像してユーザの勤務状況を表す画像データを取得するためのCCDカメラ123が設置されている。このCCDカメラ123は、例えばクライアント端末121の後述するディスプレイ1209(図2参照)に固定されたりこのディスプレイ1209に埋め込まれたりするような構成でも良く、あるいは、オフィス122内に設置されたりするような構成でも良く、その両者でも良い。
このようなクライアント端末121は、サーバ端末111に構内ネットワーク401を介して接続されており、この構内ネットワーク401には、他に、通信サーバ151と他の機器161とが接続されている。他の機器161は、例えば、MFPやプリンタ、ネットワークスキャナ等である(全て図示せず)。
そして、本社オフィス101とサテライトオフィス201とは、互いの通信サーバ151が専用線等の構内ネットワーク401を介して接続されることで、互いに情報の共有が可能となっている。
ホームオフィス301は、例えば在宅勤務者が使用する。このようなホームオフィス301は、基本構成として、クライアント端末121とCCDカメラ123とから構成される。クライアント端末121は、そのユーザのオフィス122、図1に示す例ではオフィスHからなるオフィス122に設けられ、このオフィス122にはクライアント端末121を操作するユーザを撮像してユーザの勤務状況を表す画像データを取得するためのCCDカメラ123が設置されている。このCCDカメラ123は、例えばクライアント端末121の後述するディスプレイ1209(図2参照)に固定されたりこのディスプレイ1209に埋め込まれたりするような構成でも良く、あるいは、オフィス122内に設置されたりするような構成でも良く、その両者でも良い。
このようなクライアント端末121は、周知の暗号化技術を伴い外部ネットワーク501を介して本社オフィス101の通信サーバ151に接続可能であり、これによって互いに情報の共有が可能となっている。
ここで、本実施の形態では、本社オフィス101、サテライトオフィス201、及びホームオフィス301は、現実世界のオフィス空間を構成する。ところが、本社オフィス101でもA〜Cの各オフィス122は空間的に離れており、本社オフィス101とサテライトオフィス201とホームオフィス301との間では、その空間がより一層広がっている。例えば、本社オフィス101は東京にあり、サテライトオフィス201は大阪にあり、ホームオフィス301は九州にあるかもしれない。別の例としては、本社オフィス101とサテライトオフィス201とホームオフィス301とは、それぞれ国境を跨いで存在するかもしれない。このような場合、本社オフィス101とサテライトオフィス201とホームオフィス301との間の現実の空間は、極めて大きな広がりを持っている。このため、勤務者同士が互いの在席確認をするのは困難であり、雰囲気共有もままならない。そこで、本実施の形態の仮想オフィス空間提供システムは、各クライアント端末121を使用するユーザの勤務状況を表す画像データをどのクライアント端末121でも閲覧可能とする仮想空間を各クライアント端末121のユーザに提供し、勤務者であるユーザ同士の互いの在席確認や雰囲気共有を可能とするものである。
本実施の形態では、このような仮想オフィス空間提供システムを、サーバ端末111とクライアント端末121との必要な仮想オフィス空間提供プログラムをインストールするだけで、極めて容易に構築することができるようにしている。そこで、その仕組みを説明する前に、サーバ端末111とクライアント端末121とのハードウェア構成について概観する。
図2は、サーバ端末111及びクライアント端末121のハードウェア構成を示すブロック図である。
まず、サーバ端末111について説明する。サーバ端末111は、各部を集中的に制御するCPU1101を備えており、このCPU1101には、BIOSなどを記憶した読出し専用メモリであるROM1102と、各種データを書換え可能に記憶してCPU1101の作業エリア等として機能するRAM1103とがバス1104で接続されており、マイクロコンピュータを構成している。さらに、バス1104には、仮想オフィス空間提供プログラム等の各種のコンピュータプログラムがインストールされたHDD1105と、CD−ROM1106に記録されたデータを読み取るCD−ROMドライブ1107と、キーボードやマウス等の入力装置1108と、CRTやLCD等のディスプレイ1109と、外部機器との通信を司るインターフェース1110とが接続されている。サーバ端末111は、インターフェース1110を介して構内ネットワーク401に接続されている。
HDD1105にインストールされている仮想オフィス空間提供プログラム等の各種のコンピュータプログラムは、一例として、CD−ROM1106に元々記録されており、CPU1101によって、そのコンピュータプログラムがCD−ROMドライブ1107で読み取られ、HDD1105にインストールされたものである。そして、HDD1105にインストールされたそのコンピュータプログラムが起動されると、そのコンピュータプログラムは、HDD1105からRAM1103にコピーされ、CPU1101とRAM1103とによってそのコンピュータプログラムに従った処理が実行される。この意味で、RAM1103、HDD1105又はCD−ROM1106は、コンピュータプログラムを記憶する記憶媒体として機能することになる。
もっとも、コンピュータプログラムを記憶する記憶媒体としては、CD−ROM1106のみならず、DVDなどの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク、半導体メモリ等、各種方式のメディアを用いることができる。また、インターネットなどの外部ネットワーク501からコンピュータプログラムをダウンロードし、HDD1105にインストールするようにしても良い。この場合には、送信側のサーバがアクセスするコンピュータプログラムを記憶している記憶装置も、本発明における記憶媒体である。なお、プログラムは、所定のOS(Operating System)上で動作するものであっても良いし、その場合に後述の各種処理の一部の実行をOSに肩代わりさせるものであっても良いし、ワープロソフトなど所定のアプリケーションソフトやOSなどを構成する一群のプログラムファイルの一部として含まれているものであっても良い。
次いで、クライアント端末121について説明する。クライアント端末121は、各部を集中的に制御するCPU1201を備えており、このCPU1201には、BIOSなどを記憶した読出し専用メモリであるROM1202と、各種データを書換え可能に記憶してCPU1201の作業エリア等として機能するRAM1203とがバス1204で接続されており、マイクロコンピュータを構成している。さらに、バス1204には、仮想オフィス空間提供プログラム等のコンピュータプログラムがインストールされたHDD1205と、CD−ROM1206に記録されたデータを読み取るCD−ROMドライブ1207と、キーボードやマウス等の入力装置1208と、CRTやLCD等のディスプレイ1209と、外部機器との通信を司るインターフェース1210とが接続されている。クライアント端末121は、インターフェース1210を介して構内ネットワーク401に接続されている。
HDD1205にインストールされている仮想オフィス空間提供プログラム等の各種のコンピュータプログラムは、一例として、CD−ROM1206に元々記録されており、CPU1201によって、そのコンピュータプログラムがCD−ROMドライブ1207で読み取られ、HDD1205にインストールされたものである。そして、HDD1205にインストールされたそのコンピュータプログラムが起動されると、そのコンピュータプログラムは、HDD1205からRAM1203にコピーされ、CPU1201とRAM1203とによって実行される。この意味で、RAM1203、HDD1205又はCD−ROM1206は、コンピュータプログラムを記憶する記憶媒体として機能することになる。
もっとも、コンピュータプログラムを記憶する記憶媒体としては、CD−ROM1206のみならず、DVDなどの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク、半導体メモリ等、各種方式のメディアを用いることができる。また、インターネットなどの外部ネットワーク501からコンピュータプログラムをダウンロードし、HDD1205にインストールするようにしても良い。この場合には、送信側のサーバがアクセスするコンピュータプログラムを記憶している記憶装置も、本発明における記憶媒体である。なお、プログラムは、所定のOS(Operating System)上で動作するものであっても良いし、その場合に後述の各種処理の一部の実行をOSに肩代わりさせるものであっても良いし、ワープロソフトなど所定のアプリケーションソフトやOSなどを構成する一群のプログラムファイルの一部として含まれているものであっても良い。
ここで、本実施の形態では、仮想オフィス空間提供プログラムの多くのデータコードは、サーバ端末111のHDD1105にインストールされている。本実施の形態の仮想オフィス空間提供システム上、クライアント端末121のHDD1205にインストールされているプログラムとして最も重要なものは、規定のブラウザソフトウェアである。このブラウザソフトウェアとしては、一例として、マイクロソフトウェア社のインターネットエクスプローラ(商標名、商品名)を用いることが好適である。但し、そのブラウザソフトウェアは、サーバ端末111から送信される各種のデータ、代表的には後述するログインしたユーザの勤務状況を表す画像データをブラウジングして閲覧可能にするものでなければならない。このようなクライアント端末121のHDD1205にインストールされているブラウザソフトウェアは、サーバ端末111と構内ネットワーク401又は外部ネットワーク501を介して必要な情報を例えばHTTPプロトコルで送受信し、必要な動作を実行する。この際、クライアント端末121は、ブラウザソフトウェアの機能を越えて仮想オフィス空間提供システムに不可欠な動作を実行しなければならない場合、サーバ端末111から構内ネットワーク401又は外部ネットワーク501を介して送信された例えばJAVAアプレット(JAVAは登録商標)をインターフェース1210経由で受信し、受信したJAVAアプレットをRAM1203に一時記憶してそのデータコードに従った処理を実行する。
いずれにしても、サーバ端末111とクライアント端末121とは、構内ネットワーク401又は外部ネットワーク501を介してデータの送受信を実行し、必要な処理を遂行する。この際、サーバ端末111のインターフェース1110とクライアント端末121のインターフェース1210とは、通信プロトコルとして、例えばTCP/IPを用いてデータの送受信を行なう。もっとも、本社オフィス101の内部での通信やサテライトオフィス201の内部での通信に際しては、サーバ端末111のインターフェース1110とクライアント端末121のインターフェース1210との互いの通信プロトコルが一致すれば、ケーブルを使用した構内ネットワーク401ではなく、例えば無線LANを通信ネットワークとしても良い。あるいは、放送波を使用したネットワークでサーバ端末111とクライアント端末121との間の通信を実現させても良い。
図3は、サーバ端末111とクライアント端末121との間のデータ送受信を示すタイミングチャートである。
ここで、図3を参照しながら、本実施の形態の仮想オフィス空間提供システムにおける基本的な動作を説明する。まず、前提として、サーバ端末111は、仮想オフィス空間提供プログラムがHDD1105からRAM1103にコピーされて常時起動状態にあり、そのCPU1101はRAM103にアクセスして仮想オフィス空間提供プログラムに従った処理を実行する。
このような環境の下、クライアント端末121において、そのHDD1205にインストールしている仮想オフィス空間提供プログラムを起動する。これにより、その仮想オフィス空間提供プログラムがクライアント端末121のRAM1203にコピーされ、クライアント端末121のCPU1201はRAM1203にアクセスしながらその仮想オフィス空間提供プログラムを実行する。この際、CPU1201は、仮想オフィス空間提供プログラムに従い、ブラウザソフトウェアを立ち上げる処理と、仮想オフィス空間提供プログラムの起動をサーバ端末111に通知する処理とを実行する。このような処理は、ユーザの操作介入なしに自動的に実行されることが好適であるが、ユーザの操作に応じて実行することを妨げるわけではない。
サーバ端末111は、あるクライアント端末121から仮想オフィス空間提供プログラムの起動通知を受けると、例えばIPアドレスによって特定されるそのクライアント端末121に対して、ログイン画面情報を提供する。
そこで、クライアント端末121では、ユーザ操作により、提供されたログイン画面に例えばユーザIDとパスワードとを入力してサーバ端末111に返送する。ここに、規定のブラウザをインストールしているクライアント端末121がサーバ端末111にログイン情報を送信する機能、手段、工程が実行される。
別の実施の形態として、クライアント端末121には規定のブラウザソフトウェアのみインストールされており、仮想オフィス空間提供プログラムがインストールされていなくても良い。この場合、クライアント端末121では、ブラウザソフトウェアを立ち上げ、例えばこのブラウザソフトウェアによってサーバ端末111が提供するオフィス空間提供サイト等にアクセスすると、このオフィス空間提供サイトがクライアント端末121にログイン画面を提供するようにシステム構築しても良い。こうして構築されたシステムでは、クライアント端末121は、ユーザ操作により、提供されたログイン画面に例えばユーザIDとパスワードとを入力してサーバ端末111に返送することが可能である。ここに、規定のブラウザをインストールしているクライアント端末121がサーバ端末111にログイン情報を送信する機能、手段、工程が実行される。
すると、サーバ端末111では、返送されたユーザIDとパスワードとを例えばHDD1105に記憶された図示しないユーザリストと照らし合わせ、その認証を行なう。その結果、認証が得られれば、そのクライアント端末121をログインする。ここに、サーバ端末111が通信ネットワークである構内ネットワーク401又は外部ネットワーク501を介してクライアント端末121をログインさせる機能、手段、工程が実行される。
その後、サーバ端末111は、ログインしたクライアント端末121に対して、画像データ要求を送信する。この場合の画像データは、ログインしたユーザの勤務状況を表す画像データである。
クライアント端末121は、サーバ端末111からの画像送信要求に応じて、CCDカメラ123で撮像中の映像をサーバ端末111に送信する。この際、クライアント端末121では、起動中の仮想オフィス空間提供プログラム又はサーバ端末111から送信されたJAVAアプレットに従い、CCDカメラ123を制御してその撮像画像を取得し、サーバ端末111に送信するという処理を実行する。ここに、クライアント端末121が、サーバ端末111にユーザの勤務状況を表す画像データを送信する機能、手段、工程が実行される。
ログインしたユーザの勤務状況を表す画像データを受信したサーバ端末111では、その画像データを例えばRAM1103として包括的に表現されている記憶領域としての画像メモリに記憶保存する。ここに、サーバ端末111が、ログインしたクライアント端末121から送信されたそのユーザの勤務状況を表す画像データを記憶領域としての画像メモリ(RAM1103)に記憶する機能、手段、工程が実行される。
その後、クライアント端末121は、サーバ端末111に対して、画像メモリ(RAM1103)に記憶保存しているログインしたユーザの勤務状況を表す画像データの閲覧要求を送信する。この場合、そのクライアント端末121が閲覧要求するのは、既に送信した自機を使用するユーザ、つまり自分の勤務状態を表わす画像データについてのみではなく、ログイン中の他のクライアント端末121を使用するユーザの勤務状況を表す画像データについてである。この際、結果的には、自機を使用するユーザである自分の勤務状態を表わす画像データを自機であるクライアント端末121で閲覧可能となるにしても、目的論的に言えば、ログイン中の他のクライアント端末121を使用するユーザ、つまり他人の勤務状況を表す画像データの閲覧が可能となって、初めて、閲覧要求が意味を持つ。このような閲覧要求は、ユーザの操作介入なしに自動的に実行されることが好適であるが、状況によっては、ユーザの操作に応じて実行することが好適である場合も生ずる。
サーバ端末111は、クライアント端末121からの閲覧要求に応じて、例えばIPアドレスによって特定されるそのクライアント端末121に対し、ログインしたユーザの勤務状況を表す画像データを送信する。この際、重要なことは、サーバ端末111は、本仮想オフィス空間提供システムにおけるシステム要求としてクライアント端末121にインストールされている規定のブラウザソフトウェアによって閲覧可能なデータ形式でログインしたユーザの勤務状況を表す画像データを配信する、ということである。ここに、サーバ端末111が、ログインしたクライアント端末121に対して、記憶領域としての画像メモリ(RAM1103)に記憶するログインしたユーザの勤務状況を表す画像データを規定のブラウザによって閲覧可能なデータ形式で配信し、これによってログイン中のユーザの勤務状況を表す画像データに基づく勤務状況表示を個々のクライアント端末121で相互に閲覧可能にする機能、手段、工程が実行される。
そこで、クライアント端末121は、サーバ端末111から配信されたログインしたユーザの勤務状況を表す画像データをブラウザソフトウェアによってブラウジングし、閲覧可能にする。ここに、クライアント端末121が、サーバ端末111から配信されたログインしたユーザの勤務状況を表す画像データに基づく勤務状況表示をブラウザのブラウズ機能を用いて閲覧可能にする機能、手段、工程が実行される。
以上説明したような処理によって、ログイン中のユーザの勤務状況を表す画像データが個々のクライアント端末121のディスプレイ1209上で相互に閲覧可能となる。こうして個々のクライアント端末121のディスプレイ1209上で相互に閲覧可能となる表示内容を、本実施の形態では、仮想オフィス空間1211という(図12〜図25参照)。これにより、現実のオフィス122が空間的に離れていたとしても、個々のクライアント端末121で仮想オフィス空間1211を相互に閲覧すれば、そのような空間内の現実の移動を強いることなく、各ユーザの在席確認や雰囲気共有等を実現することができる。
次いで、本実施の形態の仮想オフィス空間提供システムは、サーバ端末111がクライアント端末121に対してログインしたユーザの勤務状況を表す画像データを送信するに際して、一例としてJAVAアプレットを伴わせる。このJAVAアプレットは、クライアント端末121において、同期コミュニケーション開始要求処理、同期コミュニケーションにおける表示規則、参加規則、アクセス規則を設定するための処理等を実行させるデータコードである。このように、各種処理をクライアント端末121に実行させるコンピュータプログラムを、例えばJAVAアプレットとしてサーバ端末111からクライアント端末121に送信することの利点は、クライアント端末121に特別なコンピュータプログラムを予めインストールさせておく必要がない、ということにある。これに対して、例えば、そのような利点を求める必要がない状況下では、本実施の形態においてJAVAアプレットとしてサーバ端末111からクライアント端末121に送信するコンピュータプログラムに相当するコンピュータプログラムを、予めクライアント端末121にインストールしておいても良い。
本実施の形態の仮想オフィス空間提供システムは、サーバ端末111がクライアント端末121に対してログインしたユーザの勤務状況を表す画像データを送信するに際して伴わせるJAVAアプレットと、サーバ端末111に予めインストールされている仮想オフィス空間提供プログラムとによって、クライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上で同期コミュニケーション、例えば、ビデオ会議、音声会議、テキストチャット等を実現させる。そして、このような同期コミュニケーションでは、各種の特長ある処理を実行する。以下、このような仮想オフィス空間1211上で実行される同期コミュニケーションについて、主として、図4ないし図25を参照しながら説明する。
ここで、図4は、サーバ端末111から送信されたJAVAアプレットによってクライアント端末121で実行される同期コミュニケーション開始要求処理の流れを示すフローチャートである。図5は、サーバ端末111から送信されたJAVAアプレットによってクライアント端末121で実行される表示規則、参加規則、アクセス規則を設定するための処理の流れを示すフローチャートである。図6は、サーバ端末111から送信されたJAVAアプレットによってクライアント端末121で実行される表示規則を設定するための図5とは別の処理の流れを示すフローチャートである。図7は、サーバ端末111から送信されたJAVAアプレットによってクライアント端末121で実行される参加規則を設定するための図5とは別の処理の流れを示すフローチャートである。図8は、サーバ端末111から送信されたJAVAアプレットによってクライアント端末121で実行されるアクセス規則を設定するための図5とは別の処理の流れを示すフローチャートである。図9は、サーバ端末111にインストールされた仮想オフィス空間提供プログラムによってサーバ端末111で実行される処理の流れを示すフローチャートである。図10は、サーバ端末111が記憶するユーザに関する情報を含むテーブルの模式図である。図11は、サーバ端末111において作成するログインしたクライアント端末121に関する情報を含むテーブルの模式図である。
(1)仮想オフィス空間1211上での同期コミュニケーションの実行
図12は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211の一例を示す模式図である。
仮想オフィス空間1211では、合計12名のユーザ(図12中ではA〜H)が表示されている。この状態で、クライアント端末121のユーザがユーザBと同期コミュニケーションを行ないたい場合は、例えばユーザBの勤務状況表示の画像上にカーソルを移動させ、その画像をマウスクリックすると、サーバ端末111を介してその意向がユーザBが使用するクライアント端末121に伝わり、同期コミュニケーションを開始できる。この場合、同期コミュニケーションの開始を要求する同期コミュニケーション開始要求は、単純なマウスクリックによるので、極めて容易に同期コミュニケーションを開始することができる。
別の実施の形態としては、例えばマウス操作によって、ユーザBの勤務状況表示の画像上にカーソルを移動させ、マウス操作、例えば右クリックをすると、「同期コミュニケーション開始」というメニュー1212(図13参照)が仮想オフィス空間1211上に表示され、このメニューをマウス操作、例えば左クリックによって選択指示するようにしても良い。
図13は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、複数(二人)のユーザが選択されて選択されたユーザとの間で同期コミュニケーションの開始を指示可能な状態の一例を示す模式図である。
本実施の形態では、複数のユーザに対して同時に同期コミュニケーションを開始することも可能である。図13では、ユーザD及びGに対して同時に同期コミュニケーションを開始する場合を例示している。このような動作を実行するには、仮想オフィス空間1211上で、入力装置1208でのキーボードとマウスとの同時操作、一例としてCtrlキー+マウスクリック等でユーザD及びGを選択する。これにより、図13に示すように、ユーザD及びGの勤務状況表示の画像の外接矩形が太線になる。そこで、ユーザD又はGのどちらかの画像上でマウス操作、例えば右クリックをする。すると、「同期コミュニケーション開始」というメニュー1212が仮想オフィス空間1211上に表示されるので、このメニューをマウス操作、例えば左クリックによって選択指示する。これにより、ユーザD及びGの両名が使用するクライアント端末121との間で同期コミュニケーションが開始される。
なお、入力装置1208に含まれているマウスやキーボードの操作方法については、上記例に限るものではない。
図14は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、ユーザ間での同期コミュニケーション参加中情報が表示されている状態の一例を示す模式図である。
図14は、同期コミュニケーションが進行中の状態を示しており、同期コミュニケーション参加中のユーザ画像には、そのことを示すマーク、ここでは「M」を矩形画像で囲った同期コミュニケーション参加中情報1213が表示されている。
図15は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211に表示される進行中の同期コミュニケーションに参加中のユーザリストの一例を示す模式図である。
図14は、同期コミュニケーションの進行状況をユーザの勤務状況表示の画像とは別の位置にリスト形式であるユーザリスト1214で表示している一例を示している。これによると、2つのミーティング、つまり、ミーティング「丸1」とミーティング「丸2」とが同時進行していることが分かり、さらに、両ミーティングへのそれぞれの参加者も表示されている。
ここで、以上説明したような動作を実現するための処理を図4及び図9のフローチャートを参照して次に説明する。
まず、サーバ端末111は、一例としてそのHDD1105に、図10に例示するようなユーザに関する情報を含むテーブル1111を記憶保存している。このテーブルは、仮想オフィス空間提供プログラムの起動と共にRAM1103にコピーされていても良い。いずれにしても、サーバ端末111が記憶保存するテーブル1111には、ユーザを特定する情報、例えばユーザID1111aと、そのユーザのランク1111bと、そのユーザの所属グループ1111c等が記憶されている。
そして、クライアント端末121がログインすると、サーバ端末111は、図11に例示するようなログインしたクライアント端末121に関する情報を含むテーブル1112をRAM1103等の記憶領域に作成する。このテーブル1112は、ログインしたユーザが使用するクライアント端末121のIPアドレス1112aに対応付けて、そのユーザを特定する情報、例えばユーザID1112bと、表示規則1112cと、参加規則1112dと、アクセス規則1112eとが記憶される。これらの情報のうち、IPアドレス1112aは、構内ネットワーク401や外部ネットワーク501への接続に際してクライアント端末121に付与されるユニークコードであり、そのクライアント端末121がサーバ端末111にアクセスするとサーバ端末111に提供される。ユーザID1112bは、ログイン時にクライアント端末121から送信されるユニークコードである。このユーザID1112bは、ユーザに関する情報を含むテーブル1111に含まれているユーザID1111aと一致していることが好適であるが、両者が別のコードである場合には、テーブル1111に含まれているユーザID1111aとテーブル1112に含まれるユーザID1112bとをリンクさせる情報が必要となる。
サーバ端末111は、図11に例示するようなログインしたクライアント端末121に関する情報を含むテーブル1112を作成することで、サーバ端末111にアクセスするクライアント端末121をIPアドレス1112aで特定することが可能となる。そして、テーブル1112に含まれるユーザID1112bがユーザに関する情報を含むテーブル1111に含まれているユーザID1111aとリンクしているため、IPアドレス1112aからクライアント端末121を特定すれば、そのクライアント端末121のユーザを特定することや、そのユーザのランク1111b及び所属グループ1111cを特定することも容易である。
以上のような約束の下、クライアント端末121では、サーバ端末111から送信されたJAVAアプレットを解釈し、そのJAVAアプレットに従ってCPU1201が図4に示す処理を実行する。クライアント端末121の入力装置1208として、例えばマウスが用いられるとすると、マウスによってカーソルを移動させた場合、ステップS201においてカーソル移動と判定される(ステップS201のY)。図12に示した例で言うと、クライアント端末121のユーザが、マウスを用いてユーザBの勤務状況表示の画像上にカーソルを移動させた場合、カーソル移動と判定される(ステップS201のY)。
すると、クライアント端末121で解釈実行されるJAVAアプレットに従い、CPU1201は、ユーザBが使用するクライアント端末121が同期コミュニケーション実行中であるかどうかを判定する(ステップS202)。このステップS202での判定は、クライアント端末121において有している各ユーザが同期コミュニケーション参加中であるかどうかの情報を参照することで実行可能である。つまり、サーバ端末111は、同期コミュニケーション実行中のユーザに関する情報をログインした個々のクライアント端末121に送信する。個々のクライアント端末121は、サーバから送信された同期コミュニケーション実行中のユーザに関する情報を例えばRAM1203等の一時記憶領域に一時記憶している。ステップS202での判定処理では、こうしてRAM1203等の一時記憶領域に一時記憶している同期コミュニケーション実行中のユーザに関する情報を参照するわけである。
ステップS202での判定の結果、同期コミュニケーション実行中でないと判定された場合(ステップS202のN)、一例としてCtrlキー+マウスクリック等であるユーザが選択されると(ステップS203のY)、そのユーザを特定する情報、例えばそのユーザが使用するクライアント端末121のIPアドレスがRAM1203等のレジスト領域に一時記憶される(ステップS204)。
そして、カーソルを移動させた先のユーザ又は選択されたユーザの勤務状況表示の画像上で、例えばマウスの右クリック動作をすることで、「同期コミュニケーション開始」というメニュー1212が仮想オフィス空間1211上に表示される(ステップS205)。そこで、そのメニュー1212がクリックされると、同期コミュニケーション開始要求があったと判定され(ステップS207のY)、クライアント端末121は、同期コミュニケーション開始要求をサーバ端末111に送信する(ステップS211)。この同期コミュニケーション開始要求には、要求元のクライアント端末121と相手先のクライアント端末121とを特定する情報、例えばそれらのユーザが使用するクライアント端末121のIPアドレスが伴われる。ここに、クライアント端末121が同期コミュニケーション開始要求をサーバ端末111に送信する手段、機能、工程が実行される。
なお、RAM1203等のレジスト領域に一時記憶されたIPアドレス等のユーザ特定情報は、同期コミュニケーション開始要求があったと判定された場合(ステップS210のY)、あるいは同期コミュニケーション開始要求があったと判定されない場合でも(ステップS210のY)、レジストクリアすべきイベントの発生が検出された場合には(ステップS208)、レジストクリアされる(ステップS210、209)。
サーバ端末111は、仮想オフィス空間提供プログラムに従い、CPU1101が図9に示す処理を実行する。つまり、同期コミュニケーション開始要求の受信判定を実行し(ステップS101)、同期コミュニケーション開始要求を受信した場合には(ステップS101のY)、相手先のクライアント端末121に通知する(ステップS104)。相手先のクライアント端末121は、同期コミュニケーション開始要求に含まれている例えばIPアドレスによって特定可能である。その後、サーバ端末111は、その相手先のクライアント端末121と要求元のクライアント端末121との間で、終了通知がなされるまで(ステップS110のY)、同期コミュニケーションを開始させる(ステップS107)。ここに、サーバ端末111において、ログインしたクライアント端末121から送信された同期コミュニケーション開始要求に応じて、この同期コミュニケーション開始要求に伴われている要求元のクライアント端末121と相手先のクライアント端末121との間で同期コミュニケーションを実行させる手段、機能、工程が実行される。
サーバ端末111での同期コミュニケーション開始処理(ステップS107)に応じて、同期コミュニケーション開始要求に伴われている要求元のクライアント端末121と相手先のクライアント端末121との間で、同期コミュニケーションが実行される。ここに、クライアント端末121において、送信した同期コミュニケーション開始要求に伴われている相手先のクライアント端末121との間で同期コミュニケーションを実行する手段、機能、工程が実行される。
ここで、同期コミュニケーションは、一例として、ビデオ会議、音声会議、テキストチャット等であり、そのような同期コミュニケーションそれ自体は既に公知で実用化されている技術である。そこで、サーバ端末111を介して二台以上のクライアント端末121が同期コミュニケーションを実行する技術的手段については、その説明を省略する。
このような同期コミュニケーションに際して、サーバ端末111は、同期コミュニケーション実行中のユーザに関する情報をログインした個々のクライアント端末121に送信する。そして、サーバ端末109は、原則的に、本仮想オフィス空間提供システムにログインしている全てのクライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上に、同期コミュニケーションを実行しているクライアント端末121が同期コミュニケーション進行中であることを示す表示を提供する(ステップS109)。この表示は、一例として、図14に例示する同期コミュニケーション参加中情報1213であり、別の一例として、図15に例示するユーザリスト1214である。つまり、サーバ端末111で実行される勤務状況表示を閲覧可能にする機能は、同期コミュニケーションに参加中のユーザの勤務状況表示に、進行中の同期コミュニケーションに参加中であることを示す同期コミュニケーション参加中情報1213を追加表示する機能を有し、また、勤務状況表示とは別の表示領域に、進行中の同期コミュニケーションに参加中のユーザリスト1214を表示する機能を有する。
また、図12には、複数のユーザを選択指定した同期コミュニケーション開始要求をクライアント端末121からサーバ端末111に送信できる例を示した。そこで、この場合には、サーバ端末111は、ステップS107の処理で、その同期コミュニケーション開始要求に伴われている全ての相手先のクライアント端末121と要求元のクライアント端末121との間での同期コミュニケーションを開始させる。つまり、サーバ端末111で実行される同期コミュニケーションを実行させる機能は、ログインした3台以上のクライアント端末121の間で同期コミュニケーションを実行させる。
(2)ユーザグループ
図16は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、ユーザグループが選択されて選択されたユーザグループとの間で同期コミュニケーションの開始を指示可能な状態の一例を示す模式図である。
本実施の形態の仮想オフィス空間提供システムでは、複数のユーザをまとめたユーザグループを予め定義しておき、そのユーザグループに対して同時に同期コミュニケーションを開始することもできる。図16では、グループ2に対して同時に同期コミュニケーションを開始する例を示している。グループ2を示すタブの位置で、マウス操作、例えば右クリックにより、「同期コミュニケーション開始」というメニュー1212を表示させ、このメニュー1212を選択指示することにより同期コミュニケーションが開始する。
なお、マウスの操作方法はこの例に限るものではない。
図17は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、ユーザグループ間での同期コミュニケーション参加中情報が表示されている状態の一例を示す模式図である。
図17は、グループ2全体で同期コミュニケーションが進行中の状態を示しており、グループ2を示すタブが選択された場合の全体画像の右下位置に、同期コミュニケーション進行中を示すマーク、ここでは「M」を矩形画像で囲った同期コミュニケーション参加中情報1213が表示されている。
図18は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末に表示された仮想オフィス空間に表示される進行中の同期コミュニケーションに参加中のユーザグループリストの一例を示す模式図である。
図18は、同期コミュニケーションの進行状況をユーザ画像とは別の位置にリスト形式であるユーザグループリスト1215で表示している一例である。この一例によると、グループ2において同期コミュニケーションが進行していることが分かる。
ここで、以上説明したような動作を実現するための処理を次に説明する。
サーバ端末111では、図10に例示するユーザに関する情報を含むテーブル1111から各ユーザの所属グループ1111cを知ることができる。逆に、所属グループ1111cからその所属グループ1111cに属するユーザを知ることもできる。そこで、クライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上でグループが選択され、同期コミュニケーション開始要求にそのグループを特定する情報が伴われていれば、図10に例示するユーザに関する情報を含むテーブル1111からユーザID1111aを知ることができる。そこで、そのユーザID1111aとリンクするユーザID1112bに対応するIPアドレス1112aを図11に例示するテーブル1112から検索し、それらのIPアドレス1112aを有するクライアント端末121を相手先のクライアント端末121として要求元のクライアント端末121との間の同期コミュニケーションを開始する(図9のステップS107)。つまり、サーバ端末111が有する同期コミュニケーションを実行させる機能は、複数のユーザの集合として予め定義されたユーザグループに属するユーザが使用するログインしたクライアント端末121の間で同期コミュニケーションを実行させる。
このような同期コミュニケーションに際して、サーバ端末109は、原則的に、本仮想オフィス空間提供システムにログインしている全てのクライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上に、同期コミュニケーションを実行しているクライアント端末121が同期コミュニケーション進行中であることを示す表示を提供する(ステップS109)。この表示は、一例として、図17に例示する同期コミュニケーション参加中情報1213であり、別の一例として、図18に例示するユーザグループリスト1215である。つまり、サーバ端末111で実行される勤務状況表示を閲覧可能にする機能は、同期コミュニケーションに参加中のユーザの勤務状況表示に、進行中の同期コミュニケーションに参加中であることを示す同期コミュニケーション参加中情報1213を追加表示する機能を有し、また、勤務状況表示とは別の表示領域に、進行中の同期コミュニケーションに参加中のユーザグループリスト1215を表示する機能を有する。
(3)同期コミュニケーション進行中であることの隠蔽
図19は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、ユーザ間での同期コミュニケーション参加中情報1213のうち、あるユーザ間での同期コミュニケーション参加中情報が隠蔽されている状態の一例を示す模式図である。図20は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211に表示される進行中の同期コミュニケーションに参加中のユーザリスト1214から、ある特定のユーザが隠蔽されている状態の一例を示す模式図である。
前述したように、本実施の形態では、同期コミュニケーションが進行中である場合、そのことを示す表示、例えば同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215が仮想オフィス空間1211に提供される。このような同期コミュニケーションが進行中であることを示す表示は、各ユーザの勤務状況を把握する上で有効な情報となる。その一方、組織階層が高いユーザ同士のミーティングや機密度の高い内容を話し合っているミーティング等は、そのようなミーティングがなされていること自体を隠蔽したい場合もある。
そこで、本実施の形態では、各クライアント端末121のログインユーザと他のユーザ若しくはユーザグループとの関係に基づいて、同期コミュニケーションが進行中であることを示す同期コミュニケーション参加中情報1213を追加表示するか否かを制御する。同時に、勤務状況表示の部分とは別の表示領域に、進行中の同期コミュニケーションに参加中のユーザリスト1214若しくはユーザグループリスト1215を表示するか否かも制御する。
図19には前者の例を示している。ここでは、実際には同期コミュニケーションを実行しているユーザB、D、Gについて、同期コミュニケーション参加中情報1213を隠蔽することにより、他のクライアント端末121のユーザに、ユーザB、D、Gがミーティング中であることを隠蔽している。
図20は後者の例で、図19に対応する同期コミュニケーションに関するユーザリスト1214を示している。ここでも、ユーザB、D、Gが実際には参加しているミーティング「丸1」がユーザリスト1214として表示されていない。
このような同期コミュニケーション参加中情報1213やユーザリスト1214、あるいはユーザグループリスト1215の表示非表示は、同期コミュニケーション参加中のユーザと別のクライアント端末121のユーザとの関係等に応じて柔軟に制御可能である。例えば、組織階層が下位のクライアント端末121を使用するユーザに対しては上位のユーザが参加している同期コミュニケーションを常に隠蔽する、という規則を予め決めておき、別途定められた各ユーザの組織階層データ、例えば図10に例示するテーブル1111を参照しつつサーバ端末111が自動的に表示制御する、という方法がある。
また、組織階層上は表示しても構わないが、特に機密度の高い内容を討議する際は、その同期コミュニケーションの時だけ全員に対して非表示となるように会議参加者が表示制御要求をサーバ端末111に通知してもよい。この場合、全員ではなく、特定のユーザに対してのみ表示非表示を制御できるようにしても良い。
図19及び図20に示す例では、クライアント端末121のユーザの組織階層がユーザB、D、Gよりも下位である場合もあり得るし、ユーザB、D、Gが他のクライアント端末121のユーザに対してこの時だけ非表示となるように設定したという場合もあり得る。
他にも、別途定義したアクセス制御リスト等を利用する等、クライアント端末121のユーザと同期コミュニケーション参加中のユーザとの関係が記述されている情報であれば、それを利用して表示制御して構わない。
ここで、以上説明したような動作を実現するための処理を図4、図5、図6及び図9のフローチャートを参照して次に説明する。
図9に示すように、サーバ端末111は、ステップS107において、同期コミュニケーション開始要求に伴われている相手先のクライアント端末121と要求元のクライアント端末121との間で同期コミュニケーションを開始させる(ステップS107)。このような同期コミュニケーションに際して、サーバ端末111は、同期コミュニケーション実行中のユーザに関する情報をログインした個々のクライアント端末121に送信する。そして、サーバ端末109は、原則的に、本仮想オフィス空間提供システムにログインしている全てのクライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上に、同期コミュニケーションを実行しているクライアント端末121が同期コミュニケーション進行中であることを示す表示、一例として、図19に例示する同期コミュニケーション参加中情報1213、別の一例として、図20に例示するユーザリスト1214を提供する(ステップS109)。
これに対して、サーバ端末111は、同期コミュニケーションを開始した後(ステップS107)、同期コミュニケーションを実行しているクライアント端末121が同期コミュニケーション進行中であることを示す表示が禁止されているかどうかを判定する(ステップS108)。この判定の結果、表示が禁止されていれば(ステップS108のY)、同期コミュニケーション進行中であることを示す表示をクライアント端末121に提供する処理(ステップS109)を実行しない。その結果、図19に例示するように、実際には同期コミュニケーションを実行しているユーザB、D、Gについて、同期コミュニケーション参加中情報1213がなされず、他のクライアント端末121のユーザに、ユーザB、D、Gがミーティング中であることが隠蔽される。あるいは、図20に例示するように、ユーザB、D、Gが実際には参加しているミーティング「丸1」がユーザリスト1214として表示されず、他のクライアント端末121のユーザに、ユーザB、D、Gがミーティング中であることが隠蔽される。
ここで、ステップS108での判定処理は、一例として、サーバ端末111の記憶領域、例えばHDD1105に記憶保存されて仮想オフィス空間提供プログラムの起動時にRAM1103にコピーされるユーザ間、ユーザグループ間、ユーザとユーザグループ間との関係定義を参照してなされる。つまり、サーバ端末111は、その記憶領域であるHDD1105やRAM1103にユーザ間、ユーザグループ間、ユーザとユーザグループ間との関係定義を記憶している。この関係定義は、例えば、組織階層が下位のクライアント端末121を使用するユーザに対しては上位のユーザが参加している同期コミュニケーションを常に隠蔽するというような定義規定である。サーバ端末111は、同期コミュニケーション参加中のユーザと仮想オフィス空間1211を提供している他のユーザとを例えばIPアドレス1112aによって特定できるので、図11に示すテーブル1112からそのIPアドレス1112aに基づいてユーザID1112bを検索し、このユーザID1112bとリンクしているユーザID1111aを図10に示すテーブル1111から検索し、この図10のテーブル1111を参照することで検索したユーザID1111aを有するユーザのランク1111bを知ることができる。そこで、検索したユーザのランク1111bに基づいてHDD1105やRAM1103等の記憶領域に記憶されている関係定義を参照し、組織階層が下位のクライアント端末121を使用するユーザに対しては上位のユーザが参加している同期コミュニケーションを常に隠蔽するというような処理を実行する。こうして、サーバ端末111が有する勤務状況表示を閲覧可能にする機能は、HDD1105やRAM1103等の記憶領域に記憶されたユーザ間、ユーザグループ間、又はユーザとユーザグループ間の関係定義に従い、同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215の表示非表示を制御する。
ステップS108での判定処理は、別の一例として、ログインしたクライアント端末121から送信された表示規則を参照してなされる。前述したように、本実施の形態の仮想オフィス空間提供システムは、サーバ端末111がクライアント端末121に対してログインしたユーザの勤務状況を表す画像データを送信するに際して、JAVAアプレットを伴わせる。このJAVAアプレットは、クライアント端末121において、同期コミュニケーション開始要求処理、同期コミュニケーションにおける表示規則、参加規則、アクセス規則を設定するための処理等を実行させるデータコードである。これらのJAVAアプレットには、図5に示す処理をクライアント端末121に実行させるJAVAアプレットがある。このJAVAアプレットは、クライアント端末121に同期コミュニケーションにおける表示規則を設定するための処理を実行させる。つまり、クライアント端末121は、仮想オフィス空間1211上で表示規則の設定入力が可能となる。クライアント端末121において表示規則の設定が判定されると(ステップS221のY)、その設定された表示規則がクライアント端末121のRAM1203等の記憶領域にレジストされる(ステップS222)。レジストされた表示規則は、そのクライアント端末121において同期コミュニケーション開始要求の送信処理があった場合に(ステップS227)、その同期コミュニケーション開始要求に付帯してサーバ端末111に送信される(ステップS228)。このように、サーバ端末111が有する勤務状況表示を閲覧可能にする機能は、ログインしたクライアント端末121に、表示規則の設定を許容する機能と、設定された表示規則をサーバ端末111に送信させる機能と、を実行させる機能を含むことになる。
ここで、クライアント端末121において設定可能な表示規則は、例えば、そのクライアント端末121を使用するユーザが同期コミュニケーション参加中である場合、その同期コミュニケーションに参加していない他の全てのユーザが使用するクライアント端末121に提供される仮想オフィス空間1211上に、その同期コミュニケーションに関する同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215を表示しないというような規則であるとか、同様の状況下で、ある特定のユーザが使用するクライアント端末121に提供される仮想オフィス空間1211上に、その同期コミュニケーションに関する同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215を表示しないというような規則等である。
なお、図5のフローチャートに示す処理では、表示規則を同期コミュニケーション開始要求に付帯させてサーバ端末111に送信するようになっている。これに対して、別の実施の形態として、図6に示すように、表示規則を設定する処理は、表示規則を同期コミュニケーション開始要求に付帯させることなく独立してサーバ端末111に送信できる処理であっても良い。つまり、表示規則の設定がなされると(ステップS231のY)、設定された表示規則をサーバ端末111に送信する(ステップS232)という処理である。このような処理であれば、同期コミュニケーション実行前あるいは同期コミュニケーション実行中であっても、必要に応じてクライアント端末121からサーバ端末111に表示規則を送信することができる。
サーバ端末111は、クライアント端末121から表示規則を受信すると、受信した表示規則を、RAM1103等の記憶領域に作成した図11に例示するテーブル1112の表示規則1112cに、そのクライアント端末121と対応付けて記憶する。クライアント端末121と表示規則1112cとの対応付けは、受信情報に含まれるIPアドレスを参照することで容易になされる。
そして、サーバ端末111は、記憶した表示規則に従い、同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215の表示非表示を制御する。この際、サーバ端末111は、同期コミュニケーション参加中のユーザと仮想オフィス空間1211を提供している他のユーザとを例えばIPアドレス1112aによって特定できるので、図11に示すテーブル1112からそのIPアドレス1112aに基づいてユーザID1112bを検索し、このユーザID1112bとリンクしているユーザID1111aを図10に示すテーブル1111から検索し、この図10のテーブル1111を参照することで検索したユーザID1111aを有するユーザのランク1111bを知ることができる。そこで、検索したユーザのランク1111bに基づいてRAM1103等の記憶領域に記憶した表示規則を参照し、同期コミュニケーションの実行中であることを隠蔽するような処理を実行する。こうして、サーバ端末111が有する勤務状況表示を閲覧可能にする機能は、ログインしたクライアント端末121から送信された表示規則に従い、同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215の表示非表示を制御することになる。
(4)進行中の同期コミュニケーションへの途中参加
図21は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、進行中の同期コミュニケーションに対する途中参加を指示可能な状態の一例を示す模式図である。図22は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、進行中の同期コミュニケーションに対する途中参加を指示可能な状態の別の一例を示す模式図である。
本仮想オフィス空間提供システムでは、同期コミュニケーション参加中情報1213が追加表示された同期コミュニケーション参加中のユーザ又はユーザグループの勤務状況表示の画像部分、あるいは、当該勤務状況表示の画像部分とは別の表示領域に表示された進行中の同期コミュニケーションに参加中のユーザリスト1214又はユーザグループリスト1215に対して、マウスクリック等の操作を行なうことにより、その同期コミュニケーションに参加中でない他のユーザを同期コミュニケーションに途中参加させることができる。
図21及び図22は、ユーザGが参加している進行中の同期コミュニケーションに他のユーザが途中参加を要望する例を示している。サーバ端末111から仮想オフィス空間1211を提供されているユーザが、同期コミュニケーションを既に進行しているユーザB、D、Gの同期コミュニケーションに途中参加する場合を想定する。このような場合、図21に示す一例では、そのユーザは、ユーザB、D、Gのいずれか一人、例えばユーザGの勤務状況表示の画像上で右クリック等のマウス操作をすることにより、「同期コミュニケーションに途中参加」というメニュー1216を表示させ、このメニュー1216を左クリック等のマウス操作によって選択することにより、ユーザB、D、Gが開催している進行中の同期コミュニケーションに途中参加することができる。また、図22に示す一例では、ユーザB、D、Gが進行中である同期コミュニケーションを示すユーザリスト1214の画像上で右クリック等のマウス操作をすることにより、「同期コミュニケーションに途中参加」というメニュー1216を表示させ、このメニュー1216を左クリック等のマウス操作によって選択することにより、ユーザB、D、Gが開催している進行中の同期コミュニケーションに途中参加することができる。なお、マウスの操作方法は、一例を示すに過ぎず、この例に限るものではない。
ここで、以上説明したような動作を実現するための処理を図4及び図9のフローチャートを参照して次に説明する。
図9に示すように、サーバ端末111は、ステップS107において、同期コミュニケーション開始要求に伴われている相手先のクライアント端末121と要求元のクライアント端末121との間で同期コミュニケーションを開始させる(ステップS107)。このような同期コミュニケーションに際して、サーバ端末111は、同期コミュニケーション実行中のユーザに関する情報をログインした個々のクライアント端末121に送信する。そして、サーバ端末109は、原則的に、本仮想オフィス空間提供システムにログインしている全てのクライアント端末121のディスプレイ1209に表示される仮想オフィス空間1211上に、同期コミュニケーションを実行しているクライアント端末121が同期コミュニケーション進行中であることを示す表示、一例として、図19に例示する同期コミュニケーション参加中情報1213、別の一例として、図20に例示するユーザリスト1214を提供する(ステップS109)。図示しないが、サーバ端末111は、同期コミュニケーションをグループ単位で実行させている場合には、ユーザグループリスト1215をクライアント端末121に提供する(図16参照)。
これにより、各クライアント端末121のユーザは、そのディスプレイ1209に表示される仮想オフィス空間1211上で、あるユーザやユーザグループが同期コミュニケーション進行中であるかどうかを知ることができる。そこで、進行中の同期コミュニケーションに参加を望むユーザは、仮想オフィス空間1211に表示される同期コミュニケーション参加中情報1213、ユーザリスト1214、あるいはユーザグループリスト1215を選択指示することで、途中参加要求をサーバ端末111に送信することができる。つまり、図4のフローチャートに示されるように、クライアント端末121の入力装置1208として、例えばマウスが用いられるとすると、マウスによってカーソルを移動させた場合、ステップS201においてカーソル移動と判定される(ステップS201のY)。例えば、図21に示す一例では、クライアント端末121のユーザがマウスを用いてユーザGの勤務状況表示の画像上にカーソルを移動させた場合、カーソル移動と判定される(ステップS201のY)。すると、クライアント端末121で解釈実行されるJAVAアプレットに従い、CPU1201は、ユーザBが使用するクライアント端末121が同期コミュニケーション実行中であるかどうかを判定する(ステップS202)。判定の結果、同期コミュニケーション実行中であると判定された場合(ステップS202のY)、ユーザがカーソルを移動させた先のユーザの勤務状況表示の画像上で、例えばマウスの右クリック動作をすることで、「同期コミュニケーション途中参加」というメニュー1216が仮想オフィス空間1211上に表示される(ステップS206)。そこで、そのメニュー1216がクリックされると、途中参加要求があったと判定され(ステップS207のY)、クライアント端末121は、途中参加要求をサーバ端末111に送信する(ステップS211)。この途中参加要求には、要求元のクライアント端末121と同期コミュニケーション進行中である相手先の複数台のクライアント端末121とを特定する情報、例えばそれらのユーザが使用するクライアント端末121のIPアドレスが伴われる。
ここに、ログインしたクライアント端末121に、そのブラウザが表示する同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215の選択指示を許容する機能と、同期コミュニケーション参加中情報1213、ユーザリスト1214、ユーザグループリスト1215が選択指示されるとその進行中である同期コミュニケーションに対して途中参加要求をサーバ端末111に送信する機能と、をサーバ端末111に実行させる機能が実行される。
サーバ端末111は、仮想オフィス空間提供プログラムに従い、CPU1101が図9に示す処理を実行する。つまり、途中参加要求の受信判定を実行し(ステップS101)、途中参加要求を受信した場合には(ステップS101のY)、同期コミュニケーション進行中である相手先の複数台のクライアント端末121に通知する(ステップS104)。相手先のクライアント端末121は、途中参加要求に含まれている例えばIPアドレスによって特定可能である。その後、サーバ端末111は、終了通知がなされるまで(ステップS110のY)、その相手先のクライアント端末121が進行中である同期コミュニケーションに要求元のクライアント端末121を参加させる(ステップS107)。ここに、サーバ端末111において、送信された途中参加要求に応じて、この途中参加要求に伴われている要求元のクライアント端末121を進行中の同期コミュニケーションに参加させる手段、機能、工程が実行される。
(5)進行中の同期コミュニケーションへの途中参加に対する規制
以上説明したように、本仮想オフィス空間提供システムでは、進行中の同期コミュニケーションへの途中参加が可能である。しかしながら、組織階層が高いユーザ同士のミーティングや機密度の高い内容を話し合っているミーティングに対して途中参加要求がなされた場合、その要求を拒絶したい場合もある。そこで、本仮想オフィス空間提供システムでは、各クライアント端末121のログインユーザと、他のユーザ又はユーザグループとの関係に基づいて、他のユーザ又はユーザグループ内で進行中の同期コミュニケーションへの当該ログインユーザの途中参加要求を拒絶することができる。
例えば、図21又は図22に示す一例において、途中参加要求を出したクライアント端末121のユーザの組織階層がユーザB、D、Gよりも低い場合は、その要求を拒絶するように設定することも可能である。この場合、一例として、組織階層が下位のクライアント端末121のユーザが、上位ユーザが参加している同期コミュニケーションに途中参加要求を出した場合、その途中参加要求を常に拒絶するという規則を予め決めておき、別途定められた各ユーザの組織階層データを参照しつつサーバが自動的に拒絶するようにする。
このような拒絶の設定は、組織階層の上下だけでなく、同期コミュニケーション参加中のユーザと他のユーザとの関係で柔軟に制御できるものとする。例えば、組織階層上は拒絶する必要はないが、特に機密度の高い内容を討議する際は、その同期コミュニケーションの時だけ全員に対して拒絶するように会議参加者が拒絶設定をサーバ端末111に通知しても良い。また、全員ではなく、特定のユーザに対してのみ拒絶するか拒絶しないかを制御できるようにしても良い。他にも、別途定義したアクセス制御リスト等を利用する等、クライアント端末121のユーザと同期コミュニケーション参加中のユーザとの関係が記述されている情報であれば、その情報を利用して表示制御しても構わない。
また、予め拒絶設定をしておくのではなく、途中参加要求がなされる毎に、同期コミュニケーションの参加者が、当該同期コミュニケーションへの他ユーザからの途中参加要求を拒絶するか否かを決定することもできる。例えば、図21又は図22に示す一例においては、途中参加要求を出したクライアント端末121のユーザが誰であるかを確認した後、その相手に応じてユーザB、D、Gのうちのいずれか一人以上が拒絶するか拒絶しないかを決定しても良い。
ここで、以上説明したような動作を実現するための処理を図4、図5、図7及び図9のフローチャートを参照して次に説明する。
図9に示すように、サーバ端末111は、ステップS107において、ステップS101でクライアント端末121から受信した途中参加要求に応じてそのクライアント端末121を現在進行中の同期コミュニケーションに途中参加させる処理を実行するのに先立ち、途中参加が拒絶されずに受け入れられるかどうかを確かめる(ステップS105)。
ここで、ステップS105での参加可否判定処理は、一例として、サーバ端末111の記憶領域、例えばHDD1105に記憶保存されて仮想オフィス空間提供プログラムの起動時にRAM1103にコピーされるユーザ間、ユーザグループ間、ユーザとユーザグループ間との関係定義を参照してなされる。つまり、サーバ端末111は、その記憶領域であるHDD1105やRAM1103にユーザ間、ユーザグループ間、ユーザとユーザグループ間との関係定義を記憶している。この関係定義は、例えば、組織階層が下位のクライアント端末121を使用するユーザに対しては上位のユーザが参加している同期コミュニケーションへの途中参加を常に禁止するというような定義規定である。サーバ端末111は、同期コミュニケーション参加中のユーザと仮想オフィス空間1211を提供している他のユーザとを例えばIPアドレス1112aによって特定できるので、図11に示すテーブル1112からそのIPアドレス1112aに基づいてユーザID1112bを検索し、このユーザID1112bとリンクしているユーザID1111aを図10に示すテーブル1111から検索し、この図10のテーブル1111を参照することで検索したユーザID1111aを有するユーザのランク1111bを知ることができる。
そこで、サーバ端末111は、検索したユーザのランク1111bに基づいてHDD1105やRAM1103等の記憶領域に記憶されている関係定義を参照し、組織階層が下位のクライアント端末121を使用するユーザに対しては上位のユーザが参加している同期コミュニケーションへの参加を常に禁止するというような処理を実行する。つまり、参加が拒絶されるのであれば(ステップS105のY)、そのユーザの参加を拒絶する処理を実行する(ステップS106)。こうして、サーバ端末111が有するログインしたクライアント端末121を進行中の同期コミュニケーションに途中参加させる機能は、HDD1105やRAM1103等の記憶領域に記憶されたユーザ間の関係定義に従い、進行中の同期コミュニケーションに対するクライアント端末121の参加の可否を制御する。
ステップS105での参加可否判定処理は、別の一例として、ログインしたクライアント端末121から送信された参加規則を参照してなされる。前述したように、本実施の形態の仮想オフィス空間提供システムは、サーバ端末111がクライアント端末121に対してログインしたユーザの勤務状況を表す画像データを送信するに際して、JAVAアプレットを伴わせる。このJAVAアプレットは、クライアント端末121において、同期コミュニケーション開始要求処理、同期コミュニケーションにおける表示規則、参加規則、アクセス規則を設定するための処理等を実行させるデータコードである。これらのJAVAアプレットには、図5に示す処理をクライアント端末121に実行させるJAVAアプレットがある。このJAVAアプレットは、クライアント端末121に同期コミュニケーションにおける参加規則を設定するための処理を実行させる。つまり、クライアント端末121は、同期コミュニケーションへの参加規則の設定入力が可能となる。クライアント端末121において参加規則の設定が判定されると(ステップS223のY)、その設定された参加規則がクライアント端末121のRAM1203等の記憶領域にレジストされる(ステップS224)。レジストされた参加規則は、そのクライアント端末121において同期コミュニケーション開始要求の送信処理があった場合に(ステップS227)、その同期コミュニケーション開始要求に付帯してサーバ端末111に送信される(ステップS228)。こうして、サーバ端末111が有する進行中の同期コミュニケーションに途中参加させる機能は、ログインしたクライアント端末121に、参加規則の設定を許容する機能と、設定された参加規則をサーバ端末に送信させる機能と、を実行させる機能を含むことになる。
ここで、クライアント端末121において設定可能な参加規則は、例えば、そのクライアント端末121を使用するユーザが同期コミュニケーション参加中である場合、その同期コミュニケーションに対する他の全てのユーザの参加を拒絶するというような規則であるとか、同様の状況下で、ある特定のユーザだけをその同期コミュニケーションに参加させないような規則等である。
なお、図5のフローチャートに示す処理では、参加規則を同期コミュニケーション開始要求に付帯させてサーバ端末111に送信するようになっている。これに対して、別の実施の形態として、図7に示すように、参加規則を設定する処理は、参加規則を同期コミュニケーション開始要求に付帯させることなく独立してサーバ端末111に送信できる処理であっても良い。つまり、参加規則の設定がなされると(ステップS241のY)、設定された参加規則をサーバ端末111に送信する(ステップS242)という処理である。このような処理であれば、同期コミュニケーション実行前あるいは同期コミュニケーション実行中であっても、必要に応じてクライアント端末121からサーバ端末111に参加規則を送信することができる。
サーバ端末111は、クライアント端末121から参加規則を受信すると、受信した参加規則を、RAM1103等の記憶領域に作成した図11に例示するテーブル1112の参加規則1112dに、そのクライアント端末121と対応付けて記憶する。クライアント端末121と参加規則1112dとの対応付けは、受信情報に含まれるIPアドレスを参照することで容易になされる。
そして、サーバ端末111は、記憶した参加規則を参照し、進行中の同期コミュニケーションに対する個々のユーザの参加の可否を制御する。つまり、参加が拒絶されるのであれば(ステップS105のY)、そのユーザの参加を拒絶する処理を実行する(ステップS106)。こうして、サーバ端末111が有するログインしたクライアント端末121を進行中の同期コミュニケーションに途中参加させる機能は、ログインした前記クライアント端末から送信された参加規則に従い、進行中の同期コミュニケーションに対するクライアント端末121の参加の可否を制御する。
ステップS105での参加可否判定処理は、更に別の一例として、進行中の同期コミュニケーションに参加しているユーザからの可否決定を参照してなされる。つまり、あるクライアント端末121から途中参加要求があった場合には(ステップS101のY)、その途中参加要求に含まれる相手先のクライアント端末121に通知を行なう(ステップS104)。この際、サーバ端末111は、その通知に、参加可否決定プログラムを付帯させる(ステップS104)。この参加可否決定プログラムは、例えばJAVAアプレットである。そこで、その参加可否決定プログラムを受信したクライアント端末121では、そのCPU1201が受信した参加可否決定プログラムを解釈実行することで、どのユーザが参加を要望しているかを仮想オフィス空間1211に表示し、そのユーザの参加を許可するかどうかの選択をユーザに許容し、ユーザが決定した参加可否の決定をサーバ端末111に送信する。これにより、サーバ端末111は、ユーザから送信された参加可否決定を参照し、進行中の同期コミュニケーションに参加を要求しているユーザの参加の可否を制御する。つまり、参加が拒絶されるのであれば(ステップS105のY)、そのユーザの参加を拒絶する処理を実行する(ステップS106)。こうして、サーバ端末111に、ログインしたクライアント端末121が参加している進行中の同期コミュニケーションに対してログインした他のクライアント端末121から途中参加要求があった場合に、その進行中の同期コミュニケーションに参加しているクライアント端末121にその途中参加要求の可否を決定させる機能を実行させることができる。
(6)アクセス規制
図23は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、同期コミュニケーション開始要求の受け入れを拒絶する表示がなされている状態の一例を示す模式図である。
本仮想オフィス提供システムでは、あるクライアント端末121のユーザが、何らかの理由により個人で集中して業務を行なっているため、他のユーザからの同期コミュニケーション開始要求を拒絶したいような場合、その同期コミュニケーション開始要求を受け入れるか否かを決定でき、かつ、その意思を仮想オフィス空間1211上に表示する。しかしながら、拒絶にも程度があり、きわめて多忙でいかなる相手とのコミュニケーションも拒絶したい場合もあれば、どうしてもやむを得ない急用ならば割り込ませても構わないという場合もある。
そこで、このような各種の要求に柔軟に対応するため、本実施の形態では、同期コミュニケーション開始要求の拒絶に関して3つのレベルを設けている。すなわち、
・同期コミュニケーションの開始要求を常に受け入れるレベル
・他ユーザが開始要求を強行した場合は同期コミュニケーションが開始されるレベル
・同期コミュニケーションの開始要求を必ず拒絶するレベル
である。
そして、これのレベルに応じて、他のユーザが使用するクライアント端末121上に表示される仮想オフィス空間1211での勤務状況表示を制御している。
図23にその例を示している。図23中、「同期コミュニケーションの開始要求を常に受け入れるレベル」では通常のユーザ画像を表示しているが、「他ユーザが開始要求を強行した場合は同期コミュニケーションが開始されるレベル」ではユーザ画像の上半分に網掛けや横縞等の模様を、「同期コミュニケーションの開始要求を必ず拒絶するレベル」ではユーザ画像全体に網掛けや横縞等の模様を、それぞれ重ねて表示している。
図23中、ユーザEは同期コミュニケーションの開始要求を必ず拒絶し(サーバがユーザEへ開始要求を通知しない)、ユーザGは同期コミュニケーションの開始要求への拒絶の意思表示は行なうが他のユーザが開始要求を強行した場合は同期コミュニケーションが開始される例を示している。それ以外のユーザは、同期コミュニケーションの開始要求を常に受け入れる状態にある。
ここで、以上説明したような動作を実現するための処理を図5、図8及び図9のフローチャートを参照して次に説明する。
図9に示すように、サーバ端末111は、ステップS107において、ステップS101でクライアント端末121から受信した同期コミュニケーション開始要求に応じてそのクライアント端末121と他のユーザやユーザグループが使用するクライアント端末121との間で同期コミュニケーションを開始させる処理を実行するのに先立ち、要求元のクライアント端末121から相手先のクライアント端末121へのアクセスが許容されるかどうかを確かめる(ステップS102)。
ステップS102でのアクセス可否判定処理は、一例として、ログインしたクライアント端末121から送信されたアクセス規則を参照してなされる。前述したように、本実施の形態の仮想オフィス空間提供システムは、サーバ端末111がクライアント端末121に対してログインしたユーザの勤務状況を表す画像データを送信するに際して、JAVAアプレットを伴わせる。このJAVAアプレットは、クライアント端末121において、同期コミュニケーション開始要求処理、同期コミュニケーションにおける表示規則、参加規則、アクセス規則を設定するための処理等を実行させるデータコードである。これらのJAVAアプレットには、図5に示す処理をクライアント端末121に実行させるJAVAアプレットがある。このJAVAアプレットは、クライアント端末121に同期コミュニケーションにおけるアクセス規則を設定するための処理を実行させる。つまり、クライアント端末121は、仮想オフィス空間1211上でのそのクライアント端末121のユーザについての勤務状況表示の画像の見え方を規定し、なおかつ他のユーザからアクセスがあった場合の拒絶の程度を規定するアクセス規則の設定入力が可能となる。クライアント端末121においてアクセス規則の設定が判定されると(ステップS225のY)、その設定されたアクセス規則がクライアント端末121のRAM1203等の記憶領域にレジストされる(ステップS226)。レジストされたアクセス規則は、そのクライアント端末121において同期コミュニケーション開始要求の送信処理があった場合に(ステップS227)、その同期コミュニケーション開始要求に付帯してサーバ端末111に送信される(ステップS228)。こうして、サーバ端末111が有する同期コミュニケーションを実行させる機能は、ログインしたクライアント端末121に、アクセス規則の設定を許容する機能と、設定されたアクセス規則をサーバ端末111に送信させる機能と、を実行させる機能を含むことになる。
ここで、アクセス規則は、一例として、
・同期コミュニケーションの開始要求を常に受け入れるレベル
・他ユーザが開始要求を強行した場合は同期コミュニケーションが開始されるレベル
・同期コミュニケーションの開始要求を必ず拒絶するレベル
という3つのレベルを設けている。そして、アクセス規則は、仮想オフィス空間1211上での表示として、「同期コミュニケーションの開始要求を常に受け入れるレベル」では通常のユーザ画像を表示し、「他ユーザが開始要求を強行した場合は同期コミュニケーションが開始されるレベル」ではユーザ画像の上半分に網掛けや横縞等の模様を重ねた画像を表示し、「同期コミュニケーションの開始要求を必ず拒絶するレベル」ではユーザ画像全体に網掛けや横縞等の模様を重ねて表示するような規則を含んでいる。
なお、図5のフローチャートに示す処理では、アクセス規則を同期コミュニケーション開始要求に付帯させてサーバ端末111に送信するようになっている。これに対して、別の実施の形態として、図8に示すように、アクセス規則を設定する処理は、アクセス規則を同期コミュニケーション開始要求に付帯させることなく独立してサーバ端末111に送信できる処理であっても良い。つまり、アクセス規則の設定がなされると(ステップS251のY)、設定された参加規則をサーバ端末111に送信する(ステップS252)という処理である。このような処理であれば、同期コミュニケーション実行前あるいは同期コミュニケーション実行中であっても、必要に応じてクライアント端末121からサーバ端末111にアクセス規則を送信することができる。
サーバ端末111は、クライアント端末121からアクセス規則を受信すると、受信したアクセス規則を、RAM1103等の記憶領域に作成した図11に例示するテーブル1112のアクセス規則1112eに、そのクライアント端末121と対応付けて記憶する。クライアント端末121とアクセス規則1112eとの対応付けは、受信情報に含まれるIPアドレスを参照することで容易になされる。
そして、サーバ端末111は、記憶したアクセス規則に従い、アクセス規則が設定されたクライアント端末121のユーザについて、仮想オフィス空間1211上でのそのユーザの勤務状況表示の画像を制御する。つまり、アクセス規則に設定されたアクセスレベルが「同期コミュニケーションの開始要求を常に受け入れるレベル」の場合には通常のユーザ画像を表示し、「他ユーザが開始要求を強行した場合は同期コミュニケーションが開始されるレベル」の場合にはユーザ画像の上半分に網掛けや横縞等の模様を重ねた画像を表示し、「同期コミュニケーションの開始要求を必ず拒絶するレベル」の場合にはユーザ画像全体に網掛けや横縞等の模様を重ねて表示するような制御を行なう。こうして、サーバ端末111が有する勤務状況表示を閲覧可能にする機能は、クライアント端末121が選択したアクセスレベルに応じてそのクライアント端末121を使用するユーザに関する他のクライアント端末121上での勤務状況表示を制御することになる。
また、サーバ端末111は、アクセスレベルが設定されたクライアント端末121を相手方とする同期コミュニケーション開始要求を受信した場合(ステップS101のY)、そのクライアント端末121のアクセス規則を図11のテーブル1112で参照し、そのクライアント端末121に対する個々のユーザのアクセスを制御する。つまり、アクセスを拒絶するレベルとなっていれば(ステップS102のY)、そのクライアント端末121に対するアクセスを拒絶する処理を実行する(ステップS103)。こうして、サーバ端末111が有する同期コミュニケーションを実行させる機能は、ログインしたクライアント端末121から送信されたアクセス規則に従い、ログインした別のクライアント端末121から送信された同期コミュニケーション開始要求の受け入れの可否を制御することになる。
(7)同期コミュニケーション進行中であることの隠蔽を伴うアクセス規制
図24は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211において、ユーザ間での同期コミュニケーション参加中情報として、同期コミュニケーション開始要求の受け入れを拒絶する表示を行なうことで、あるユーザ間での同期コミュニケーション参加中情報が隠蔽されている状態の一例を示す模式図である。図25は、ログインしたユーザの勤務状況を表す画像データに基づいてクライアント端末121に表示された仮想オフィス空間1211に表示される進行中の同期コミュニケーションに参加中のユーザリストからある特定のユーザが隠蔽されている状態の一例を示す模式図である。
図24及び図25に示す一例のように、現実には同期コミュニケーションを実行しているユーザB、D、Gが同期コミュニケーションの進行状況を隠蔽した場合、別のクライアント端末121のユーザからは、ユーザB、D、Gは現在何もコミュニケーションしておらず、かつ、「同期コミュニケーションの開始要求を常に受け入れるレベル」にあると見えてしまう。
すると、ユーザB、D、Gに対してユーザが同期コミュニケーション開始要求を出してしまう可能性がある。ところが、実際には彼らは機密の同期コミュニケーションをしているので、別のクライアント端末121からの同期コミュニケーション開始要求に応えられる状態ではない。これにより、同期コミュニケーション進行中であることを隠蔽しているユーザに対して、別のユーザが不用意に同期コミュニケーション開始要求を出すというミスマッチが発生してしまう。
そこで、本実施の形態では、そのようなミスマッチを解消するため、各クライアント端末121のユーザと、他のユーザ又はユーザグループとの関係に基づいて、そのクライアント端末121を使用する同期コミュニケーション参加中のユーザ又はユーザグループの勤務状況表示の画像部分に、同期コミュニケーション参加中情報1213の代わりに、同期コミュニケーション開始要求を必ず拒絶するレベルに対応する状況表示を行ない、かつ、勤務状況表示部分とは別の表示領域に、進行中の同期コミュニケーションに参加中のユーザリスト1214又はユーザグループリスト1215を表示しないようにする。
図24及び図25がその例である。図24では、ユーザB、D、G間で同期コミュニケーションが進行中であることを示す表示、つまり同期コミュニケーション参加中情報1213を表示しない代わりに、「同期コミュニケーションの開始要求を必ず拒絶するレベル」の表示を行なっている。また、図25では、同期コミュニケーション進行中であることを示すユーザリスト1214にユーザB、D、Gで行なっている同期コミュニケーションを表示していない。
こうすると、別のクライアント端末121のユーザには、ユーザB、D、Gが同期コミュニケーションをしていることは分からないが、「同期コミュニケーションの開始要求を必ず拒絶」していることは分かる。したがって、他のユーザがユーザB、D、Gに対して不用意に同期コミュニケーション開始要求を出してしまうおそれが無くなる。
以上説明したような動作を実現するために、本実施の形態では、サーバ端末111は、例えばRAM1103等の記憶領域に記憶されたユーザ間の関係定義に応じて、あるクライアント端末121を使用するユーザに関する他のクライアント端末121上での勤務状況表示を同期コミュニケーションの開始要求を拒絶する表示に変更制御し、当該クライアント端末121に対する当該他のクライアント端末121からの同期コミュニケーション開始要求を拒絶制御するようにした。
また、サーバ端末111は、あるクライアント端末121を使用するユーザに関する他のクライアント端末121上での勤務状況表示を同期コミュニケーションの開始要求を拒絶する表示に変更制御し、当該クライアント端末121に対する当該他のクライアント端末121からの同期コミュニケーション開始要求を拒絶制御する場合には、当該クライアント端末121が同期コミュニケーションに参加中であっても、当該他のクライアント端末121の表示領域に表示されるユーザリスト1214に当該クライアント端末121を使用するユーザを表示しない機能を実行する。
(8)同期コミュニケーションの終了
図26は、同期コミュニケーション終了に際してのアンケート回答処理の流れを示すフローチャートである。
図26に示すフローチャートの処理は、一例として、サーバ端末111から構内ネットワーク401又は外部ネットワーク501を介してクライアント端末121に送信された例えばJAVAアプレットによって、クライアント端末121が実行する。別の一例として、図26に示すフローチャートの処理は、クライアント端末121に予めインストールされているアンケート処理用のプログラム等によって実行されても良い。これらの二つの例は、いずれも、図26に示すフローチャートの処理が、クライアント端末121において実行される例である。これに対して、図26に示すフローチャートの処理は、サーバ端末111で実行されても良い。例えば、サーバ端末111にオフィス空間提供サイトが用意されており、クライアント端末121は単にそのオフィス空間提供サイトにアクセスして閲覧するだけであるようなシステム構成の場合、サーバ端末111が図26の示すフローチャートの処理を実行することができる。そこで、図26のフローチャートに示す処理については、各種の実施の形態を採用し得るとした上で、その処理内容について次に説明する。
ステップS261での同期コミュニケーションの開始後、クライアント端末121において同期コミュニケーションの終了が指示されたかどうかの判定に待機される(ステップS262)。この判定は、システム構成に応じて、サーバ端末111のCPU1101又はクライアント端末121のCPU1201での処理によって実行される。サーバ端末111のCPU1101によってクライアント端末121での同期コミュニケーション終了指示を判定する場合の一例として、サーバ端末111は、サーバ端末111がクライアント端末121に提供するオフィス空間提供サイトに同期コミュニケーション終了指示のための選択指示を可能にするオブジェクトを用意すれば良い。この場合、クライアント端末121がそのオブジェクトを選択指示すると、一例としてその選択指示がHTTP転送によってサーバ端末111に伝達される。
ここに、実行中の同期コミュニケーションを終了させる指示入力をクライアント端末121に許容し、このクライアント端末121が入力した当該指示をサーバ端末111に送信させる手段、機能、工程が実行される。
ステップS262で、同期コミュニケーションの終了が指示されと判定された場合(ステップS252のY)、クライアント端末121にアンケート用の問合せダイアログが表示される。このようなクライアント端末121での表示処理は、システム構成に応じて、サーバ端末111のCPU1101又はクライアント端末121のCPU1201での処理によって実行される。サーバ端末111のCPU1101によってクライアント端末121での表示処理を制御する一例として、サーバ端末111は、クライアント端末121に対して、サーバ端末111がクライアント端末121に提供するオフィス空間提供サイト内で動作する表示処理用の例えばJAVAスクリプトを送信する。
図27には、アンケート用の問合せダイアログの一例を示す。図27に例示する問合せ用ダイアログは、17時6分にマエダカオルさんによって開始されたミーティングについての感想を求める内容となっている。つまり、ユーザに問うアンケートは、クライアント端末121が終了指示した同期コミュニケーションに関するアンケートである。このため、ユーザにとってみると、自分がたった今まで参加していた同期コミュニケーションに関してアンケート形式で質問されることから、記憶が新鮮なうちにアンケートに回答する機会が与えられることになる。これにより、ユーザから信頼度の高い情報が得られ易くなる。
図27に例示する問合せ用ダイアログは、「ミーティングの目的は何ですか」という目的を問う質問と、「最も役に立ったツールは何ですか」という各機能の有用性を問う質問とが選択形式でなされている。この場合の選択は、図28に示すように、プルダウンメニュー形式による選択である。したがって、ユーザは、アンケートに対する回答をプルダウンメニューから容易かつ短時間に選択することができる。
図28に例示するプルダウンメニューを参照すると、オーディオビデオチャット(Audio/Video Chat)、ホワイトボード(White board)、アプリケーション/デスクトップの共有(Application/Desktop Sharing)、テキストチャット(Text Chat)、文書リンク(Document Links)、及びテスト/練習/デモンストレーション(Test/Practice/Demo)という選択肢がユーザに提供される。これらのうち、テスト/練習/デモンストレーション(Test/Practice/Demo)という選択肢は、クライアント端末121が終了指示した同期コミュニケーションでのコミュニケーション目的以外の選択肢である。つまり、「テスト」という選択肢は、システム検証のためのテストを意味し、「練習」という選択肢は、使用方法を学習するための練習を意味し、「デモンストレーション」という選択肢は、例えば本実施の形態の仮想オフィス空間提供システムを宣伝目的で他人に見せるような行為を意味する。このような同期コミュニケーションでのコミュニケーション目的以外の選択肢は、一例として、ユーザが参加した同期コミュニケーションについての回答を集計するような場合、同期コミュニケーションでのコミュニケーション目的以外の選択肢について回答数を除外することで、より精度の高い分析を可能にするという効用がある。
図27に例示するアンケート用の問合せダイアログには、「OK」というオブジェクトが含まれている。クライアント端末121においてその「OK」というオブジェクトが選択支持された場合、図26に示すフローチャートは、アンケート用の問合せダイアログへのユーザ入力が完了したと判定する(ステップS264のY)。この判定に応じて、アンケート用の問合せダイアログへの入力結果をサーバ端末111に送信する処理が実行され(ステップS265)、処理を終了する。これらのステップS264での判定及びステップS265での送信は、システム構成に応じて、サーバ端末111のCPU1101又はクライアント端末121のCPU1201での処理によって実行される。この際、クライアント端末121からサーバ端末111へのデータ転送は、HTTP転送によって実行される。
ここに、クライアント端末121から実行中の同期コミュニケーションを終了させる指示を受信した場合、当該クライアント端末121に回答の入力が可能なアンケートを提供し、そのクライアント端末121が入力したアンケートの回答をサーバ端末111に送信させる手段、機能、工程が実行される。
次いで、図26のフローチャートには示していないが、サーバ端末111は、クライアント端末121からアンケートの回答を受信した場合、その回答を当該同期コミュニケーション及び当該クライアント端末121を特定可能な同一性情報と共にログ情報として例えばRAM1103等の記憶領域に記録する。ここに、当該記録する手段、機能、工程が実行される。
(9)途中退出後の再参加の場合におけるアンケートの省略
同期コミュニケーションの終了に際して、ユーザにアンケートを記入してもらう例について説明した。これに対して、ある同期コミュニケーションから途中退出した後、その同期コミュニケーションに再参加することが想定される。この場合、途中退出したユーザは、既にアンケートに回答済みである。そこで、そのようなアンケートに回答済みのユーザが同一の同期コミュニケーションに再参加する場合には、再度アンケートに記入してもらう必要がないとも考えられる。そこで、同期コミュニケーションに再参加するアンケートに回答済みのユーザに対しては、アンケートの記入依頼を省略するようにしても良い。
このような処理は、クライアント端末121に、ある同期コミュニケーションから途中退出した後、その同期コミュニケーションに再参加する権限を持たせることが条件となる。そこで、サーバ端末111は、実行中の同期コミュニケーションから途中退出する指示入力と当該同期コミュニケーションへ再参加する指示入力とをクライアント端末121に許容し、このクライアント端末121が入力した当該指示に応じてそのクライアント端末121を当該同期コミュニケーションから途中退出又は再参加させる手段、機能、工程を実行し得るように構成されている。このような手段、機能、工程は、サーバ端末111がクライアント端末121に対して、途中退出及び再参加についての規制を積極的に設けなければ、特別の処理を要することなく実行可能である。
図29は、同期コミュニケーションに対する途中退出又は再参加の処理に際して用いられるフラグ領域の模式図である。このフラグ領域は、一例としてサーバ端末111におけるRAM1103等の記憶領域に作成され、同期コミュニケーションに参加している個々のクライアント端末121毎に、各同期コミュニケーションを特定するための同期コミュニケーションIDに対応させて退出済みであるかどうかをフラグという手法で管理するようなデータ構造を有している。例えば、図29中、あるクライアント端末121について、m200303211223というIDを有する同期コミュニケーションについては退出済フラグのセット(○)によって退出済み、m200303211601というIDを有する同期コミュニケーションについては退出済フラグのリセット(×)によって退出済みでない、というそれぞれのステータスを管理することができる。
別の一例として、図29に例示するフラグ領域は、例えばサーバ端末111からクライアント端末121に送信されるJAVAアプレットによって、クライアント端末121におけるRAM1203等の記憶領域に作成されても良い。
図30は、同期コミュニケーションに対する途中退出又は再参加の処理を含むアンケート回答処理の流れを示すフローチャートである。その処理内容を次に説明する。
クライアント端末121から同期コミュニケーションの開始要求があった場合、同期コミュニケーションの開始(後述するステップS273)に先立ち、フラグ領域が作成済みであるかどうかが判定される(ステップS271)。この場合のフラグ領域というのは、図29に例示するようなある同期コミュニケーションに対する途中退出及び再参加を管理するためのフラグ領域である。この判定は、システム構成に応じて、サーバ端末111のCPU1101又はクライアント端末121のCPU1201での処理によって実行される。この場合、サーバ端末111が自己の例えばRAM1103等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合と、サーバ端末111がクライアント端末121の例えばRAM1203等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合と、例えばサーバ端末111から送信されたJAVAアプレットによってクライアント端末121が自己の例えばRAM1203等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合と、例えばサーバ端末111から送信されたJAVAアプレットによってクライアント端末121がサーバ端末111の例えばRAM1103等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合との、四態様が想定される。いずれの態様でも実施可能である。もっとも、四態様が動的に変化する必要はなく、システム上決定されたある一つの態様が実施されれば十分である。サーバ端末111がクライアント端末121の例えばRAM1203等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合、あるいは、クライアント端末121がサーバ端末111の例えばRAM1103等の記憶領域を参照してフラグ領域作成済みの有無を判定する場合には、サーバ端末111とクライアント端末121との間で問合せ伝文を送受信すれば良い。
ステップS271での判定の結果、フラグ領域が作成済みでないと判定された場合には(ステップS271のN)、フラグ領域が作成される。このフラグ領域は、前述したように、サーバ端末111の例えばRAM1103等の記憶領域に作成されても、クライアント端末121の例えばRAM1203等の記憶領域に作成されても、いずれでも良い。
その後、同期コミュニケーションが開始される(ステップS273)。そして、同期コミュニケーションの開始後は、クライアント端末121において同期コミュニケーションの終了又は退出が指示されたかどうかの判定に待機される(ステップS274)。この判定は、図26に示すフローチャートのステップS262の判定処理と同様の処理によって実現される。
ステップS274で、クライアント端末121において同期コミュニケーションの終了又は退出が指示されたと判定された場合には(ステップS274のY)、ステップS272で作成済みのフラグ領域が参照される。その結果、クライアント端末121が終了又は退出しようとする同期コミュニケーションについて未退出である場合には、ステップS276〜279の処理が続いて実行される。これに対して、クライアント端末121が終了又は退出しようとする同期コミュニケーションについて既に一度退出済みである場合には、ステップS276〜279の処理を省略してそのまま終了又は退出処理がなされる。
ここに、ある同期コミュニケーションにおいて途中退出後に再参加したクライアント端末121には、このクライアント端末121から当該同期コミュニケーションを終了させる指示を受信した場合でも、当該クライアント端末121へアンケートを提供しないようにする手段、機能、工程が実行される。
ここで、クライアント端末121が終了又は退出しようとする同期コミュニケーションについて未退出であるか既に一度退出済みであるかということは、図29に例示するフラグ領域の退出済フラグのステータスを参照することで容易に認識可能である。つまり、ある同期コミュニケーションについて、退出済フラグがリセット(×)されている場合、クライアント端末121はその同期コミュニケーションについて未退出である。これに対して、ある同期コミュニケーションについて、退出済フラグがセット(○)されている場合、クライアント端末121はその同期コミュニケーションについて既に退出済みである。
クライアント端末121が終了又は退出しようとする同期コミュニケーションについて未退出である場合に実行されるステップS276〜279の処理について説明する。まず、フラグ領域の該当する同期コミュニケーションに対応させて、退出済フラグがセットされる(ステップS276)。続いて、クライアント端末121にアンケート用の問合せダイアログが表示され(ステップS277)、その入力が確認されると(ステップS278)、アンケート用の問合せダイアログへの入力結果をサーバ端末111に送信する処理が実行され(ステップS278)、処理を終了する。これらのステップS277〜279の処理に関して、ステップS277の表示処理は図26に示すフローチャート中のステップS263の表示処理、ステップS278の判定処理は図26に示すフローチャート中のステップS264の判定処理、ステップS279の送信処理は図26に示すフローチャート中のステップS265の送信処理と同様の処理によって実現される。
このように、クライアント端末121が終了又は退出しようとする同期コミュニケーションについて未退出であったとしても(ステップS275の未退出)、その同期コミュニケーションから一度途中退出した後は、ステップS276の処理によって退出済フラグがセットされる。したがって、そのクライアント端末212がその同期コミュニケーションに再参加した場合、今度はステップS275において退出済みであると判定され、ステップS276〜279の処理が省略される。ステップS276〜279の処理が省略されるということは、アンケートが提供されないということである。これにより、既にアンケートに回答済みのユーザに対して、重ねて同一の同期コミュニケーションに対するアンケートを要求するような重複が防止される。