(57)【特許請求の範囲】
【請求項１】
互いに接続されたメンバ間において画像を共有する画像共有装置であって、
画面を選択する画面選択手段と、
前記画面選択手段による選択に従って、共有される第１の画面の表示、あるいは該第１の画面に重ねて前記第１の画面を共有するメンバの部分メンバにより共有される第２の画面の表示を行う表示手段と、
前記第１の画面あるいは前記第２の画面のいずれかに選択的に描画する描画手段と、
前記第２の画面の内容を前記第１の画面に複写する複写手段と
を備えることを特徴とする画像共有装置。
【請求項２】
画像を入力する入力手段と、
他のメンバから画像及び画面指定を含むメッセージを受信する受信手段とを更に備え、
前記描画手段は、前記入力手段により画像が入力された場合には前記画面選択手段により選択された画面に入力画像を描画し、前記受信手段により受信した画像については、当該メッセージによる指定画面に画像を描画することを特徴とする請求項１に記載の画像共有装置。
【請求項３】
前記第１の画面を共有するメンバから所望のメンバを選択するメンバ選択手段と、
前記メンバ選択手段により選択されたメンバにより共有される前記第２の画面を生成する画面生成手段と
を更に備えることを特徴とする請求項１または２に記載の画像共有装置。
【請求項４】
前記画面生成手段は、前記選択手段により選択されたメンバに対して、前記第２の画面を共有するメンバになることの諾否を問合せ、承認したメンバにより前記第２の画面を共有することを特徴とする請求項３に記載の画像共有装置。
【請求項５】
他のメンバからの前記第２の画面を共有するメンバになることの諾否の問合せを受信する手段と、該受信した問合せに対して応答する手段をさらに備えることを特徴とする請求項１乃至４のいずれかに記載の画像共有装置。
【請求項６】
前記第２の画面を消滅させる手段を更に備えることを特徴とする請求項１乃至５のいずれかに記載の画像共有装置。
【請求項７】
前記第２の画面は、前記第１の画面全体に重畳して表示されることを特徴とする請求項１乃至６のいずれかに記載の画像共有装置。
【請求項８】
前記第２の画面は、前記第１の画面の一部に重複して表示されることを特徴とする請求項１乃至６のいずれかに記載の画像共有装置。
【請求項９】
前記メンバ選択手段は、当該選択手段によりメンバを選択するメンバを含む複数のメンバを選択し、その選択されたメンバにより前記第２の画面は共有されることを特徴とする請求項３に記載の画像共有装置。
【請求項１０】
互いに接続された端末上のメンバ間において画像を共有する画面の制御方法であって、
選択された画面を判定する判定工程と、
前記判定工程の判定に従って、共有される第１の画面の表示、あるいは該第１の画面に重ねて前記第１の画面を共有するメンバの部分メンバにより共有される第２の画面の表示を行う表示工程と、
前記第１の画面あるいは前記第２の画面のいずれかに選択的に描画する描画工程と、
前記第２の画面の内容を前記第１の画面に複写する複写工程と
を備えることを特徴とする画面制御方法。
【請求項１１】
前記描画工程は、画像が当該端末で入力された場合には前記判定工程により選択されたと判定された画面に入力画像を描画し、他のメンバから画像を含むメッセージを受信した場合には、受信した画像を、そのメッセージによる指定画面に画像を描画することを特徴とする請求項１０に記載の画面制御方法。
【請求項１２】
前記第１の画面を共有するメンバから所望のメンバを選択するメンバ選択工程と、
前記メンバ選択工程により選択されたメンバにより共有される前記第２の画面を生成する画面生成工程とを更に備えることを特徴とする請求項１０または１１に記載の画面制御方法。
【請求項１３】
前記画面生成工程は、前記選択工程により選択されたメンバに対して、前記第２の画面を共有するメンバになることの諾否を問合せ、承認したメンバにより前記第２の画面を共有することを特徴とする請求項１２に記載の画面制御方法。
【請求項１４】
他のメンバからの前記第２の画面を共有するメンバになることの諾否の問合せを受信する工程と、
該受信した問合せに対して応答する工程をさらに備えることを特徴とする請求項１０乃至１３のいずれかに記載の画面制御方法。
【請求項１５】
前記第２の画面を消滅させる工程を更に備えることを特徴とする請求項１０乃至１４のいずれかに記載の画面制御方法。
【請求項１６】
前記第２の画面は、前記第１の画面全体に重畳して表示されることを特徴とする請求項１０乃至１５のいずれかに記載の画面制御方法。
【請求項１７】
前記第２の画面は、前記第１の画面の一部に重複して表示されることを特徴とする請求項１０乃至１５のいずれかに記載の画面制御方法。
【請求項１８】
前記メンバ選択工程は、当該選択工程によりメンバを選択するメンバを含む複数のメンバを選択し、その選択されたメンバにより前記第２の画面は共有されることを特徴とする請求項１２に記載の画面制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機を用いた電子会議システムにより用いられる画像共有装置及び画面制御方法に関する。
【０００２】
【従来の技術】
従来、電子会議システムには、参加メンバで共有される画像共有装置として端末を用いて会議を行わせるものがあった。その画像共有装置は、電子会議システム、すなわち通信ネットワークで接続された端末を相互に結合して電子的に行われるデスクトップ会議の会議参加者全員で画面を共有するもので、その画面をホワイトボードにみたてて共有ホワイトボード装置と呼ばれることもある。この共有ホワイトボード装置は、常に会議参加者全員が同一の画面を参照し、参加者の描いたドローイングも必ず全員の会議参加者の間で共有される。
【０００３】
【発明が解決しようとする課題】
ところが、会議の進行中に疑問が生じたとき、それが会議の進行を止めるほどではない場合、隣の参加者に確認をとるといった、参加者全員と行う必要がなく、会議の進行とは別に為される会話（サイドカンバセーション）を行いたいことが実際の会議でもしばしばある。デスクトップ会議上では、会議中の発言とサイドカンバセーションを区別できないので、筆談による方法が考えられるが、上記のような共有ホワイトボード装置では描画が全員の装置に反映されるため、このような要求に答えることができない。
【０００４】
このような場合に、特定の参加者のみと共有する共有ホワイトボード装置を新たに用いれば進行中の会議に支障をきたすことは無い。しかし、進行中の会議における共有ホワイトボードの画面を別の共有ホワイトボード装置に表示して議論したい場合も多々ある。このような場合、サイドカンバセーションにおいても進行中の会議のホワイトボード画面を見ながら会話を行うと、それが本来の会議のホワイトボード画面であるのか、サイドカンバセーションのホワイトボードの画面であるのか区別がつけにくく、混乱をきたすこともある。また画面のスペース効率上も問題がある。
【０００５】
本発明の目的は、上記の問題点に鑑みてなされたもので、会議参加者が、本来の会議の進行を妨げることなく、それとは独立した会議を催すことができ、しかもそれらを区別し易く画面のスペースを有効に利用し、更に後者の会議の内容を、本来の会議に反映しやすくすることで、各参加者が有効に議論できる画像共有装置及び画面制御方法を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像共有装置は次のような構成からなる。すなわち、互いに接続されたメンバ間において画像を共有する画像共有装置であって、画面を選択する画面選択手段と、前記画面選択手段による選択に従って、共有される第１の画面の表示、あるいは該第１の画面に重ねて前記第１の画面を共有するメンバの部分メンバにより共有される第２の画面の表示を行う表示手段と、前記第１の画面あるいは前記第２の画面のいずれかに選択的に描画する描画手段と、前記第２の画面の内容を前記第１の画面に複写する複写手段とを備える。
【０００７】
また、本発明の画面制御方法は次のような構成からなる。すなわち、互いに接続された端末上のメンバ間において画像を共有する画面の制御方法であって、選択された画面を判定する判定工程と、前記判定工程の判定に従って、共有される第１の画面の表示、あるいは該第１の画面に重ねて前記第１の画面を共有するメンバの部分メンバにより共有される第２の画面の表示を行う表示工程と、前記第１の画面あるいは前記第２の画面のいずれかに選択的に描画する描画工程と、前記第２の画面の内容を前記第１の画面に複写する複写工程とを備える。
【０００９】
【発明の実施の形態】
＜電子会議システムの構成＞
図２は本発明の実施の形態である電子会議システムを示す図面であり、図１は、そのシステムにおいて共有ホワイトボードを実現する計算機ＷＳ１〜ＷＳ２の構成を示す図である。
【００１０】
図１において、ＣＰＵ１−１は、ＲＡＭ１−１や外部記憶１−７に格納されたプログラムを実行して端末装置全体を制御するためのＣＰＵであり、ＲＡＭ１−２はプログラムやデータなどを書換え可能に格納する。入力デバイス１−３はキーボードやポインティングデバイスなどであり、ユーザからの入力を受付ける。本実施の形態のシステムではその一例としてマウスを用いる。ディスプレイ装置１−４は、後述の共有ホワイトボード画面などを表示する。ネットワークインターフェース１−６は、ネットワーク１−０と端末装置とのインターフェースを行う。これらは内部バス１−５で接続され、ＣＰＵ１−１に制御される。
【００１１】
図１のように構成された計算機が図２のようにネットワーク上に接続される。計算機２−１，２−２，２−３，２−４はネットワーク１−０に接続され、それぞれＷＳ１，ＷＳ２，ＷＳ３，ＷＳ４と名前が付けられているものとする。ここでは４台の計算機による構成としたが、特にその数にはこだわらない。更に、計算機２−１，２−２，２−３，２−４をそれぞれユーザ１，ユーザ２，ユーザ３，ユーザ４というユーザが会議参加者として使用しているものとする。
【００１２】
更に、本発明の一つの構成例として、共有ホワイトボード２−５が計算機２−１，２−２，２−４上でのプロセスとして動作している。共有ホワイトボードプロセス２−５は、ユーザインターフェースを提供し、ユーザ入力受け付け、描画内容表示を行いながら、他の計算機で動作しているプロセス同士で、会議参加者の情報の授受、互いのホワイトボードへの描画動作などのメッセージ通信を行い強調して動作する。共有ホワイトボードプロセス２−５は、ＲＡＭ１−２上のプログラムに従ってＣＰＵ１−１で動作するプロセスであり、本実施の形態では計算機ＷＳ１，ＷＳ２，ＷＳ３，ＷＳ４で、それぞれ動作しているものとする。
【００１３】
ホワイトボードへの描画、ＧＵＩ（グラフィックユーザインターフェース）部品などはディスプレイ１−４上に表示され、ユーザ入力はマウス１−３によってディスプレイ１−４上に表示された部品をクリックまたはドラッグすることによって行われる。描画内容は所定の形式のビットマップデータとしてＲＡＭ１−２に置かれる。また会議参加者に関する情報もＲＡＭ１−２に後述の形式で格納される。
【００１４】
各共有ホワイトボードプロセス間の通信は、ネットワークＩ／Ｆ１−６、及びネットワーク１−０を介してブロードキャスト、またはマルチキャストで行われ、一つの共有ホワイトボードが送信したデータは、他の全ての共有ホワイトボードに対して送信される。このような通信が行われるならば、ネットワークの種類、ネットワークプロトコルにはこだわらない。
＜ホワイトボードの表示及びの操作＞
図３（ａ）に共有ホワイトボード２−５の画面例を示す。この例ではＷＳ１でユーザ１が動作させているプロセスを想定している。ホワイトボードの基本画面３−１には、描画を行うためのホワイトボード領域３−２や、各種ボタン、参加メンバのアイコン等が表示される。ホワイトボード領域３−２は、マウス１−３による入力でドロー制御パネル３−３を制御し、描画（ドロー）を行う領域である。また、ホワイトボード領域３−２に書き込まれたドローのデータは所定の形式でメモリ１−２上に蓄積され、ネットワーク１−０を介して後述する形式で他の共有ホワイトボード２−５に送信される。他の共有ホワイトボードから送信されたドローデータをネットワークＩ／Ｆ１−６を通して受信した共有ホワイトボードは、ドローデータに従って、ホワイトボード領域３−２への描画を行う。
【００１５】
ホワイトボード領域３−２は、図３（ｂ）に示したように、会議レイヤ３−１１とサイドカンバセーションレイヤ３−１２の２つのレイヤからなっており、サイドカンバセーションレイヤは、後述するサイドカンバセーションの開始操作により生成され、サイドカンバセーション終了操作により消滅する。サイドカンバセーションを行っている場合は、３−４レイヤコピーボタンをクリックすることにより、サイドカンバセーションレイヤから会議レイヤへの描画内容のコピーが行われる。また、レイヤ選択ボタン３−５をクリックすることにより、会議レイヤとサイドカンバセーションレイヤからの重ね合わせをホワイトボード領域に表示する（これをサイドカンバセーションモードと呼ぶことにする）か、会議レイヤのみを表示する（この時を会議モードと呼ぶことにする）かを選択し、表示する。ユーザの行った描画は、会議レイヤのみを表示している場合は、会議参加者全員のホワイトボードの会議レイヤのみに反映され、２つのレイヤの重ね合わせを表示している場合は、サイドカンバセーションを行っている相手のサイドカンバセーションレイヤのみに反映される。レイヤ選択は、本実施形態では、レイヤ選択ボタンのクリックによるトグル（２つのモードの切り替え）の形式を取ることとする。各レイヤはＲＡＭ１−２に展開され、現在のモードが会議モードかサイドカンバセーションモードかを示すインジケータや、カンバセーションモードである場合にはどちらのレイヤがアクティブになっているかを示すフリップフロップ（レイヤ選択ボタンにより切り替えられる）とともに、ＲＡＭ１−２に格納されている。
【００１６】
会議メンバパネル３−６には、現在の会議参加者（画面が表示されている端末の使用者を含む）の一覧が示される。本実施例では、予め会議参加者ユーザ１，ユーザ２，ユーザ３，ユーザ４のそれぞれについてあらかじめ登録されているメンバアイコン３−８を表示するが、ユーザ名だけを表示しても構わない。
【００１７】
ユーザが能動的にサイドカンバセーションを開始するには、会議メンバパネル３−６からサイドカンバセーションの相手を選び、メンバアイコン３−８をドラッグ＆ドロップでサイドカンバセーションパネル３−７にドロップし、サイドカンバセーション開始ボタン３−１０をクリックして、相手ユーザの承認が得られればサイドカンバセーションを開始できる。また、ユーザが能動的にサイドカンバセーションを終了する際には、サイドカンバセーション終了ボタン３−９をクリックして、相手ユーザの承認が得られればサイドカンバセーションを終了する。開始／終了どちらの場合も相手の承認が得られない場合は、図４（ａ）に示すメッセージパネル３−２１を表示する。
【００１８】
ユーザが他のユーザからサイドカンバセーションの開始を要求された場合、図４（Ｂ）に示すサイドカンバセーション確認パネル３−２２が表示される。このパネル３−２２上で、承認ボタンをクリックすれば、能動的に開始した場合と同様にサイドカンバセーションパネル３−７に相手のアイコンと自分のアイコンが表示され、サイドカンバセーションが行える状態になる。拒否ボタンをクリックすれば何も行わない。
【００１９】
尚、会議メンバパネル３−６の枠とサイドカンバセーションメンバパネル３−７の枠はそれぞれ色を違わせることとし（例えば青色と赤色）、会議モードの時には、ホワイトボード領域３−２の枠の色を青色で表示し、サイドカンバセーションモードでは、赤色で表示するようにして、どちらのモードに入っているのかを分かりやすくする。また、サイドカンバセーションを行うことができるかどうかを分かりやすくするため、サイドカンバセーションメンバパネル３−７は、サイドカンバセーションを開始すると、パネルの背景色を赤色にするなどして、サイドカンバセーションモードに入っていることを分かりやすくする。
【００２０】
また、サイドカンバセーションモードと会議モードの違いを分かりやすくするには、サイドカンバセーションと会議の各レイヤにその描画レイヤを共有しているメンバのメンバアイコンを表示するようにしても良い。
＜メッセージ形式＞
図５に各端末装置ＷＳ１〜ＷＳ４における共有ホワイトボード間でやり取りされるメッセージの形式の一例を示す。メッセージには、ホワイトボード領域への書き込みが行われた場合とレイヤコピーボタンがクリックされた場合に送信される描画メッセージ４−１、サイドカンバセーションを開始したい時に送信されるサイドカンバセーション開始メッセージ４−２、サイドカンバセーション開始を他のホワイトボードに要求された時に要求に応答するために送信されるサイドカンバセーション開始応答メッセージ４−３、サイドカンバセーションを終了したい時に送信されるサイドカンバセーション終了要求メッセージ４−４、サイドカンバセーションの終了を他のホワイトボードに要求された時に要求に応答するために送信されるサイドカンバセーション終了応答メッセージ４−５の５種類が含まれている。それぞれのメッセージは、共通するフィールドとしてメッセージの種類を示すメッセージＩＤと送信者のフィールドを持ち、上記した順に、ＤＲＡＷ，ＳＣ＿ＳＴＡＲＴ＿ＲＥＱ，ＳＣ＿ＳＴＡＲＴ＿ＡＣＫ，ＳＣ＿ＥＮＤ＿ＲＥＱ，ＳＣ＿ＥＮＤ＿ＡＣＫの５種類のメッセージＩＤでメッセージの種別を識別する。送信者フィールドは“ユーザ名＠計算機名”の形式をとる。
【００２１】
描画メッセージ４−１は他に描画すべきレイヤを示す描画レイヤのフィールドを持ち、“サイドカンバセーション”レイヤか、“会議”レイヤのどちらかに描画するかを指定する。ビットマップデータのフィールドには、書き込みを行った描画を所定のビットマップ画像形式にして格納する。この画像データのフォーマットは、ここではビットマップデータとしたが、他の形式でも構わないし、線，円，多角形の場合にはパラメータの集合としても構わない。
【００２２】
サイドカンバセーション開始要求メッセージ４−２、サイドカンバセーション終了要求メッセージ４−４はサイドカンバセーションをしたい相手を指定するための受信者のフィールドを持つ。受信者フィールドも送信者フィールドと同じく“ユーザ名＠計算機名”の形式をとる。
【００２３】
サイドカンバセーション開始応答メッセージ４−３、サイドカンバセーション終了応答メッセージ４−５の受信者フィールドには、サイドカンバセーションの開始または終了を要求してきた相手を指定し、ステータスフィールドにその要求を受け入れるか、拒否するかを“承認”または“拒否”の値で指定する。
【００２４】
図６は共有ホワイトボードが内部で持ち、会議参加者の情報を管理するためのリストを示す。会議メンバリスト５−１は、会議に参加し、協調して動作している共有ホワイトボードのユーザ名と計算機名の情報を格納し、サイドカンバセーションメンバリスト５−２は、サイドカンバセーションを行っているユーザ名と計算機名とを格納する。会議メンバリスト５−１は会議に参加している各ユーザのホワイトボードプロセスにより管理されており、サイドカンバセーションメンバリスト５−２は、サイドカンバセーションに加わっている各ユーザのホワイトボードプロセスによって管理される。これらリストは、ＲＡＭ１−２に格納される。
＜サイドカンバセーションに係る処理手順＞
図７〜図１５に共有ホワイトボードの動作フローチャートを示す。この手順は、図１のＲＡＭ１−２に格納されたプログラムを、ＣＰＵ１−１により実行することで実現される。なお、これらフローチャートの説明では、共有ホワイトボードはＷＳ１のユーザ１により操作されているものとし、具体的な説明は、図３（ａ）に示された画面を例として行うものとする。
【００２５】
共有ホワイトボードは、図７のＳ６００１でイベントを持つループに入っている。メッセージの受信、またはユーザ入力があるとイベントループを抜け、イベントが通信によるものかユーザ入力（マウス入力）によるものかを判定し（Ｓ６００２）、メッセージの受信であれば受信したメッセージＩＤによりその種別を判定する（Ｓ６００３）。メッセージがＤＲＡＷである場合Ｍ１に処理を移し（Ｓ６００４）、ＳＣ＿ＳＴＡＲＴ＿ＲＥＱである場合Ｍ２に処理を移し（Ｓ６００５）、ＳＣ＿ＥＮＤ＿ＲＥＱの場合はＭ３に処理を移す（Ｓ６００６）。
【００２６】
一方、イベントがユーザ入力である場合はＳ６００７で操作の種類を判定する。判定すべき操作は、ホワイトボード領域への描画、サイドカンバセーション開始ボタンクリック、サイドカンバセーション終了ボタンクリック、レイヤ選択ボタンクリック、レイヤコピーボタンクリック、メンバアイコンのドラッグアンドドロップである。操作の種類に応じて、それぞれＯ１（Ｓ６００８），Ｏ２（Ｓ６００９），Ｏ３（Ｓ６０１０），Ｏ４（Ｓ６０１１），Ｏ５（Ｓ６０１２），Ｏ６（ｓ６０１３）に処理を移す。
【００２７】
＜描画メッセージの処理＞
ＤＲＡＷメッセージを受信した場合、図８のＳ６０２１でメッセージの解析を行い、送信者、描画レイヤ、画像データを抽出する。Ｓ６０２２で送信者がサイドカンバセーションの相手かどうかを判定し、もしそうでなければＳ６０２４で会議レイヤに画像データを描画してイベント待ち（Ｓ６００１）に戻る。もし、サイドカンバセーションの相手であれば、Ｓ６０２３でメッセージの描画レイヤがどちらかを判定し、会議レイヤならＳ６０２４で会議レイヤへの描画を行う。描画レイヤがサイドカンバセーションレイヤならＳ６０２５でサイドカンバセーションレイヤへの描画を行い、イベント待ち（Ｓ６００１）に戻る。
【００２８】
＜サイドカンバセーション開始要求メッセージの処理＞
ＳＣ＿ＳＴＡＲＴ＿ＲＥＱメッセージを受信すると、図９のＳ６０３１でメッセージ解析を行い、送信者と受信者を抽出する。Ｓ６０３２で受信者として指定されているのが自分であるかどうかを判定する。その結果、自分に宛られたものでなければ、Ｓ６００１に戻る。自分に宛られたものであれば、Ｓ６０３３に処理を移す。Ｓ６０３３ではサイドカンバセーションを既に行っているかどうかを判定する。これにはサイドカンバセーションレイヤが存在するかどうか、すなわちサイドカンバセーションモードであるかどうかを見ればいい。既にサイドカンバセーションを行っているのであれば、Ｓ６０３９で、ＳＣ＿ＳＴＡＲＴ＿ＡＣＫメッセージのステータスを“拒否”にセットし、受信者として、ＳＣ＿ＳＴＡＲＴ＿ＲＥＱメッセージの送信者をセットして、メッセージを送信する。
【００２９】
サイドカンバセーションを行っていなければ、Ｓ６０３４に処理を移す。Ｓ６０３４ではサイドカンバセーション操作問い合わせパネル３−２２を表示して、ユーザの入力待ちループ（Ｓ６０３５）に入る。この入力待ちを拒否ボタンの入力で抜けた場合はＳ６０３９で拒否のメッセージを送信し、Ｓ６００１に戻る。承認ボタンの入力で抜けた場合はＳ６０３６で“承認”をステータスにセットしたＳＣ＿ＳＴＡＲＴ＿ＡＣＫメッセージを要求されたホストに送信し、Ｓ６０３７でサイドカンバセーションメンバパネルに表示されているアイコンの情報を元にサイドカンバセーションメンバリストを更新して、サイドカンバセーションレイヤを生成して、Ｓ６００１に戻る。
【００３０】
＜サイドカンバセーション終了要求メッセージの処理＞
ＳＣ＿ＥＮＤ＿ＲＥＱメッセージを受信すると、図１０のＳ６０４１でメッセージの解析を行い、送信者と受信者を抽出する。Ｓ６０４２で受信者として指定されているのが自分であるかどうかを判定する。その結果、自分に宛られたものでなければ、Ｓ６００１に戻る。自分に宛られたものであれば、Ｓ６０４３に処理を移す。Ｓ６０４３ではサイドカンバセーション操作問い合わせパネル３−２２を表示して、ユーザの入力待ちループ（Ｓ６０４４）に入る。この入力待ちを拒否ボタンの入力で抜けた場合はＳ６０４８で拒否のメッセージを送信し、Ｓ６００１に戻る。承認ボタンの入力で抜けた場合はＳ６０４５で“承認”をステータスにセットしたＳＣ＿ＳＴＡＲＴ＿ＡＣＫメッセージを要求されたホストに送信し、Ｓ６０４６でサイドカンバセーションメンバリストをクリアして、Ｓ６０４７でサイドカンバセーションレイヤを消去後、Ｓ６００１に戻る。
【００３１】
＜描画入力の処理＞
ユーザ入力としてホワイトボード領域への描画が行われた場合、図１１のＳ６０５１で、サイドカンバセーションモードか会議モードかを判定する。会議モードの場合は、Ｓ６０５２で会議レイヤに描画するとともに描画を画像として格納し、サイドカンバセーションモードの場合はＳ６０５３でサイドカンバセーションレイヤに描画するとともに描画を画像として格納する。その後、Ｓ６０５４でＤＲＡＷメッセージを作成する。送信者フィールドには自分のＩＤ、つまり、ユーザ１＠ＷＳ１を、描画レイヤフィールドには、サイドカンバセーションモードであれば“サイドカンバセーション”を、会議モードであれば“会議”をセットし、ビットマップデータフィールドには所定のフォーマットでメモリ上に蓄積されている画像データを格納する。その後、Ｓ６０５５でＤＲＡＷメッセージを送信して、Ｓ６００１に戻る。
【００３２】
＜サイドカンバセーション開始ボタン処理＞
サイドカンバセーション開始ボタンがクリックされると、図１２のＳ６０６１でサイドカンバセーションメンバパネル３−７にアイコンが表示されているかどうかを調べる。表示されていなければ、Ｓ６００１に戻る。表示されていない場合は、Ｓ６０６２に処理を移し、ＳＣ＿ＳＴＡＲＴ＿ＲＥＱメッセージ、すなわちサイドカンバセーション開始要求メッセージを作成する。送信者のフィールドにはユーザ１＠ＷＳ１をセットし、受信者にはサイドカンバセーションメンバパネル３−７に表示されている“ユーザ名＠計算機名”をセットする。本実施例ではユーザ３＠ＷＳ３である。Ｓ６０６３でこのメッセージを送信し、Ｓ６０６４で相手からのＳＣ＿ＳＴＡＲＴ＿ＡＣＫメッセージ、すなわちサイドカンバセーション開始応答メッセージを持つループに入る。ＳＣ＿ＳＴＡＲＴ＿ＡＣＫメッセージを受信したら（Ｓ６０６５）、ループを抜け、Ｓ６０６６で受信したメッセージを解析する。ここでメッセージに含まれるステータスの値を抽出し、Ｓ６０６７でステータスの値の判定を行い、“拒否”ならＳ６００１に戻る。ステータスの値が“承認”なら、Ｓ６０６８でサイドカンバセーションメンバリスト５−２に、サイドカンバセーションメンバパネル３−７に表示されているアイコンのメンバをコピーする。その後、Ｓ６０６９でサイドカンバセーションレイヤを生成して、Ｓ６００１に戻る。
【００３３】
＜サイドカンバセーション終了要求ボタンの処理＞
サイドカンバセーション終了要求ボタンがクリックされた場合、図１３のＳ６０７１でサイドカンバセーションメンバリスト５−２が空かどうかを調べる。リストが空ならば、Ｓ６００１に戻る。空でない場合はＳ６０７２に処理を移し、ＳＣ＿ＥＮＤ＿ＲＥＱメッセージ、すなわちサイドカンバセーション終了要求メッセージを作成する。送信者のフィールドにはユーザ１＠ＷＳ１をセットし、受信者にはサイドカンバセーションメンバリスト５−２に登録されている“ユーザ名＠計算機名”をセットする。本実施例ではユーザ３＠ＷＳ３である。Ｓ６０７３でこのメッセージを送信し、Ｓ６０７４で相手からのＳＣ＿ＥＮＤ＿ＡＣＫメッセージ、すなわちサイドカンバセーション終了応答メッセージを持つループに入る。ＳＣ＿ＥＮＤ＿ＡＣＫメッセージを受信したら（Ｓ６０７５）、ループを抜け、Ｓ６０７６でメッセージを解析する。ここでメッセージに含まれるステータスの値を抽出し、Ｓ６０７７でステータスの値の判定を行い、“拒否”ならＳ６００１に戻る。ステータスの値が“承認”なら、Ｓ６０７８でサイドカンバセーションメンバリスト５−２を空にし、サイドカンバセーションメンバパネル３−７でのアイコン表示をクリアする。その後、Ｓ６０７９でサイドカンバセーションレイヤを消去して、Ｓ６００１に戻る。
【００３４】
＜レイヤ選択ボタンの処理＞
レイヤ選択ボタンがクリックされると、図１４（ａ）のＳ６０８１でサイドカンバセーションモードか会議モードかの判定をする。会議モードであれば、Ｓ６０８２で会議レイヤとサイドカンバセーションレイヤを重ね合わせて表示するようにし、Ｓ６０８３でサイドカンバセーションモードであることを識別できるようにする。例えば、フラグとなる変数にサイドカンバセーションのような値を代入すれば良い。その場合、前述のモードの判定はこれを元に行う。この後、Ｓ６００１に戻る。サイドカンバセーションモードであれば、Ｓ６０８４で会議レイヤのみ表示可能とし、Ｓ６０８５で会議モードへの切り替えを行い、Ｓ６００１に戻る。
【００３５】
＜レイヤコピーボタンの処理＞
レイヤコピーボタンがクリックされた場合、図１４（ｂ）のＳ６０９１でＤＲＡＷメッセージを作成する。ホワイトボード領域に描画した際のメッセージの作り方と違うのは、ビットマップデータフィールドに格納する画像データをサイドカンバセーションレイヤ全体の画像から取ることである。それ以外はＳ６０５４の処理と同一でよい。その後、Ｓ６０９２でＤＲＡＷメッセージを送信し、Ｓ６０９３で自分のホワイトボード領域のサイドカンバセーションレイヤから会議レイヤへの画像データのコピーを行う。
【００３６】
＜メンバアイコンのドラッグアンドドロップ処理＞
アイコンをマウスで指示し、指示した状態を保持したまま画面上で移動させる操作がアイコンのドラッグアンドドロップといわれる操作である。すなわち、この操作によってメンバアイコンが移動あるいはコピーされる。この操作は、会議メンバの新規参加や途中退出についても行われるものではあろうが、ここでは会議メンバパネルとサイドカンバセーションメンバパネルとの間で行われるメンバの移動に限定して説明する。
【００３７】
メンバアイコンのドラッグアンドドロップ操作が行われると、図１５のＳ６１０１で、アイコンの移動が会議パネルからサイドカンバセーションパネルへ行われたか判定する。そうであれば、サイドカンバセーションメンバの追加操作とみなして、Ｓ６１０２で現在のモードがサイドカンバセーションモードか判定する。サイドカンバセーションモードであれば、メンバの追加はできないものとしてＳ６００１に戻る。サイドカンバセーションモードでなければ、ドラッグされたアイコンに対応するメンバをサイドカンバセーションメンバリストに追加し（Ｓ６１０３）、ドラッグされたアイコンをサイドカンバセーションメンバパネルにコピーする（Ｓ６１０４）。
【００３８】
なお、サイドカンバセーションを１対１に限定するならば、Ｓ６１０３，Ｓ６１０４では、既存のサイドカンバセーションメンバがいる場合には、そのメンバと置換することになる。
【００３９】
一方、会議メンバパネルからサイドカンバセーションメンバパネルへのドラッグでない場合には、サイドカンバセーションパネルから会議パネルへのドラッグであるか判定する（Ｓ６１０５）。そうでない場合には、これはサイドカンバセーションメンバに関する操作ではないものとして、Ｓ６１０６で、その操作に対応した適当な処理を行った後、Ｓ６００１に戻る。サイドカンバセーションメンバパネルから会議メンバパネルへの移動であれば、現在サイドカンバセーションモードであるか判定し（Ｓ６１０７）、サイドカンバセーションモードでなければＳ６００１に戻る。
【００４０】
サイドカンバセーションモードであれば、ドラッグされたアイコンに対応するメンバをサイドカンバセーションメンバリストから削除し（Ｓ６１０８）、そのアイコンをサイドカンバセーションメンバパネルから消去する（Ｓ６１０９）。
【００４１】
なお、サイドカンバセーションメンバの削除は、特にドラッグが行われる必要はない。例えば、削除したいメンバのアイコンを指示し、その状態で消去ボタンを押したなら、指示されたメンバを削除するようにしても良い。
【００４２】
以上、本実施例での構成を説明したが、さらに、本実施例は多人数にも容易に拡張できる。例えばサイドカンバセーション要求の場合、図１２で示したステップＳ６０６２では、サイドカンバセーションのメンバとして指定された全ユーザに、その全メンバを記録したサイドカンバセーション開始要求メッセージを送り、Ｓ６０６５では要求を送信した前記ユーザからのサイドカンバセーション開始応答を受信する。そして、Ｓ６０６８で、“承認”応答を戻したユーザをメンバとしてサイドカンバセーションメンバリストを更新する。この場合、このままでは、Ｓ６０６３でサイドカンバセーション開始要求メッセージを送ったユーザのメンバリストにサイドカンバセーションを拒否したユーザが反映されていない。そこで、サイドカンバセーションメンバリストを更新するためのメッセージを新たに設け、Ｓ６０６８では、そのメッセージを用いて他のサイドカンバセーション参加メンバに対して更新されたメンバリストを送信し、メンバ全員が共通のメンバリストを持つようにする。
【００４３】
なお、このサイドカンバセーションメンバリストを更新するためのメッセージを用いれば、サイドカンバセーションへの途中参加や途中退出も実現できる。
【００４４】
また、本実施例では、サイドカンバセーションレイヤと会議レイヤを同じサイズとし、重ね合わせて表示するようにしたが、サイドカンバセーションレイヤを会議レイヤの一部として表示するようにすることも容易である。また、全く重ね合わせないようにレイヤ同士を構成することも容易に行える。
【００４５】
以上本発明の実施の形態として説明した電子会議システムでは、電子（デスクトップ）会議参加者が、本来の会議の進行を妨げることなく、それとは独立したサイドカンバセーションを行うことが容易で、しかもそれらを区別し易く表示し、画面のスペースを有効に利用することができる。これにより、会議参加者の疑問などが解消できる機会が多くなる。さらにサイドカンバセーションで議論した内容を全ての参加者に伝達することも容易となる。
【００４６】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００４７】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【００４８】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４９】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００５０】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５１】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになるが、簡単に説明すると、図XXのメモリマップ例に示す各モジュールを記憶媒体に格納することになる。
【００５３】
すなわち、少なくとも「選択された画面を判定する判定工程のコード」と、「共有される第１の画面あるいは該第１の画面を共有するメンバの部分メンバにより共有される該２の画面のいずれかを、前記判定工程の判定に従って表示する表示工程のコード」と、「前記第１の画面あるいは前記第２の画面のいずれかに選択的に描画する描画工程のコード」の各モジュールのプログラムコードを記憶媒体に格納すればよい。
【００５４】
【発明の効果】
以上説明したように、本発明によれば、電子会議参加者が、本来の会議の進行を妨げることなく、それとは独立した会議を催すことができ、しかもそれらを区別し易く表示し、画面のスペースを有効に利用することができる。これにより、会議参加者の疑問などが解消できる機会が多くなる。さらにサイドカンバセーションの内容を本来の会議に移し、全ての参加者に伝達することも容易となる。
【００５５】
【図面の簡単な説明】
【図１】本実施の形態の端末の構成例を示すハードウェア構成図である。
【図２】本実施の形態における電子会議システムのシステム構成図である。
【図３】共有ホワイトボードの画面例の図である。
【図４】サイドカンバセーション拒否応答時及び開始要求時のパネル表示例の図である。
【図５】プロセス間の通信に用いられるデータフォーマット例の図である。
【図６】共有ホワイトボードにおける内部データの例の図である。
【図７】共有ホワイトボードの動作（メインループ）フローチャートである。
【図８】共有ホワイトボードの動作（描画）フローチャートである。
【図９】共有ホワイトボードの動作（サイドカンバセーション開始要求）フローチャートである。
【図１０】共有ホワイトボードの動作（サイドカンバセーション終了要求）フローチャートである。
【図１１】共有ホワイトボードの動作（ホワイトボード領域への描画）フローチャートである。
【図１２】共有ホワイトボードの動作（サイドカンバセーション開始）フローチャートである。
【図１３】共有ホワイトボードの動作（サイドカンバセーション終了）フローチャートである。
【図１４】共有ホワイトボードの動作（レイヤ選択）フローチャート及び共有ホワイトボードの動作（レイヤコピー）フローチャートである。
【図１５】共有ホワイトボードの動作（メンバアイコンのドラッグアンドドロップ）フローチャートである。
【図１６】本発明を実現するプログラムのメモリマップである。
【符号の説明】
１−０  ネットワーク
１−１  ＣＰＵ
１−２  ＲＡＭ
１−３  入力デバイス
１−４  ディスプレイ
１−５  内部バス
１−６  ネットワークインターフェース
１−７  外部記憶
【図１】
0003679526.tif 000002
【図２】
0003679526.tif 000003
【図３】
0003679526.tif 000004
【図４】
0003679526.tif 000005
【図５】
0003679526.tif 000006
【図６】
0003679526.tif 000007
【図７】
0003679526.tif 000008
【図８】
0003679526.tif 000009
【図９】
0003679526.tif 000010
【図１０】
0003679526.tif 000011
【図１１】
0003679526.tif 000012
【図１２】
0003679526.tif 000013
【図１３】
0003679526.tif 000014
【図１４】
0003679526.tif 000015
【図１５】
0003679526.tif 000016
【図１６】
0003679526.tif 000017