(57)【要約】【課題】端末への特別なプログラムのインストールを伴わずに、複数の端末間での画面共有を実現する。【解決手段】統合画面生成部３１００が共有画面３１１０に各スクリプト３１１１〜３１１３を組み込み、各スクリプトが組み込まれた共有画面３１１０を端末Ａ１０００及び端末Ｂ２０００に送信し、各端末では、イベント制御スクリプト１１１１、２１１１が端末での操作内容を取得しイベント送信スクリプト１１１２、２１１２がリクエスト管理部３２００に送信し、画面更新通知部３３００が一方の端末の操作内容を他方の端末のイベント受信スクリプト１１１３、２１１３に送信し、当該他方の端末では、イベント制御スクリプトが共有画面に受信した操作内容を反映させて、２つの端末において共有画面の表示が全く同じになり共有された状態になる。【選択図】図１
2010152772.tif 000002
【特許請求の範囲】
【請求項１】
画面情報を表示する複数の端末装置に接続された情報処理装置であって、
前記複数の端末装置のうち画面情報を共有する関係にある２以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理部と、
前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信部と、
前記共有制御受信部により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信部とを有することを特徴とする情報処理装置。
【請求項２】
前記共有画面情報管理部は、
前記共有制御送信部から受信手段に対して送信された他の共有端末装置における操作内容を、共有端末装置において表示されている共有画面情報に反映させる制御手段を共有画面情報に組み込むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記共有画面情報管理部は、
他の共有端末装置における共有画面情報の画面状態を通知するよう要求する通知要求を生成するとともに、他の共有端末装置で生成された通知要求に応答して、動作している共有端末装置における共有画面情報の画面状態を取得する制御手段を共有画面情報に組み込み、
前記共有制御受信部は、
前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が生成し送信手段が送信した通知要求を受信し、前記共有制御送信部により通知要求が送信された共有端末装置で動作している制御手段が取得し送信手段が送信した当該共有端末装置における共有画面情報の画面状態を受信し、
前記共有制御送信部は、
前記共有制御受信部により受信された通知要求を通知要求の送信元以外の他の共有端末装置の受信手段に対して送信し、前記共有制御受信部により受信された共有画面情報の画面状態を通知要求の送信元の共有端末装置の受信手段に対して送信することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記共有画面情報管理部は、
１つの第１共有端末装置が２以上の共有画面情報を２以上の第２共有端末装置と共有する関係にある場合に、前記２以上の共有画面情報を統合して統合共有画面情報とし、統合共有画面情報に制御手段と受信手段と送信手段とを組み込んで組み込み統合共有画面情報とし、組み込み統合共有画面情報を前記第１共有端末装置に送信することを特徴とする請求項１〜３のいずれかに記載の情報処理装置。
【請求項５】
前記共有画面情報管理部は、
第２共有端末装置に対しては、対象となる共有画面情報に制御手段と受信手段と送信手段とを組み込んで組み込み共有情報とし、組み込み共有情報を送信することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記共有制御受信部は、
前記第１共有端末装置で動作している制御手段が取得し送信手段が送信した、前記第１共有端末装置で行われた操作内容を受信し、
前記共有制御送信部は、
前記共有制御受信部により受信された操作内容が前記２以上の共有画面情報のいずれの共有画面情報に対する操作内容であるかを判定し、判定した共有画面情報に対応する第２共有端末装置に対して、前記共有制御受信部により受信された操作内容を送信することを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記共有画面情報管理部は、
第２共有端末装置における共有画面情報の画面状態を通知するよう要求する通知要求を生成する制御手段を統合共有画面情報に組み込み、
第１共有端末装置からの通知要求に応答して、第２共有端末装置における共有画面情報の画面状態を取得する制御手段を共有情報に組み込み、
前記共有制御受信部は、
前記第１共有端末装置で動作している制御手段が生成し送信手段が送信した通知要求を受信し、前記共有制御送信部により通知要求が送信された各々の第２共有端末装置で動作している制御手段が取得し送信手段が送信した、各々の第２共有端末装置における共有画面情報の画面状態を受信し、
前記共有制御送信部は、
前記共有制御受信部により受信された通知要求を各々の第２共有端末装置の受信手段に対して送信し、前記共有制御受信部により受信された各々の第２共有端末装置における共有画面情報の画面状態を前記第１共有端末装置の受信手段に対して送信することを特徴とする請求項５に記載の情報処理装置。
【請求項８】
前記共有制御送信部は、
前記第１共有端末装置の受信手段に対して、統合共有画面情報に含まれるいずれかの共有画面情報を削除するよう指示する削除指示を送信することを特徴とする請求項４〜７のいずれかに記載の情報処理装置。
【請求項９】
前記共有制御送信部は、
組み込み共有画面情報を受信済みの共有端末装置の受信手段に対して、新たな共有画面情報を送信するとともに、当該新たな共有画面情報を受信済みの組み込み共有画面情報に追加するよう指示する追加指示を送信することを特徴とする請求項１〜８のいずれかに記載の情報処理装置。
【請求項１０】
前記情報処理装置は、
リクエストに対して応答を返信するサーバ装置に接続され、
前記共有制御受信部は、
いずれかの共有端末装置の制御手段が生成し送信手段が送信した、前記サーバ装置へのリクエストを受信し、前記サーバ装置に前記リクエストを送信するとともに、前記リクエストに対する応答を前記サーバ装置から受信し、
前記共有制御送信部は、
各々の共有端末装置の受信手段に対して、前記共有制御受信部が受信した前記サーバ装置からの応答を送信することを特徴とする請求項１〜９のいずれかに記載の情報処理装置。
【請求項１１】
前記情報処理装置は、
各々がスクリプトを実行可能な複数の端末装置に接続され、
前記共有画面情報管理部は、
共有端末装置で行われた操作内容を取得する制御スクリプトと、受信処理を行う受信スクリプトと、送信処理を行う送信スクリプトとを共有画面情報に組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信することを特徴とする請求項１〜１０のいずれかに記載の情報処理装置。
【請求項１２】
画面情報を表示する複数の端末装置に接続されたコンピュータが行う情報処理方法であって、
前記コンピュータが、前記複数の端末装置のうち画面情報を共有する関係にある２以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理ステップと、
前記共有画面情報管理ステップにより組み込み共有画面情報が送信された後に、前記コンピュータが、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信ステップと、
前記コンピュータが、前記共有制御受信ステップにより受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信ステップとを有することを特徴とする情報処理方法。
【請求項１３】
画面情報を表示する複数の端末装置に接続されたコンピュータに、
前記複数の端末装置のうち画面情報を共有する関係にある２以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理処理と、
前記共有画面情報管理処理により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信処理と、
前記共有制御受信処理により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の端末装置において同一の画面情報を共有させる技術に関し、特に、複数の端末装置において同一のＷｅｂ画面情報を共有させる技術に関する。
【背景技術】
【０００２】
従来の複数のＷｅｂ画面を統合する手段は、統合用サーバにおいて統合するＷｅｂ画面のＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）内に記述された相対ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を絶対ＵＲＬに書き換え、あらかじめ用意しておいた画面テンプレートにそれぞれのＷｅｂ画面をはめ込むことによって、複数のＷｅｂ画面を統合している（例えば、特許文献１）。
【０００３】
また、画面の共有の手段は、端末上でＷｅｂブラウザと画面同期用プログラムを連携させ、画面共有用サーバが同期情報を中継することによって、端末間でＷｅｂブラウザの画面表示状態を共有している（例えば、特許文献２、特許文献３）。
【特許文献１】特開２００４−２８７７５８号公報
【特許文献２】特開２００３−４４４２９号公報
【特許文献３】特開２００４−７０５１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のＷｅｂ画面統合技術は、あらかじめ用意しておいた画面テンプレートにＷｅｂ画面をはめ込むため、統合画面をＷｅｂブラウザで閲覧中に統合状態を動的に変えることができないという課題がある。
また、統合用サーバ上でＵＲＬの書き換えを行うため、サーバ負荷が大きいという課題がある。
【０００５】
また、従来のＷｅｂ画面共有技術は、クライアント端末に画面同期用プログラムを必要とするため、画面同期用プログラムのインストール作業が必要になるという課題がある。
また、画面共有用サーバが同期情報を中継する宛先として複数端末に対応できる情報を管理していないため、ｎ端末対ｎ端末での画面共有はできないという課題がある。
【０００６】
この発明は、上記のような課題を解決することを主な目的の一つとし、複数の共有画面を動的に統合し、端末への特別なプログラムのインストールを必要とせずに、ｎ端末対ｎ端末で画面を共有することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、
画面情報を表示する複数の端末装置に接続された情報処理装置であって、
前記複数の端末装置のうち画面情報を共有する関係にある２以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理部と、
前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信部と、
前記共有制御受信部により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、情報処理装置が、共有画面情報に制御手段、受信手段、送信手段が組み込まれた組み込み共有画面情報を共有端末装置に送信し、また、共有端末装置で動作している制御手段により取得された操作内容を受信し、他方の共有端末装置に送信するため、各端末装置に画面同期用プログラムをインストールすることなく端末装置間で画面を共有することができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１は、本実施の形態に係る複数端末間における１種類のＷｅｂ画面を共有する方式を示すシステム構成図である。
【００１０】
図１において、端末装置Ａ１０００、端末装置Ｂ２０００はＷｅｂブラウザが実行できる端末である。また、端末装置Ａ１０００、端末装置Ｂ２０００はＷｅｂブラウザ上でスクリプトを実行することができる。
なお、端末装置Ａ１０００、端末装置Ｂ２０００は、それぞれ、端末Ａ１０００、端末Ｂ２０００とも表記する。
Ｗｅｂ画面共有・統合サーバ３０００は、各端末へ共有画面を提供するＷｅｂアプリケーションサーバである。
Ｗｅｂ画面共有・統合サーバ３０００は、情報処理装置の例である。
【００１１】
端末Ａ１０００において、Ｗｅｂブラウザ１１００は、Ｗｅｂ画面を閲覧できるブラウザである。
共有画面１１１０は、Ｗｅｂ画面共有・統合サーバ３０００から読み込まれるＷｅｂ画面である。
イベント制御スクリプト１１１１は、共有画面１１１０上でのユーザの操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト１１１２は、発生したイベントの情報をＷｅｂ画面共有・統合サーバ３０００へ送信するスクリプトである。
イベント受信スクリプト１１１３は、Ｗｅｂ画面共有・統合サーバ３０００から他端末で発生したイベントの情報を受信するスクリプトである。
【００１２】
端末Ｂ２０００においても、端末Ａ１０００と同様に、Ｗｅｂブラウザ２１００はＷｅｂ画面を閲覧できるブラウザである。
共有画面２１１０は、Ｗｅｂ画面共有・統合サーバ３０００から読み込まれるＷｅｂ画面である。
イベント制御スクリプト２１１１は、共有画面２１１０上でのユーザの操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト２１１２は、発生したイベントの情報をＷｅｂ画面共有・統合サーバ３０００へ送信するスクリプトである。
イベント受信スクリプト２１１３は、Ｗｅｂ画面共有・統合サーバ３０００から他端末で発生したイベントの情報を受信するスクリプトである。
【００１３】
なお、後述するように、イベント制御スクリプト１１１１、イベント送信スクリプト１１１２及びイベント受信スクリプト１１１３は共有画面１１１０に組み込まれて、Ｗｅｂ画面共有・統合サーバ３０００から端末Ａ１０００に送信される。
同様に、イベント制御スクリプト２１１１、イベント送信スクリプト２１１２及びイベント受信スクリプト２１１３は共有画面２１１０に組み込まれて、Ｗｅｂ画面共有・統合サーバ３０００から端末Ｂ２０００に送信される。
【００１４】
Ｗｅｂ画面共有・統合サーバ３０００において、統合画面生成部３１００は、Ｗｅｂブラウザ１１００、Ｗｅｂブラウザ２１００間で共有される画面を共有画面３１１０、イベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３から生成する機能である。
共有画面３１１０は、端末Ａ１０００及び端末Ｂ２０００の間で共有する画面ＨＴＭＬもしくはＷｅｂアプリケーションである。
共有画面３１１０、イベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３は端末Ａ１０００、端末Ｂ２０００と同様である。
具体的には、イベント制御スクリプト３１１１は、ユーザのＷｅｂ画面操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト３１１２は、発生したイベントの情報をＷｅｂ画面共有・統合サーバ３０００へ送信するスクリプトである。
イベント受信スクリプト３１１３は、Ｗｅｂ画面共有・統合サーバ３０００から他端末で発生したイベントの情報を受信するスクリプトである。
リクエスト管理部３２００は、各端末のイベント送信スクリプトから送信されるイベント情報を受信し画面更新通知部３３００へ通知する機能である。
画面更新通知部３３００は、リクエスト管理部３２００から受け取ったイベント情報を各端末のイベント受信スクリプトへ送信する機能である。
【００１５】
換言すると、イベント制御スクリプト３１１１は、複数の端末装置のうち画面情報を共有する関係にある２以上の共有端末装置（図１では、端末Ａ１０００及び端末Ｂ２０００）の各々で動作し各々の共有端末装置で行われた操作内容を取得する手段である。また、イベント制御スクリプト３１１１は、ある共有端末装置で動作した際に他の共有端末装置における操作内容を、当該共有端末装置において表示されている共有画面に反映させる手段である。なお、イベント制御スクリプト３１１１は、制御手段の例である。
また、イベント送信スクリプト３１１２は、共有端末装置で動作し送信処理を行う手段であり、
送信手段の例である。
また、イベント受信スクリプト３１１３は、共有端末装置で動作し受信処理を行う手段であり、受信手段の例である。
そして、統合画面生成部３１００は、共有端末装置で共有される共有画面３１１０（共有画面情報）にイベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３を組み込み、これらスクリプトが組み込まれた共有画面３１１０（組み込み共有画面情報）を各々の共有端末装置に対して送信する。
端末Ａ１０００に送信された後の共有画面３１１０、イベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３を、共有画面１１１０、イベント制御スクリプト１１１１、イベント送信スクリプト１１１２、イベント受信スクリプト１１１３と表記し、端末Ｂ２０００に送信された後の共有画面３１１０、イベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３を、共有画面２１１０、イベント制御スクリプト２１１１、イベント送信スクリプト２１１２、イベント受信スクリプト２１１３と表記している。
なお、統合画面生成部３１００は、共有画面情報管理部の例である。
リクエスト管理部３２００は、統合画面生成部３１００によりスクリプトが組み込まれた共有画面３１１０が送信された後に、いずれかの共有端末装置で動作しているイベント制御スクリプト１１１（又はイベント制御スクリプト２１１１）が取得しイベント送信スクリプト１１１２（又はイベント送信スクリプト１１１２）が送信した、当該共有端末装置で行われた操作内容を受信する。
リクエスト管理部３２００は、共有制御受信部の例である。
画面更新通知部３３００は、リクエスト管理部３２００により受信された操作内容を、他の共有端末装置のイベント受信スクリプト２１１３（又はイベント受信スクリプト１１１３）に対して送信する。
画面更新通知部３３００は、共有制御送信部の例である。
【００１６】
ここで、図１の構成に基づいて、本実施の形態に係る動作の概要を説明する。
【００１７】
端末Ａ１０００又は端末Ｂ２０００からの要求に基づき、Ｗｅｂ画面共有・統合サーバ３０００の統合画面生成部３１００が共有画面３１１０にイベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３を組み込む。
そして、これらスクリプトが組み込まれた共有画面３１１０を統合画面生成部３１００が端末Ａ１０００及び端末Ｂ２０００に送信する。
各端末１０００、２０００では、各スクリプトを実行可能であり、イベント制御スクリプト１１１１、イベント制御スクリプト２１１１が端末Ａ１０００、端末Ｂ２０００での操作内容を取得し、イベント送信スクリプト１１１２、イベント送信スクリプト２１１２が操作内容をリクエスト管理部３２００に送信する。
そして、Ｗｅｂ画面共有・統合サーバ３０００では、画面更新通知部３３００がリクエスト管理部３２００から一方の端末の操作内容を取得し、一方の端末の操作内容を他方の端末のイベント受信スクリプト１１１３、イベント受信スクリプト２１１３に送信する。
当該他方の端末では、イベント制御スクリプト１１１１、イベント制御スクリプト２１１１が、受信した操作内容を共有画面に反映させて、２つの端末において共有画面の表示が全く同じになり共有された状態になる。
【００１８】
また、各端末において、イベント制御スクリプト１１１１、イベント制御スクリプト２１１１は、他方の端末における共有画面の画面状態を通知するように要求する画面更新問合せ（通知要求）をリクエスト管理部３２００に送信する。
そして、Ｗｅｂ画面共有・統合サーバ３０００では、画面更新通知部３３００がリクエスト管理部３２００から画面更新問合せを取得し、他方の端末のイベント受信スクリプト１１１３、イベント受信スクリプト２１１３に更新画面問合せを転送する。
他方の端末（更新画面問合せの転送先の端末）では、イベント制御スクリプト１１１１、イベント制御スクリプト２１１１が共有画面の画面状態を取得し、イベント送信スクリプト１１１２、イベント送信スクリプト２１１２が共有画面の画面状態をリクエスト管理部３２００に送信する。
そして、Ｗｅｂ画面共有・統合サーバ３０００において、画面更新通知部３３００がリクエスト管理部３２００から共有画面の画面状態を取得し、他方の端末における共有画面の画面状態を一方の端末（更新画面問合せの送信元の端末）のイベント受信スクリプト１１１３、イベント受信スクリプト２１１３に送信する。
当該一方の端末では、イベント制御スクリプト１１１１、イベント制御スクリプト２１１１が、受信した共有画面の画面状態を共有画面に反映させて、２つの端末において共有画面の表示が全く同じになり共有された状態になる。
【００１９】
次に、フローチャートを用いて各機能の動作を詳細に説明し、また、各機能を組み合わせた全体の動作の詳細はシーケンス図を用いて説明する。
【００２０】
図２は、端末Ａ１０００と端末Ｂ２０００における処理フローチャートである。
各端末では初期処理として、図２（ａ）に示すように、Ｗｅｂブラウザを起動し（Ｆ００００）、画面読み込みを行う（Ｆ０００１）。
また、画面共有中は、図２（ｂ）に示すように、端末上ではＷｅｂブラウザをユーザが操作する処理がある（Ｆ０００２）。
【００２１】
図３は、Ｗｅｂブラウザ１１００とＷｅｂブラウザ２１００における処理フローチャートである。
各Ｗｅｂブラウザでは、図３（ａ）に示すように、初期処理として共有画面の読み込みを行い（Ｆ０１００）、共有画面を表示する（Ｆ０１０１）。
また、画面共有中は、図３（ｂ）に示すように、Ｗｅｂブラウザ上では画面クリックや文字入力などのユーザ操作が実行されると（Ｆ０１０２）、共有画面内に組み込まれたイベント制御スクリプトによって画面が更新される（Ｆ０１０３）。
【００２２】
図４及び図５はイベント制御スクリプト１１１１とイベント制御スクリプト２１１１における処理フローチャートである。
各イベント制御スクリプトでは、初期処理として、図４（ａ）に示すように、イベント受信スクリプトの初期化（Ｆ０２００）、イベント送信スクリプトの初期化（Ｆ０２０１）の順で初期化を行い、最後に画面上のユーザ操作をイベントとしてインターセプトすることをＷｅｂブラウザへ通知する（Ｆ０２０２）。
また、画面共有中は、図４（ｂ）に示すように、共有画面上で画面クリックや文字入力などのユーザ操作が発生すると、そのユーザ操作の種類と発生した場所の情報をイベント情報として取得し（Ｆ０２０３）、イベント情報をイベント送信スクリプトへ渡す（Ｆ０２０４）。
イベント受信スクリプトから呼び出しがあった場合は、図５に示すように、イベント受信スクリプトから受け取った情報に含まれるイベントの種類によって処理が分かれる（Ｆ０２０５）。
イベントの種類が画面更新問い合わせの場合、画面スクロール量、文字列入力状態などの現時点の画面表示情報を取得し（Ｆ０２０６）、取得した画面表示情報をイベント送信スクリプトへ渡す（Ｆ０２０７）。
イベントの種類が画面更新問い合わせの返信の場合、イベント受信スクリプトより受け取った画面表示情報を共有画面上に反映させる（Ｆ０２０８）。
イベントの種類がＷｅｂブラウザのユーザ操作イベントの場合、イベント受信スクリプトより受け取ったイベント情報から、全く同様のイベントを共有画面上に発生させる（Ｆ０２０９）。
【００２３】
図６は、イベント送信スクリプト１１１２とイベント送信スクリプト２１１２における処理フローチャートである。
各イベント送信スクリプトでは初期処理として、図６（ａ）に示すように、画面更新問い合わせをリクエスト管理部へ送る（Ｆ０３００）。
また、画面共有中は、図６（ｂ）に示すように、イベント制御スクリプトからの呼び出しにより、イベント制御スクリプトから受け取った情報をリクエスト管理部へ送信する（Ｆ０３０１）。
【００２４】
図７は、イベント受信スクリプト１１１３とイベント受信スクリプト２１１３における処理フローチャートである。
各イベント受信スクリプトでは、初期処理として、図７（ａ）に示すように、受信接続通知を画面更新通知部へ送る（Ｆ０４００）。
また、画面共有中は、図７（ｂ）に示すように、画面更新通知部３３００からの呼び出しにより、画面更新通知部３３００から受け取った情報をイベント制御スクリプトへ送る（Ｆ０４０１）。
【００２５】
図８は、統合画面生成部３１００における処理フローチャートである。
統合画面生成部３１００では、Ｗｅｂブラウザから画面取得処理を受け取ると、共有画面のＨＴＭＬにイベント制御スクリプト、イベント送信スクリプト、イベント受信スクリプトを埋め込み（Ｆ０５００）、各スクリプトが埋め込まれた画面を共有画面としてＷｅｂブラウザへ返す（Ｆ０５０１）。
【００２６】
図９は、リクエスト管理部３２００における処理フローチャートである。
リクエスト管理部３２００ではイベント送信スクリプトからの呼び出しを受けると、イベント送信スクリプトからの情報を画面更新通知部３３００へ転送する（Ｆ０６００）。
【００２７】
図１０は、画面更新通知部３３００における処理フローチャートである。
画面更新通知部３３００では、図１０（ａ）に示すように、イベント受信スクリプトからの呼び出し（受信接続通知）があると、情報配信先として端末の受信接続を保持する（Ｆ０７００）。
また、図１０（ｂ）に示すように、リクエスト管理部３２００からの呼び出しがあると、リクエスト管理部３２００が得た情報の情報源となる端末以外から受信接続通知があるかどうかで処理が分かれる（Ｆ０７０１）。
情報源となる端末以外からの受信接続通知がある場合、イベント情報の配信か否かでさらに処理が分かれる（Ｆ０７０２）。
イベント情報の配信の場合、リクエスト管理部からの情報を全受信接続先へ送信する（Ｆ０７０３）。
イベント情報の配信でない場合、リクエスト管理部からの情報を情報源以外のランダムに選んだ一つの受信接続先へ送信する（Ｆ０７０４）。
情報源となる端末以外からの受信接続通知が無い場合、何もしない。
【００２８】
次に、各機能を組み合わせた全体の動作を、端末Ａ１０００が最初に共有画面を表示し、次に端末Ｂ２０００が共有画面を表示し、端末Ａ１０００で表示されている状態と同一になるまでの動作と、端末Ａ１０００においてユーザが共有画面１１１０を操作した結果が各端末における共有画面上に反映されるまでの動作に分けて説明する。
【００２９】
まず、端末Ａ１０００のＷｅｂブラウザ１１００と端末Ｂ２０００のＷｅｂブラウザ２１００が同一の画面を表示するまでの動作について説明する。
ここでは端末Ａ１０００のＷｅｂブラウザ１１００が先に共有画面を表示し、その後で端末Ｂ２０００のＷｅｂブラウザ２１００が共有画面を表示する。
表示順序が逆の場合も動作は同様である。
【００３０】
図１１及び図１２は、端末Ａ１０００のＷｅｂブラウザ１１００が共有画面を表示するまでの動作を示したシーケンス図である。
これを用いてＷｅｂブラウザ１１００が共有画面を表示するまでの動作を説明する。
【００３１】
前提として、図１１に示すように、Ｗｅｂ画面共有・統合サーバ３０００では既に統合画面生成部３１００とリクエスト管理部３２００と画面更新通知部３３００が起動されているものとする（Ｓ００００〜Ｓ０００２）。
そして、端末Ａ１０００において、ユーザ操作によってＷｅｂブラウザ１１００が起動され（Ｓ０００３）、ユーザがＷｅｂブラウザ１１００に対して画面読み込みを要求する（Ｓ０００４）。
Ｗｅｂブラウザ１１００は、統合画面生成部３１００へ共有画面読み込みリクエストを送信する（Ｓ０００５）。
共有画面読み込みリクエストを受信した統合画面生成部３１００では図１に示した共有画面３１１０にイベント制御スクリプト３１１１とイベント送信スクリプト３１１２とイベント受信スクリプト３１１３を組み込み、端末Ａ１０００に送信する画面を生成する（Ｓ０００６）（共有画面情報管理ステップ）。
そして、生成された画面は統合画面生成部３１００からＷｅｂブラウザ１１００へ返信される（Ｓ０００７）（共有画面情報管理ステップ）。
【００３２】
次に、図１２に示すように、Ｗｅｂブラウザ１１００は受け取った画面を共有画面１１１０として表示する（Ｓ０００８）。
これに伴って共有画面１１１０に組み込まれているイベント制御スクリプト１１１１、イベント送信スクリプト１１１２、イベント受信スクリプト１１１３も動作を開始する。
イベント制御スクリプト１１１１は、イベント受信スクリプト１１１３の初期化処理を呼び（Ｓ０００９）、イベント受信スクリプト１１１３は初期化処理として画面更新通知部３３００へ受信接続通知を行う（Ｓ００１０）。
続いて、イベント制御スクリプト１１１１は、イベント送信スクリプト１１１２の初期化処理を呼び（Ｓ００１１）、イベント送信スクリプト１１１２は初期化処理としてリクエスト管理部３２００へ画面更新問い合わせを行う（Ｓ００１２）。
画面更新問い合わせを受けたリクエスト管理部３２００は問い合わせを画面更新通知部３３００へ転送する（Ｓ００１４）。
この画面更新問合せは、他の端末における共有画面の画面状態を通知するよう要求する情報（通知要求）である。
【００３３】
画面更新問合せを受信した画面更新通知部３３００は、画面の共有相手となる端末Ｂ２０００のＷｅｂブラウザ２１００がまだ共有画面へ接続していない（端末Ｂ２０００から受信接続通知を受信していない）ため何もしない（Ｓ００１５）。
また、イベント制御スクリプト１１１１は初期化処理として最後にＷｅｂブラウザ１１００へユーザ操作をイベントとしてインターセプトすることを通知する（Ｓ００１３）。
【００３４】
以上で端末Ａ１０００のＷｅｂブラウザ１１００における共有画面表示が完了する。
【００３５】
図１３、図１４、図１５は端末Ｂ２０００のＷｅｂブラウザ２１００が共有画面を表示するまでの動作を示したシーケンス図である。
これを用いてＷｅｂブラウザ２１００が共有画面を端末Ａ１０００のＷｅｂブラウザ１１００が表示している状態と同じ状態で表示するまでの動作を説明する。
【００３６】
図１３に示すように、端末Ｂ２０００において、端末Ａ１０００の場合（図１２：Ｓ０００３〜Ｓ０００８）と同様に共有画面２１１０を表示する（Ｓ０１００〜Ｓ０１０５）。
なお、端末Ａ１０００では、図１１及び図１２で説明したように、既に、共有画面１１１０を受信済みであり、イベント制御スクリプト１１１１、イベント送信スクリプト１１１２及びイベント受信スクリプト１１１３は起動済である。
【００３７】
次に、図１４に示すように、端末Ｂ２０００では、共有画面２１１０に組み込まれているイベント制御スクリプト２１１１、イベント送信スクリプト２１１２、イベント受信スクリプト２１１３が動作を開始する。
各スクリプトの初期化処理も端末Ａ１０００の場合（図１２：Ｓ０００９〜Ｓ００１３）と同様に実行される（Ｓ０１０６〜Ｓ０１１０）。
イベント送信スクリプト２１１２の画面更新問い合わせを受けたリクエスト管理部３２００は、その情報を画面更新通知部３３００へ転送する（Ｓ０１１１）。
画面更新通知部３３００は受け取った情報の情報源である端末Ｂ２０００以外に、既に端末Ａ１０００の受信接続通知を受けており、また、イベント情報の配信ではないため、受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、端末Ａ１０００のみのため、端末Ａ１０００上のＷｅｂブラウザ１１００のイベント受信スクリプト１１１３へ情報を転送する（Ｓ０１１２）。
【００３８】
次に、図１５に示すように、端末Ａ１０００のイベント受信スクリプト１１１３は受け取った情報をイベント制御スクリプト１１１１へ転送し（Ｓ０１１３）、イベント制御スクリプト１１１１は受け取った情報が画面更新問い合わせであるため、共有画面１１１０の画面スクロール量や文字入力状態などの画面状態を取得する（Ｓ０１１４）。
そして、イベント制御スクリプト１１１１は、取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト１１１２へ渡し（Ｓ０１１５）、イベント送信スクリプト１１１２は画面更新問い合わせの返信をリクエスト管理部３２００へ送信する（Ｓ０１１６）。
【００３９】
画面更新問い合わせの返信を受けたリクエスト管理部３２００は、画面更新問い合わせの返信を画面更新通知部３３００へ転送する（Ｓ０１１７）（共有制御受信ステップ）。
画面更新通知部３３００は、受け取った情報の情報源である端末Ａ１０００以外に、端末Ｂ２０００の受信接続通知を受けており、また、イベント情報の配信ではないため、受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、端末Ｂ２０００のみのため、端末Ｂ２０００上のＷｅｂブラウザ２１００のイベント受信スクリプト２１１３へ情報を転送する（Ｓ０１１８）（共有制御送信ステップ）。
端末Ｂ２０００のイベント受信スクリプト２１１３は、受け取った情報をイベント制御スクリプト２１１１へ転送し（Ｓ０１１９）、イベント制御スクリプト２１１１は受け取った情報が画面更新問い合わせの返信であるため、共有画面２１１０の画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する（Ｓ０１２０）。
【００４０】
以上で、端末Ａ１０００のＷｅｂブラウザ１１００における共有画面１１１０と端末Ｂ２０００のＷｅｂブラウザ２１００における共有画面２１１０の表示が全く同じになり共有された状態となる。
【００４１】
図１６及び図１７は、端末Ａ１０００においてユーザがＷｅｂブラウザ１１００に表示された共有画面１１１０の例えばボタンＡをクリックした場合に、その操作結果が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末Ａ１０００でＷｅｂブラウザ１１００を操作した結果が、端末Ｂ２０００のＷｅｂブラウザ２１００に同時に反映されるまでの動作を説明する。
【００４２】
図１６に示すように、端末Ａ１０００においてユーザがＷｅｂブラウザ１１００に表示された共有画面１１１０内のボタンＡをクリックすると（Ｓ０２００）、Ｗｅｂブラウザ１１００にはイベント制御スクリプト１１１１からユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト１１１１へ渡す（Ｓ０２０１）。
イベント制御スクリプト１１１１は、イベントからイベント情報としてイベントの種類（この場合はクリック）、イベントが発生した場所（この場合はボタンＡの場所）を取得し（Ｓ０２０２）、イベント送信スクリプト１１１２へ渡す（Ｓ０２０３）。
イベント送信スクリプト１１１２は、受け取ったイベント情報をリクエスト管理部３２００へ送信する（Ｓ０２０４）。
【００４３】
次に、図１７に示すように、リクエスト管理部３２００は、受け取ったイベント情報を画面更新通知部３３００へ転送し（Ｓ０２０５）、画面更新通知部３３００は、受け取った情報の情報源である端末Ａ１０００以外に、端末Ｂ２０００の受信接続通知を受けており、また、イベント情報の配信であるため、受信接続通知を受信済みである全ての配信先（イベント受信スクリプト）へイベント情報を送信する（Ｓ０２０６）。
端末Ａ１０００側でイベント情報を受け取ったイベント受信スクリプト１１１３は、イベント情報をイベント制御スクリプト１１１１へ転送し（Ｓ０２０７）、イベント制御スクリプト１１１１は受け取ったイベント情報を元に共有画面１１１０上にイベントを発生させる（Ｓ０２０８）。
一方、端末Ｂ２０００側でイベント情報を受け取ったイベント受信スクリプト２１１３も端末Ａ１０００側と同様の動作をする（Ｓ０２０９〜Ｓ０２１０）。
【００４４】
以上で、端末Ａ１０００上で発生したユーザ操作が端末Ａ１０００のＷｅｂブラウザ１１００における共有画面１１１０と端末Ｂ２０００のＷｅｂブラウザ２１００における共有画面２１１０で同じようにイベントとして動作し、各画面の表示が全く同じになり共有された状態となる。
【００４５】
以上のように、本実施の形態によれば、画面を共有するために必要な情報のやりとりを画面内に埋め込んだスクリプトのみで実現しているためクライアント端末に画面同期用プログラムを必要とせずに画面を共有することができる。
また、２端末以上の端末間における画面共有でも画面更新通知部が画面更新情報（画面情報、イベント情報）を受信接続通知してきた各端末へ配信可能であるため、複数端末間でＷｅｂブラウザに表示した画面を共有することができる。
【００４６】
以上、本実施の形態では、画面上で発生するユーザ操作イベントを取得・発生させる機能と、取得したイベント情報をサーバへ送信する機能と、サーバからのイベント情報を受信する機能を備えたＷｅｂ画面と、前記Ｗｅｂ画面を生成する機能と、Ｗｅｂ画面からのイベントを受信する機能とイベントを複数端末へ配信する機能を備えたサーバを用いてＷｅｂ画面を複数端末間で共有する実行装置を説明した。
【００４７】
実施の形態２．
以上の実施の形態１では複数端末間において１種類のＷｅｂ画面を共有するようにしたものであるが、次に複数端末間において複数種類のＷｅｂ画面を共有するような場合の実施の形態を示す。
【００４８】
図１８は、３端末間において２種類のＷｅｂ画面を共有する方式を示すシステム構成図である。
【００４９】
図１８において、実施の形態１のシステム構成図（図１）から変更された機能は統合画面生成部３１００、イベント制御スクリプト３１１１、画面更新通知部３３００である。
また、追加された機能は、統合画面３５００、共有画面Ｘ３１１０、共有画面Ｙ３１２０、接続管理部３４００である。
他の機能は実施の形態１と同様である。
また、本実施の形態においても、統合画面生成部３１００は共有画面情報管理部の例であり、リクエスト管理部３２００は共有制御受信部の例であり、画面更新通知部３３００は共有制御送信部の例である。
また、イベント制御スクリプト３１１１は制御手段の例であり、イベント送信スクリプト３１１２は送信手段の例であり、イベント受信スクリプト３１１３は受信手段の例である。
【００５０】
統合画面生成部３１００は、端末のＷｅｂブラウザからのリクエストに応じて、接続管理部３４００から得られる画面共有の接続状態管理テーブルを元に統合画面３５００に共有画面Ｘ３１１０や共有画面Ｙ３１２０とイベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３を組み込んだ画面を生成する機能である。
つまり、統合画面生成部３１００は、１つの端末が２以上の共有画面を２以上の端末と共有する関係（例えば、端末Ａ１０００が共有画面Ｘを端末Ｂ２０００と共有し、端末Ａ１０００が共有画面Ｙを端末Ｃ４０００と共有する関係）にある場合に、２以上の共有画面（共有画面Ｘ、共有画面Ｙ）を統合して統合画面（統合共有画面情報）とし、統合画面にイベント制御スクリプトとイベント送信スクリプトとイベント受信スクリプトとを組み込んだ画面（組み込み統合共有画面情報）を生成し、当該画面を２以上の共有画面を２以上の端末と共有している端末（端末Ａ１０００）に送信する。
また、他方の端末（端末Ｂ２０００、端末Ｃ４０００）には、対象となる共有画面にイベント制御スクリプトとイベント送信スクリプトとイベント受信スクリプトとを組み込んだ画面（組み込み共有情報）を生成し、当該画面を対象となる端末（端末Ｂ２０００、端末Ｃ４０００）に送信する。
なお、２以上の共有画面を２以上の端末と共有する関係にある端末（前述の例では、端末Ａ１０００）は、第１共有端末装置に相当し、他方の端末（前述の例では、端末Ｂ２０００、端末Ｃ４０００）は、第２共有端末装置に相当する。
【００５１】
イベント制御スクリプト３１１１は、画面内の特定領域でユーザのＷｅｂ画面操作イベントを取得・発生させるスクリプトである。
【００５２】
画面更新通知部３３００は、接続管理部３４００から得られる画面共有の接続状態管理テーブルを元に画面更新情報を各端末へ配信する機能である。
より具体的には、２以上の共有画面を２以上の端末と共有する関係にある端末で行われた操作内容をリクエスト管理部３２００が受信した際に、画面更新通知部３３００は、その操作内容が２以上の共有画面のうちのいずれの共有画面に対する操作内容であるかを判定し、判定した共有画面に対応する端末に対して、リクエスト管理部３２００により受信された操作内容を送信する。
また、リクエスト管理部３２００が、２以上の共有画面を２以上の端末と共有する関係にある端末から、画面更新問合せ（通知要求）を受信した場合に、画面更新通知部３３００は、リクエスト管理部３２００により受信された画面更新問合せを他方の端末の各々のイベント受信スクリプトに対して送信し、また、画面更新問合せに対する各端末からの応答を、画面更新問合せの送信元の端末（２以上の共有画面を２以上の端末と共有する関係にある端末）に送信する。
【００５３】
統合画面３５００は、図１９に示すような画面共有領域３５０１を持っており、この中に共有画面Ｘや共有画面ＹへのＵＲＬをはめ込み、共有画面Ｘ３５０４、共有画面Ｙ３５０５として表示できるもので、タブ３５０２とタブ制御スクリプト３５０３によって画面共有領域３５０１内に表示している画面を切り替えることができるスクリプトが含まれたＨＴＭＬである。
共有画面Ｘ３１１０、共有画面Ｙ３１２０は、共有する画面ＨＴＭＬもしくはＷｅｂアプリケーションである。
【００５４】
接続管理部３４００は図２０に示す接続状態管理テーブルを参照する機能である。
【００５５】
次に動作について説明する。
各機能の動作はフローチャートを用いて説明し、各機能を組み合わせた全体の動作はシーケンス図を用いて説明する。各機能の動作については実施の形態１と異なる機能についてのみ説明する。
【００５６】
図２１は統合画面生成部３１００における処理フローチャートである。
統合画面生成部３１００ではＷｅｂブラウザから画面取得処理を受け取ると、接続してきたＷｅｂブラウザが実行されている端末の情報を元に接続管理部３４００から、共有画面のＩＤとＵＲＬの組を取得する（Ｆ０８００）。
次に、統合画面生成部３１００は、共有画面の情報の組を元に統合画面に共有画面ごとにタブを生成し、イベント制御スクリプト、イベント送信スクリプト、イベント受信スクリプトを埋め込み（Ｆ０８０１）、各共有画面がタブ埋め込まれ、各スクリプトが埋め込まれた画面を統合画面としてＷｅｂブラウザへ返す（Ｆ０８０２）。
【００５７】
図２２及び図２３はイベント制御スクリプト１１１１とイベント制御スクリプト２１１１とイベント制御スクリプト４１１１における処理フローチャートである。
図２２（ａ）に示すように、各イベント制御スクリプトでは初期処理として、イベント受信スクリプトの初期化（Ｆ０９００）、イベント送信スクリプトの初期化（Ｆ０９０１）の順で初期化を行い、最後に画面共有領域内におけるユーザ操作をイベントとしてインターセプトすることをＷｅｂブラウザへ通知する（Ｆ０９０２）。
また、図２２（ｂ）に示すように、画面共有中は、画面共有領域内で画面クリックや文字入力などのユーザ操作が発生すると、そのユーザ操作の種類と発生した場所（画面共有領域からの相対位置）の情報をイベント情報として取得し（Ｆ０９０３）、イベント情報とイベントが発生した共有画面の共有画面ＩＤをイベント送信スクリプトへ渡す（Ｆ０９０４）。
また、図２３に示すように、イベント受信スクリプトから呼び出しがあった場合は、イベント受信スクリプトから受け取った情報に含まれるイベントの種類によって処理が分かれる（Ｆ０９０５）。
イベントの画面更新問い合わせの場合、画面共有領域内で画面更新問い合わせに含まれる共有画面ＩＤに対応する現時点の画面表示情報（画面共有領域内での画面スクロール量や文字列入力状態など）を不可視であっても取得し（Ｆ０９０６）、取得した画面表示情報をイベント送信スクリプトへ渡す（Ｆ０９０７）。
イベントの種類が画面更新問い合わせの返信の場合、イベント受信スクリプトより受け取った画面表示情報を共有画面ＩＤに対応する共有画面上に不可視であっても反映させる（Ｆ０９０８）。
イベントの種類がＷｅｂブラウザのユーザ操作イベントの場合、イベント受信スクリプトより受け取ったイベント情報から、全く同様のイベントを共有画面ＩＤに対応する共有画面上に不可視であっても発生させる（Ｆ０９０９）。
【００５８】
図２４は画面更新通知部３３００における処理フローチャートである。
画面更新通知部３３００ではイベント受信スクリプトからの呼び出し（受信接続通知）があると、図２４（ａ）に示すように、情報配信先として端末の受信接続を保持する（Ｆ１０００）。
また、リクエスト管理部３２００からの呼び出しがあると、図２４（ｂ）に示すように、リクエスト管理部３２００が得た情報の情報源となる端末と共有画面ＩＤにひもづく接続先一覧を接続管理部３４００から取得し（Ｆ１００１）、取得した接続先一覧に情報源となる端末以外からの受信接続通知があるかどうかで処理が分かれる（Ｆ１００２）。
接続先一覧に情報源となる端末以外からの受信接続通知がある場合、イベント情報の配信かいなかさらに処理が分かれる（Ｆ１００３）。
イベント情報の配信の場合、リクエスト管理部３２００からの情報を共有画面ＩＤごとの接続先一覧にある全受信接続先へ送信する（Ｆ１００４）。
イベント情報の配信でない場合、リクエスト管理部３２００からの情報を接続先一覧のうち、共有画面ＩＤごとに情報源以外のランダムに選んだ一つの受信接続先へ送信する（Ｆ１００５）。
情報源となる端末以外からの受信接続通知が無い場合、何もしない。
【００５９】
図２５は統合画面１５１０と統合画面２５１０と統合画面４５１０に組み込まれているタブ制御スクリプトにおける処理フローチャートである。
図２５（ａ）に示すように、タブ制御スクリプトでは統合画面がＷｅｂブラウザに読み込まれた際の初期処理としてタブ領域内におけるクリック操作をイベントとしてインターセプトすることをＷｅｂブラウザへ通知する（Ｆ１１００）。
また、Ｗｅｂブラウザ上でのユーザ操作によってタブ領域内でクリック操作が発生した場合、図２５（ｂ）に示すように、どのタブがクリックされたかを取得し（Ｆ１１０１）、クリックされたタブに対応する共有画面以外を不可視にし（Ｆ１１０２）、クリックされたタブに対応する共有画面を可視にする（Ｆ１１０３）。
【００６０】
図２６は接続管理部３４００における処理フローチャートである。
接続管理部３４００では処理が呼び出された場合、呼び出しの情報に含まれる列名とその値の組み合わせから一致する行を接続状態管理テーブルから取得して返す（Ｆ１２００）。
【００６１】
次に、各機能を組み合わせた全体の動作を、端末Ａ１０００が最初に統合画面を表示し、次に端末Ｂ２０００が統合画面を表示し、画面共有領域の特定共有画面が端末Ａ１０００で表示されている状態と同一になるまでの動作と、端末Ｃ４０００が統合画面を表示し、画面共有領域の特定共有画面が端末Ａ１０００で表示されている状態と端末Ｂ２０００で表示されている状態と同一になるまでの動作と、端末Ａ１０００においてユーザが統合画面１５１０内の画面共有領域にある共有画面Ｘを操作した結果が共有状態にある各端末における統合画面内の画面共有領域に反映されるまでの動作に分けて説明する。
【００６２】
まず、端末Ａ１０００のＷｅｂブラウザ１１００と端末Ｂ２０００のＷｅｂブラウザ２１００と端末Ｃ４０００のＷｅｂブラウザ４１００が統合画面を表示し、その画面共有領域内における共有画面が接続状態管理テーブルに基づいて対応する端末の共有画面と同一の画面を表示するまでの動作について説明する。
ここでは統合画面の表示順を端末Ａ１０００、端末Ｂ２０００、端末Ｃ４０００の順にするが、処理内容が対称なため順序を入れ替えても動作は同様である。
【００６３】
図２７及び図２８は端末Ａ１０００のＷｅｂブラウザ１１００が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてＷｅｂブラウザ１１００が統合画面を表示するまでの動作を説明する。
【００６４】
図２７に示すように、Ｗｅｂ画面共有・統合サーバ３０００では既に統合画面生成部３１００とリクエスト管理部３２００と画面更新通知部３３００と接続管理部３４００が起動されているものとする（Ｓ０３００〜Ｓ０３０３）。
そして、端末Ａ１０００では、ユーザ操作によってＷｅｂブラウザ１１００が起動され（Ｓ０３０４）、また、ユーザがＷｅｂブラウザ１１００に画面読み込みを要求する（Ｓ０３０５）。
Ｗｅｂブラウザ１１００は統合画面生成部３１００へ統合画面読み込みリクエストを送信する（Ｓ０３０６）。
統合画面読み込みリクエストを受信した統合画面生成部３１００ではリクエスト送信源の端末情報から共有すべき画面と共有相手の端末を知るために、接続管理部３４００へリクエスト送信源の端末に関する接続状態を問い合わせる（Ｓ０３０７）。
接続管理部３４００では、問い合わせに従って図２０に示す接続状態管理テーブルを参照し（Ｓ０３０８）、取得した接続状態を返す（Ｓ０３０９）。
この場合は、図１９において、端末１または端末２の列で値が端末Ａの行で、共有ＩＤが１の行と２の行を接続状態として得ることになる。
統合画面生成部３１００は得られた接続状態を元に図１９に示した統合画面３５００に共有画面ごとにタブを生成し、イベント制御スクリプト３１１１とイベント送信スクリプト３１１２とイベント受信スクリプト３１１３を組み込むことで画面を生成する（Ｓ０３１０）。
生成された画面はＷｅｂブラウザ１１００へ返信される（Ｓ０３１１）。
【００６５】
次に、図２８に示すように、Ｗｅｂブラウザ１１００は受け取った画面を統合画面１５１０として表示する（Ｓ０３１２）。
これに伴って統合画面１５１０に組み込まれているイベント制御スクリプト１１１１、イベント送信スクリプト１１１２、イベント受信スクリプト１１１３も動作を開始する。
イベント制御スクリプト１１１１はイベント受信スクリプト１１１３の初期化処理を呼び（Ｓ０３１３）、イベント受信スクリプト１１１３は初期化処理として画面更新通知部３３００へ受信接続通知を行う（Ｓ０３１４）。
続いて、イベント制御スクリプト１１１１はイベント送信スクリプト１１１２の初期化処理を呼び（Ｓ０３１５）、イベント送信スクリプト１１１２は初期化処理としてリクエスト管理部３２００へ画面更新問い合わせを行う（Ｓ０３１６）。
画面更新問い合わせを受けたリクエスト管理部３２００は、問い合わせを画面更新通知部３３００へ転送する（Ｓ０３１８）。
画面更新通知部３３００は、受け取った情報の情報源となる端末に関わる接続先一覧を接続管理部３４００へ問い合わせる（Ｓ０３１９）。
問い合わせを受けた接続管理部３４００はＳ０３０８の場合と同様に接続状態管理テーブルを参照し（Ｓ０３２０）、結果を返す（Ｓ０３２１）。
画面更新通知部３３００は接続管理部３４００より得た情報を接続先一覧とするが、その一覧の中で情報源の端末（端末Ａ１０００）以外からまだ受信接続通知を受けていないため何もしない（Ｓ０３２２）。
イベント制御スクリプト１１１１は初期化処理として最後にＷｅｂブラウザ１１００へユーザ操作をイベントとしてインターセプトすることを通知する（Ｓ０３１７）。
【００６６】
以上で端末Ａ１０００のＷｅｂブラウザ１１００における統合画面表示が完了する。
【００６７】
図２９、図３０、図３１、図３２は端末Ｂ２０００のＷｅｂブラウザ２１００が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてＷｅｂブラウザ２１００が統合画面の画面共有領域において共有画面Ｘを端末Ａ１０００のＷｅｂブラウザ１１００が表示している状態と同じ状態で表示するまでの動作を説明する。
【００６８】
図２９に示すように、端末Ｂ２０００において、端末Ａ１０００の場合（図２７、図２８：Ｓ０３０４〜Ｓ０３１２）と同様に統合画面２５１０を表示する（Ｓ０４００〜Ｓ０４０８）。
これに伴って、図３０に示すように、統合画面２５１０に組み込まれているイベント制御スクリプト２１１１、イベント送信スクリプト２１１２、イベント受信スクリプト２１１３も動作を開始する。
各スクリプトの初期化処理も端末Ａ１０００の場合（図２８：Ｓ０３１３〜Ｓ０３１７）と同様に実行される（Ｓ０４０９〜Ｓ０４１３）。
なお、端末Ａ１０００では、図２７及び図２８で説明したように、既に、共有画面１１１０を受信済みであり、イベント制御スクリプト１１１１、イベント送信スクリプト１１１２及びイベント受信スクリプト１１１３は起動済である。
【００６９】
図３１に示すように、イベント送信スクリプト２１１２の画面更新問い合わせを受けたリクエスト管理部３２００は、その情報を画面更新通知部３３００へ転送する（Ｓ０４１４）。
画面更新通知部３３００は、図２８のＳ０３１９〜Ｓ０３２１の場合と同様に接続先一覧を取得する（Ｓ０４１５〜Ｓ０４１７）。
画面更新通知部３３００は、取得した接続先一覧の中で情報源の端末（端末Ｂ２０００）以外に、既に端末Ａ１０００の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面ＩＤが１もしくは３の画面を持つ端末の受信済みの受信接続通知からそれぞれランダムに配信先を選ぶが、この場合、共有画面ＩＤが１の画面を持つ端末Ａ１０００のみのため、端末Ａ１０００上のＷｅｂブラウザ１１００のイベント受信スクリプト１１１３へ情報を転送する（Ｓ０４１８）。
【００７０】
図３２に示すように、イベント受信スクリプト１１１３は、受け取った情報をイベント制御スクリプト１１１１へ転送し（Ｓ０４１９）、イベント制御スクリプト１１１１は受け取った情報が画面更新問い合わせであるため統合画面１５１０の画面共有領域において共有画面ＩＤが１、つまり共有画面Ｘの画面スクロール量や文字入力状態などの画面状態を取得する（Ｓ０４２０）。
イベント制御スクリプト１１１１は、取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト１１１２へ渡し（Ｓ０４２１）、イベント送信スクリプト１１１２は画面更新問い合わせの返信をリクエスト管理部３２００へ送信する（Ｓ０４２２）。
【００７１】
画面更新問い合わせの返信を受けたリクエスト管理部３２００は、画面更新問い合わせの返信を画面更新通知部３３００へ転送する（Ｓ０４２３）。
画面更新通知部３３００は、Ｓ０４１５〜Ｓ０４１７の場合と同様に接続先一覧を取得する（Ｓ０４２４〜Ｓ０４２６）。
画面更新通知部３３００は、取得した接続先一覧の中で情報源の端末（端末Ａ１０００）以外に、既に端末Ｂ２０００の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面ＩＤが１の画面を持つ端末の受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、共有画面ＩＤが１の画面を持つ端末Ｂ２０００のみのため、端末Ｂ２０００上のＷｅｂブラウザ２１００のイベント受信スクリプト２１１３へ情報を転送する（Ｓ０４２７）。
【００７２】
イベント受信スクリプト２１１３は、受け取った情報をイベント制御スクリプト２１１１へ転送し（Ｓ０４２８）、イベント制御スクリプト２１１１は受け取った情報が画面更新問い合わせの返信であるため、統合画面２５１０の画面共有領域において共有画面ＩＤが１、つまり共有画面Ｘの画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する（Ｓ０４２９）。
【００７３】
以上で端末Ａ１０００のＷｅｂブラウザ１１００における統合画面１５１０の画面共有領域と端末Ｂ２０００のＷｅｂブラウザ２１００における統合画面２５１０の画面共有領域において共有画面Ｘの表示が全く同じになり共有された状態となる。
【００７４】
図３３、図３４、図３５、図３６は端末Ｃ４０００のＷｅｂブラウザ４１００が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてＷｅｂブラウザ４１００が統合画面の画面共有領域において共有画面Ｘを端末Ｂ２０００のＷｅｂブラウザ２１００が表示している状態と同じ状態で、共有画面Ｙを端末Ａ１０００のＷｅｂブラウザ１１００が表示している状態と同じ状態で表示するまでの動作を説明する。
【００７５】
図３３に示すように、端末Ｃ４０００において、端末Ａ１０００の場合（図２７、図２８：Ｓ０３０４〜Ｓ０３１２）と同様に統合画面４５１０を表示する（Ｓ０５００〜Ｓ０５０８）。
これに伴って、図３４に示すように、統合画面４５１０に組み込まれているイベント制御スクリプト４１１１、イベント送信スクリプト４１１２、イベント受信スクリプト４１１３も動作を開始する。
各スクリプトの初期化処理も端末Ａ１０００の場合（図２８：Ｓ０３１３〜Ｓ０３１７）と同様に実行される（Ｓ０５０９〜Ｓ０５１３）。
なお、端末Ａ１０００及び端末Ｂ２０００では、図２７〜図３２で説明したように、既に、統合画面１５１０及び統合画面２５１０を受信済みであり、イベント制御スクリプト１１１１、イベント送信スクリプト１１１２及びイベント受信スクリプト１１１３、また、イベント制御スクリプト２１１１、イベント送信スクリプト２１１２及びイベント受信スクリプト２１１３は起動済である。
【００７６】
イベント送信スクリプト４１１２の画面更新問い合わせを受けたリクエスト管理部３２００は、その情報を画面更新通知部３３００へ転送する（Ｓ０５１４）。
画面更新通知部３３００は、図２８のＳ０３１９〜Ｓ０３２１の場合と同様に接続先一覧を取得する（Ｓ０５１５〜Ｓ０５１７）。
画面更新通知部３３００は、取得した接続先一覧の中で情報源の端末（端末Ｃ４０００）以外に、既に端末Ａ１０００と端末Ｂ２０００の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面ＩＤが２もしくは３の画面を持つ端末の受信済みの受信接続通知からそれぞれランダムに配信先を選ぶ。
この場合、共有画面ＩＤが１の画面を持つ接続先は端末Ａ１０００のみのため、図３５に示すように、端末Ａ１０００上のＷｅｂブラウザ１１００のイベント受信スクリプト１１１３へ共有画面ＩＤが２の画面更新問い合わせを、共有画面ＩＤが３の画面を持つ接続先は端末Ｂ２０００のみのため、端末Ｂ２０００上のＷｅｂブラウザ２１００のイベント受信スクリプト２１１３へ共有画面ＩＤが３の画面更新問い合わせを転送する（Ｓ０５１８）。
【００７７】
図３５に示すように、端末Ａ１０００において、イベント受信スクリプト１１１３は受け取った情報をイベント制御スクリプト１１１１へ転送し（Ｓ０５１９）、イベント制御スクリプト１１１１は受け取った情報が画面更新問い合わせであるため統合画面１５１０の画面共有領域において共有画面ＩＤが２、つまり共有画面Ｙの画面スクロール量や文字入力状態などの画面状態を取得する（Ｓ０５２０）。
イベント制御スクリプト１１１１は取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト１１１２へ渡し（Ｓ０５２１）、イベント送信スクリプト１１１２は画面更新問い合わせの返信をリクエスト管理部３２００へ送信する（Ｓ０５２２）。
【００７８】
一方で、端末Ｂ２０００においても同様に共有画面ＩＤが３、つまり共有画面Ｘの画面情報が画面更新問い合わせの返信としてリクエスト管理部３２００へ送信される（Ｓ０５２３〜Ｓ０５２６）。
【００７９】
以降のリクエスト管理部３２００の処理は端末Ａ１０００からの画面更新問い合わせの返信の処理と端末Ｂ２０００からの画面更新問い合わせの返信の処理の両処理が実行されるが、どちらも同様な処理のため端末Ａ１０００からの画面更新問い合わせの返信に対する処理について説明する。
【００８０】
図３６に示すように、端末Ａ１０００から画面更新問い合わせの返信を受けたリクエスト管理部３２００は画面更新問い合わせの返信を画面更新通知部３３００へ転送する（Ｓ０５２７）。
画面更新通知部３３００は、Ｓ０５１５〜Ｓ０５１７の場合と同様に接続先一覧を取得する（Ｓ０５２８〜Ｓ０５３０）。
画面更新通知部３３００は取得した接続先一覧の中で情報源の端末（端末Ａ１０００）以外に、既に端末Ｃ４０００の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面ＩＤが２の画面を持つ端末の受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、共有画面ＩＤが２の画面を持つ端末Ｃ４０００のみのため、端末Ｃ４０００上のＷｅｂブラウザ４１００のイベント受信スクリプト４１１３へ情報を転送する（Ｓ０５３１）。
イベント受信スクリプト４１１３は、受け取った情報をイベント制御スクリプト４１１１へ転送し（Ｓ０５３２）、イベント制御スクリプト４１１１は受け取った情報が画面更新問い合わせの返信であるため、統合画面４５１０の画面共有領域において共有画面ＩＤが２、つまり共有画面Ｙの画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する（Ｓ０５３３）。
端末Ｂ２０００からの画面更新問い合わせの返信も同様に適用されると共有画面Ｘが更新される。
【００８１】
以上で端末Ａ１０００のＷｅｂブラウザ１１００における統合画面１５１０の画面共有領域と端末Ｂ２０００のＷｅｂブラウザ２１００における統合画面２５１０の画面共有領域と端末Ｃ４０００のＷｅｂブラウザ４１００における統合画面４５１０の画面共有領域において共有画面Ｘと共有画面Ｙの表示が全く同じになり共有された状態となる。
【００８２】
図３７及び図３８は、端末Ａ１０００においてユーザがＷｅｂブラウザ１１００に表示された統合画面１５１０の画面共有領域における共有画面Ｘ内の例えばボタンＡをクリックした場合に、その操作結果が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末Ａ１０００でＷｅｂブラウザ１１００を操作した結果が、図２０に示す接続状態管理テーブルに従い、端末Ｂ２０００のＷｅｂブラウザ２１００に同時に反映されるまでの動作を説明する。
【００８３】
図３７に示すように、端末Ａ１０００においてユーザがＷｅｂブラウザ１１００に表示された統合画面１５１０の画面共有領域における共有画面Ｘ内のボタンＡをクリックすると（Ｓ０６００）、Ｗｅｂブラウザ１１００にはイベント制御スクリプト１１１１から画面共有領域におけるユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト１１１１へ渡す（Ｓ０６０１）。
イベント制御スクリプト１１１１はイベントからイベント情報としてイベントの種類（この場合はクリック）、イベントが発生した場所（この場合はボタンＡの場所）を取得し（Ｓ０６０２）、イベント送信スクリプト１１１２へ渡す（Ｓ０６０３）。
イベント送信スクリプト１１１２は受け取ったイベント情報をリクエスト管理部３２００へ送信する（Ｓ０６０４）。
【００８４】
図３８に示すように、リクエスト管理部３２００は受け取ったイベント情報を画面更新通知部３３００へ転送する（Ｓ０６０５）。
画面更新通知部３３００は図２８のＳ０３１９〜Ｓ０３２１の場合と同様に接続先一覧を取得し（Ｓ０６０６〜Ｓ０６０８）、取得した接続先一覧の中で情報源の端末（端末Ａ１０００）以外に、端末Ｂ２０００の受信接続通知を受けており、また、イベント情報の配信であるため、共有画面ＩＤが１の画面を持つ端末の受信済みの受信接続通知から全ての配信先（イベント受信スクリプト）へイベント情報を送信する（Ｓ０６０９）。
【００８５】
端末Ａ１０００側でイベント情報を受け取ったイベント受信スクリプト１１１３はイベント情報をイベント制御スクリプト１１１１へ転送し（Ｓ０６１０）、イベント制御スクリプト１１１１は受け取ったイベント情報を元に統合画面１５１０の画面共有領域における共有画面ＩＤが１の画面、つまり共有画面Ｘ上にイベントを発生させる（Ｓ０６１１）。
【００８６】
一方、端末Ｂ２０００側でイベント情報を受け取ったイベント受信スクリプト２１１３も端末Ａ１０００側と同様の動作をする（Ｓ０６１２〜Ｓ０６１３）。
【００８７】
以上で、端末Ａ１０００上で発生したユーザ操作が、図２０に示す接続状態管理テーブルに従い、端末Ａ１０００のＷｅｂブラウザ１１００における統合画面１５１０の画面共有領域にある共有画面Ｘと端末Ｂ２０００のＷｅｂブラウザ２１００における統合画面２５１０の画面共有領域にある共有画面Ｘで同じようにイベントとして動作し、各画面の表示が全く同じになり共有された状態となる。
【００８８】
以上のように、本実施の形態によれば、接続管理部によって端末間で共有されている画面の関係を管理することによって、統合画面生成部が接続管理部と連携して画面の統合状態を端末によって変えることができる。
また、画面更新通知部が接続管理部と連携することで画面更新情報が適切な端末に配信され、複数端末間で複数種類のＷｅｂ画面の共有、つまりｎ端末対ｎ端末で画面を共有することができる。
また、イベント制御スクリプトによる画面の更新は不可視の状態に関わりなく動作するため、ユーザのタブ操作で表示する共有画面を切り替えたとしても、常に最新の状態を表示することができる。
【００８９】
以上、本実施の形態では、複数端末間の複数Ｗｅｂ画面共有の関係を参照する機能と、複数Ｗｅｂ画面を統合し、切り替えて表示できるＷｅｂ画面を生成する機能を備えたＷｅｂ画面共有・統合装置を説明した。
【００９０】
実施の形態３．
以上の実施の形態２では複数端末間において複数種類のＷｅｂ画面を共有するようにしたものであるが、次に端末間におけるＷｅｂ画面の共有関係が動的に変化するような場合の実施の形態を示す。
【００９１】
図３９は共有関係が状態１から状態３まで変化する様子を接続状態管理テーブルで示したものである。この変化を各端末へ反映する方式について説明する。
なお、システム構成図は実施の形態２の場合（図１８）と同様で、機能に変更がある。
なお、図３９に例示している共有関係の変化は、例えば、Ｗｅｂ画面共有・統合サーバ３０００の管理者が設定する。
【００９２】
図１８において、実施の形態２から変更された機能はイベント制御スクリプト３１１１、統合画面３５００のタブ制御スクリプト３５０３（図１９）、接続管理部３４００であり、他の機能は実施の形態２と同様である。
【００９３】
イベント制御スクリプト３１１１は画面内の特定領域でユーザのＷｅｂ画面操作イベントを取得・発生、タブ制御スクリプト３５０３にタブ追加もしくは削除を実行させるスクリプトである。
タブ制御スクリプト３５０３は、タブ３５０２のユーザ操作による画面共有領域３５０１内に表示している画面の切り替えとイベント制御スクリプト３１１１の呼び出しによってタブと共有画面を追加もしくは削除することができるスクリプトである。
接続管理部３４００は、接続状態管理テーブルを管理する機能で図３９に示すようなテーブルの変化を検知できる機能である。
【００９４】
次に動作について説明する。
各機能の動作はフローチャートを用いて、各機能を組み合わせた全体の動作はシーケンス図を用いて実施の形態２とは異なる部分についてのみ説明する。
【００９５】
図４０及び図４１は、イベント制御スクリプト１１１１とイベント制御スクリプト２１１１とイベント制御スクリプト４１１１における処理フローチャートである。
図２２及び図２３におけるフローチャートとの違いはＦ１３１０のみでＦ１３００〜Ｆ１３０４は図２２のＦ０９００〜Ｆ０９０４と同一である。
Ｆ１３１０はイベント受信スクリプトからの呼び出しでイベントの種類がタブの追加もしくは削除であった場合に実行され、イベント受信スクリプトより受け取ったタブ追加・削除の情報をタブ制御スクリプトへ渡す。
【００９６】
図４２は、統合画面１５１０と統合画面２５１０と統合画面４５１０に組み込まれているタブ制御スクリプトにおける処理フローチャートである。
図２５におけるフローチャートとの違いはＦ１４０４のみでＦ１４００〜Ｆ１４０３は図２５のＦ１１００〜Ｆ１１０３と同一である。
Ｆ１４０４はイベント制御スクリプトからの呼び出しがあった場合に実行され、受け取ったタブ追加・削除の情報に従ってタブの追加・削除と画面共有領域内で対応する共有画面の追加・削除を行う。
【００９７】
図４３は、接続管理部３４００における処理フローチャートである。
図２６におけるフローチャートとの違いはＦ１５０１のみでＦ１５００は図２６のＦ１２００と同一である。
Ｆ１５０１は接続状態管理テーブルが更新された場合に実行され、接続状態管理テーブルの変化を画面更新通知部３３００へ送る。
【００９８】
各機能を組み合わせた全体の動作で実施の形態２と異なる点は、接続状態管理テーブルが変化した際にシステム全体が、変化後の接続状態管理テーブルに従った状態へ遷移する点であり、その動作部分についてシーケンス図を用いて説明する。
【００９９】
図４４は、図３９に示した接続状態管理テーブル状態１から状態２へ変化したときの動作を示したシーケンス図である。
これを用いて端末間の画面共有関係が減少した場合に端末間の画面共有関係が接続状態管理テーブルに従ったものへ遷移するまでの動作を説明する。
【０１００】
接続状態管理テーブルに変化（この場合は共有ＩＤが２の行が削除された）があると接続管理部３４００はこれを検知して削除された項目をタブ削除イベントとして画面更新通知部３３００へ送る（Ｓ０７００）。
画面更新通知部３３００は受け取った情報が端末Ａ１０００と端末Ｃ４０００に関するものなので、タブ削除イベント（削除指示）をイベント受信スクリプト１１１３とイベント受信スクリプト４１１３へ転送して（Ｓ７０１）、対象となるタブ（共有画面）を削除するよう指示する。
イベント受信スクリプト１１１３は、受け取った情報をイベント制御スクリプト１１１１へ転送し（Ｓ７０２）、イベント制御スクリプト１１１１は受け取った情報がタブ削除イベントであるため、タブ制御スクリプトへ削除情報を渡し、画面共有領域内の共有画面ＩＤが２の画面、つまり共有画面Ｙと対応するタブが削除される（Ｓ０７０３）。
端末Ｃ４０００側においても同様に共有画面Ｙと対応するタブが削除される（Ｓ０７０４〜Ｓ０７０５）。
【０１０１】
以上で接続状態管理テーブルの変化に関わる全ての端末の画面共有関係の更新が完了する。
【０１０２】
図４５は、図３９に示した接続状態管理テーブル状態２から状態３へ変化したときの動作を示したシーケンス図である。
これを用いて端末間の画面共有関係が増加した場合に端末間の画面共有関係が接続状態管理テーブルに従ったものへ遷移するまでの動作を説明する。
【０１０３】
接続状態管理テーブルに変化（この場合は共有ＩＤが４の行が追加された）があると接続管理部３４００はこれを検知して追加された項目をタブ追加イベントとして画面更新通知部３３００へ送る（Ｓ０８００）。
画面更新通知部３３００は、受け取った情報が端末Ａ１０００と端末Ｂ２０００に関するものなので、タブ追加イベント（追加指示）をイベント受信スクリプト１１１３とイベント受信スクリプト２１１３へ転送して（Ｓ８０１）、タブ（共有画面）を追加するよう指示する。
イベント受信スクリプト１１１３は、受け取った情報をイベント制御スクリプト１１１１へ転送し（Ｓ８０２）、イベント制御スクリプト１１１１は受け取った情報がタブ追加イベントであるため、タブ制御スクリプトへ追加情報を渡し、画面共有領域内の共有画面ＩＤが４の画面、つまり共有画面Ｙと対応するタブが追加される（Ｓ０８０３）。
端末Ｂ２０００側においても同様に共有画面Ｙと対応するタブが追加される（Ｓ０８０４〜Ｓ０８０５）。
【０１０４】
以上で接続状態管理テーブルの変化に関わる全ての端末の画面共有関係の更新が完了する。
【０１０５】
以上のように、本実施の形態によれば、接続状態管理が接続状態管理テーブルの変化を検知した結果を画面更新通知部と連携して統合画面のタブ制御スクリプトを用いて、タブと共有画面の追加・削除を行うことで、端末間におけるＷｅｂ画面の共有関係が動的に変化するような場合でも、端末間の画面共有状態を接続状態管理テーブルに従った状態へ遷移させることができる。
【０１０６】
以上、本実施の形態では、複数端末間の複数Ｗｅｂ画面共有の関係の変化を検知できる機能を備えたＷｅｂ画面共有・統合装置を説明した。
【０１０７】
実施の形態４．
以上の実施の形態では、端末間で共有する画面は全てＷｅｂ画面共有・統合サーバ上に配置された画面を対象としたものであるが、次は共有する画面としてＷｅｂ画面共有・統合サーバの外部にあるＷｅｂサーバの画面を共有するような場合の実施の形態を示す。
【０１０８】
図４６は、３端末間においてＷｅｂ画面共有・統合サーバ上にある２種類のＷｅｂ画面と外部Ｗｅｂサーバ上にある１種類のＷｅｂ画面を共有する方式を示すシステム構成図である。
【０１０９】
図４６において、実施の形態２のシステム構成図（図１８）から変更された機能はイベント送信スクリプト３１１２とリクエスト管理部３２００、追加された機能は外部Ｗｅｂサーバ５０００であり、他の機能は実施の形態２及び実施の形態３と同様である。
【０１１０】
イベント送信スクリプト３１１２は、共有画面ＩＤとイベントの種類によってイベントを変換してリクエスト管理部３２００へ送信するスクリプトである。
リクエスト管理部３２００は、受信したイベント情報もしくはリクエスト転送イベントで外部Ｗｅｂサーバ５０００と通信した結果を画面更新通知部３３００へ転送する機能である。
外部Ｗｅｂサーバ５０００（サーバ装置）は、Ｗｅｂ画面共有・統合サーバ３０００の外部にある画面共有の対象となるＷｅｂアプリケーションなどである。
【０１１１】
図４７は、外部Ｗｅｂサーバ上にある画面を共有する場合の接続状態管理テーブルの内容である。外部Ｗｅｂサーバ上にある画面は共有画面ＩＤを負の値で設定する。
【０１１２】
次に動作について説明する。
各機能の動作はフローチャートを用いて、各機能を組み合わせた全体の動作はシーケンス図を用いて実施の形態３とは異なる部分についてのみ説明する。
【０１１３】
図４８は、イベント送信スクリプト１１１２とイベント送信スクリプト２１１２とイベント送信スクリプト４１１２における処理フローチャートである。
図４８（ａ）に示すように、各イベント送信スクリプトでは初期処理として、画面更新問い合わせをリクエスト管理部へ送る（Ｆ１６００）。
また、図４８（ｂ）に示すように、画面共有中はイベント制御スクリプトからの呼び出しで、受け取ったイベント情報の内容によって処理が分かれる（Ｆ１６０１〜Ｆ１６０２）。
イベント情報で共有画面ＩＤが負の値でかつイベントの種類がＰＯＳＴやＧＥＴといったリクエスト発生によるイベントの場合、リクエスト内容とその宛先をリクエスト転送イベントとしてリクエスト管理部３２００へ送る（Ｆ１６０３）。
それ以外のイベント情報の場合、イベント制御スクリプトから受け取った情報をリクエスト管理部３２００へ送る（Ｆ１６０４）。
【０１１４】
図４９は、リクエスト管理部３２００における処理フローチャートである。
リクエスト管理部３２００ではイベント送信スクリプトからの呼び出しで、受け取ったイベント情報の内容によって処理が分かれる（Ｆ１７００）。
イベントの種類がリクエスト転送イベントの場合、イベント情報に含まれるリクエストの宛先へリクエスト内容を送信し、そのレスポンスを画面更新イベントとして画面更新通知部へ送る（Ｆ１７０１）。
それ以外のイベント情報の場合、イベント送信スクリプトからの情報を画面更新通知部へ転送する（Ｆ１７０２）。
【０１１５】
各機能を組み合わせた全体の動作で実施の形態３と異なる点は、共有画面として外部Ｗｅｂサーバ上の画面が用いられた場合に、共有画面内から外部ＷｅｂサーバへのＨＴＴＰリクエストを送信するためにリクエスト管理部を経由する点であり、その動作部分についてシーケンス図を用いて説明する。
【０１１６】
図５０及び図５１は、端末Ｂ２０００においてユーザがＷｅｂブラウザ２１００に表示された統合画面２５１０の画面共有領域における共有画面Ｚ（外部Ｗｅｂサーバの画面）内のサブミットボタンをクリックした場合に、その操作結果（画面遷移結果）が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末Ｂ２０００のＷｅｂブラウザ２１００で端末Ｃ４０００のＷｅｂブラウザ４１００と共有されている外部Ｗｅｂサーバ５０００上の画面の共有画面Ｚを画面遷移操作した結果が、図４７に示す接続状態管理テーブルに従い、Ｗｅｂブラウザ２１００とＷｅｂブラウザ４１００で同時に反映されるまでの動作を説明する。
【０１１７】
図５０に示すように、端末Ｂ２０００においてユーザがＷｅｂブラウザ２１００に表示された統合画面２５１０の画面共有領域における共有画面Ｚ内のサブミットボタンをクリックすると（Ｓ０９００）、Ｗｅｂブラウザ２１００にはイベント制御スクリプト２１１１から画面共有領域におけるユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト２１１１へ渡す（Ｓ０９０１）。
イベント制御スクリプト２１１１は、イベントからイベント情報としてイベントの種類（この場合はサブミット）、イベントが発生した場所（この場合はサブミットボタンの場所）を取得し（Ｓ０９０２）、イベント送信スクリプト２１１２へ渡す（Ｓ０９０３）。
イベント送信スクリプト２１１２は、共有画面ＩＤが負の値かつ受け取ったイベント情報がリクエストを送信するタイプであるため、リクエスト送信先とリクエスト内容を取得し、リクエスト転送イベントとして（Ｓ０９０４）、リクエスト管理部３２００へ送信する（Ｓ０９０５）。
【０１１８】
図５１に示すように、リクエスト管理部３２００は、受け取ったイベント情報がリクエスト転送イベントであるため、リクエスト送信先である外部Ｗｅｂサーバ５０００へリクエスト内容を送信し、結果を取得する（Ｓ０９０６）。
取得した結果は画面更新通知部３３００へ転送する（Ｓ０９０７）。
以降の処理は図３８のＳ０６０６〜Ｓ０６１３の場合と同様にＷｅｂブラウザ２１００上の共有画面ＺとＷｅｂブラウザ４１００上の共有画面Ｚで画面更新イベントとして外部Ｗｅｂサーバ５０００からのリクエスト結果が反映される（Ｓ０９０８〜Ｓ０９１５）。
【０１１９】
以上で、端末Ｂ２０００上の外部Ｗｅｂサーバの画面で発生したユーザ操作が、図４７に示す接続状態管理テーブルに従い、端末Ｂ２０００のＷｅｂブラウザ２１００における統合画面２５１０の画面共有領域にある共有画面Ｚと端末Ｃ４０００のＷｅｂブラウザ４１００における統合画面４５１０の画面共有領域にある共有画面Ｚで、Ｗｅｂ画面共有・統合サーバ３０００内の共有画面の共有と同じように動作し、各画面の表示が全く同じになり共有された状態となる。
【０１２０】
以上のように、本実施の形態によれば、イベント送信スクリプトが外部Ｗｅｂサーバへのリクエストをリクエスト管理部が中継するようにし、リクエスト管理部は外部Ｗｅｂサーバからの結果を画面更新として画面更新通知部に配信させることで、共有する画面としてＷｅｂ画面共有・統合サーバの外部にあるＷｅｂサーバの画面を共有することができる。
また、統合画面上では外部Ｗｅｂサーバの画面がはめ込まれたことになり、外部のＷｅｂ資源を再利用できる。
【０１２１】
以上、本実施の形態では、共有画面からリクエストを外部Ｗｅｂサーバへ転送できる機能と、外部Ｗｅｂサーバへのリクエスト転送結果を共有画面に反映できる機能を備えたＷｅｂ画面共有・統合装置を説明した。
【０１２２】
最後に、実施の形態１〜４に示したＷｅｂ画面共有・統合サーバ３０００のハードウェア構成例について説明する。
図５２は、実施の形態１〜４に示すＷｅｂ画面共有・統合サーバ３０００のハードウェア資源の一例を示す図である。
なお、図５２の構成は、あくまでもＷｅｂ画面共有・統合サーバ３０００のハードウェア構成の一例を示すものであり、Ｗｅｂ画面共有・統合サーバ３０００のハードウェア構成は図５２に記載の構成に限らず、他の構成であってもよい。
【０１２３】
図５２において、Ｗｅｂ画面共有・統合サーバ３０００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【０１２４】
通信ボード９１５は、ネットワークに接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）、ＳＡＮ（ストレージエリアネットワーク）などに接続されていても構わない。
【０１２５】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【０１２６】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【０１２７】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
Ｗｅｂ画面共有・統合サーバ３０００の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【０１２８】
上記プログラム群９２３には、実施の形態１〜４の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【０１２９】
ファイル群９２４には、例えば、共有画面３１１０、イベント制御スクリプト３１１１、イベント送信スクリプト３１１２、イベント受信スクリプト３１１３等が記憶されている。
また、ファイル群９２４には、実施の形態１〜４の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１〜４で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【０１３０】
また、実施の形態１〜４の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１〜４の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜４の「〜部」の手順や方法をコンピュータに実行させるものである。
【０１３１】
このように、実施の形態１〜４に示すＷｅｂ画面共有・統合サーバ３０００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【０１３２】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係る端末の処理を示すフローチャート図。
【図３】実施の形態１に係るＷｅｂブラウザの処理を示すフローチャート図。
【図４】実施の形態１に係るイベント制御スクリプトの処理を示すフローチャート図。
【図５】実施の形態１に係るイベント制御スクリプトの処理を示すフローチャート図。
【図６】実施の形態１に係るイベント送信スクリプトの処理を示すフローチャート図。
【図７】実施の形態１に係るイベント受信スクリプトの処理を示すフローチャート図。
【図８】実施の形態１に係る統合画面生成部の処理を示すフローチャート図。
【図９】実施の形態１に係るリクエスト管理部の処理を示すフローチャート図。
【図１０】実施の形態１に係る画面更新通知部の処理を示すフローチャート図。
【図１１】実施の形態１に係る端末Ａが共有画面を表示するときの処理シーケンス図。
【図１２】実施の形態１に係る端末Ａが共有画面を表示するときの処理シーケンス図。
【図１３】実施の形態１に係る端末Ｂが共有画面を表示するときの処理シーケンス図。
【図１４】実施の形態１に係る端末Ｂが共有画面を表示するときの処理シーケンス図。
【図１５】実施の形態１に係る端末Ｂが共有画面を表示するときの処理シーケンス図。
【図１６】実施の形態１に係る端末Ａが共有画面を操作したときの処理シーケンス図。
【図１７】実施の形態１に係る端末Ａが共有画面を操作したときの処理シーケンス図。
【図１８】実施の形態２に係るシステム構成例を示す図。
【図１９】実施の形態２に係る統合画面の画面レイアウト例を示す図。
【図２０】実施の形態２に係る接続状態管理テーブルの例を示す図。
【図２１】実施の形態２に係る統合画面生成部の処理を示すフローチャート図。
【図２２】実施の形態２に係るイベント制御スクリプトの処理を示すフローチャート図。
【図２３】実施の形態２に係るイベント制御スクリプトの処理を示すフローチャート図。
【図２４】実施の形態２に係る画面更新通知部の処理を示すフローチャート図。
【図２５】実施の形態２に係る統合画面のタブ制御スクリプトの処理を示すフローチャート図。
【図２６】実施の形態２に係る接続管理部の処理を示すフローチャート図。
【図２７】実施の形態２に係る端末Ａが統合画面を表示するときの処理シーケンス図。
【図２８】実施の形態２に係る端末Ａが統合画面を表示するときの処理シーケンス図。
【図２９】実施の形態２に係る端末Ｂが統合画面を表示するときの処理シーケンス図。
【図３０】実施の形態２に係る端末Ｂが統合画面を表示するときの処理シーケンス図。
【図３１】実施の形態２に係る端末Ｂが統合画面を表示するときの処理シーケンス図。
【図３２】実施の形態２に係る端末Ｂが統合画面を表示するときの処理シーケンス図。
【図３３】実施の形態２に係る端末Ｃが統合画面を表示するときの処理シーケンス図。
【図３４】実施の形態２に係る端末Ｃが統合画面を表示するときの処理シーケンス図。
【図３５】実施の形態２に係る端末Ｃが統合画面を表示するときの処理シーケンス図。
【図３６】実施の形態２に係る端末Ｃが統合画面を表示するときの処理シーケンス図。
【図３７】実施の形態２に係る端末Ａが統合画面の画面共有領域を操作したときの処理シーケンス図。
【図３８】実施の形態２に係る端末Ａが統合画面の画面共有領域を操作したときの処理シーケンス図。
【図３９】実施の形態３に係る共有関係の変化の例を示す図。
【図４０】実施の形態３に係るイベント制御スクリプトの処理を示すフローチャート図。
【図４１】実施の形態３に係るイベント制御スクリプトの処理を示すフローチャート図。
【図４２】実施の形態３に係る統合画面のタブ制御スクリプトの処理を示すフローチャート図。
【図４３】実施の形態３に係る接続管理部の処理を示すフローチャート図。
【図４４】実施の形態３に係る接続状態管理テーブルが状態１から状態２へ変化したときの処理シーケンス図。
【図４５】実施の形態３に係る接続状態管理テーブルが状態２から状態３へ変化したときの処理シーケンス図。
【図４６】実施の形態４に係るシステム構成例を示す図。
【図４７】実施の形態４に係る接続状態管理テーブルの例を示す図。
【図４８】実施の形態４に係るイベント送信スクリプトの処理を示すフローチャート図。
【図４９】実施の形態４に係るリクエスト管理部の処理を示すフローチャート図。
【図５０】実施の形態４に係る外部Ｗｅｂサーバへのリクエストをリクエスト管理部が中継するときの処理シーケンス図。
【図５１】実施の形態４に係る外部Ｗｅｂサーバへのリクエストをリクエスト管理部が中継するときの処理シーケンス図。
【図５２】実施の形態１〜４に係るＷｅｂ画面共有・統合サーバのハードウェア構成例を示す図。
【符号の説明】
【０１３３】
１０００  端末Ａ、１１００  Ｗｅｂブラウザ、１１１０  共有画面、１１１１  イベント制御スクリプト、１１１２  イベント送信スクリプト、１１１３  イベント受信スクリプト、１５１０  統合画面、２０００  端末Ｂ、２１００  Ｗｅｂブラウザ、２１１０  共有画面、２１１１  イベント制御スクリプト、２１１２  イベント送信スクリプト、２１１３  イベント受信スクリプト、２５１０  統合画面、３０００  Ｗｅｂ画面共有・統合サーバ、３１００  統合画面生成部、３１１０  共有画面、３１２０  共有画面、３１１１  イベント制御スクリプト、３１１２  イベント送信スクリプト、３１１３  イベント受信スクリプト、３２００  リクエスト管理部、３３００  画面更新通知部、３４００  接続管理部、３５００  統合画面、４０００  端末Ｃ、４１００  Ｗｅｂブラウザ、４１１１  イベント制御スクリプト、４１１２  イベント送信スクリプト、４１１３  イベント受信スクリプト、４５１０  統合画面、５０００  外部Ｗｅｂサーバ。
【図１】
2010152772.tif 000003
【図２】
2010152772.tif 000004
【図３】
2010152772.tif 000005
【図４】
2010152772.tif 000006
【図５】
2010152772.tif 000007
【図６】
2010152772.tif 000008
【図７】
2010152772.tif 000009
【図８】
2010152772.tif 000010
【図９】
2010152772.tif 000011
【図１０】
2010152772.tif 000012
【図１１】
2010152772.tif 000013
【図１２】
2010152772.tif 000014
【図１３】
2010152772.tif 000015
【図１４】
2010152772.tif 000016
【図１５】
2010152772.tif 000017
【図１６】
2010152772.tif 000018
【図１７】
2010152772.tif 000019
【図１８】
2010152772.tif 000020
【図１９】
2010152772.tif 000021
【図２０】
2010152772.tif 000022
【図２１】
2010152772.tif 000023
【図２２】
2010152772.tif 000024
【図２３】
2010152772.tif 000025
【図２４】
2010152772.tif 000026
【図２５】
2010152772.tif 000027
【図２６】
2010152772.tif 000028
【図２７】
2010152772.tif 000029
【図２８】
2010152772.tif 000030
【図２９】
2010152772.tif 000031
【図３０】
2010152772.tif 000032
【図３１】
2010152772.tif 000033
【図３２】
2010152772.tif 000034
【図３３】
2010152772.tif 000035
【図３４】
2010152772.tif 000036
【図３５】
2010152772.tif 000037
【図３６】
2010152772.tif 000038
【図３７】
2010152772.tif 000039
【図３８】
2010152772.tif 000040
【図３９】
2010152772.tif 000041
【図４０】
2010152772.tif 000042
【図４１】
2010152772.tif 000043
【図４２】
2010152772.tif 000044
【図４３】
2010152772.tif 000045
【図４４】
2010152772.tif 000046
【図４５】
2010152772.tif 000047
【図４６】
2010152772.tif 000048
【図４７】
2010152772.tif 000049
【図４８】
2010152772.tif 000050
【図４９】
2010152772.tif 000051
【図５０】
2010152772.tif 000052
【図５１】
2010152772.tif 000053
【図５２】
2010152772.tif 000054