(57)【特許請求の範囲】
【請求項１】
画面に対する入力位置に応じて表示装置に可視情報を表示させる電子黒板であって、
他の電子黒板と通信するための通信情報が記憶された通信情報記憶手段と、
前記通信情報を用いて前記他の電子黒板と通信し、前記電子黒板の機能を提供するためのプログラムと前記プログラムを導入するための前記電子黒板の機種に共通の共通導入プログラムを取得する取得手段と、
前記共通導入プログラムを実行して前記プログラムを自機に導入する導入手段と、
を有する電子黒板。
【請求項２】
前記取得手段は前記共通導入プログラムでなく、前記プログラムを導入するための導入プログラムを取得する場合があり、
前記取得手段が取得した前記導入プログラムが前記共通導入プログラムか否かを判定する第一の判定手段を有し、
前記導入プログラムが前記共通導入プログラムであると前記第一の判定手段が判定した場合、前記導入手段は、前記共通導入プログラムを実行して前記プログラムを自機に導入する請求項１に記載の電子黒板。
【請求項３】
前記電子黒板の機種に関する機種情報を記憶しており、
前記機種情報と前記導入プログラムの機種に関する情報とを比較して、前記導入プログラムが前記電子黒板の機種に適合している場合、前記第一の判定手段は、前記導入プログラムが前記共通導入プログラムでなくても前記導入プログラムを実行可能であると判定する請求項２に記載の電子黒板。
【請求項４】
前記通信情報を用いて前記他の電子黒板と通信し、自機に導入されている前記プログラムのバージョンと、前記他の電子黒板に導入されている前記プログラムのバージョンが一致するか否かを判定する第二の判定手段を有し、
前記第二の判定手段が前記プログラムのバージョンが一致しないと判定した場合、前記取得手段は前記他の電子黒板から前記導入プログラムと前記プログラムを取得する請求項２又は３に記載の電子黒板。
【請求項５】
前記通信情報を用いて前記電子黒板の動作に関する設定情報を前記他の電子黒板から取得する設定情報取得手段を有し、
前記第二の判定手段が前記プログラムのバージョンが一致すると判定した場合に、前記設定情報取得手段は、前記設定情報を前記他の電子黒板から取得する請求項４に記載の電子黒板。
【請求項６】
前記取得手段が取得した前記導入プログラムと前記プログラムを記憶しておく記憶手段を有し、
前記導入プログラムが前記共通導入プログラムでなく、かつ、前記導入プログラムが前記電子黒板の機種に適合していない場合、前記第一の判定手段は前記記憶手段に記憶されている前記導入プログラム及び前記プログラムを削除する請求項３に記載の電子黒板。
【請求項７】
前記記憶手段に記憶されている前記プログラムのバージョンと、自機に導入されている前記プログラムのバージョンが一致するかどうか判定する第三の判定手段、を有し、
前記第一の判定手段は、前記第三の判定手段が２つのバージョンが一致しないと判定した場合、前記取得手段が取得した前記導入プログラムが前記共通導入プログラムか否かを判定する請求項６に記載の電子黒板。
【請求項８】
前記他の電子黒板とは異なる第二の電子黒板と接続されており、
前記第二の電子黒板の前記第一の判定手段が、前記導入プログラムが前記共通導入プログラムでなく、かつ、前記導入プログラムが前記電子黒板の機種に適合していないと判定した場合、前記第二の電子黒板から前記共通導入プログラムを要求する旨を受信し、
前記共通導入プログラムを要求する旨を前記他の電子黒板に表示させる請求項３〜７のいずれか１項に記載の電子黒板。
【請求項９】
前記電子黒板の機種に関する機種情報を記憶しており、
前記共通導入プログラムは、前記電子黒板の機種ごとの前記導入プログラムを有しており、
前記導入プログラムが前記共通導入プログラムである場合、前記導入手段は、前記機種情報に基づいて前記共通導入プログラムが有する前記導入プログラムを選択し、該導入プログラムを実行して前記プログラムを自機に導入する請求項２〜８のいずれか１項に記載の電子黒板。
【請求項１０】
画面に対する入力位置に応じて表示装置に可視情報を表示させ電子黒板が他の電子黒板と通信するシステムであって、
他の電子黒板と通信するための通信情報が記憶された通信情報記憶手段と、
前記通信情報を用いて前記他の電子黒板と通信し、前記電子黒板の機能を提供するためのプログラムと前記プログラムを導入するための前記電子黒板の機種に共通の共通導入プログラムを取得する取得手段と、
前記共通導入プログラムを実行して前記プログラムを自機に導入する導入手段と、
を有するシステム。
【請求項１１】
画面に対する入力位置に応じて表示装置に可視情報を表示させる電子黒板を、
他の電子黒板と通信するための通信情報を用いて前記他の電子黒板と通信し、前記電子黒板の機能を提供するためのプログラムと前記プログラムを導入するための前記電子黒板の機種に共通の共通導入プログラムを取得する取得手段と、
前記共通導入プログラムを実行して前記プログラムを自機に導入する導入手段、として機能させるためのプログラム。
【請求項１２】
画面に対する入力位置に応じて表示装置に可視情報を表示させる電子黒板が他の電子黒板と通信するシステムが行う処理方法であって、
他の電子黒板と通信するための通信情報が記憶された通信情報記憶手段の前記通信情報を用いて前記他の電子黒板と通信し、前記電子黒板の機能を提供するためのプログラムと前記プログラムを導入するための前記電子黒板の機種に共通の共通導入プログラムを取得するステップと、
前記共通導入プログラムを実行して前記プログラムを自機に導入するステップと、
を有する処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、システム、プログラム及び処理方法に関する。
【背景技術】
【０００２】
大型のフラットパネルディスプレイにタッチパネルが搭載された電子黒板が知られている。電子黒板は黒板の役割をする画面を表示し、タッチパネルを介して電子ペンや指などの軌跡を取り込んで、軌跡を手書き内容として画面に描画する。したがって、ユーザは画面を黒板のように使用することができる。また、パソコンと接続することができる電子黒板では、パソコンと同じ画面を表示して手書き内容を重畳して描画したり、電子黒板がタッチパネルから入力された情報にしたがってパソコンを操作したりすることができる。
【０００３】
また、セキュリティに関する設定等、電子黒板の動作に関する設定を管理者がそれぞれの電子黒板に行うことが可能となっている。一方、数多くの電子黒板が企業などに導入される場合、企業などの管理者は電子黒板の１つ１つに同じ設定を行わなければならず、管理者の負担が大きいという不都合がある。
【０００４】
従来から、複数の機器に同じ設定を効率的に行う技術が考案されている（例えば、特許文献１参照。）。特許文献１には、ユーザ毎の個人設定情報を複製して記憶する同期用共有記憶手段を第一の装置が有し、第二の装置は、ユーザ毎の個人設定情報を記憶する設定情報手段と、設定情報手段により記憶されたユーザ毎の個人設定情報をユーザ毎に最新の個人設定情報に更新する同期制御手段と、を有し、同期制御手段が同期用共有記憶手段に記憶される複数の情報処理装置間で共通の更新情報を取得するネットワーク同期システムが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載された技術では、第二の装置が第一の装置と個人設定情報を同期する際に、プログラムのバージョンについて考慮されていないという問題がある。電子黒板では各種の機能を実現するためのプログラムが動作しているが、機能の追加や修正などによりプログラムはメーカによってバージョンアップされる。電子黒板の管理者などはバージョンアップされたプログラムを入手して、電子黒板にインストールすることができる。しかしながら、プログラムのバージョンが異なることによって電子黒板の動作に関する設定情報も異なる場合があり、設定情報を同期するには複数の電子黒板のプログラムのバージョンが一致していることが好ましい。
【０００６】
そこで、設定情報の同期の前に必要に応じて（バージョンが異なっている場合）電子黒板がプログラムをバージョンアップしてしまうことが検討される。バージョンアップにはインストーラーと呼ばれる専用のプログラムが利用されることが多い。インストーラーとプログラムはパッケージなどで一体に提供される。設定情報を有する一方の電子黒板が最新のパッケージを有していれば、他方の電子黒板はこのパッケージを取得してプログラムをインストールし、その後、設定情報を同期させることができる。
【０００７】
しかしながら、電子黒板には使用しているＯＳなどによって定まる機種の区別があり、機種が異なると実行できるインストーラーも異なる場合がある。例えば、設定情報を有する電子黒板と設定情報を取得する電子黒板で機種が異なる場合、設定情報を取得したい電子黒板がインストーラーとプログラムをダウンロードしてもプログラムをバージョンアップできないという問題が生じる。
【０００８】
本発明は、上記課題に鑑み、プログラムのバージョンを考慮して設定を同期できる電子黒板を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題に鑑み、本発明は、画面に対する入力位置に応じて表示装置に可視情報を表示させる電子黒板であって、他の電子黒板と通信するための通信情報が記憶された通信情報記憶手段と、前記通信情報を用いて前記他の電子黒板と通信し、前記電子黒板の機能を提供するためのプログラムと前記プログラムを導入するための前記電子黒板の機種に共通の共通導入プログラムを取得する取得手段と、前記共通導入プログラムを実行して前記プログラムを自機に導入する導入手段と、を有する。
【発明の効果】
【００１０】
プログラムのバージョンを考慮して設定を同期できる電子黒板を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】画像処理システムのネットワーク構造を説明する図の一例である。
【図２】プログラムのバージョンが考慮された設定情報の同期を模式的に説明する図の一例である。
【図３】画像処理システムの全体構成図の一例である。
【図４】電子黒板のハードウェア構成図の一例である。
【図５】電子黒板の機能ブロック図の一例である。
【図６】ファイル処理部の機能ブロック図の一例である。
【図７】サーバ部とクライアント部の機能ブロック図の一例である。
【図８】各画像レイヤの構成図の一例である。
【図９】各電子黒板の処理を示したシーケンス図の一例である。
【図１０】各電子黒板の処理を示したシーケンス図の一例である。
【図１１】インストーラーについて説明する図の一例である。
【図１２】プログラムファイルのファイル名とプログラムファイルが有するインストーラーの関係を示す図の一例である。
【図１３】画像処理システムのネットワーク構造を説明する図の一例である。
【図１４】親機、子機及び孫機で動作する機能の概略を説明する図の一例である
【図１５】設定管理者ＰＣのハードウェア構成図の一例である。
【図１６】プログラム提供部とプログラム管理部の詳細な機能ブロック図の一例である。
【図１７】設定取得部と設定提供部の詳細な機能ブロック図の一例である。
【図１８】設定情報設定画面、システム設定画面の一例を示す図である。
【図１９】通信情報設定画面の一例を示す図である。
【図２０】画像処理システムが新しいバージョンのプログラムを同期する手順を示すシーケンス図の一例である。
【図２１】親機以外の電子黒板がプログラムをバージョンアップする手順を詳細に説明するフローチャート図の一例である。
【図２２】電子黒板が起動後に行う処理を説明する図の一例である。
【図２３】インストーラーの選択に関する手順を示すフローチャート図の一例である。
【図２４】システム設定画面でダイアログがＯＮの場合にディスプレイに表示されるダイアログの一例を示す図である。
【図２５】画像処理システムが設定情報を同期する手順を示すシーケンス図の一例である。
【図２６】直下の電子黒板が設定情報を更新する手順を示すフローチャート図の一例である。
【図２７】設定情報設定画面の一例、電子黒板のディスプレイに表示されるエラーコードの一例を示す図である。
【図２８】親機、子機、孫機の機種の一例を示す図である。
【図２９】親機が共通インストーラーを要求する旨を表示するまでの手順を示すフローチャート図の一例である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について、電子黒板、電子黒板が行う処理方法等を図面を参照しながら説明する。
【００１３】
＜本実施形態のネットワーク構造＞
図１（ａ）は、本実施形態の画像処理システム１のネットワーク構造を説明する図の一例である。画像処理システム１は木構造のネットワーク構造を有している。すなわち、複数の電子黒板２が段階的に層をなす階層構造を形成している。木構造は、階層構造の一種であり、ノード（電子黒板２）からノード（電子黒板２）へと枝分かれを繰り返す構造をいう。
【００１４】
本実施形態では、子機１〜３（符号は２ｃ）がそれぞれ親機２ｐとの通信を開始して親機２ｐが有する設定情報を子機１が取得し子機１に設定する。子機２，３についても同様である。また、孫機１〜３（符号は２ｇ）は子機１との通信を開始して子機１が有する設定情報を取得し孫機１に設定する。孫機２、３についても同様である。
【００１５】
図１（ｂ）は、本実施形態のネットワーク構造と比較される比較例を示す図である。図１（ｂ）では親機２ｐが子機１〜子機３に設定情報を設定し、子機１が孫機２ｇに設定情報を設定する。このような構成では、親機２ｐは子機１〜３に設定情報を設定しなければならず、子機１は設定情報を孫機１〜３に設定しなければならず、１台の電子黒板２が行う負荷が大きい。
【００１６】
これに対し、図１（ａ）に示す本実施形態の同期方法では、１台の電子黒板２は自分から見て直上の電子黒板２とだけ通信して設定情報を取得すればよいので、各電子黒板２が設定情報を同期する際の負荷を抑制することができる。また、それぞれの電子黒板２は自分から見て直下の電子黒板の設定情報の更新に関する情報を有する必要がない。また、設定情報を提供する直上の電子黒板２は直下の電子黒板２からの要求に応じて設定情報を送信するという比較的、負荷が低い処理を行えばよいので、複数の電子黒板２（図では３台）を直下に持つことができる。すなわち、電子黒板２を直列に接続する（デイジーチェーン）必要がない。これにより、比較的小さい負荷で、かつ、比較的短時間に全ての電子黒板２が設定情報を同期することができる。
【００１７】
＜プログラムのバージョンの考慮＞
図２は、プログラムのバージョンが考慮された設定情報の同期を模式的に説明する図の一例である。図２では、子機１の電子黒板２（子機２ｃ）に着目して、同期までの手順を簡単に説明する。
（１）電子黒板２は、設定情報を同期する前にプログラムのバージョンが直上の電子黒板２と同じかどうかチェックする。
（２）バージョンが異なる場合、プログラムとインストーラーのファイルを電子黒板２からダウンロードし、共通インストーラー又は自機と同じインストーラーであるか否かを電子黒板２が判定する。共通インストーラーは電子黒板２の機種に関係なく動作するインストーラーである。
（３）共通インストーラー又は自機と同じインストーラーを持っている場合、電子黒板２は親機２ｐからダウンロードしたプログラムをインストールする（バージョンアップする）。
（４）親機２ｐとプログラムのバージョンが同じ場合、又は、インストールによりプログラムのバージョンが同じになると、電子黒板２は設定情報を電子黒板２と同期させる。
【００１８】
したがって、本実施形態の電子黒板２は、直上の電子黒板２とプログラムのバージョンが異なっていて、さらに電子黒板２と直上の電子黒板２の機種が異なっていても、直上の電子黒板２が共通インストーラーを有する場合、プログラムをバージョンアップできる。プログラムのバージョンが異なることで仮に異なる項目を有する設定情報を直上の電子黒板２が有していても、直下の電子黒板２が設定情報を同期させることができる。
【００１９】
また、本実施形態の画像処理システム１によれば、各電子黒板２の機種が異なっていても、設定情報だけでなくプログラムのバージョンを同期させることができる。したがって、管理者などが親機に共通インストーラーを設定しておけば、異なる機種が含まれていても全ての電子黒板２がプログラムをバージョンアップできる。
【００２０】
＜用語について＞
プログラムとはコンピュータの運用に関する手順やコンピュータが処理する情報をいう。プログラムはソフトウェアと称されるものの１つ又はソフトウェアと同等のものとして扱われる。プログラムは、電子黒板２が実現すべき機能をコンピュータが解読できる言語で指示する情報であり、プログラムは機能指示記述情報ということができる。具体的には、アプリケーションプログラムやファームウェア、ＯＳ（Operating System）等と呼ばれる場合があるが、これらには限られない。
【００２１】
また、１台の電子黒板２で例えばＯＳとアプリケーションプログラムのように複数のプログラムが動作する場合がある。本実施形態では、複数のプログラムを区別せずに、全てのプログラムがバージョンアップされてもよいし、一部のプログラムがバージョンアップされてもよいものとする。
【００２２】
また、プログラムの導入とは、コンピュータ（電子黒板２）においてプログラムを使用可能な状態にする処理や作業のことをいう。導入の他、組み込む、設定する又はインストールすると表現される場合がある。本実施形態ではインストールという用語で説明する。
【００２３】
また、設定情報とは電子黒板２の動作に関する設定をいう。例えば、電子黒板２が適切に動作するための設定、電子黒板２の動作を許可又は制限するための設定、各機能のオン／オフの設定、ネットワークを介してインターネットや他の機器と通信するための設定、などを含む。設定情報の具体的内容は図１８などで説明される。
【００２４】
木構造のネットワーク構造は少なくとも三階層以上であることが好ましいが、二階層でもよい。三階層以上とは、最も深い階層が三階層以上であればよく、２階層以下の枝が存在してもよい。また、１つの階層の電子黒板２の数は３つに限られず、１つの階層の電子黒板２の数は電子黒板２の数と階層の深さを考慮して適宜決定される。
【００２５】
以下では、説明の便宜上、子機１〜３の層を子機層Ｃ、孫機１〜３の層を孫機層Ｇという。また、子機１から見た親機２ｐのように直接的に上位の電子黒板２を直上の電子黒板２といい、親機２ｐからみた子機１のように直接的に下位の電子黒板２を直下の電子黒板２という。
【００２６】
また、例えば親機２ｐから見た子機１〜３及び孫機１〜３（更に下位の電子黒板を含む）を相対的に下位の電子黒板２という。また、例えば孫機１からみた子機１及び親機２ｐの電子黒板２を相対的に上位の電子黒板２という。
【００２７】
＜システムの概要＞
図３は、本実施形態の画像処理システム１の全体構成図である。なお、図３では、説明を簡略化するために、２台の電子黒板２ａ，２ｂ及びこれに付随する電子ペン４ａ，４ｂ等を示しているだけであって、３台以上の電子黒板や電子ペン等を利用してもよい。
図３に示されているように、画像処理システム１は、複数の電子黒板２ａ，２ｂ、複数の電子ペン４ａ，４ｂ、ＵＳＢメモリ５ａ，５ｂ、ノートＰＣ(Personal Computer)６ａ，６ｂ、テレビ（ビデオ）会議端末７ａ，７ｂ、及びＰＣ８を有する。また、電子黒板２ａ，２ｂ、及びＰＣ８は、通信ネットワーク９を介して通信可能に接続されている。更に、複数の電子黒板２ａ，２ｂには、それぞれディスプレイ３ａ，３ｂが設けられている。
【００２８】
また、電子黒板２ａには、電子ペン４ａによって生じたイベント（ディスプレイ３ａに電子ペン４ａのペン先、又は、電子ペン４ａのペン尻のタッチ）による描画された画像を、ディスプレイ３ａに表示させることができる。なお、電子ペン４ａだけでなく、ユーザの手Ｈａ等によって生じたイベント（拡大、縮小、ページめくり等のジェスチャ）に基づいて、ディスプレイ３ａ上に表示されている画像を変更させることもできる。
【００２９】
また、電子黒板２ａには、ＵＳＢメモリ５ａが接続可能であり、電子黒板２ａはＵＳＢメモリ５ａからＰＤＦ等の電子ファイルを読み出したり、電子黒板２ａはＵＳＢメモリ５ａに電子ファイルを記録したりすることができる。また、電子黒板２ａには、DisplayPort（登録商標）、DVI(Digital Visual Interface)、HDMI(登録商標。High-Definition Multimedia Interface)及びVGA(Video Graphics Array)等の規格による通信が可能なケーブル１０ａ１を介して、ノートＰＣ６ａが接続されている。そして、電子黒板２ａは、ディスプレイ３ａに対する接触によってイベントを発生させ、このイベントを示すイベント情報を、マウスやキーボード等の入力装置からのイベントと同様に、ノートＰＣ６ａに送信する。同じく、電子黒板２ａには、上記規格による通信が可能なケーブル１０ａ２を介して、テレビ（ビデオ）会議端末７ａが接続されている。なお、ノートＰＣ６ａ、及びテレビ会議端末７ａは、Bluetooth（登録商標）等の各種無線通信プロトコルに準拠した無線通信により、電子黒板２ａと通信してもよい。
【００３０】
一方、電子黒板２ｂが設置されている他の拠点では、上記と同様に、ディスプレイ３ｂを備えた電子黒板２ｂ、電子ペン４ｂ、ＵＳＢメモリ５ｂ、ノートＰＣ６ｂ、テレビ会議端末７ｂ、ケーブル１０ｂ１、ケーブル１０ｂ２が利用される。更に、ユーザの手Ｈｂ等によって生じたイベントに基づいて、ディスプレイ３ｂ上に表示されている画像を変更させることもできる。
【００３１】
これにより、一の拠点で電子黒板２ａのディスプレイ３ａ上に描画された画像は、他の拠点で電子黒板２ｂのディスプレイ３ｂ上にも表示され、逆に他の拠点で電子黒板２ｂのディスプレイ３ｂ上に描画された画像は、一の拠点で電子黒板２ａのディスプレイ３ａ上に表示される。このように、画像処理システム１では、遠隔地において同じ画像を共有する遠隔共有処理を行うことができるため、遠隔地での会議等に用いると、非常に便利である。
【００３２】
なお、以下では、複数の電子黒板のうち任意の電子黒板を示す場合には「電子黒板２」と示す。複数のディスプレイのうち任意のディスプレイを示す場合には「ディスプレイ３」と示す。複数の電子ペンのうち任意の電子ペンを示す場合には「電子ペン４」と示す。複数のＵＳＢメモリのうち任意のＵＳＢメモリを示す場合には「ＵＳＢメモリ５」と示す。複数のノートＰＣのうち任意のノートＰＣを示す場合には「ノートＰＣ６」と示す。複数のテレビ会議端末のうち任意のテレビ会議端末を示す場合には「テレビ会議端末７」と示す。また、複数のユーザの手のうち任意の手を示す場合には「手Ｈ」と示す。複数のケーブルのうち任意のケーブルを示す場合には「ケーブル１０」と示す。
また、本実施形態では、画像処理装置の一例として、電子黒板を説明するが、これに限るものではなく、画像処理装置の他の例として、電子看板（デジタルサイネージ）、スポーツや天気予報等で利用されるテレストレータ、又は、遠隔画像（映像）診断装置等であってもよい。また、情報処理端末の一例として、ノートＰＣ６を説明するが、これに限るものではなく、情報処理端末の他の例として、デスクトップ型ＰＣやタブレット型ＰＣ、ＰＤＡ、デジタルビデオカメラ、デジタルカメラ、ゲーム機等の画像フレームを供給可能な端末であってもよい。更に、通信ネットワークには、インターネット、ＬＡＮ(Local Area Network)、携帯電話通信網等が含まれる。また、本実施形態では、記録媒体の一例として、ＵＳＢメモリを説明するが、これに限るものではなく、記録媒体の他の例として、ＳＤカード等の各種記録メディアであってもよい。
【００３３】
＜電子黒板のハードウェア構成＞
続いて、図４を用いて、本実施形態の電子黒板のハードウェア構成を説明する。なお、図４は、電子黒板のハードウェア構成図である。
【００３４】
図４に示されているように、電子黒板２は、電子黒板２全体の動作を制御するＣＰＵ１０１、ＩＰＬ等のＣＰＵ１０１の駆動に用いられるプログラムを記憶したＲＯＭ１０２、ＣＰＵ１０１のワークエリアとして使用されるＲＡＭ１０３、電子黒板２用のプログラム等の各種データを記憶するＳＳＤ１０４、通信ネットワーク９との通信を制御するネットワークコントローラ１０５、及び、ＵＳＢメモリ５との通信を制御する外部記憶コントローラ１０６を備えている。
【００３５】
また、電子黒板２は、ノートＰＣ６のディスプレイに対して映像情報を静止画又は動画として表示させるキャプチャデバイス１１１、グラフィクスを専門に扱うＧＰＵ(Graphics Processing Unit)１１２、及び、ＧＰＵからの出力画像をディスプレイ３やテレビ会議端末７へ出力するために画面表示の制御及び管理を行うディスプレイコントローラ１１３を備えている。
【００３６】
更に、電子黒板２は、接触センサ１１５の処理を制御するセンサコントローラ１１４、ディスプレイ３上に電子ペン４やユーザの手Ｈ等が接触したことを検知する接触センサ１１５を備えている。この接触センサ１１５は、赤外線遮断方式による座標の入力及び座標の検出を行う。この座標の入力及び座標の検出する方法は、ディスプレイ３の上側両端部に設置された２つ受発光装置が、ディスプレイ３に平行して複数の赤外線を放射し、ディスプレイ３の周囲に設けられた反射部材によって反射されて、受光素子が放射した光の光路と同一の光路上を戻って来る光を受光する方法である。接触センサ１１５は、物体によって遮断された２つの受発光装置が放射した赤外線のＩＤ(Identification)をセンサコントローラ１１４に出力し、センサコントローラ１１４が、物体の接触位置である座標位置を特定する。なお、以下に示す全ての各ＩＤは、識別情報の一例である。
【００３７】
また、接触センサ１１５としては、赤外線遮断方式に限らず、静電容量の変化を検知することにより接触位置を特定する静電容量方式のタッチパネル、対向する２の抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネル、接触物体が表示部に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネルなどの種々の検出手段を用いてもよい。
また、電子黒板２は、電子ペンコントローラ１１６を備えている。この電子ペンコントローラ１１６は、電子ペン４と通信することで、ディスプレイ３へのペン先のタッチやペン尻のタッチの有無を判定する。なお、電子ペンコントローラ１１６が、電子ペン４のペン先及びペン尻だけでなく、電子ペン４のユーザが握る部分や、その他の電子ペンの部分のタッチの有無を判定するようにしてもよい。
更に、電子黒板２は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＳＳＤ１０４、ネットワークコントローラ１０５、外部記憶コントローラ１０６、キャプチャデバイス１１１、ＧＰＵ１１２、センサコントローラ１１４、及び電子ペンコントローラ１１６を、図４に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン１２０を備えている。
【００３８】
なお、電子黒板２用のプログラムは、ＣＤ−ＲＯＭ等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
【００３９】
＜電子黒板の機能構成＞
続いて、図５〜図８を用いて、電子黒板の機能構成について説明する。なお、先ずは、図５を用いて、電子黒板２の全体的な機能構成について説明する。図５は、電子黒板の機能ブロック図である。
【００４０】
電子黒板２は、図４に示されているハードウェア構成及びプログラムによって、図５に示されている各機能構成を有する。電子黒板２は、最初に遠隔共有処理を開始する「主催装置」となり得ると共に、既に開始されている遠隔共有処理に後から参加する「参加装置」にもなり得る。また、電子黒板２は、大きく分けて、クライアント部２０及びサーバ部９０の両方によって構成されている。クライアント部２０及びサーバ部９０は、電子黒板２の１台の筐体内で実現される機能である。そして、電子黒板２が主催装置となる場合には、この電子黒板２では、クライアント部２０とサーバ部９０が実現される。また、電子黒板２が参加装置となる場合には、この電子黒板２では、クライアント部２０は実現されるが、サーバ部９０は実現されない。即ち、図３において、電子黒板２ａが主催装置で、電子黒板２ｂが参加装置となる場合、電子黒板２ａのクライアント部２０は、同じ電子黒板２ａ内に実現されたサーバ部９０を介して、他の電子黒板２ｂのクライアント部２０と通信を行う。一方、電子黒板２ｂのクライアント部２０は、他の電子黒板２ａ内に実現されたサーバ部９０を介して、他の電子黒板２ａのクライアント部と通信を行う。
〔クライアント部２０の機能構成〕
続いて、主に図５から図７を用いて、クライアント部２０の機能構成について説明する。クライアント部２０は、映像取得部２１、座標検知部２２、自動調整部２３、接触検知部２４、イベント振分部２５、操作処理部２６、ジェスチャ処理部２７、映像重畳部２８、画像処理部３０、及び通信制御部６０を有する。
【００４１】
このうち、映像取得部２１は、ケーブル１０に接続された映像出力機器の出力画像を取得する。映像取得部２１は、映像出力機器から画像信号を受信すると、この画像信号を解析して、この画像信号によって形成される映像出力機器の表示画像である画像フレームの解像度や、この画像フレームの更新頻度などの画像情報を導出し、画像取得部３１に出力する。
【００４２】
座標検知部２２は、ディスプレイ３上でユーザによって生じたイベント（ディスプレイ３上にユーザの手Ｈがタッチされた動作等）の座標位置（入力位置）を検出する。また、座標検知部２２は、タッチされた面積も検出する。
【００４３】
自動調整部２３は、電子黒板２の起動時（再起動時と表現してもよい）に起動され、座標検知部２２が適切な値を出力できるように、光センサ方式により座標を検知する座標検知部２２がセンサーカメラの画像を処理する際のパラメータを調整する。
【００４４】
接触検知部２４は、ユーザによって生じたイベント（ディスプレイ３上に電子ペン４のペン先又は電子ペン４のペン尻が押下（タッチ）された動作等）を検出する。
【００４５】
イベント振分部２５は、座標検知部２２によって検知されたイベントの座標位置と接触検知部２４によって検出された検出結果を、ストローク描画、ＵＩ操作、及びジェスチャ操作の各イベントに振り分ける。ここで、「ストローク描画」は、ディスプレイ３上に図８に示されている後述のストローク画像（Ｂ）が表示されている場合に、ユーザがディスプレイ３上で電子ペン４を押下し、この押下した状態で電子ペン４を移動させ、最終的にディスプレイ３上から電子ペン４を離すまでのイベントである。このストローク描画により、例えば、アルファベット「Ｓ」や「Ｔ」等がディスプレイ３上に描画される。なお、この「ストローク描画」には、画像を描画するだけでなく、既に描画された画像を削除したり、描画された画像を編集したりするイベントも含まれる。
【００４６】
「ＵＩ操作」は、ディスプレイ３上に図８に示されている後述のＵＩ画像（Ａ）が表示されている場合に、ユーザが電子ペン４又は手Ｈによって所定の位置を押下したイベントである。このＵＩ操作により、例えば、電子ペン４により描画される線の色や幅等が設定される。
【００４７】
「ジェスチャ操作」は、ディスプレイ３上に図８に示されている後述のストローク画像（Ｂ）が表示されている場合に、ユーザが手Ｈでディスプレイ３上をタッチしたり移動させたりするイベントである。このジェスチャ操作により、例えば、ユーザがディスプレイ３に手Ｈをタッチさせた状態で手Ｈを移動させることで、画像の拡大（若しくは縮小）、表示領域の変更、又は、ページ切り換え等を行うことができる。
【００４８】
操作処理部２６は、イベント振分部２５によってＵＩ操作と判定されたものから、イベントが発生されたＵＩの要素にしたがって、各種操作を実行する。このＵＩの要素としては、例えば、ボタン、リスト、チェックボックス、テキストボックスが挙げられる。ジェスチャ処理部２７は、イベント振分部２５によってジェスチャ操作と判定されたものに対応した操作を実行する。
【００４９】
映像重畳部２８は、後述の表示重畳部３６で重畳された画像を映像として表示部２９に対して表示する。表示部２９はディスプレイ３により実現される表示機能を示す。また、映像重畳部２８は、映像出力機器（ノートＰＣ６等）からの映像に対して、他の映像出力機器（テレビ会議端末７等）から送られて来た映像をピクチャーインピクチャーする。更に、映像重畳部２８は、ピクチャーインピクチャーされて表示部２９の一部に表示された映像を、表示部２９の全体に表示させるための切り替えを行う。
【００５０】
画像処理部３０は、図８に示されているような各画像レイヤの重畳処理等を行う。この画像処理部３０は、画像取得部３１、ストローク処理部３２、ＵＩ画像生成部３３、背景生成部３４、レイアウト管理部３５、表示重畳部３６、ページ処理部３７、ファイル処理部４０、ページデータ記憶部３００、及び遠隔ライセンス管理テーブル３１０を有している。
【００５１】
このうち、画像取得部３１は、映像取得部２１で取得された映像から、各フレームを画像として取得する。画像取得部３１は、この画像のデータを、ページ処理部３７に出力する。この画像は、図８に示されている映像出力機器（ノートＰＣ６等）からの出力画像（Ｃ）に相当する。
【００５２】
ストローク処理部３２は、イベント振分部２５によって割り振られたストローク描画に係るイベントに基づいて、画像を描画したり、描画された画像を削除したり、描画された画像を編集する。このストローク描画による画像は、図８に示されているストローク画像（Ｂ）に相当する。また、このストローク描画に基づいた画像の描画、削除、編集の各結果は、後述の操作データとして、操作データ記憶部８４０に記憶される。
【００５３】
ＵＩ画像生成部３３は、電子黒板２に予め設定されているＵＩ（ユーザインターフェース）画像を生成する。このＵＩ画像は、図８に示されているＵＩ画像（Ａ）に相当する。
背景生成部３４は、ページ処理部３７がページデータ記憶部３００から読み出したページデータのうちのメディアデータを、ページ処理部３７から受信する。背景生成部３４は、この受信したメディアデータを表示重畳部３６に出力する。また、このメディアデータによる画像は、図８に示されている背景画像（Ｄ）に相当する。背景画像（Ｄ）のパターンは、無地、グリッド表示等である。
【００５４】
レイアウト管理部３５は、表示重畳部３６に対して、画像取得部３１、ストローク処理部３２、及びＵＩ画像生成部３３（又は背景生成部３４）から出力された各画像のレイアウトを示すレイアウト情報を管理している。これにより、レイアウト管理部３５は、表示重畳部３６に対して、出力画像（Ｃ）及びストローク画像（Ｂ）を、ＵＩ画像（Ａ）及び背景画像（Ｄ）中のどの位置に表示させるか又は非表示にさせるかを指示することができる。
【００５５】
表示重畳部３６は、レイアウト管理部３５から出力されたレイアウト情報に基づき、画像取得部３１、ストローク処理部３２、及びＵＩ画像生成部３３（背景生成部３４）から出力された各画像のレイアウトを行う。
【００５６】
ページ処理部３７は、ストローク画像（Ｂ）のデータと出力画像（Ｃ）のデータを、１つのページデータにまとめてページデータ記憶部３００に記憶する。ストローク画像（Ｂ）のデータは、図８に示されているストローク配列データＩＤで示されるストローク配列データ（各ストロークデータ）として、ページデータの一部を成す。出力画像（Ｃ）のデータは、図８に示されているメディアデータＩＤで示されているメディアデータとして、ページデータの一部を成す。そして、このメディアデータは、ページデータ記憶部３００から読み出されると、背景画像（Ｄ）のデータとして取り扱われる。
【００５７】
また、ページ処理部３７は、一旦記憶されたページデータのうちのメディアデータを、背景生成部３４を介して表示重畳部３６に送信することで、映像重畳部２８が背景画像（Ｄ）をディスプレイ３に再表示させることができる。また、ページ処理部３７は、ページデータのうちのストローク配列データ（各ストロークデータ）を、ストローク処理部３２に戻すことで、ストロークの再編集ができる状態にすることができる。更に、ページ処理部３７は、ページデータを削除したり複製したりすることもできる。
【００５８】
即ち、ページ処理部３７がページデータ記憶部３００にページデータを記憶する時点でディスプレイ３上に表示されている出力画像（Ｃ）のデータは、一旦、ページデータ記憶部３００に記憶され、その後にページデータ記憶部３００から読み出される際には、背景画像（Ｄ）を示すメディアデータとして読みされる。そして、ページ処理部３７は、ページデータ記憶部３００から読み出したページデータのうち、ストローク画像（Ｂ）を示すストローク配列データを、ストローク処理部３２に出力する。また、ページ処理部３７は、ページデータ記憶部３００から読み出したページデータのうち、背景画像（Ｄ）を示すメディアデータを、背景生成部３４に出力する。
【００５９】
表示重畳部３６は、  画像取得部３１からの出力画像（Ｃ）、ストローク処理部３２からのストローク画像（Ｂ）、ＵＩ画像生成部３３からのＵＩ画像（Ａ）、及び、背景生成部３４からの背景画像（Ｄ）を、レイアウト管理部３５によって指定されたレイアウトにしたがって重畳する。これにより、図８に示されているように、各画像が重なってもユーザが見える順に、ＵＩ画像（Ａ）、ストローク画像（Ｂ）、出力画像（Ｃ）、及び背景画像（Ｄ）の各レイアの構成となっている。
【００６０】
また、表示重畳部３６は、図８に示されている画像（Ｃ）と画像（Ｄ）を切り替えて、画像（Ａ）及び画像（Ｂ）に対して排他的に重畳することも可能である。例えば、当初、画像（Ａ）、画像（Ｂ）及び画像（Ｃ）が表示されている状態で、電子黒板２と映像出力機器（ノートＰＣ６等）との間のケーブル１０が抜かれた場合には、レイアウト管理部３５の指定によって、画像（Ｃ）を重畳対象から外し、画像（Ｄ）を表示させることができる。この場合に、また、表示重畳部３６は、表示の拡大、表示の縮小、表示領域の移動処理も行う。
【００６１】
ページデータ記憶部３００は、表１に示されているようなページデータを記憶する。
【００６２】
【表１】
0006658157.tif 000002
表１は、ページデータを概念的に示す。ページデータは、ディスプレイ３に表示される１ページ分のデータ（ストローク配列データ（各ストロークデータ）及びメディアデータ）である。なお、ページデータに含まれるパラメータの種類が多いため、ここでは、表１〜表４に分けて、ページデータの内容を説明する。
【００６３】
ページデータは、表１に示されているように、任意の１ページを識別するためのページデータＩＤ、このページの表示を開始した時刻を示す開始時刻、ストロークやジェスチャ等によるページの内容の書き換えが行われなくなった時刻を示す終了時刻、電子ペン４やユーザの手Ｈによるストロークによって生じたストローク配列データを識別するためのストローク配列データＩＤ、及びメディアデータを識別するためのメディアデータＩＤが関連付けて記憶されている。ストローク配列データは、後述の図８に示されているストローク画像（Ｂ）がディスプレイ３上に表示されるためのデータである。メディアデータは、後述の図８に示されている背景画像（Ｄ）がディスプレイ３上に表示されるためのデータである。
【００６４】
このようなページデータにより、例えば、ユーザが電子ペン４によってアルファベット「Ｓ」を描く場合は一筆書きとなるため、ストロークデータＩＤが１つで一文字のアルファベット［Ｓ］が示される。ところが、ユーザが電子ペン４によってアルファベット「Ｔ」を描く場合、二筆書きとなるため、ストロークデータＩＤが２つで一文字のアルファベット「Ｔ」が示されることになる。
【００６５】
【表２】
0006658157.tif 000003
また、ストローク配列データは、表２に示されているように詳細な情報を示している。表２は、ストローク配列データを概念的に示す。表２に示されているように、１つのストローク配列データは、複数のストロークデータによって表される。そして、１つのストロークデータは、このストロークデータを識別するためのストロークデータＩＤ、１つのストロークの書き始めの時刻を示す開始時刻、１つのストロークの書き終わりの時刻を示す終了時刻、ストロークの色、ストロークの幅、及び、ストロークの通過点の配列を識別するための座標配列データＩＤを示している。
【００６６】
【表３】
0006658157.tif 000004
更に、この座標配列データは、表３に示されているように詳細な情報を示している。表３は、座標配列データを概念的に示す。表３に示されているように、座標配列データは、ディスプレイ３上の１点（Ｘ座標値、Ｙ座標値）、この１点を通過したときのストロークの開始時刻からの差分の時刻（ｍｓ）、及び、この１点における電子ペン４の筆圧の各情報を示している。即ち、表３に示されている１点の集まりが、表２に示されている１つの座標配列データで示されている。例えば、ユーザが電子ペン４によってアルファベット「Ｓ」を描く場合、一筆書きとなるが、「Ｓ」を描き終えるまでに、複数の通過点を通過するため、座標配列データは、これら複数の通過点の情報を示している。
【００６７】
また、表１に示されているページデータのうちのメディアデータは、表４に示されているように詳細な情報を示している。
【００６８】
【表４】
0006658157.tif 000005
表４は、メディアデータを概念的に示す。表４に示されているように、メディアデータは、表１に示されているページデータにおけるメディアデータＩＤ、メディアデータのデータ種類、ページ処理部３７からページデータ記憶部３００にページデータが記憶された記録時刻、ページデータによってディスプレイ３上に表示される画像の位置（Ｘ座標値、Ｙ座標値）及び画像のサイズ（幅、高さ）、並びにメディアデータの内容を示すデータが関連付けられて示されている。このうち、ページデータによってディスプレイ３上に表示される画像の位置は、ディスプレイ３の左上端の座標を（Ｘ座標値，Ｙ座標値）＝（０，０）とした場合に、ページデータによって表示される画像の左上端の位置を示している。
【００６９】
また、図５に戻って説明する。遠隔ライセンス管理テーブル３１０は、遠隔共有処理を実行するために必要なライセンスデータを管理する。この遠隔ライセンス管理テーブル３１０では、表５に示されているように、電子黒板２のプロダクトＩＤ、認証に用いられるライセンスＩＤ、及びライセンスの有効期限が関連付けて管理されている。
【００７０】
【表５】
0006658157.tif 000006
（ファイル処理部４０の機能構成）
続いて、図６を用いて、図５に示されているファイル処理部４０の機能構成を説明する。なお、図６は、ファイル処理部の機能ブロック図である。ファイル処理部４０は、リカバリ処理部４１、ファイル入力部４２ａ、ファイル出力部４２ｂ、ファイル変換部４３、ファイル送信部４４、アドレス帳入力部４５、バックアップ処理部４６、バックアップ出力部４７、設定管理部４８、設定ファイル入力部４９ａ、及び設定ファイル出力部４９ｂを有している。更に、ファイル処理部４０は、アドレス帳管理テーブル４１０、バックアップデータ記憶部４２０、設定ファイル記憶部４３０、及び接続先管理テーブル４４０を有している。
【００７１】
このうち、リカバリ処理部４１は、電子黒板２が異常終了した後に、異常終了を検知し、未保存のページデータを復旧する。例えば、正常終了の場合は、ページデータがＰＤＦファイルとしてファイル処理部４０を介してＵＳＢ５に記録されるが、電源がダウンした等の異常終了の場合は、ページデータがページデータ記憶部３００に記録されたままになっている。そのため、再び、電源オンになった際に、リカバリ処理部４１は、ページデータ記憶部３００からページデータを読み出すことで復旧させる。
【００７２】
ファイル入力部４２ａは、ＵＳＢメモリ５から、ＰＤＦファイルを読み込み、各ページをページデータとしてページデータ記憶部３００に記憶する。ファイル変換部４３は、ページデータ記憶部３００に記憶されているページデータを、ＰＤＦ形式のファイルに変換する。
【００７３】
ファイル出力部４２ｂは、ファイル変換部４３によって出力されたＰＤＦファイルをＵＳＢメモリ５に記録する。
【００７４】
ファイル送信部４４は、ファイル変換部４３によって生成されたＰＤＦファイルを、電子メールに添付して送信する。このファイルの送信先は、表示重畳部３６によってディスプレイ３上にアドレス帳管理テーブル４１０の内容を表示し、ファイル送信部４４がユーザによるタッチパネル等の入力装置の操作により、宛先の選択を受け付けることによって決定される。アドレス帳管理テーブル４１０には、表６に示されているように、宛先の名前及び宛先の電子メールのメールアドレスが関連付けて管理されている。
【００７５】
【表６】
0006658157.tif 000007
また、ファイル送信部４４が、ユーザによるタッチパネル等の入力装置の操作により、宛先としてのメールアドレスの入力を受け付けることもできる。
【００７６】
アドレス帳入力部４５は、ＵＳＢメモリ５から電子メールアドレスの一覧ファイルを読み込み、アドレス帳管理テーブル４１０に管理する。
【００７７】
バックアップ処理部４６は、ファイル出力部４２ｂによって出力されたファイルや、ファイル送信部４４によって送信されたファイルを、バックアップデータ記憶部４２０に記憶することでバックアップする。なお、ユーザがバックアップ設定しない場合は、バックアップの処理は行われない。バックアップデータは、表７に示されているように、ＰＤＦ形式で記憶される。
【００７８】
【表７】
0006658157.tif 000008
バックアップ出力部４７は、バックアップされたファイルをＵＳＢメモリ５に記憶する。この記憶の際には、ユーザによるタッチパネル等の入力装置の操作により、セキュリティのためにパスコードが入力される。
【００７９】
設定管理部４８は、電子黒板２の各種設定情報を設定ファイル記憶部４３０に記憶したり読み出したりして管理する。この各種設定情報としては、例えば、ネットワーク設定、日付や時刻の設定、地域や言語の設定、メールサーバの設定、アドレス帳の設定、接続先リストの設定、バックアップに関する設定が挙げられる。なお、ネットワーク設定は、例えば、電子黒板２のＩＰアドレスの設定、ネットマスクの設定、デフォルトゲートウェイの設定、又はＤＮＳ(Domain Name System)の設定等である。
【００８０】
設定ファイル出力部４９ｂは、電子黒板２の各種設定情報を、設定ファイルとしてＵＳＢメモリ５に記録させる。なお、設定ファイルはセキュリティによって、ユーザは中身を見ることができない。
【００８１】
設定ファイル入力部４９ａは、ＵＳＢメモリ５に記憶されている設定ファイルを読み込み、各種設定情報を電子黒板の各種設定に反映させる。
【００８２】
アドレス帳入力部５０は、ＵＳＢメモリ５から遠隔共有処理の接続先ＩＰアドレスの一覧ファイルを読み込み、接続先管理テーブル４４０に管理する。接続先管理テーブル４４０の一例を表８に示す。
【００８３】
【表８】
0006658157.tif 000009
接続先管理テーブル４４０は、電子黒板２が遠隔共有処理に参加しようとする参加装置である場合、この参加装置のユーザが主催装置としての役割を果たす電子黒板のＩＰアドレスを入力する手間を削減するために、予め管理しておくためのテーブルである。この接続先管理テーブル４４０では、参加されることが可能な主催装置としての電子黒板２が設置されている拠点の名称、及び主催装置としての電子黒板２のＩＰアドレスが関連付けて管理されている。
【００８４】
なお、接続先管理テーブル４４０は、無くてもよい。但し、この場合には、参加装置のユーザは、主催装置との間で遠隔要求処理の開始するために、タッチパネル等の入力装置によって、主催装置のＩＰアドレスを入力する必要がある。そのため、参加装置のユーザは、電話や電子メール等によって、主催装置のユーザから、主催装置のＩＰアドレスを知得する。
【００８５】
（通信制御部６０の機能構成）
次に、図７を用いて、通信制御部６０の機能構成について説明する。図７は、サーバ部９０とクライアント部２０の機能ブロック図の一例である。通信制御部６０は、通信ネットワーク９を介して、他の電子黒板２と行う通信や、サーバ部９０における後述の通信制御部７０と行う通信を制御する。そのため、通信制御部６０は、遠隔開始処理部６１、遠隔参加処理部６２、遠隔画像送信部６３、遠隔画像受信部６４、遠隔操作送信部６５、遠隔操作受信部６６、及び参加拠点管理テーブル６１０を有している。
【００８６】
このうち、遠隔開始処理部６１は、同じ電子黒板２のサーバ部９０に対して、新たに遠隔共有処理を開始する要求を行い、サーバ部９０から要求の結果を受信する。この場合、遠隔開始処理部６１は、遠隔ライセンス管理テーブル３１０を参照し、ライセンス情報（プロダクトＩＤ、ライセンスＩＤ、及び有効期限）が管理されている場合には、遠隔共有処理を開始する要求を行うことができる。但し、ライセンス情報が管理されていない場合には遠隔共有処理を開始する要求を行うことができない。
【００８７】
参加拠点管理テーブル６１０は、電子黒板が主催装置である場合、現在、遠隔共有処理に参加している参加装置としての電子黒板を管理するテーブルである。参加拠点管理テーブル６１０の一例を表９に示す。
【００８８】
【表９】
0006658157.tif 000010
この参加拠点管理テーブル６１０では、参加中の電子黒板２が設置されている拠点の名称及び当該電子黒板２のＩＰアドレスが関連付けて管理されている。
【００８９】
遠隔参加処理部６２は、通信ネットワーク９を介して、既に遠隔共有処理を開始している主催装置としての電子黒板２のサーバ部９０における遠隔接続要求受信部７１に対して、遠隔共有処理への参加要求を行う。この場合も、遠隔参加処理部６２は、遠隔ライセンス管理テーブル３１０を参照する。また、遠隔参加処理部６２が、既に開始されている遠隔共有処理に参加する場合には、接続先管理テーブル４４０を参照して、参加先の電子黒板２のＩＰアドレスを取得する。なお、遠隔参加処理部６２によって接続先管理テーブルが参照されず、ユーザによるタッチパネル等の入力装置の操作により参加先の電子黒板２のＩＰアドレスが入力されてもよい。
【００９０】
遠隔画像送信部６３は、映像取得部２１から画像取得部３１を介して送られて来た出力画像（Ｃ）を、サーバ部９０に送信する。
【００９１】
遠隔画像受信部６４は、サーバ部９０から、他の電子黒板２に接続された映像出力機器からの画像データを受信し、表示重畳部３６に出力することで、遠隔共有処理を可能にする。
【００９２】
遠隔操作送信部６５は、遠隔共有処理に必要な各種操作データをサーバ部９０に送信する。この各種操作データとしては、例えば、ストロークの追加、ストロークの削除、ストロークの編集（拡大、縮小、移動）、ページデータの記憶、ページデータの作成、ページデータの複製、ページデータの削除、表示されているページの切り替え等に関するデータが挙げられる。また、遠隔操作受信部６６は、サーバ部９０から、他の電子黒板２で入力された操作データを受信し、画像処理部３０に出力することで、遠隔共有処理を行う。
【００９３】
〔サーバ部の機能構成〕
続いて、図７を用いて、サーバ部９０の機能構成について説明する。サーバ部９０は、各電子黒板２に設けられており、いずれの電子黒板２であっても、サーバ部としての役割を果たすことができる。そのため、サーバ部９０は、通信制御部７０、及びデータ管理部８０を有している。
（通信制御部７０の機能構成）
次に、図７を用いて、通信制御部７０の機能構成について説明する。
【００９４】
通信制御部７０は、同じ電子黒板２内のクライアント部２０における通信制御部７０、及び通信ネットワーク９を介して他の電子黒板２内のクライアント部２０における通信制御部７０との通信を制御する。データ管理部８０は、操作データや画像データ等を管理する。
【００９５】
更に詳細に説明すると、通信制御部７０は、遠隔接続要求受信部７１、遠隔接続結果送信部７２、遠隔画像受信部７３、遠隔画像送信部７４、遠隔操作受信部７５、及び遠隔操作送信部７６を有している。
【００９６】
このうち、遠隔接続要求受信部７１は、遠隔開始処理部６１からの遠隔共有処理の開始要求を受信したり、遠隔参加処理部６２からの遠隔共有処理に対する参加要求を受信したりする。遠隔接続結果送信部７２は、遠隔開始処理部６１へ遠隔共有処理の開始要求の結果を送信したり、遠隔参加処理部６２へ遠隔共有処理に対する参加要求の結果を送信したりする。
【００９７】
遠隔画像受信部７３は、遠隔画像送信部６３からの画像データ（出力画像（Ｃ）のデータ）を受信し、後述の遠隔画像処理部８２に送信する。遠隔画像送信部７４は、遠隔画像処理部８２から画像データを受信し、遠隔画像受信部６４に対して、この画像データを送信する。
【００９８】
遠隔操作受信部７５は、遠隔操作送信部６５からの操作データ（ストローク画像（Ｂ）等のデータ）を受信し、後述の遠隔操作処理部８３に送信する。遠隔操作送信部７６は、遠隔操作処理部８３から操作データを受信し、遠隔操作受信部６６に対して、この操作データを送信する。
【００９９】
（データ管理部の機能構成）
次に、図７を用いて、データ管理部８０の機能構成について説明する。データ管理部８０は、遠隔接続処理部８１、遠隔画像処理部８２、遠隔操作処理部８３、操作合成処理部８４、及びページ処理部８５を有している。更に、サーバ部９０は、パスコード管理部８１０、参加拠点管理テーブル８２０、画像データ記憶部８３０、操作データ記憶部８４０、及びページデータ記憶部８５０を有している。
【０１００】
このうち、遠隔接続処理部８１は、遠隔共有処理の開始、及び遠隔共有処理の終了を行う。また、遠隔接続処理部８１は、遠隔接続要求受信部７１が、遠隔開始処理部６１から遠隔共有処理の開始要求と共に受信したライセンス情報、又は、遠隔参加処理部６２から遠隔共有処理の参加要求と共に受信したライセンス情報に基づいて、ライセンスの有無やライセンスの期間内であるかを確認する。更に、遠隔接続処理部８１は、クライアント部としての他の電子黒板２からの参加要求が予め定められた参加可能数を超えていないかを確認する。
【０１０１】
更に、遠隔接続処理部８１は、他の電子黒板２から遠隔共有処理に対する参加要求があった際に送られて来たパスコードが、パスコード管理部８１０で管理されているパスコードと同じであるか否かを判定し、同じである場合には、遠隔共有処理の参加を許可する。なお、このパスコードは、新たに遠隔共有処理を開始する際に、遠隔接続処理部８１によって発行され、遠隔共有処理に参加しようとする参加装置としての電子黒板２のユーザが、主催装置としての電子黒板２のユーザから、電話や電子メール等により伝えられる。これにより、遠隔共有処理に参加しようとする参加装置のユーザが、タッチパネル等の入力装置によって参加装置にパスコードを入力して参加要求することで、参加が許可されることになる。なお、セキュリティよりもユーザの使い勝手を優先して、ライセンス状況の確認だけで、パスコードの確認を省略してもよい。
【０１０２】
また、電子黒板２が主催装置の場合、遠隔接続処理部８１は、参加装置の遠隔参加処理部６２から通信ネットワーク９を介して送られて来た参加要求に含まれる参加拠点情報を、サーバ部９０の参加拠点管理テーブル８２０に記憶する。そして、遠隔接続処理部８１は、参加拠点管理テーブル８２０に記憶されている遠隔拠点情報を読み出し、遠隔接続結果送信部７２に送信する。遠隔接続結果送信部７２は、同じ主催装置のクライアント部２０における遠隔開始処理部６１に遠隔拠点情報を送信する。遠隔開始処理部６１は、参加拠点管理テーブルに６１０に、遠隔拠点情報を記憶する。これにより、主催装置では、クライアント部２０及びサーバ部９０の両方で、遠隔拠点情報を管理することになる。
【０１０３】
遠隔画像処理部８２は、遠隔共有処理中の各電子黒板２のクライアント部（主催装置である自己の電子黒板のクライアント部を含む）に接続された映像出力機器（ノートＰＣ６等）からの画像データ（出力画像（Ｃ））を受信して画像データ記憶部８３０に記憶すると共に、主催装置である自己の電子黒板２のサーバ部９０に届いた時間順で遠隔共有処理すべき画像データの表示順を判定する。また、遠隔画像処理部８２は、参加拠点管理テーブル８２０を参照し、遠隔共有処理に参加中の全ての電子黒板２のクライアント部２０（主催装置である自己の電子黒板のクライアント部を含む）に、通信制御部７０（遠隔画像送信部７４）を介して、上記判定した順番で画像データを送信する。
【０１０４】
遠隔操作処理部８３は、遠隔共有処理中の各電子黒板２のクライアント部（主催装置である自己の電子黒板のクライアント部を含む）で描画されたストローク画像等の各種操作データ（ストローク画像（Ｂ）等）を受信し、主催装置である自己の電子黒板２のサーバ部９０に届いた時間順で遠隔共有処理すべき画像の表示順を判定する。なお、各種操作データは、上記の各種操作データと同じである。また、遠隔操作処理部８３は、参加拠点管理テーブル８２０を参照し、遠隔共有処理中の全ての電子黒板２のクライアント部２０（主催装置である自己の電子黒板のクライアント部を含む）に操作データを送信する。
【０１０５】
操作合成処理部８４は、遠隔操作処理部８３から出力された各電子黒板２の操作データを合成し、この合成結果としての操作データを、操作データ記憶部８４０に記憶すると共に遠隔操作処理部８３に戻す。この操作データは、遠隔操作送信部７６から、主催装置である電子黒板のクライアント部、及び参加装置である電子黒板のクライアント部のそれぞれに送信されることで、各電子黒板２で同じ操作データに係る画像が表示される。操作データの一例を表１０に示す。
【０１０６】
【表１０】
0006658157.tif 000011
操作データは、表１０に示されているように、SEQ(Sequence)、操作データの操作名、操作データの送信元である電子黒板２のＩＰアドレス及びクライアント部（サーバ部）のPort No.、操作データの送信先である電子黒板２のＩＰアドレス及びクライアント部（サーバ部）のPort No,、操作データの操作種類、操作データの操作対象、並びに操作データの内容を示すデータが関連付けられて示されている。例えば、SEQ1では、主催装置である電子黒板（ＩＰアドレス：192.0.0.1）のクライアント部（Port No.:50001）でストロークが描画されると、同じ主催装置である電子黒板（ＩＰアドレス：192.0.0.1）のサーバ部（Port No.:50000）に操作データが送られたことが示されている。この場合の操作種類は「STROKE」、操作対象はページデータＩＤ「p005」、及び、操作データの内容を示すデータはストロークを示すデータである。また、SEQ2では、主催装置である電子黒板（ＩＰアドレス：192.0.0.1）のサーバ部（Port No.:50000）から、参加装置である他の電子黒板（ＩＰアドレス：192.0.0.1）のクライアント部（Port No.:50001）に、操作データが送られたことが示されている。
【０１０７】
なお、操作合成処理部８４は、この操作合成処理部８４に操作データが入力された順に合成を行うため、通信ネットワーク９が混雑していなければ、各電子黒板２のユーザによるストローク順に、遠隔共有処理中の全ての電子黒板２のディスプレイ３にストローク画像（Ｂ）が表示される。
【０１０８】
ページ処理部８５は、クライアント部２０の画像処理部３０におけるページ処理部３７と同様の機能を有し、サーバ部９０でも、表１から表３に示されているページデータを、ページデータ記憶部８５０に記憶する。なお、ページデータ記憶部８５０は、画像処理部３０におけるページデータ記憶部３００と同じ内容であるため、その説明を省略する。
【０１０９】
＜実施形態の処理又は動作＞
続いて、図９及び図１０を用いて、本実施形態の処理又は動作について説明する。なお、図９及び図１０は、各電子黒板の処理を示したシーケンス図である。図９及び図１０に示す実施形態では、電子黒板２ａが遠隔共有処理を主催する主催装置（サーバ部及びクライアント部）としての役割を果たしており、電子黒板２ｂ，２ｃが遠隔共有処理に参加する参加装置（クライアント部）としての役割を果たす場合について説明する。また、ここでは、電子黒板２ａ，２ｂ，２ｃには、それぞれディスプレイ３ａ，３ｂ，３ｃが接続され、更に、それぞれノートＰＣ６ａ，６ｂ，６ｃが接続されている。また、電子黒板２ａ，２ｂ，２ｃでは、それぞれ電子ペン４ａ，４ｂ，４ｃが使用される。
【０１１０】
（参加の処理）
まずは、図９を用いて、電子黒板２ｂ，２ｃが遠隔共有処理に参加するための処理について説明する。
【０１１１】
ユーザが電子黒板２ａの電源スイッチをオンにすると、電子黒板２ａのクライアント部２０が起動する。そして、ユーザがタッチパネル等の入力装置によってサーバ部９０を起動させる操作をすると、クライアント部２０の遠隔開始処理部６１から同じ電子黒板２ａのサーバ部９０における遠隔接続要求受信部７１に、サーバ部９０の処理を開始させる指示を出力する。これにより、電子黒板２ａでは、クライアント部２０だけでなくサーバ部９０も各種処理を開始可能となる（ステップＳ２１）。
【０１１２】
次に、電子黒板２ａのクライアント部２０におけるＵＩ画像生成部３３が電子黒板２ａとの接続を確立するための接続情報を生成し、映像重畳部２８が、ＵＩ画像生成部３３から表示重畳部３６を介して得た接続情報をディスプレイ３ａに表示させる（ステップＳ２２）。
【０１１３】
この接続情報には、主催装置のＩＰアドレス、及び今回の遠隔共有処理のために生成されたパスコードが含まれている。この場合、パスコード管理部８１０に記憶されているパスコードは、図７に示されている遠隔接続処理部８１によって読み出され、遠隔接続結果送信部７２、遠隔開始処理部６１の順に送信される。更に、パスコードは、遠隔開始処理部６１を含む通信制御部６０から、図５に示されている画像処理部３０に送信され、最終的にＵＩ画像生成部３３に入力される。これにより、接続情報には、パスコードが含まれる。そして、接続情報は、電子黒板２ａのユーザによって、電話や電子メールにより、電子黒板２ｂ，２ｃのユーザに伝えられる。なお、接続先管理テーブル４４０があれば、接続情報には、主催装置のＩＰアドレスが含まれていなくても、参加装置は参加要求を行うことができる。
【０１１４】
次に、電子黒板２ｂ，２ｃでは、各ユーザによるタッチパネル等の入力装置の操作によって接続情報の入力を受け付けると、電子黒板２ａ，２ｂのクライアント部２０における遠隔参加処理部６２が、接続情報のＩＰアドレスに基づき、通信ネットワーク９を介して、電子黒板２ａのサーバ部９０における通信制御部７０に対してパスコードを送信して参加要求を行う（ステップＳ２３，Ｓ２４）。これにより、通信制御部７０の遠隔接続要求受信部７１は、各電子黒板２ｂ，２ｃから、参加要求（パスコードを含む）を受信し、このパスコードを遠隔接続処理部８１に出力する。
【０１１５】
次に、遠隔接続処理部８１は、各電子黒板２ｂ，２ｃから受信したパスコードに対し、パスコード管理部８１０で管理されているパスコードを用いて認証する（ステップＳ２５）。
【０１１６】
そして、遠隔接続結果送信部７２が、各電子黒板２ｂ，２ｃのクライアント部２０に認証結果を通知する（ステップＳ２６，Ｓ２７）。
【０１１７】
ステップＳ２５の認証により、各電子黒板２ｂ，２ｃが正当な電子黒板であると判定されていた場合には、主催装置である電子黒板２ａと、参加装置である電子黒板２ｂ，２ｃとの遠隔共有処理の通信が確立され、各電子黒板２ｂ，２ｃのクライアント部２０における遠隔参加処理部６２が、それぞれ他の電子黒板との間の遠隔共有処理の開始を可能にする（ステップＳ２８，Ｓ２９）。
【０１１８】
（出力画像の表示）
続いて、図９を用いて、遠隔共有処理における出力画像（Ｃ）が表示される処理について説明する。
【０１１９】
まず、電子黒板２ｂは、ディスプレイ３ｂに出力画像（Ｃ）を表示する（ステップＳ３０）。具体的には、電子黒板２ｂの画像取得部３１が、ノートＰＣ６ｂから映像取得部２１を介して、ノートＰＣ６ｂで表示されている出力画像（Ｃ）のデータを受信し、表示重畳部３６及び映像重畳部２８を介してディスプレイ３ｂに送信することで、ディスプレイ３ｂは出力画像（Ｃ）を表示する。
【０１２０】
次に、電子黒板２ｂの画像取得部３１を含む画像処理部３０が、遠隔画像送信部６３に出力画像（Ｃ）のデータを送信することで、遠隔画像送信部６３を含む通信制御部６０が通信ネットワーク９を介して、主催装置である電子黒板２ａの通信制御部７０に出力画像（Ｃ）のデータを送信する（ステップＳ３１）。これにより、電子黒板２ａの遠隔画像受信部７３は、出力画像（Ｃ）のデータを受信し、遠隔画像処理部８２に出力することで、遠隔画像処理部８２が画像データ記憶部８３０に出力画像（Ｃ）のデータを記憶する。
【０１２１】
次に、主催装置である電子黒板２ａは、ディスプレイ３ａに出力画像（Ｃ）を表示する（ステップＳ３２）。具体的には、電子黒板２ａの遠隔画像処理部８２は、遠隔画像受信部７３から受信した出力画像（Ｃ）のデータを、遠隔画像送信部７４に出力する。遠隔画像送信部７４は、同じ主催装置である電子黒板２ａのクライアント部２０における遠隔画像受信部６４に、出力画像（Ｃ）のデータを出力する。遠隔画像受信部６４は、表示重畳部３６に出力画像（Ｃ）のデータを出力する。表示重畳部３６は、映像重畳部２８に出力画像（Ｃ）のデータを出力する。映像重畳部２８はディスプレイ３ａに出力画像（Ｃ）のデータを出力する。これにより、ディスプレイ３ａは、出力画像（Ｃ）を表示する。
【０１２２】
次に、主催装置としての電子黒板２ａのサーバ部９０における遠隔画像送信部７４を含む通信制御部７０は、通信ネットワーク９を介して、出力画像（Ｃ）のデータの送信元である電子黒板２ｂ以外の電子黒板２ｃの通信制御部６０に出力画像（Ｃ）のデータを送信する（ステップＳ３３）。これにより、参加装置である電子黒板２ｃの遠隔画像受信部６４は、出力画像（Ｃ）のデータを受信する。
【０１２３】
次に、電子黒板２ｃは、ディスプレイ３ｃに出力画像（Ｃ）を表示する（ステップＳ３４）。具体的には、電子黒板２ｃの遠隔画像受信部６４が、上記ステップＳ３３によって受信された出力画像（Ｃ）のデータを、電子黒板２ｃの表示重畳部３６に出力する。表示重畳部３６は、映像重畳部２８に出力画像（Ｃ）のデータを出力する。映像重畳部２８はディスプレイ３ｃに出力画像（Ｃ）のデータを出力する。これにより、ディスプレイ３ｃは、出力画像（Ｃ）を表示する。
【０１２４】
なお、出力画像（Ｃ）のデータだけでなく、ＵＩ画像（Ａ）、及びストローク画像（Ｂ）の各データが、映像重畳部２８に入力されている場合には、表示重畳部３６により、重畳画像（Ａ，Ｂ，Ｃ）が生成され、映像重畳部２８はディスプレイ３ｃに重畳画像（Ａ，Ｂ，Ｃ）のデータを出力する。また、テレビ会議端末７から映像重畳部２８に、テレビ会議用の映像（Ｅ）のデータが送られて来ている場合には、映像重畳部２８は、重畳画像（Ａ，Ｂ，Ｃ）にピクチャーインピクチャーによりテレビ会議用の映像（Ｅ）のデータを重畳して、ディスプレイ３ｃに出力する。
【０１２５】
（重畳画像の表示）
続いて、図１０を用いて、遠隔共有処理における重畳画像が表示される処理について説明する。
【０１２６】
まず、電子黒板２ｂは、ユーザが電子ペン４ｂを用いて電子黒板２ｂにストローク画像（Ｂ）を描画する（ステップＳ４１）。
【０１２７】
次に、電子黒板２ｂの表示重畳部３６は、図８に示されているように、ＵＩ画像（Ａ）、及び出力画像（Ｃ）に対して、ストローク画像（Ｂ）を重畳し、映像重畳部２８が電子黒板２ｂのディスプレイ３ｂ上に、重畳された重畳画像（Ａ，Ｂ，Ｃ）を表示させる（ステップＳ４２）。具体的には、電子黒板２ｂのストローク処理部３２が座標検知部２２及び接触検知部２４からイベント振分部２５を介して、操作データとしてのストローク画像（Ｂ）のデータを受信し、表示重畳部３６に送信する。これにより、表示重畳部３６は、ＵＩ画像（Ａ）、及び出力画像（Ｃ）に対して、ストローク画像（Ｂ）を重畳することができ、映像重畳部２８が電子黒板２ｂのディスプレイ３ｂ上に重畳画像（Ａ，Ｂ，Ｃ）を表示させることができる。
【０１２８】
次に、電子黒板２ｂのストローク処理部３２を含む画像処理部３０が、遠隔操作送信部６５にストローク画像（Ｂ）のデータを送信することで、電子黒板２ｂの遠隔操作送信部６５は、通信ネットワーク９を介して、主催装置である電子黒板２ａの通信制御部７０にストローク画像（Ｂ）のデータを送信する（ステップＳ４３）。
【０１２９】
これにより、電子黒板２ａの遠隔操作受信部７５は、ストローク画像（Ｂ）のデータを受信し、遠隔操作処理部８３に出力することで、遠隔操作処理部８３が操作合成処理部８４にストローク画像（Ｂ）のデータを出力する。このようにして、電子黒板２ｂで描画されたストローク画像（Ｂ）のデータは、描画される度に、主催装置である電子黒板２ａの遠隔操作処理部８３に順次送信される。このストローク画像（Ｂ）のデータは、表２等に示されているストロークデータＩＤ毎に示されるデータである。よって、例えば、上記したように、ユーザが電子ペン４によってアルファベット「Ｔ」を描く場合は二筆書きとなるため、２つのストロークデータＩＤのそれぞれで示されるストローク画像（Ｂ）のデータが順次送信される。
【０１３０】
次に、主催装置である電子黒板２ａは、ディスプレイ３ａに、電子黒板２ｂから送られて来たストローク画像（Ｂ）のデータが含まれた重畳画像（Ａ，Ｂ，Ｃ）を表示する（ステップＳ４４）。具体的には、電子黒板２ａの操作合成処理部８４は、遠隔操作処理部８３を介して順次送られて来た複数のストローク画像（Ｂ）のデータを合成して、操作データ記憶部８４０に記憶すると共に遠隔操作処理部８３に戻す。これにより、遠隔操作処理部８３は、操作合成処理部８４から受信した、合成後のストローク画像（Ｂ）のデータを、遠隔操作送信部７６に出力する。遠隔操作送信部７６は、同じ主催装置である電子黒板２ａのクライアント部２０における遠隔操作受信部６６に、合成後のストローク画像（Ｂ）のデータを出力する。遠隔操作受信部６６は、画像処理部３０における表示重畳部３６に、合成後のストローク画像（Ｂ）のデータを出力する。よって、表示重畳部３６は、ＵＩ画像（Ａ）、及び出力画像（Ｃ）に対して、合成後のストローク画像（Ｂ）を重畳する。最後に、映像重畳部２８が、表示重畳部３６によって重畳された重畳画像（Ａ，Ｂ，Ｃ）をディスプレイ３ａ上に表示させる。
【０１３１】
次に、主催装置としての電子黒板２ａのサーバ部９０における遠隔操作送信部７６を含む通信制御部７０は、通信ネットワーク９を介して、ストローク画像（Ｂ）のデータの送信元である電子黒板２ｂ以外の電子黒板２ｃの通信制御部６０に、合成後のストローク画像（Ｂ）のデータを送信する（ステップＳ４５）。これにより、参加装置である電子黒板２ｃの遠隔操作受信部６６は、合成後のストローク画像（Ｂ）のデータを受信する。
【０１３２】
次に、電子黒板２ｃは、ディスプレイ３ｃに重畳画像（Ａ，Ｂ，Ｃ）を表示する（ステップＳ４６）。具体的には、電子黒板２ｃの遠隔操作受信部６６が、上記ステップＳ４５によって受信された合成後のストローク画像（Ｂ）のデータを、電子黒板２ｃの画像処理部３０に出力する。画像処理部３０の表示重畳部３６は、ＵＩ画像（Ａ）、及び出力画像（Ｃ）の各データと、合成後のストローク画像（Ｂ）のデータを重畳し、映像重畳部２８に重畳画像（Ａ，Ｂ，Ｃ）のデータを出力する。映像重畳部２８は、ディスプレイ３ｃに重畳画像（Ａ，Ｂ，Ｃ）のデータを出力する。これにより、ディスプレイ３ｃは、重畳画像（Ａ，Ｂ，Ｃ）を表示する。
【０１３３】
なお、上記処理では、ディスプレイ３上に出力画像（Ｃ）が表示されているが、この出力画像（Ｃ）に代えて、背景画像（Ｄ）を表示してもよい。また、出力画像（Ｃ）と背景画像（Ｄ）との排他的な関係をやめて、出力画像（Ｃ）と背景画像（Ｄ）との両方を同時にディスプレイ３上に表示させてもよい。
【０１３４】
（参加の終了）
続いて、図１０を用いて、参加装置が遠隔共有処理への参加を終了する処理について説明する。図１０に示す実施形態では、電子黒板２ｃが参加を終了する処理が示されている。
【０１３５】
まず、電子黒板２ｃでは、ユーザによるタッチパネル等の入力装置の操作によって参加の終了要求を受け付けると、遠隔参加処理部６２は、主催装置としての電子黒板２ａのサーバ部９０における通信制御部７０に、参加の終了要求を行う（ステップＳ４７）。これにより、通信制御部７０の遠隔接続要求受信部７１は、電子黒板２ｃから、参加の終了要求を受信し、遠隔接続処理部８１に、電子黒板２ｃのＩＰアドレスと共に参加の終了要求を出力する。そして、電子黒板２ａの遠隔接続処理部８１は、遠隔接続要求受信部７１から送られて来たＩＰアドレスに基づいて、参加拠点管理テーブル８２０から、参加の終了要求を行った電子黒板２ｃのＩＰアドレス及び電子黒板２ｃが設置されている拠点の名称を削除し、遠隔接続結果送信部７２に、電子黒板２ｃのＩＰアドレス及び削除した旨の通知を出力する。
【０１３６】
次に、遠隔接続結果送信部７２を含んだ通信制御部７０が、通信ネットワーク９を介して、電子黒板２ｃのクライアント部２０における通信制御部６０に、参加の終了を指示する（ステップＳ４８）。これにより、電子黒板２ｃにおける通信制御部６０の遠隔参加処理部６２が、遠隔共有処理の通信を切断することで、参加の終了処理を行うことで、参加が終了する（ステップＳ４９）。
【０１３７】
＜インストーラーを用いたプログラムのインストール＞
図２にて説明したように、木構造のネットワーク構造において直下の電子黒板２が直上の電子黒板２からプログラムのバージョンが自機と同じかどうかを判定し、同じでなければプログラムファイルを取得して、プログラムのバージョンアップ処理を行う。インストーラーの実体はプログラムであり、プログラムを電子黒板２に導入する導入プログラムと称することができる。
【０１３８】
まず、図１１を用いてインストーラーについて説明する。図１１（ａ）〜（ｃ）はプログラムファイルの構成を模式的に示す。プログラムファイル５００５は、インストーラー５０１１とプログラム５０１２を有するファイルである。プログラムファイルの符号５００５は直下の電子黒板２が有する場合に符号２００５となるが、説明の便宜上、符号５００５とする。プログラムファイル５００５は例えば圧縮ファイルであり、電子黒板２が解凍することでインストーラー５０１１とプログラム５０１２に分離される。なお、このプログラム５０１２が実際には複数の部品（モジュール等と呼ばれる）により構成されていてもよい。
【０１３９】
インストーラー５０１１は、電子黒板２の決まったフォルダー（ディレクトリと呼ばれる場合がある）にある古いバージョンのプログラムを削除して、このフォルダーにプログラムファイル５００５のプログラム５０１２を複写する。また、レジストリから古いバージョンのプログラムの情報を削除して、新しいプログラム５０１２の情報を設定する。レジストリには、どのフォルダーにどのプログラムのファイルが保存されており、どのファイルと関連づけが行われたかなどが登録されている。
【０１４０】
インストーラー５０１１は機種ごとに異なる。図１１では、機種Ａ用、機種Ｂ用、及び、機種Ｃ用のインストーラー５０１１が図示されている。本実施形態において電子黒板２の機種とは、同じインストーラー５０１１が動作するかどうかに基づいて判定される。ある電子黒板２で動作したインストーラー５０１１が別の電子黒板２で正常に動作しない場合、ある電子黒板２と別の電子黒板２は異なる機種である。また、インストーラー５０１１が正常に動作しない要因の１つにＯＳの種類が異なることやＯＳのバージョンが異なることが挙げられる。ＯＳの種類（例えば、Windows（登録商標）とLinux（登録商標））が異なれば動作できるインストーラー５０１１も異なる。また、ＯＳのバージョンが異なる場合、例えばレジストリなどの設定が異なる場合があり動作できるインストーラー５０１１も異なる場合がある。
【０１４１】
したがって、メーカの開発者などは電子黒板２のＯＳの種類やバージョンを考慮して機種が異なると判定し、機種ごとにインストーラー５０１１を開発する。
【０１４２】
なお、ＯＳの種類やバージョンが異なることが、電子黒板２の型番、外観（例えばディスプレイサイズ）、又は、開発世代が異なることと同じ意味となる場合があり、この場合、機種は型番、外観、又は、開発世代によって定まると表現できる。
【０１４３】
次に、図１１（ｄ）（ｅ）に基づき、共通インストーラー５０１３について説明する。共通インストーラー５０１３も同様にプログラムであり、導入プログラムと称することができるが、機種に共通であるため共通導入プログラムと称する。
【０１４４】
図１（ａ）のネットワーク構造の電子黒板２の中に異なる機種の電子黒板２が混在している場合、相対的に下位の電子黒板２がプログラムをバージョンアップできないおそれがある。一方、同一の機種のみでネットワーク構造の電子黒板２が構成されるように管理者等が機種を選別することは現実的でない場合がある。
【０１４５】
そこで、本実施形態では共通インストーラー５０１３が用いられる。図１１（ｄ）は共通インストーラー５０１３を有するプログラムファイル５００５を示し、図１１（ｅ）は共通インストーラー５０１３の構造を模式的に示す。図示するように、共通インストーラー５０１３は、機種別のインストーラー（機種Ａ用、機種Ｂ用、機種Ｃ用）５０１１を有する。すなわち、ネットワーク構造の電子黒板２に含まれる全て又は少なくとも複数の機種に対応したインストーラー５０１１を有している。なお、機種が３つなのは一例であって、２つでもよいし４つ以上でもよい。
【０１４６】
直下の電子黒板２は、共通インストーラー５０１３が実行される電子黒板２の機種を判定し、判定した機種に適合するインストーラー５０１１を電子黒板２に実行させる。例えば、機種Ａの場合はインストーラー（機種Ａ用）５０１１を実行させ、機種Ｂの場合はインストーラー（機種Ｂ用）５０１１を実行させ、機種Ｃの場合はインストーラー（機種Ｃ用）５０１１を実行させる。なお、親機２ｐが共通インストーラー５０１３を有していない場合はこの限りでない。
【０１４７】
共通インストーラー５０１３がネットワーク構造の電子黒板２に含まれる全ての機種に対応していれば、共通インストーラー５０１３が親機にインストールされることでネットワーク構造の全ての電子黒板２のプログラムがバージョンアップされる。これにより、直上の電子黒板２とプログラムのバージョンと直下の電子黒板２のプログラムのバージョンが一致するので、直下の電子黒板２は直上の電子黒板２から設定情報を取得できる。したがって、ネットワーク構造の全ての電子黒板２が設定情報を同期させることができる。
【０１４８】
図１２は、プログラムファイル５００５のファイル名とプログラムファイル５００５が有するインストーラー５０１１の関係を示す図の一例である。図１２にはインストーラー５０１１とファイル名が対応付けられている。例えば、共通インストーラー５０１３を含むプログラムファイル５００５のファイル名は＃＃＃＃_＃_１.zip、機種Ａ用のインストーラー５０１１を含むプログラムファイル５００５のファイル名は＃＃＃＃_＃_２.zip、機種Ｂ用のインストーラー５０１１を含むプログラムファイル５００５のファイル名は＃＃＃＃_＃_３.zip、機種Ｃ用のインストーラー５０１１を含むプログラムファイル５００５のファイル名は＃＃＃＃_＃_４.zipである。このようにファイル名を参照することでプログラムファイル５００５が有するインストーラー５０１１が判定可能になっている。なお、ファイル名のどこにインストーラー５０１１の種類が反映されるかは一例であり、例えば拡張子に反映されていてもよい。また、メタデータのようにプログラムファイル５００５に添付された又は含まれる別のファイルにインストーラー５０１１又は共通インストーラー５０１３が対応する機種に関する情報が含まれていてもよい。
【０１４９】
図１３は、画像処理システム１のネットワーク構造を説明する図の一例である。各電子黒板２は通信ネットワーク９を介して接続されている。図１３のネットワーク構造は、プログラムのバージョンアップ処理及び設定情報の同期に関する多段の階層構造を説明するための図であり、１つの電子黒板２は直上の電子黒板２以外の電子黒板２と画像データ等を通信することが可能である。しかしながら、本実施形態のプログラムのバージョンアップ処理及び設定情報の同期処理は、図１３に示すように木構造のネットワーク構造において実行される。
【０１５０】
なお、直上と直下の電子黒板２は通信ネットワーク９でなくＵＳＢケーブルなどで接続されていてもよい。また、有線で接続されていても無線で接続されていてもよい。
【０１５１】
図１３に示す設定管理者ＰＣ５００は、電子黒板２に設定情報を設定したり管理する設定管理者が操作するＰＣである。設定管理者は電子黒板２が設置されている企業などの担当者であるが、電子黒板２のサービスエンジニアが設定管理者でもよい。
【０１５２】
設定管理者は設定管理者ＰＣ５００を操作して、新しいバージョンのプログラムが含まれるプログラムファイル及び後述する設定情報を親機２ｐに設定する。このプログラムファイルには好ましくは共通インストーラー５０１３が含まれるが、少なくとも親機２ｐの機種に適合するインストーラーが含まれる。親機２ｐにだけ新しいバージョンのプログラム及び設定情報が設定されると、親機２ｐと子機層Ｃ及び孫機層Ｇの全ての電子黒板２が同期してプログラムのバージョンが同じになり、同じ設定情報が子機層Ｃ及び孫機層Ｇの全ての電子黒板２に設定される。なお、プログラムのバージョンアップの他、バージョンダウンしてもよいが、以下では新しいバージョンのプログラムが設定されるとして説明する。
【０１５３】
設定管理者ＰＣ５００ではブラウザソフトウェアが動作し、ブラウザソフトウェアが親機２ｐと通信してＨＴＭＬやJavaScript（登録商標）で記述された画面情報を取得する。設定管理者ＰＣ５００は後述する設定情報設定画面をディスプレイに表示する。これにより、設定管理者は設定情報を設定しまた入力することができる。
【０１５４】
また、プログラムを配信するサーバに電子黒板２がアクセスして、親機２ｐの電子黒板２が新しいバージョンのプログラムを取得してもよい。設定情報についても同様に、設定管理者がサーバに設定情報を設定し、親機２ｐの電子黒板２がサーバから設定情報を取得してもよい。
【０１５５】
また、設定管理者は設定管理者ＰＣ５００を操作して後述する通信情報を子機層Ｃ及び孫機層Ｇの電子黒板２に設定する。通信情報は、直下の電子黒板２が直上の電子黒板２と通信するための情報である。このため、設定管理者ＰＣ５００は後述する通信情報設定画面をディスプレイに表示する。これにより、設定管理者は直下の電子黒板２が直上の電子黒板２と通信するための通信情報を設定しまた入力することができる。
【０１５６】
図１４は、親機２ｐ、子機２ｃ、及び孫機２ｇで動作する機能の概略を説明する図の一例である。親機２ｐではプログラム提供部１７０が動作し、子機１ではプログラム管理部１６０とプログラム提供部１７０が動作する。子機層Ｃの電子黒板２が親機２ｐから新しいバージョンのプログラムを取得する場合、子機層Ｃの電子黒板２でプログラム管理部１６０が動作する。孫機層Ｇの電子黒板２から新しいバージョンのプログラムを要求された場合、子機層Ｃの電子黒板２でプログラム提供部１７０が動作する。孫機層Ｇと図示されていないが曾孫機層との関係においても同様である。
【０１５７】
プログラム提供部１７０は、直下の電子黒板２からの要求に応じて新しいバージョンのプログラムが含まれるプログラムファイルを直下の電子黒板２に提供する。プログラム管理部１６０は、直上の電子黒板２とプログラムのバージョンが同じかどうかを判定し、異なっている場合に、プログラムファイルに含まれるインストーラー５０１１が共通インストーラー５０１３又は自機の機種用のインストーラー５０１１か否かを判定する。インストーラー５０１１が共通インストーラー５０１３又は自機の機種用のインストーラー５０１１である場合、共通インストーラー５０１３又はインストーラー５０１１を実行させ、プログラムをバージョンアップする。
【０１５８】
また、親機２ｐでは設定提供部１５０が動作し、子機１では設定提供部１５０と設定取得部１８０が動作する。子機層Ｃの電子黒板２が親機２ｐから設定情報を取得する場合、子機層Ｃの電子黒板２で設定取得部１８０が動作する。孫機層Ｇの電子黒板２から設定情報を要求された場合は子機層Ｃの電子黒板２で設定提供部１５０が動作する。孫機層Ｇと図示されていないが曾孫機層との関係においても同様である。
【０１５９】
＜設定管理者ＰＣのハードウェア構成＞
図１５は、設定管理者ＰＣ５００のハードウェア構成図の一例である。設定管理者ＰＣ５００は、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２、ＲＡＭ（Random Access Memory）２０３及び補助記憶装置２０４を備える。更に、設定管理者ＰＣ５００は、入力部２０５、ディスプレイＩ／Ｆ２０６及び通信Ｉ／Ｆ２０７を備える。なお、設定管理者ＰＣ５００の各部は、バス２０８を介して相互に接続されている。したがって、設定管理者ＰＣ５００は情報処理装置としての機能を有する。
【０１６０】
ＣＰＵ２０１は、補助記憶装置２０４に格納された各種プログラム、ＯＳ（Operating System））を実行する。ＲＯＭ２０２は不揮発性メモリである。ＲＯＭ２０２は、補助記憶装置２０４に格納された各種プログラムを、ＣＰＵ２０１が実行するために必要なプログラム、データ等を格納する。
【０１６１】
ＲＡＭ２０３は、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）等の主記憶装置である。ＣＰＵ２０１によって実行される際に補助記憶装置２０４に格納された各種プログラムがＲＡＭ２０３に展開され、ＲＡＭ２０３はＣＰＵ２０１の作業領域となる。
【０１６２】
補助記憶装置２０４は、ＣＰＵ２０１により実行される各種プログラム及び各種プログラムがＣＰＵ２０１により実行される際に利用される各種データベースを記憶する。補助記憶装置２０４は例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などの不揮発性メモリである。なお、各種データベースについては後述する。
【０１６３】
入力部２０５は、オペレータが設定管理者ＰＣ５００に各種指示を入力するためのインタフェースである。例えば、キーボード、マウス、タッチパネル、音声入力装置などである。更に、ＵＳＢ Ｉ／Ｆなど記録媒体等の装着部を有していてもよい。
【０１６４】
ディスプレイＩ／Ｆ２０６は、ＣＰＵ２０１からの要求により、設定管理者ＰＣ５００が有する各種情報をカーソル、メニュー、ウィンドウ、文字、又は画像などの形態でディスプレイ２１０に表示する。ディスプレイＩ／Ｆ２０６は、例えばグラフィックチップやディスプレイＩ／Ｆである。
【０１６５】
通信Ｉ／Ｆ２０７は、ネットワークＮを介して、電子黒板２と通信を行うネットワークＩ／Ｆである。
【０１６６】
＜プログラム管理部の機能について＞
図１６は、プログラム提供部１７０とプログラム管理部１６０の詳細な機能ブロック図の一例である。なお、直上の電子黒板２のプログラム管理部１６０と直下の電子黒板２のプログラム提供部１７０は説明の便宜上省略されている。
【０１６７】
<<プログラム提供部>>
プログラム提供部１７０は、通信部１７１、プログラム情報提供部１７２及び記憶読出部１７９を有している。これら各機能部は、図４に示されるＳＳＤ１０４に格納されているプログラム（すなわち、すでにインストールされているプログラム）をＣＰＵ１０１が実行して図４に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
【０１６８】
また、プログラム提供部１７０は、図４に示されるＳＳＤ１０４、ＲＯＭ１０２又はＲＡＭ１０３のいずれか１つ以上により構築される記憶部２０００にアクセス可能である。記憶部２０００には、インストール済みバージョン２００４、プログラムファイル２００５、及び機種情報２００６が記憶されている。インストール済みバージョン２００４は、電子黒板２に現在インストールされているプログラムのバージョンである。機種情報２００６は直上の電子黒板２の機種に関する情報である。機種情報２００６は機種を判定可能な情報であればよい。機種がＯＳの種類に依存する場合はＯＳの種類、機種がＯＳのバージョンに依存する場合はＯＳのバージョン、機種が外観に依存する場合は外観に関する情報、機種が型番に依存する場合は型番、機種が開発世代に依存する場合は開発世代等が機種情報２００６である。プログラムファイル２００５は上記のようにプログラムとインストーラー５０１１又は共通インストーラー５０１３が格納されたファイルである。一般には、複数の部品（例えばモジュールと呼ばれる場合がある）が１つのフォルダーに又は階層的に格納されている。プログラムファイル２００５は圧縮されていてもよいし、実行形式でもよい。プログラムファイル２００５の複数の部品の１つにはテキストデータなどでバージョンが記述されており、電子黒板２はプログラムファイル２００５が有するバージョンを読み出すことができる。
【０１６９】
記憶部２０００のプログラムファイル２００５は、設定管理者が記憶させる場合、プログラムを配信するサーバからダウンロードされた場合、直上の電子黒板２に対し更に直上の電子黒板２から送信される場合がある。
【０１７０】
プログラムファイル２００５が有するプログラムのバージョンと、インストール済みバージョン２００４は同じ場合と異なっている場合がある。プログラムファイル２００５を用いてプログラムが電子黒板２にインストールされた場合、プログラムファイル２００５が有するプログラムのバージョンと、インストール済みバージョン２００４は同じである。設定管理者やプログラムを配信するサーバ等がプログラムファイル２００５を記憶部２０００に記憶させた直後から電子黒板２がこのプログラムファイル２００５を用いてプログラムをインストールするまでは、プログラムファイル２００５が有するプログラムのバージョンと、インストール済みバージョン２００４は異なっている。
【０１７１】
（プログラム提供部１７０の機能について）
通信部１７１は、図４に示したＣＰＵ１０１やネットワークコントローラ１０５等により実現され、直下の電子黒板２と各種情報の送受信を行う。なお、以降の説明では、プログラム情報提供部１７２が通信部１７１により直下の電子黒板２と通信する場合でも、「通信部１７１を介して」という記載を省略する場合がある。
【０１７２】
プログラム情報提供部１７２は、直下の電子黒板２からインストールされているプログラムのバージョンの問い合わせを受けると、記憶読出部１７９を介してインストール済みバージョン２００４を記憶部２０００から読み出して直下の電子黒板２に送信する。また、プログラム情報提供部１７２は、直下の電子黒板２からプログラムファイル２００５を要求されると、記憶読出部１７９を介してプログラムファイル２００５を記憶部２０００から読み出して直下の電子黒板２に送信する。
【０１７３】
記憶読出部１７９は記憶部２０００に記憶されている各種の情報を読み出したり記憶させたりする。なお、以下の説明では、記憶読出部１７９が記憶部２０００から各種の情報を読み出したり記憶させたり場合でも、説明の便宜上、「記憶読出部１７９を介して」という説明を省略する場合がある。
【０１７４】
<<プログラム管理部１６０>>  
プログラム管理部１６０は、通信部１６１、バージョン確認部１６２、プログラムインストール部１６３、直上バージョン判定部１６４、プログラム取得部１６５、機種判定部１６６及び、記憶読出部１６９を有している。これら各機能部は、図４に示されるＳＳＤ１０４に格納されているプログラムをＣＰＵ１０１が実行して図４に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
【０１７５】
また、プログラム管理部１６０は、図４に示されるＳＳＤ１０４、ＲＯＭ１０２又はＲＡＭ１０３のいずれか１つ以上により構築される記憶部５０００にアクセス可能である。記憶部５０００には、インストール済みバージョン５００４、プログラムファイル５００５、機種情報５００６が記憶され、更に通信情報記憶部５００２が構築されている。インストール済みバージョン５００４、プログラムファイル５００５及び機種情報５００６については直上の電子黒板２と同じものである。記憶部５０００のプログラムファイル５００５は、直上の電子黒板２から送信されたものである。通信情報記憶部５００２が記憶している情報については後述する。
【０１７６】
（プログラム管理部１６０の機能について）
通信部１６１は、図４に示したＣＰＵ１０１やネットワークコントローラ１０５等により実現され、直上の電子黒板２と各種情報の送受信を行う。なお、以降の説明では、直下の電子黒板２が通信部１６１により直上の電子黒板２と通信する場合でも、「通信部１６１を介して」という記載を省略する場合がある。
【０１７７】
直上バージョン判定部１６４は、直上の電子黒板２にインストールされているプログラムのバージョン（インストール済みバージョン２００４）を直上の電子黒板２から取得して、自機である直下の電子黒板２にインストールされているプログラムのバージョン（インストール済みバージョン５００４）と同じかどうかを判定する。この判定により、直上の電子黒板２と設定情報を同機してよいか否かを判定できる。同じであると判定すると、直上バージョン判定部１６４は後述する設定要求部１８３に設定情報の同期を許可する。
【０１７８】
プログラム取得部１６５は、直上の電子黒板２とプログラムのバージョンが異なっていると判定されると、直上の電子黒板２からプログラムファイル２００５を取得して、記憶部５０００にプログラムファイル５００５として記憶させる。すでにプログラムファイル５００５が記憶部５０００に記憶されている場合は上書きする。
【０１７９】
バージョン確認部１６２は、記憶部５０００に記憶されているプログラムファイル５００５が有するプログラムのバージョンと、インストール済みバージョン５００４を比較して、異なっている場合にインストールの必要があると判定する。プログラムファイル５００５が有するプログラムのバージョンの方が、インストール済みバージョン５００４より新しい場合にだけインストールの必要があると判定してもよい。
【０１８０】
機種判定部１６６は、記憶部５０００の機種情報５００６を読み出して、プログラムファイルのインストーラー５０１１を実行可能か否か判定する。プログラムファイルには図１２にて説明したようにプログラムファイルが有するインストーラー５０１１又は共通インストーラー５０１３を判定可能な情報が含まれているため、プログラムファイルと機種情報５００６を比較することでインストーラー５０１１又は共通インストーラー５０１３を実行可能かどうか判定できる。
【０１８１】
プログラムインストール部１６３は、機種判定部１６６がインストーラー５０１１を実行可能であると判定すると、プログラムファイル５００５のインストーラー５０１１又は共通インストーラー５０１３を自機である電子黒板２で動作させる。
【０１８２】
記憶読出部１６９は記憶部５０００に記憶されている各種の情報を読み出したり記憶させたりする。なお、以下の説明では、記憶読出部１６９が記憶部５０００から各種の情報を読み出したり記憶させたり場合でも、説明の便宜上、「記憶読出部１６９を介して」という説明を省略する場合がある。
【０１８３】
<<設定提供部の機能について>>
図１７は、設定取得部１８０と設定提供部１５０の詳細な機能ブロック図の一例である。直下の電子黒板２も設定提供部１５０を有するが説明の便宜上省略されており、直上の電子黒板２も設定取得部１８０を有するが説明の便宜上省略されている。
【０１８４】
設定提供部１５０は、通信部１５１、設定受付部１５２、ＭＤ作成部１５３、情報提供部１５４、及び、記憶読出部１５５を有している。これら各機能部は、図４に示されるＳＳＤ１０４に格納されているプログラムをＣＰＵ１０１が実行して図４に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
【０１８５】
また、設定提供部１５０は、図４に示されるＳＳＤ１０４、ＲＯＭ１０２又はＲＡＭ１０３のいずれか１つ以上により構築される記憶部２０００にアクセス可能である。記憶部２０００には、設定情報記憶部２００１、認証情報記憶部２００２、及びＭＤ記憶部２００３が記憶されている。まず、記憶部２０００に記憶されている情報について説明する。なお、図１７の記憶部２０００は図１６の記憶部２０００と同じものであるが、異なっていてもよい。
【０１８６】
【表１１】
0006658157.tif 000012
表１１は認証情報記憶部２００２に記憶されている認証情報の一例を示す。表１１では認証情報としてパスコードが登録されている。直上の電子黒板２は、直下の電子黒板２が送信したパスコードが認証情報記憶部２００２に記憶されているパスコードと一致するか否かに応じて直下の電子黒板２を認証する。なお、認証方法としてパスコードを用いるのでなく電子証明書を使用して認証してもよい。
【０１８７】
【表１２】
0006658157.tif 000013
表１２は設定情報記憶部２００１に記憶されている設定情報の一例を示す。表１２では設定情報種類、設定情報設定日時、及び、ファイル名が登録されている。本体動作用の設定情報は現在、有効な設定情報を示す。設定情報設定日時は設定情報が電子黒板２に設定された日時を示す。ファイル名は設定情報が格納されたファイルのファイル名である。
【０１８８】
【表１３】
0006658157.tif 000014
表１３はＭＤ記憶部２００３に記憶されているハッシュ値（メッセージダイジェスト：Message Digest）の一例を示す。ＭＤ記憶部２００３には本体動作用の設定情報のメッセージダイジェストが記憶される。メッセージダイジェストとしてはハッシュ値が一般的であるが、設定情報がわずかでも変わると変わる性質を有する情報であってもよい。電子黒板２は設定情報が設定されると、設定情報からハッシュ値を生成しＭＤ記憶部２００３に記憶させる。ハッシュ値は、設定情報の同期が必要かどうかを直下の電子黒板２が判定するために使用される。
【０１８９】
（設定提供部１５０の機能について）
通信部１５１は、図４に示したＣＰＵ１０１やネットワークコントローラ１０５等により実現され、直下の電子黒板２及び設定管理者ＰＣ５００と各種情報の送受信を行う。例えば、設定管理者ＰＣ５００に設定情報設定画面の画面情報を送信し、直下の電子黒板２に設定情報を送信する。なお、通信プロトコルには、ＨＴＴＰ、ＨＴＴＰ／２、又は、ＳＰＤＹ等が用いられるが、通信プロトコルはどのようなものでもよい。また、以降の説明では、設定提供部１５０が通信部１５１により設定取得部１８０と通信する場合でも、「通信部１５１を介して」という記載を省略する場合がある。
【０１９０】
設定受付部１５２は、図４に示したＣＰＵ１０１等により実現され、Ｗｅｂサーバ及びＷｅｂアプリとして機能し、設定管理者ＰＣ５００に送信する設定情報設定画面の画面情報をＨＴＭＬやJavaScript（登録商標）などで作成する。
【０１９１】
ＭＤ作成部１５３は、図４に示したＣＰＵ１０１等により実現され、設定情報からメッセージダイジェストを作成し記憶読出部１５５を介してＭＤ記憶部２００３に記憶させる。
【０１９２】
情報提供部１５４は、図４に示したＣＰＵ１０１等により実現され、直下の電子黒板２からの要求に応じて設定情報を直下の電子黒板２に提供する。
【０１９３】
記憶読出部１５５は、図４に示したＣＰＵ１０１、ＳＳＤ１０４、ＲＡＭ１０３等により実現され、記憶部２０００に各種情報を記憶させたり、記憶部２０００から各種情報を読み出したりする処理を行う。なお、以降の説明では、記憶部２０００に記憶されている情報を設定提供部１５０が読み書きする場合でも、「記憶読出部１５５を介して」という記載を省略する場合がある。
【０１９４】
<<設定取得部１８０の機能について>>
設定取得部１８０は、通信部１８１、設定受付部１８２、設定要求部１８３、ＭＤ比較部１８４、記憶読出部１８５、情報取得部１８６、ＭＤ作成部１８７、及び、エラーコード表示部１８８を有している。これら各機能部は、図４に示されるＳＳＤ１０４に格納されているプログラムをＣＰＵ１０１が実行して図４に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
【０１９５】
また、設定取得部１８０は、図４に示されるＳＳＤ１０４、ＲＯＭ１０２又はＲＡＭ１０３のいずれか１つ以上により構築される記憶部５０００にアクセス可能である。記憶部５０００には、設定情報記憶部５００１、通信情報記憶部５００２及びＭＤ記憶部５００３が記憶されている。設定情報記憶部５００１に記憶される設定情報、ＭＤ記憶部５００３に記憶されるメッセージダイジェスト（ハッシュ値）は直上の電子黒板２と同じである。なお、図１７の記憶部５０００は図１６の記憶部５０００と同じものであるが、異なっていてもよい。
【０１９６】
【表１４】
0006658157.tif 000015
表１４は通信情報記憶部５００２に記憶されている通信情報の一例を示す図である。通信情報は、直下の電子黒板２が直上の電子黒板２と通信するための情報である。本実施形態ではＩＰアドレスとパスコードが通信情報として記憶されている。これらは、後述するように設定管理者が設定管理者ＰＣ５００を操作して、各電子黒板２（親となる電子黒板２を除く）に設定する。設定管理者は図１３のような多段階（三階層以上）の木構造のネットワーク構造を想定して、各電子黒板２から見て直上の電子黒板２のＩＰアドレスとパスコードを設定する。なお、図示する通信情報は一例に過ぎず、ポート番号等が含まれてもよい。
【０１９７】
（設定取得部１８０の機能について）
通信部１８１は、図４に示したＣＰＵ１０１やネットワークコントローラ１０５等により実現され、直上の電子黒板２及び設定管理者ＰＣ５００と各種情報の送受信を行う。例えば、設定管理者ＰＣ５００に通信情報設定画面の画面情報を送信し、直上の電子黒板２から設定情報を受信する。なお、通信プロトコルには、ＨＴＴＰ、ＨＴＴＰ／２、又は、ＳＰＤＹ等が用いられるが、通信プロトコルはどのようなものでもよい。また、以降の説明では、設定取得部１８０が通信部１８１により設定提供部１５０と通信する場合でも、「通信部１８１を介して」という記載を省略する場合がある。
【０１９８】
設定受付部１８２は、図４に示したＣＰＵ１０１等により実現され、Ｗｅｂサーバ及びＷｅｂアプリとして機能し、設定管理者ＰＣ５００に送信する通信情報設定画面の画面情報をＨＴＭＬやJavaScript（登録商標）などで作成する。
【０１９９】
設定要求部１８３は、図４に示したＣＰＵ１０１等により実現され、直上バージョン判定部１６４が直上の電子黒板２とインストールされているプログラムのバージョンが同じであると判定すると、直上の電子黒板２と設定情報を同期する処理を開始する。同期を開始するタイミングは、表１５の同期情報に設定されている。また、設定要求部１８３は通信を始めると設定要求部１８３は直上の電子黒板２からハッシュ値を取得する。
【０２００】
ＭＤ比較部１８４は、図４に示したＣＰＵ１０１等により実現され、記憶部５０００のＭＤ記憶部５００３に記憶されているハッシュ値と、直上の電子黒板２から取得したハッシュ値を比較する。
【０２０１】
情報取得部１８６は、図４に示したＣＰＵ１０１等により実現され、ＭＤ比較部１８４による比較の結果、ハッシュ値が異なる場合、直上の電子黒板２から設定情報を取得する。記憶読出部１８５を介して取得した設定情報を記憶部５０００の設定情報記憶部５００１に記憶させる。
【０２０２】
ＭＤ作成部１８７は、図４に示したＣＰＵ１０１等により実現され、記憶部５０００の設定情報記憶部５００１に本体動作用の設定情報が記憶されると、設定情報からメッセージダイジェストを作成し記憶読出部１８５を介してＭＤ記憶部５００３に記憶させる。
【０２０３】
エラーコード表示部１８８は、図４に示したＣＰＵ１０１等により実現され、設定情報の同期処理に関するエラーコード等をディスプレイ３又は設定管理者ＰＣ５００に表示させる。
【０２０４】
記憶読出部１８５は、図４に示したＣＰＵ１０１、ＳＳＤ１０４、ＲＡＭ１０３等により実現され、記憶部５０００に各種情報を記憶させたり、記憶部５０００から各種情報を読み出したりする処理を行う。なお、以降の説明では、記憶部５０００に記憶されている情報を設定取得部１８０が読み書きする場合でも、「記憶読出部１８５を介して」という記載を省略する場合がある。
【０２０５】
<<設定管理者ＰＣの機能について>>
設定管理者ＰＣ５００は、通信部２２１、操作受付部２２２、表示制御部２２３、及び、記憶読出部２２９を有している。これら各機能部は、補助記憶装置２０４に格納されているブラウザソフトウェア７００１をＣＰＵ２０１が実行して図１５に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
【０２０６】
また、設定管理者ＰＣ５００は、図１５に示される補助記憶装置２０４、ＲＯＭ２０２又はＲＡＭ２０３のいずれか１つ以上により構築される記憶部７０００にアクセス可能である。記憶部７０００には、ブラウザソフトウェア７００１が記憶されている。ブラウザソフトウェア７００１と同様の通信機能を備えたアプリケーションが記憶されていてもよい。
【０２０７】
（設定管理者ＰＣの機能について）
通信部２２１は、図１５に示したＣＰＵ２０１や通信Ｉ／Ｆ２０７等により実現され、電子黒板２と各種情報の送受信を行う。例えば、設定管理者が入力した設定情報や通信情報を電子黒板２に送信する。
【０２０８】
操作受付部２２２は、図１５に示したＣＰＵ２０１や入力部２０５等により実現され、設定管理者の各種の操作を受け付ける。具体的には、設定情報や通信情報などの入力を受け付ける。
【０２０９】
表示制御部２２３、図１５に示したＣＰＵ２０１やディスプレイＩ／Ｆ２０６等により実現され、ディスプレイ２１０に、設定情報設定画面や通信情報設定画面を表示させる。具体的には、電子黒板２から送信されるＨＴＭＬやJavaScript（登録商標）などの画面情報を解釈し、これらの画面を表示する。
【０２１０】
記憶読出部２２９は、図１５に示したＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３等により実現され、記憶部７０００に各種情報を記憶させたり、記憶部７０００から各種情報を読み出したりする処理を行う。
【０２１１】
＜設定情報設定画面＞
図１８（ａ）は、設定管理者ＰＣ５００のディスプレイ２１０に表示される設定情報設定画面５０１の一例を示す図である。設定情報設定画面５０１にはシステム設定ボタン５０２、セキュリティ設定ボタン５０３、ネットワーク設定ボタン５０４、及び、日付と日時設定ボタン５０５が表示される。「１〜４」の数字は項目番号である。設定管理者はそれぞれのボタンを押下して詳細な設定を行う。以下、各ボタンで設定される設定情報について説明する。
・システム設定…拠点名、自動シャットアウト時間、自動再起動時刻、自動スタンバイ時間、同期に関する情報等が設定される。
・セキュリティ設定…ユーザが入力可能又は制限されるメールアドレスのドメイン（両方が設定されると入力可能ドメインが有効になる）、メールアドレスの直接入力の禁止、パスコードの最小桁数、パスコードの生成タイミング、パスコードの表示制限等が設定される。補足すると「パスコードの生成タイミング」とは電子黒板２がパスコードを自動で生成する場合に、生成するタイミング（起動時）や生成する時刻などをいう。したがって、電子黒板２はパスコードを自動で生成できる他、設定管理者が任意に設定できる。
・ネットワーク設定…ＩＰアドレス、サブネットマスク、デフォルトゲートウェイ、ＤＮＳに関する設定等が設定される。
・日付と日時設定…タイムゾーン、時刻サーバとの同期の有無などが設定される。
【０２１２】
同期のタイミングが電子黒板２の再起動時である場合、システム設定の自動再起動時刻により設定管理者は同期のタイミングを設定できる。この他、同期のタイミングとして任意の時刻を設定してよい。同期のタイミングは設定情報に含まれ各電子黒板２の間で共有されるので、直下の電子黒板２は共通のタイミングで直上の電子黒板２から設定情報を取得できる。
【０２１３】
なお、図１８（ａ）は設定情報の一例を示したに過ぎず、設定管理者は他にも数多くの項目を設定可能である。原則的に、設定情報設定画面５０１で設定可能な情報は設定情報に含まれるが、同期が好ましくない情報は例外的に同期の対象から除かれる。例えば、ネットワーク設定は、ＩＰアドレスやサブネットマスクを含むが、ＩＰアドレスを同期させると全ての電子黒板２が同じＩＰアドレスを保持してしまうため同期対象から除かれる。サブネットマスクも全ての電子黒板２で同じとは限らないので同期の対象から除かれる。
【０２１４】
設定管理者ＰＣ５００は設定内容を受け付け、設定情報設定画面５０１を表示させている電子黒板２に送信する。これにより、設定提供部１５０は設定情報記憶部２００１に設定情報を登録する。
【０２１５】
なお、直上の電子黒板２の設定受付部１５２が図１８（ａ）のような設定情報設定画面５０１を電子黒板２のディスプレイ３に表示し、設定管理者からの設定を受け付けることも可能である。
【０２１６】
<<システム設定画面>>
図１８（ｂ）は、設定管理者ＰＣ５００のディスプレイに表示されるシステム設定画面６０１の一例を示す図である。システム設定画面６０１はシステム設定ボタン５０２が押下かされると表示される。システム設定画面６０１には、チェックボックス６０２と共に「機器設定を同期する」というメッセージが表示される。設定管理者は直下の電子黒板２に直上の電子黒板２と設定情報を同期させる場合、チェックボックス６０２をＯＮにする。
【０２１７】
なお、親機２ｐ（直上の電子黒板２）のチェックボックス６０２もＯＮである。これは、親機２ｐが設定情報を提供しないことを可能とするためである。
【０２１８】
チェックボックス６０２がＯＮになると、同期項目６０２１と同期タイミング６０２２を設定管理者が設定可能になる。同期項目６０２１には、図１８（ａ）の項目番号が個別に選択可能な状態で表示される。同期タイミング６０２２には、再起動時、電源オフ時、又は、時刻が選択可能な状態で表示される。
【０２１９】
チェックボックス６０２の設定は後述する表１５の「同期」に反映される。同期項目６０２１の設定は同じく「同期項目」に反映される。同期タイミング６０２２の設定は同じく「同期タイミング」に反映される。
【０２２０】
また、システム設定画面６０１には、チェックボックス６０７と共に「自動バージョンアップする」というメッセージが表示される。設定管理者は電子黒板２が直上の電子黒板２からプログラムファイルを取得してプログラムをバージョンアップさせる場合にチェックボックス６０７をＯＮに設定する。上記のように設定情報を同期させるためにプログラムをバージョンアップさせる必要が生じる場合があるが、ユーザがプログラムをバージョンアップさせたくない場合もありうる。この場合は、設定管理者はチェックボックス６０７をＯＦＦに設定することができる。
【０２２１】
チェックボックス６０７がＯＮになると、バージョンアップ許可表示のチェックボックス６０８を設定管理者が設定可能になる。設定管理者がチェックボックス６０７をＯＮに設定した場合でも、チェックボックス６０８がＯＮであることで、プログラムのバージョンアップの前に電子黒板２は後述するダイアログをディスプレイ３に表示させる。これにより、バージョンアップの前にユーザがバージョンアップするかどうかを確認できる。
【０２２２】
なお、親機２ｐ（直上の電子黒板２）のチェックボックス６０８もＯＮである。これは、親機２ｐがプログラムファイル２００５を提供しないことを可能とするためである。
【０２２３】
システム設定を電子黒板２に設定する場合、設定管理者はＯＫボタン６２０を押下し、システム設定を電子黒板２に設定しない場合、設定管理者はキャンセルボタン６２１を押下する。設定管理者ＰＣ５００は設定内容を受け付け、システム設定画面６０１を表示させている電子黒板２に送信する。これにより、設定受付部１８２は設定情報記憶部５００１に設定情報を登録する。
【０２２４】
なお、電子黒板２の設定受付部１８２が図１８（ｂ）のようなシステム設定画面６０１を電子黒板２のディスプレイ３に表示し、設定管理者からの設定を受け付けることも可能である。
【０２２５】
【表１５】
0006658157.tif 000016
表１５は、設定管理者により設定された設定情報の内容の一例を模式的に示す（表１２の設定情報の具体例）。表１５では、項目番号ごとに項目と内容が登録されている。
【０２２６】
このうち、システム設定には、設定情報の同期に関する設定として、「同期」、「同期タイミング」及び「同期項目」が登録されている。「同期」は同期処理を行う場合にＯＮ、同期しない場合にＯＦＦが設定される。「同期タイミング」は、電子黒板２が同期するタイミングが設定される。「同期項目」は設定情報が有するいくつかの項目のうち同期する項目の番号が設定される。「同期タイミング」には再起動時の他、電源オフの直後又は予め定められた時刻（例えば、毎日４時）などがある。
【０２２７】
また、プログラムのバージョンアップに関する設定として、「自動バージョンアップ」「バージョンアップ許可表示」が登録されている。「自動バージョンアップ」はバージョンアップを自動で行う場合にＯＮ、バージョンアップしない場合にＯＦＦとなる。「バージョンアップ許可表示」は後述するダイアログが表示される場合にＯＮとなり、表示されない場合にＯＦＦとなる。
【０２２８】
<<通信情報設定画面>>
図１９は、設定管理者ＰＣ５００のディスプレイに表示される通信情報設定画面７０１の一例を示す図である。通信情報設定画面７０１にはＩＰアドレス入力欄７０２とパスコード入力欄７０３が表示される。設定管理者は通信情報設定画面７０１を表示させている電子黒板２からみて直上の電子黒板２のＩＰアドレスをＩＰアドレス入力欄７０２に入力する。同様に、パスコード入力欄７０３にパスコードを入力させる。
【０２２９】
通信情報を電子黒板２に設定する場合、設定管理者はＯＫボタン７０４を押下し、通信情報を電子黒板２に設定しない場合、設定管理者はキャンセルボタン７０５を押下する。設定管理者ＰＣ５００は設定内容を受け付け、システム設定画面６０１を表示させている電子黒板２に送信する。これにより、設定受付部１８２は通信情報記憶部５００２に通信情報を登録する。
【０２３０】
なお、電子黒板２の設定受付部１８２が図１９のような通信情報設定画面７０１を電子黒板２のディスプレイ３に表示し、設定管理者からの設定を受け付けることも可能である。
【０２３１】
＜インストール手順＞
図２０は、画像処理システム１が新しいバージョンのプログラムを同期する手順を示すシーケンス図の一例である。なお、図２０では、子機層Ｃの任意の子機２ｃと孫機層Ｇの任意の孫機２ｇの処理を説明する。
【０２３２】
S1：設定管理者は設定管理者ＰＣ５００を操作して新しいバージョンのプログラムファイル２００５を親機２ｐに設定する。プログラムファイル２００５が格納されたＵＳＢメモリを設定管理者が親機２ｐに装着して、記憶部２０００にコピーしてもよい。プログラムを配信するサーバから親機２ｐがダウンロードしてもよい。
【０２３３】
S2：親機２ｐはプログラムファイル２００５を記憶部２０００に記憶させておき、次回の起動時、プログラムファイル２００５のプログラムを自機にインストールする。インストールすることで、親機２ｐと子機２ｃのプログラムのバージョンが異なる状況が生じる。設定管理者が強制的にインストールすることも可能である。
【０２３４】
S3：子機２ｃの直上バージョン判定部１６４は子機２ｃが起動すると、親機２ｐのプログラムのバージョンをチェックする。まず、親機２ｐにインストールされているプログラムのバージョンと（インストール済みバージョン２００４）を要求する。
【０２３５】
S3.1：次に、子機２ｃの直上バージョン判定部１６４は、ステップＳ３で取得した親機２ｐにインストールされているプログラムのバージョンと（インストール済みバージョン２００４）、子機２ｃにインストールされているプログラムのバージョン（インストール済みバージョン５００４）が同じかどうかを判定する。図２０では、異なっていたものとして説明するが、一致している場合は以下の処理は行われない。
【０２３６】
S4：子機２ｃのプログラム取得部１６５はプログラムファイル２００５を親機２ｐに要求する。なお、通信情報記憶部５００２に記憶されているパスコードを親機２ｐに送信してログインする。
【０２３７】
S5：親機２ｐのプログラム情報提供部１７２は、記憶部２０００に記憶されているプログラムファイル２００５を子機２ｃに送信する。
【０２３８】
S6：子機２ｃのプログラム取得部１６５は取得したプログラムファイル２００５を記憶部５０００にプログラムファイル５００５として記憶させておき、子機２ｃの次回起動時、機種判定部１６６は、プログラムファイルのインストーラー５０１１が自機に適合しているか否かを判定する。詳細は図２１にて説明する。ここでは、プログラムファイルのインストーラー５０１１が自機に適合しているものとして説明するが、適合していない場合、以下の処理は行われない。
【０２３９】
S7：機種が適合している場合、プログラムインストール部１６３は、プログラムファイル５００５のプログラムを自機にインストールする。インストールすることで、子機２ｃと孫機２ｇのプログラムのバージョンが異なるので、孫機２ｇも同様にプログラムをバージョンアップできる。
【０２４０】
したがって、以降のステップＳ８〜Ｓ１２の処理はステップＳ３〜Ｓ７と同様でよい。  <<プログラムのバージョンアップ処理>>
図２１は、親機以外の電子黒板２がプログラムをバージョンアップする手順を詳細に説明するフローチャート図の一例である。図２１の処理は電子黒板２が起動することでスタートする。この起動は、システム設定画面６０１における再起動時の設定により再起動した場合、又は、ユーザが起動させた場合のいずれでもよい。
【０２４１】
まず、電子黒板２のバージョン確認部１６２は、自機にインストールされているプログラムのバージョンと、記憶部５０００に記憶されているプログラムファイル５００５のプログラムのバージョンが同じかどうかを判定する（Ｓ１０）。自機にインストールされているプログラムのバージョンとは、記憶部５０００に記憶されているインストール済みバージョン５００４である。
【０２４２】
ステップＳ１０の判定がＮｏの場合、プログラムをインストール可能かどうか判定するため機種判定部１６６は自機の機種情報５００６を記憶部５０００から読み出す（Ｓ２０）。
【０２４３】
次に、機種判定部１６６は、プログラムファイルが共通インストーラー５０１３を有するか否かを判定する。共通インストーラー５０１３でない場合、機種情報５００６と同じ機種に対応したインストーラー５０１１をプログラムファイルが有するか否かを判定する（Ｓ３０）。
【０２４４】
ステップＳ３０の判定がＹｅｓの判定、電子黒板２はインストーラー５０１１を実行可能なので処理はステップＳ６０に進む。
【０２４５】
ステップＳ３０の判定がＮｏの判定、電子黒板２はインストーラー５０１１又は共通インストーラー５０１３を実行可能できないので、例えば機種判定部１６６は記憶部５０００のプログラムファイルを削除する（Ｓ４０）。記憶部５０００にプログラムファイルが記憶されていても実行できないため削除することで記憶容量を有効に活用できる。
【０２４６】
次に、機種判定部１６６はメッセージをディスプレイ３に表示する（Ｓ５０）。このメッセージは、例えば「プログラムをバージョンアップできません」のようなメッセージである。これにより、管理者等はメッセージを目視して、プログラムのバージョンが直上の電子黒板２と異なるがバージョンアップできないことを把握できる。
【０２４７】
次に、プログラムインストール部１６３は図２４に示すようなダイアログを表示するか否かを判定する（Ｓ６０）。すなわち、図１８（ｂ）の設定画面でチェックボックス６０８がチェックされているかどうかを判定する。
【０２４８】
ステップＳ６０の判定がＮｏの場合、図２４に示すようなダイアログを表示せずにインストールが行われる（Ｓ８０）。
【０２４９】
ステップＳ６０の判定がＹｅｓの場合、プログラムインストール部１６３は図２４に示すようなダイアログを表示し、ユーザからアップデートするという操作を受け付けたか否かを判定する（Ｓ７０）。具体的には、ダイアログが表示されている状態で座標検知部２２が検知した座標をイベント振分部２５がＵＩ操作と判定する。操作処理部２６はＵＩ操作された座標に基づきユーザからアップデートするという操作を受け付ける。
【０２５０】
なお、ダイアログが表示されたがユーザがなんら操作を行わないと、スタンバイ時間の経過によりスタンバイ状態になるか、又は、シャットダウン時間の経過によりシャットダウンされる。
【０２５１】
ステップＳ７０の判定がＮｏの場合、プログラムがインストールされないので、電子黒板２は、その他の起動していない機能を起動させる（起動処理を継続する）。この後、処理は図２２に移行する。
【０２５２】
ステップＳ７０の判定がＹｅｓの場合、電子黒板２のプログラムインストール部１６３は記憶部５０００に記憶されているプログラムファイル５００５を用いてプログラムのインストールを行う（Ｓ８０）。
【０２５３】
次いで、直下の電子黒板２にプログラムファイル５００５を提供できるように、プログラムファイル５００５を記憶部５０００から記憶部２０００にコピーする（Ｓ９０）。なお、記憶部５０００のプログラムファイル５００５を提供してもよく、この処理を行わなくてもよい。
【０２５４】
プログラムをインストールすると電子黒板２は再起動する（Ｓ１００）。これは、通常のコンピュータと同様に起動中は置き換えられないファイルを置き換えるためである。再起動により、処理はステップＳ１０に戻るが、再起動後はステップＳ１０でＹｅｓと判定される。
【０２５５】
一方、ステップＳ１０の判定がＹｅｓの場合、電子黒板２はプログラムのダウンロード処理のスレッドを作成する（Ｓ１１０）。このスレッドは、例えばプログラムのダウンロードの手順が記述されたものである。スレッドを作成しておくことで電子黒板２はプログラムをダウンロードできるまで繰り返しスレッドを実行できる。
【０２５６】
続いて図２２を用いて、プログラムのダウンロード処理、設定情報の同期処理について説明する。図２２は、電子黒板２が起動後に行う処理を説明する図の一例である。図２２の処理は、図２１の処理の終了後、必要な機能が起動すると実行される。
【０２５７】
まず、電子黒板２の直上バージョン判定部１６４は直上の電子黒板２と自機のプログラムのバージョンが同じかどうかを判定する（Ｓ２１０）。すなわち、通信情報記憶部５００２に記憶されている通信情報を用いて直上の電子黒板２と通信し、インストール済みバージョン２００４を取得する。そして、直上の電子黒板２のインストール済みバージョン２００４と自機のインストール済みバージョン５００４を比較する。
【０２５８】
ステップＳ２１０の判定がＹｅｓの場合、直上の電子黒板２から設定情報を取得してよいので、電子黒板２の設定取得部１８０が設定情報の同期を行う（Ｓ２５０）。この詳細については後述される。
【０２５９】
設定情報を同期した場合、電子黒板２はシャットダウンする（Ｓ２６０）。シャットダウンにより、設定情報のうち再起動しないと有効にならない設定がある場合に該設定を有効にすることができる。
【０２６０】
ステップＳ１１０の判定がＮｏの場合、設定情報の同期の前にプログラムのバージョンを一致させる必要があるため、プログラム取得部１６５はプログラムのダウンロード処理のスレッドを実行する（Ｓ２２０）。
【０２６１】
まず、プログラム取得部１６５は直上の電子黒板２からプログラムファイルをダウンロードできるかどうかを判定する（Ｓ２３０）。判定内容として例えば以下の条件が挙げられる。
(i)直上の電子黒板２がプログラムファイル２００５を保持している。
(ii)直上の電子黒板２が同期設定を有効にしている。
(iii)直上の電子黒板２がプログラムの更新設定を有効にしている。
【０２６２】
(i)が条件となるのは直上の電子黒板２がプログラムファイル２００５を保持していないと直下の電子黒板２が取得できないためである。(ii)が条件となるのは直上の電子黒板２が設定情報を提供しないように設定されている場合は、プログラムファイル２００５を取得することができないためである。(iii)が条件となるのは直上の電子黒板２がプログラムファイル２００５を提供しないように設定されている場合は、プログラムファイル２００５を取得できないからである。なお、(ii)、(iii)の条件はなくてもよく、(i)の条件さえ満たせば、プログラム取得部１６５が直上の電子黒板２からプログラムファイルをダウンロードできると判定してよい。
【０２６３】
ステップＳ２３０の判定がＮｏの場合、プログラム取得部１６５は定期的にステップＳ１３０の判定を繰り返す。これにより、直上及び直下の電子黒板２の負荷を大きくすることなく、ダウンロードが可能になるとプログラムファイルをダウンロードできる。なお、定期的とは固定でなくてよいが、例えば数分〜１時間などの間隔である。また、正確な間隔で繰り返されなくてもよいし、不定期な間隔で繰り返されてもよい。
【０２６４】
ステップＳ２３０の判定がＹｅｓの場合、プログラム取得部１６５は直上の電子黒板２からプログラムファイル２００５をダウンロードする（Ｓ２４０）。ダウンロードしたプログラムファイル２００５は記憶部５０００にプログラムファイル５００５として記憶され、次回の起動時にインストールされる。
【０２６５】
以上のように、直上の電子黒板２のインストール済みバージョン２００４と自機のインストール済みバージョン５００４が同じ場合には、設定情報を同期できる。異なる場合には直上の電子黒板２からプログラムファイル５００５をダウンロードして直下の電子黒板２にインストールすることができる。これにより、直上と直下の電子黒板２にインストールされているプログラムのバージョンが同じになるので、設定情報を同期できる。
【０２６６】
<<インストーラーの実行>>
図２３は図２１のステップＳ８０において実行される、インストーラー５０１１の選択に関する手順を示すフローチャート図の一例である。
【０２６７】
電子黒板２のプログラムインストール部１６３はプログラムファイルが共通インストーラー５０１３を有するか否かを判定する（Ｓ８０−１）。
【０２６８】
ステップＳ８０−１の判定がＮｏの場合、プログラムインストール部１６３はインストーラー５０１１を実行すればよいので処理はステップＳ８０−４に進む。
【０２６９】
ステップＳ８０−１の判定がＹｅｓの場合、共通インストーラー５０１３が有するインストーラー５０１１のうちどのインストーラー５０１１を実行するか判定するため、プログラムインストール部１６３は機種情報５００６を記憶部５０００から読み出す（Ｓ８０−２）。
【０２７０】
そして、この機種情報５００６で記述された機種と同じインストーラー５０１１を選択する（Ｓ８０−３）。
【０２７１】
プログラムインストール部１６３は共通インストーラー５０１３又はステップＳ８０−３で選択されたインストーラー５０１１を実行する（Ｓ８０−４）。
【０２７２】
このようにプログラムファイルが共通インストーラー５０１３を有する場合、自機の機種に適合したインストーラー５０１１をインストールできる。
【０２７３】
<<ダイアログ>>
図２４は、システム設定画面６０１でチェックボックス６０８がＯＮの場合にディスプレイ３に表示されるダイアログ８０１の一例を示す図である。ダイアログ８０１は、「新しいプログラムを利用可能です。プログラムをアップデートしますか？」という記述８０２と、「アップデートする」ボタン８０３及び「アップデートしない」ボタン８０４が表示されている。
【０２７４】
ユーザが「アップデートする」ボタン８０３を押下すると、図２１のステップＳ３０でＹｅｓと判定され、電子黒板２はプログラムをバージョンアップする。「アップデートしない」ボタン８０４を押下すると、図２１のステップＳ３０でＮｏと判定され、電子黒板２はプログラムをバージョンアップしない。
【０２７５】
＜設定情報の同期手順＞
続いて、設定情報の同期手順を説明する。図２５は、画像処理システム１が設定情報を同期する手順を示すシーケンス図の一例である。なお、図２５では、子機層Ｃの任意の子機２ｃと孫機層Ｇの任意の孫機２ｇの処理を説明する。
【０２７６】
S1：上記のように設定管理者が設定情報画面を操作して設定情報を親機２ｐに設定する。
【０２７７】
S2：親機２ｐの設定受付部１５２は設定情報を受け付けて、本体動作用の設定情報として設定情報記憶部２００１に記憶させる。また、設定情報設定日時を更新する。
【０２７８】
S3：親機２ｐのＭＤ作成部１５３は本体動作用の設定情報からメッセージダイジェスト（ハッシュ値）を作成し、ＭＤ記憶部２００３に記憶させる。これにより、親機２ｐが子機２ｃにメッセージダイジェスト（ハッシュ値）を送信できる。
【０２７９】
S4：子機２ｃの設定要求部１８３は、例えば電子黒板２が再起動したため設定情報を同期するタイミングであることを検出すると、通信情報記憶部５００２に記憶されているＩＰアドレスの親機２ｐと通信しパスコードを親機２ｐに送信してログインする。ログインできた場合、設定要求部１８３はハッシュ値を要求する。
【０２８０】
なお、親機２ｐと子機２ｃの電子黒板２は互いに整合性がとれた同期手順で動作する必要がある。このような同期手順をプロトコルと称することにする。プロトコルにはバージョンが定められており、子機２ｃは親機２ｐと同じバージョンのプロトコルで同期処理することが好ましい。以上から、プロトコルのバージョン及びパスコードが一致している場合に子機２ｃにハッシュ値が送信される。ステップＳ４の処理では、プロトコルのバージョン及びパスコードが一致したものとする。
【０２８１】
また、当然ながら、親機２ｐの電源がＯＦＦであったり、親機２ｐに何らかの不具合が生じていたりする場合、子機２ｃはハッシュ値を取得できない。これらのため、親機２ｐから設定情報を取得できない場合、子機２ｃの設定要求部１８３はエラーを記録する。詳細は図２６にて説明する。
【０２８２】
S5：親機２ｐの通信部１５１はＭＤ記憶部２００３に記憶されているメッセージダイジェスト（ハッシュ値）を子機２ｃに送信する。
【０２８３】
S6：子機２ｃの設定要求部１８３はメッセージダイジェスト（ハッシュ値）を受信し、ＭＤ比較部１８４が親機２ｐのハッシュ値とＭＤ記憶部５００３に記憶されているハッシュ値と比較する。ハッシュ値を比較することで設定情報の全体を比較するよりも通信負荷を低減できる。ここでは２つのハッシュ値が一致しないものとして説明する。一致しないことは親機２ｐの本体動作用の設定情報が更新されていること（子機２ｃの設定情報よりも新しいこと）を示す。ハッシュ値でなく例えば、設定情報のシリアル番号を比較してもよい。この場合、親機２ｐ又は設定管理者が設定情報にシリアル番号を付与しておき、子機２ｃは設定情報の同期の際、シリアル番号も同期しておく。シリアル番号が一致しない場合、子機２ｃは親機２ｐの設定情報が更新されていると判定できる。あるいは、ハッシュ値でなく設定情報そのものを比較してもよい。この場合、設定情報が異なっていれば子機２ｃはそのまま更新できる。
【０２８４】
なお、親機２ｐが子機２ｃのハッシュ値を取得して親機２ｐが比較してもよい。この場合、親機２ｐの負荷が増大するがハッシュ値の比較がそれほど大きな負荷をもたらすものでない場合、親機２ｐが比較することも可能である。
【０２８５】
S7：ハッシュ値が一致しない場合、子機２ｃの情報取得部１８６は親機２ｐに対し設定情報を要求する。ハッシュ値が一致しなければ設定情報を要求しないので、親機２ｐと子機２ｃの負荷が増大することを抑制できる。
【０２８６】
S8：親機２ｐの通信部１５１は、設定情報記憶部２００１から読み出された本体動作用の設定情報を子機２ｃに送信する。
【０２８７】
S9：子機２ｃの通信部１８１は設定情報を受信し、情報取得部１８６は親機２ｐから取得した設定情報を設定情報記憶部５００１の本体動作用の設定情報として記憶させる。また、設定情報設定日時を更新する。
【０２８８】
S10：子機２ｃのＭＤ作成部１８７は設定情報からメッセージダイジェスト（ハッシュ値）を作成し、ＭＤ記憶部５００３に記憶させる。これにより、子機２ｃが孫機２ｇにメッセージダイジェスト（ハッシュ値）を送信できる。
【０２８９】
以上のような処理により、親機２ｐと子機２ｃの設定情報が同期される。次に、孫機２ｇの設定要求部１８３が設定情報を同期するタイミングであることを検出すると、ステップＳ１１〜Ｓ１７に示すように孫機２ｇが子機２ｃと同じ処理を実行する。
【０２９０】
このように、直下の電子黒板２は自分の設定情報を更新するという処理を行えばよく、直上の電子黒板２が直下の複数の電子黒板２に設定情報を設定するよりも電子黒板２の負荷を低減できる。
【０２９１】
なお、孫機２ｇが設定情報を取得するタイミングは子機２ｃよりも１サイクル遅れることになる。これは、孫機２ｇが起動した時、子機２ｃは設定情報を同期している途中であるためハッシュ値が一致し、孫機２ｇは同期の必要がないと判定するためである。したがって、例えば、同期のタイミングが１日に１回（電子黒板２の再起動が１日に１回）であるとすると、孫機２ｇが設定情報を取得するタイミングは子機２ｃよりも１日遅れる。しかし、このようにタイミングが遅れて同期するので、各電子黒板２は自機の同期と直下の電子黒板２への設定情報の送信を同じタイミングで行う必要がない。よって、負荷が高くなることを抑制しやすい。このような遅れに不都合がある場合、自動的な再起動の回数を１日に複数回に設定管理者が設定しておくこと、ユーザや設定管理者が手動で再起動することなどが考えられる。
【０２９２】
<<子機の動作手順>>
図２６は、直下の電子黒板２が設定情報を更新する手順を示すフローチャート図の一例である。図２６は主に図２５のステップＳ４の処理を説明する。
【０２９３】
上記のように子機２ｃの設定要求部１８３は親機２ｐに対しハッシュ値を要求する（Ｓ１０）。この要求に対し、親機２ｐの通信部１５１はハッシュ値又はエラーの内容に応じたエラーコードを子機２ｃに送信する。したがって、子機２ｃはハッシュ値又はエラーコードを取得できる。
【０２９４】
子機２ｃの設定要求部１８３はハッシュ値を取得できたか否かを判定する（Ｓ２０）。ハッシュ値を取得できた場合（Ｓ２０のＹｅｓ）、上記のように子機２ｃの情報取得部１８６が設定情報を取得する（Ｓ３０）。
【０２９５】
ハッシュ値を取得できない場合（Ｓ２０のＮｏ）、子機２ｃの設定要求部１８３はエラーコードを記憶部５０００に記録する（Ｓ４０）。エラーコードには以下のような種類がある。
・４００…プロトコルのバージョンが一致していない
・４０１…パスコードが一致していない
また、子機２ｃの設定要求部１８３は親機２ｐが応答しない場合（電源オフなどのため）、応答なしを意味する４０２のエラーコードを記録する。これにより、エラーコード表示部１８８がエラーコードを電子黒板２のディスプレイ３又は設定管理者ＰＣ５００に表示させることができる。
【０２９６】
＜エラーコードの表示＞
図２７（ａ）は、設定管理者ＰＣ５００のディスプレイに表示される設定情報設定画面５０１の一例を示す図である。なお、図２７（ａ）では図１８（ａ）との相違点を主に説明する。エラーコード表示部１８８は設定情報記憶部５００１に記憶されている設定情報設定日時５０６と同期状況５０７を、設定情報設定画面５０１に表示する。同期状況にエラーと表示されるため、設定管理者は同期できなかったことを把握できる。また、エラーコード（エラーの内容）が表示されるので同期できなかった理由も把握できる。
【０２９７】
図２７（ｂ）は、電子黒板２のディスプレイ３に表示されるエラーコードの一例を示す図である。電子黒板２のディスプレイ３には、手書きや消しゴムなどのツールアイコン欄５１１、ページの切り替えなどを行うためのページツール欄５１２などが表示される。これらと共に、電子黒板２のエラーコード表示部１８８はディスプレイ３の例えば右上などに設定情報記憶部５００１に記憶されている設定情報設定日時５０６と同期状況５０７を表示する。
【０２９８】
表示するタイミングとしては、電子黒板２の起動直後の数秒程度とすることで、ユーザが電子黒板２を使用することを阻害しにくい。ユーザはエラーコードが表示されたことを設定管理者に知らせるので、設定管理者が同期できなかったことや同期できない理由を調査できる。
【０２９９】
以上説明したように、本実施例の画像処理システム１は、直下の電子黒板２が直上の電子黒板２と設定情報を同期することを繰り返すことで、全ての電子黒板２の設定情報を同期させることができる。
【０３００】
なお、設定管理者は木構造の頂点の電子黒板２に設定情報を設定する他、親機２ｐによりも相対的に下位の電子黒板２に設定情報を設定してよい。この場合、設定管理者が設定情報を設定した電子黒板２よりも下位の電子黒板２が設定情報を同期できる。また、親機２ｐの階層に２台以上の親機２ｐが存在してもよい。この場合、設定管理者は２台の親機２ｐにそれぞれ設定情報を設定する。
【０３０１】
＜共通インストーラーの推奨＞
共通インストーラー５０１３がネットワーク構造の全ての電子黒板２の機種に対応している場合、親機２ｐが共通インストーラー５０１３を有することで相対的に下位の全ての電子黒板２がバージョンアップできる。
【０３０２】
例えば、図２８のような状況を考える。図２８は親機２ｐ、子機２ｃ、孫機２ｇの機種の一例を示す。親機２ｐと子機２ｃは機種Ａであるが、孫機２ｇの機種は機種Ｂである。したがって、親機２ｐと子機２ｃは機種Ａ用のインストーラー５０１１でプログラムをバージョンアップできるが、孫機２ｇはいつまでもプログラムをバージョンアップできない。この場合、孫機２ｇはメッセージを表示するが、更に親機にも共通インストーラー５０１３をインストールすべき旨が表示されれば、孫機２ｇがプログラムをバージョンアップできないことに対し管理者が親機を見るだけで対処できる。そこで、親機２ｐ、子機２ｃ及び孫機２ｇは以下のように動作する。
【０３０３】
図２９は、親機２ｐが共通インストーラー５０１３を要求する旨を表示するまでの手順を示すフローチャート図の一例である。
【０３０４】
まず、孫機２ｇの機種判定部１６６がインストーラー５０１１を実行できないと判定する（Ｓ１０）。この処理については図２１のステップＳ３０で説明した。
【０３０５】
このステップＳ１０でＮｏと判定されるのは、共通インストーラー５０１３がプログラムファイルに含まれない場合なので、機種判定部１６６は共通インストーラー５０１３を要求する旨を直上の子機に通知する（Ｓ２０）。
【０３０６】
子機２ｃの通信部１８１は親機２ｐに対し共通インストーラー５０１３を要求する旨を直上の子機に通知する（Ｓ３０）。
【０３０７】
親機２ｐの通信部１８１は共通インストーラー５０１３を要求する旨を受信し、親機２ｐはディスプレイ３に共通インストーラー５０１３を要求する旨を表示する（Ｓ４０）。親機２ｐは例えば、「ネットワーク構造にプログラムをバージョンアップできない電子黒板があります。共通インストーラー５０１３を設定してください。」などのメッセージを表示する。したがって、ネットワーク構造に一台でもプログラムをバージョンアップできない電子黒板２が存在すれば親機２ｐが共通インストーラー５０１３の設定を促進するメッセージを表示できる。
【０３０８】
＜その他の適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０３０９】
本実施形態では、電子黒板２の設定情報を例にして同期処理を説明したが、電子黒板２以外の装置が設定情報を更新してもよい。例えば、プロジェクター、画像形成装置（複写機、プリンター、スキャナ装置、ＭＦＰ（Multi-Function Peripherals））、テレビ会議端末などにも適用できる。
【０３１０】
また、本実施形態では同期される設定情報の一例を説明したが、設定情報は上記した情報に限られない。例えば、電子黒板２と接続されているプリンターで印刷する場合の印刷設定（印刷認証の有無、パスワード、暗号化の有無）、地域と言語の設定、登録データの管理に関する設定（電子黒板２が有する情報の読み出しと書き出しの制限に関する設定）、カラープロファイルの設定、及び、電子黒板２のユーザのユーザ情報（ユーザ名、メールアドレスなど電子黒板２がメールを送信する際の宛先）等が設定情報に含まれてよい。また、電子黒板２以外の装置が同期する場合は、装置に特有の情報を同期してよい。
【０３１１】
また、図１６，１７などの構成例は、電子黒板２による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。電子黒板２の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、１つの処理単位が更に多くの処理を含むように分割することもできる。
【０３１２】
また、図１６，１７の記憶部２０００、５０００に図示される各記憶部の１つ以上はネットワーク上に存在していてもよい。
【０３１３】
なお、プログラム取得部１６５は取得手段の一例であり、機種判定部１６６は第一の判定手段の一例であり、プログラムインストール部１６３は導入手段の一例であり、直上バージョン判定部１６４は第二の判定手段の一例であり、情報取得部１８６は設定情報取得手段の一例であり、記憶部２０００は記憶手段の一例であり、バージョン確認部１６２は第三の判定手段の一例であり、親機２ｐは他の電子黒板の一例であり、孫機２ｇは第二の電子黒板の一例である。通信情報記憶部５００２は通信情報記憶手段の一例であり、ストローク画像は可視情報の一例であり、ディスプレイ３は表示装置の一例である。
【符号の説明】
【０３１４】
１      画像処理システム
２      電子黒板
３      ディスプレイ
４      電子ペン
２０    クライアント部
９０    サーバ部
１５０  設定提供部
１６０  プログラム管理部
１６１  バージョン確認部
１６２  プログラムインストール部
１６３  直上バージョン判定部
１６４  プログラム取得部
１７２  プログラム提供部
１８０  設定取得部
【先行技術文献】
【特許文献】
【０３１５】
【特許文献１】特許第４９４２６８６号公報
【図１】
0006658157.tif 000017
【図２】
0006658157.tif 000018
【図３】
0006658157.tif 000019
【図４】
0006658157.tif 000020
【図５】
0006658157.tif 000021
【図６】
0006658157.tif 000022
【図７】
0006658157.tif 000023
【図８】
0006658157.tif 000024
【図９】
0006658157.tif 000025
【図１０】
0006658157.tif 000026
【図１１】
0006658157.tif 000027
【図１２】
0006658157.tif 000028
【図１３】
0006658157.tif 000029
【図１４】
0006658157.tif 000030
【図１５】
0006658157.tif 000031
【図１６】
0006658157.tif 000032
【図１７】
0006658157.tif 000033
【図１８】
0006658157.tif 000034
【図１９】
0006658157.tif 000035
【図２０】
0006658157.tif 000036
【図２１】
0006658157.tif 000037
【図２２】
0006658157.tif 000038
【図２３】
0006658157.tif 000039
【図２４】
0006658157.tif 000040
【図２５】
0006658157.tif 000041
【図２６】
0006658157.tif 000042
【図２７】
0006658157.tif 000043
【図２８】
0006658157.tif 000044
【図２９】
0006658157.tif 000045