JP5197351B2 - 情報処理装置及び情報処理方法及びプログラム - Google Patents

情報処理装置及び情報処理方法及びプログラム Download PDF

Info

Publication number
JP5197351B2
JP5197351B2 JP2008331772A JP2008331772A JP5197351B2 JP 5197351 B2 JP5197351 B2 JP 5197351B2 JP 2008331772 A JP2008331772 A JP 2008331772A JP 2008331772 A JP2008331772 A JP 2008331772A JP 5197351 B2 JP5197351 B2 JP 5197351B2
Authority
JP
Japan
Prior art keywords
shared
screen
screen information
terminal device
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008331772A
Other languages
English (en)
Other versions
JP2010152772A (ja
Inventor
良太 塚本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008331772A priority Critical patent/JP5197351B2/ja
Publication of JP2010152772A publication Critical patent/JP2010152772A/ja
Application granted granted Critical
Publication of JP5197351B2 publication Critical patent/JP5197351B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、複数の端末装置において同一の画面情報を共有させる技術に関し、特に、複数の端末装置において同一のWeb画面情報を共有させる技術に関する。
従来の複数のWeb画面を統合する手段は、統合用サーバにおいて統合するWeb画面のHTML(HyperText Markup Language)内に記述された相対URL(Uniform Resource Locator)を絶対URLに書き換え、あらかじめ用意しておいた画面テンプレートにそれぞれのWeb画面をはめ込むことによって、複数のWeb画面を統合している(例えば、特許文献1)。
また、画面の共有の手段は、端末上でWebブラウザと画面同期用プログラムを連携させ、画面共有用サーバが同期情報を中継することによって、端末間でWebブラウザの画面表示状態を共有している(例えば、特許文献2、特許文献3)。
特開2004−287758号公報 特開2003−44429号公報 特開2004−70517号公報
従来のWeb画面統合技術は、あらかじめ用意しておいた画面テンプレートにWeb画面をはめ込むため、統合画面をWebブラウザで閲覧中に統合状態を動的に変えることができないという課題がある。
また、統合用サーバ上でURLの書き換えを行うため、サーバ負荷が大きいという課題がある。
また、従来のWeb画面共有技術は、クライアント端末に画面同期用プログラムを必要とするため、画面同期用プログラムのインストール作業が必要になるという課題がある。
また、画面共有用サーバが同期情報を中継する宛先として複数端末に対応できる情報を管理していないため、n端末対n端末での画面共有はできないという課題がある。
この発明は、上記のような課題を解決することを主な目的の一つとし、複数の共有画面を動的に統合し、端末への特別なプログラムのインストールを必要とせずに、n端末対n端末で画面を共有することを主な目的とする。
本発明に係る情報処理装置は、
画面情報を表示する複数の端末装置に接続された情報処理装置であって、
前記複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理部と、
前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信部と、
前記共有制御受信部により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信部とを有することを特徴とする。
本発明によれば、情報処理装置が、共有画面情報に制御手段、受信手段、送信手段が組み込まれた組み込み共有画面情報を共有端末装置に送信し、また、共有端末装置で動作している制御手段により取得された操作内容を受信し、他方の共有端末装置に送信するため、各端末装置に画面同期用プログラムをインストールすることなく端末装置間で画面を共有することができる。
実施の形態1.
図1は、本実施の形態に係る複数端末間における1種類のWeb画面を共有する方式を示すシステム構成図である。
図1において、端末装置A1000、端末装置B2000はWebブラウザが実行できる端末である。また、端末装置A1000、端末装置B2000はWebブラウザ上でスクリプトを実行することができる。
なお、端末装置A1000、端末装置B2000は、それぞれ、端末A1000、端末B2000とも表記する。
Web画面共有・統合サーバ3000は、各端末へ共有画面を提供するWebアプリケーションサーバである。
Web画面共有・統合サーバ3000は、情報処理装置の例である。
端末A1000において、Webブラウザ1100は、Web画面を閲覧できるブラウザである。
共有画面1110は、Web画面共有・統合サーバ3000から読み込まれるWeb画面である。
イベント制御スクリプト1111は、共有画面1110上でのユーザの操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト1112は、発生したイベントの情報をWeb画面共有・統合サーバ3000へ送信するスクリプトである。
イベント受信スクリプト1113は、Web画面共有・統合サーバ3000から他端末で発生したイベントの情報を受信するスクリプトである。
端末B2000においても、端末A1000と同様に、Webブラウザ2100はWeb画面を閲覧できるブラウザである。
共有画面2110は、Web画面共有・統合サーバ3000から読み込まれるWeb画面である。
イベント制御スクリプト2111は、共有画面2110上でのユーザの操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト2112は、発生したイベントの情報をWeb画面共有・統合サーバ3000へ送信するスクリプトである。
イベント受信スクリプト2113は、Web画面共有・統合サーバ3000から他端末で発生したイベントの情報を受信するスクリプトである。
なお、後述するように、イベント制御スクリプト1111、イベント送信スクリプト1112及びイベント受信スクリプト1113は共有画面1110に組み込まれて、Web画面共有・統合サーバ3000から端末A1000に送信される。
同様に、イベント制御スクリプト2111、イベント送信スクリプト2112及びイベント受信スクリプト2113は共有画面2110に組み込まれて、Web画面共有・統合サーバ3000から端末B2000に送信される。
Web画面共有・統合サーバ3000において、統合画面生成部3100は、Webブラウザ1100、Webブラウザ2100間で共有される画面を共有画面3110、イベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113から生成する機能である。
共有画面3110は、端末A1000及び端末B2000の間で共有する画面HTMLもしくはWebアプリケーションである。
共有画面3110、イベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113は端末A1000、端末B2000と同様である。
具体的には、イベント制御スクリプト3111は、ユーザのWeb画面操作イベントを取得・発生させるスクリプトである。
イベント送信スクリプト3112は、発生したイベントの情報をWeb画面共有・統合サーバ3000へ送信するスクリプトである。
イベント受信スクリプト3113は、Web画面共有・統合サーバ3000から他端末で発生したイベントの情報を受信するスクリプトである。
リクエスト管理部3200は、各端末のイベント送信スクリプトから送信されるイベント情報を受信し画面更新通知部3300へ通知する機能である。
画面更新通知部3300は、リクエスト管理部3200から受け取ったイベント情報を各端末のイベント受信スクリプトへ送信する機能である。
換言すると、イベント制御スクリプト3111は、複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置(図1では、端末A1000及び端末B2000)の各々で動作し各々の共有端末装置で行われた操作内容を取得する手段である。また、イベント制御スクリプト3111は、ある共有端末装置で動作した際に他の共有端末装置における操作内容を、当該共有端末装置において表示されている共有画面に反映させる手段である。なお、イベント制御スクリプト3111は、制御手段の例である。
また、イベント送信スクリプト3112は、共有端末装置で動作し送信処理を行う手段であり、
送信手段の例である。
また、イベント受信スクリプト3113は、共有端末装置で動作し受信処理を行う手段であり、受信手段の例である。
そして、統合画面生成部3100は、共有端末装置で共有される共有画面3110(共有画面情報)にイベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113を組み込み、これらスクリプトが組み込まれた共有画面3110(組み込み共有画面情報)を各々の共有端末装置に対して送信する。
端末A1000に送信された後の共有画面3110、イベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113を、共有画面1110、イベント制御スクリプト1111、イベント送信スクリプト1112、イベント受信スクリプト1113と表記し、端末B2000に送信された後の共有画面3110、イベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113を、共有画面2110、イベント制御スクリプト2111、イベント送信スクリプト2112、イベント受信スクリプト2113と表記している。
なお、統合画面生成部3100は、共有画面情報管理部の例である。
リクエスト管理部3200は、統合画面生成部3100によりスクリプトが組み込まれた共有画面3110が送信された後に、いずれかの共有端末装置で動作しているイベント制御スクリプト111(又はイベント制御スクリプト2111)が取得しイベント送信スクリプト1112(又はイベント送信スクリプト1112)が送信した、当該共有端末装置で行われた操作内容を受信する。
リクエスト管理部3200は、共有制御受信部の例である。
画面更新通知部3300は、リクエスト管理部3200により受信された操作内容を、他の共有端末装置のイベント受信スクリプト2113(又はイベント受信スクリプト1113)に対して送信する。
画面更新通知部3300は、共有制御送信部の例である。
ここで、図1の構成に基づいて、本実施の形態に係る動作の概要を説明する。
端末A1000又は端末B2000からの要求に基づき、Web画面共有・統合サーバ3000の統合画面生成部3100が共有画面3110にイベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113を組み込む。
そして、これらスクリプトが組み込まれた共有画面3110を統合画面生成部3100が端末A1000及び端末B2000に送信する。
各端末1000、2000では、各スクリプトを実行可能であり、イベント制御スクリプト1111、イベント制御スクリプト2111が端末A1000、端末B2000での操作内容を取得し、イベント送信スクリプト1112、イベント送信スクリプト2112が操作内容をリクエスト管理部3200に送信する。
そして、Web画面共有・統合サーバ3000では、画面更新通知部3300がリクエスト管理部3200から一方の端末の操作内容を取得し、一方の端末の操作内容を他方の端末のイベント受信スクリプト1113、イベント受信スクリプト2113に送信する。
当該他方の端末では、イベント制御スクリプト1111、イベント制御スクリプト2111が、受信した操作内容を共有画面に反映させて、2つの端末において共有画面の表示が全く同じになり共有された状態になる。
また、各端末において、イベント制御スクリプト1111、イベント制御スクリプト2111は、他方の端末における共有画面の画面状態を通知するように要求する画面更新問合せ(通知要求)をリクエスト管理部3200に送信する。
そして、Web画面共有・統合サーバ3000では、画面更新通知部3300がリクエスト管理部3200から画面更新問合せを取得し、他方の端末のイベント受信スクリプト1113、イベント受信スクリプト2113に更新画面問合せを転送する。
他方の端末(更新画面問合せの転送先の端末)では、イベント制御スクリプト1111、イベント制御スクリプト2111が共有画面の画面状態を取得し、イベント送信スクリプト1112、イベント送信スクリプト2112が共有画面の画面状態をリクエスト管理部3200に送信する。
そして、Web画面共有・統合サーバ3000において、画面更新通知部3300がリクエスト管理部3200から共有画面の画面状態を取得し、他方の端末における共有画面の画面状態を一方の端末(更新画面問合せの送信元の端末)のイベント受信スクリプト1113、イベント受信スクリプト2113に送信する。
当該一方の端末では、イベント制御スクリプト1111、イベント制御スクリプト2111が、受信した共有画面の画面状態を共有画面に反映させて、2つの端末において共有画面の表示が全く同じになり共有された状態になる。
次に、フローチャートを用いて各機能の動作を詳細に説明し、また、各機能を組み合わせた全体の動作の詳細はシーケンス図を用いて説明する。
図2は、端末A1000と端末B2000における処理フローチャートである。
各端末では初期処理として、図2(a)に示すように、Webブラウザを起動し(F0000)、画面読み込みを行う(F0001)。
また、画面共有中は、図2(b)に示すように、端末上ではWebブラウザをユーザが操作する処理がある(F0002)。
図3は、Webブラウザ1100とWebブラウザ2100における処理フローチャートである。
各Webブラウザでは、図3(a)に示すように、初期処理として共有画面の読み込みを行い(F0100)、共有画面を表示する(F0101)。
また、画面共有中は、図3(b)に示すように、Webブラウザ上では画面クリックや文字入力などのユーザ操作が実行されると(F0102)、共有画面内に組み込まれたイベント制御スクリプトによって画面が更新される(F0103)。
図4及び図5はイベント制御スクリプト1111とイベント制御スクリプト2111における処理フローチャートである。
各イベント制御スクリプトでは、初期処理として、図4(a)に示すように、イベント受信スクリプトの初期化(F0200)、イベント送信スクリプトの初期化(F0201)の順で初期化を行い、最後に画面上のユーザ操作をイベントとしてインターセプトすることをWebブラウザへ通知する(F0202)。
また、画面共有中は、図4(b)に示すように、共有画面上で画面クリックや文字入力などのユーザ操作が発生すると、そのユーザ操作の種類と発生した場所の情報をイベント情報として取得し(F0203)、イベント情報をイベント送信スクリプトへ渡す(F0204)。
イベント受信スクリプトから呼び出しがあった場合は、図5に示すように、イベント受信スクリプトから受け取った情報に含まれるイベントの種類によって処理が分かれる(F0205)。
イベントの種類が画面更新問い合わせの場合、画面スクロール量、文字列入力状態などの現時点の画面表示情報を取得し(F0206)、取得した画面表示情報をイベント送信スクリプトへ渡す(F0207)。
イベントの種類が画面更新問い合わせの返信の場合、イベント受信スクリプトより受け取った画面表示情報を共有画面上に反映させる(F0208)。
イベントの種類がWebブラウザのユーザ操作イベントの場合、イベント受信スクリプトより受け取ったイベント情報から、全く同様のイベントを共有画面上に発生させる(F0209)。
図6は、イベント送信スクリプト1112とイベント送信スクリプト2112における処理フローチャートである。
各イベント送信スクリプトでは初期処理として、図6(a)に示すように、画面更新問い合わせをリクエスト管理部へ送る(F0300)。
また、画面共有中は、図6(b)に示すように、イベント制御スクリプトからの呼び出しにより、イベント制御スクリプトから受け取った情報をリクエスト管理部へ送信する(F0301)。
図7は、イベント受信スクリプト1113とイベント受信スクリプト2113における処理フローチャートである。
各イベント受信スクリプトでは、初期処理として、図7(a)に示すように、受信接続通知を画面更新通知部へ送る(F0400)。
また、画面共有中は、図7(b)に示すように、画面更新通知部3300からの呼び出しにより、画面更新通知部3300から受け取った情報をイベント制御スクリプトへ送る(F0401)。
図8は、統合画面生成部3100における処理フローチャートである。
統合画面生成部3100では、Webブラウザから画面取得処理を受け取ると、共有画面のHTMLにイベント制御スクリプト、イベント送信スクリプト、イベント受信スクリプトを埋め込み(F0500)、各スクリプトが埋め込まれた画面を共有画面としてWebブラウザへ返す(F0501)。
図9は、リクエスト管理部3200における処理フローチャートである。
リクエスト管理部3200ではイベント送信スクリプトからの呼び出しを受けると、イベント送信スクリプトからの情報を画面更新通知部3300へ転送する(F0600)。
図10は、画面更新通知部3300における処理フローチャートである。
画面更新通知部3300では、図10(a)に示すように、イベント受信スクリプトからの呼び出し(受信接続通知)があると、情報配信先として端末の受信接続を保持する(F0700)。
また、図10(b)に示すように、リクエスト管理部3200からの呼び出しがあると、リクエスト管理部3200が得た情報の情報源となる端末以外から受信接続通知があるかどうかで処理が分かれる(F0701)。
情報源となる端末以外からの受信接続通知がある場合、イベント情報の配信か否かでさらに処理が分かれる(F0702)。
イベント情報の配信の場合、リクエスト管理部からの情報を全受信接続先へ送信する(F0703)。
イベント情報の配信でない場合、リクエスト管理部からの情報を情報源以外のランダムに選んだ一つの受信接続先へ送信する(F0704)。
情報源となる端末以外からの受信接続通知が無い場合、何もしない。
次に、各機能を組み合わせた全体の動作を、端末A1000が最初に共有画面を表示し、次に端末B2000が共有画面を表示し、端末A1000で表示されている状態と同一になるまでの動作と、端末A1000においてユーザが共有画面1110を操作した結果が各端末における共有画面上に反映されるまでの動作に分けて説明する。
まず、端末A1000のWebブラウザ1100と端末B2000のWebブラウザ2100が同一の画面を表示するまでの動作について説明する。
ここでは端末A1000のWebブラウザ1100が先に共有画面を表示し、その後で端末B2000のWebブラウザ2100が共有画面を表示する。
表示順序が逆の場合も動作は同様である。
図11及び図12は、端末A1000のWebブラウザ1100が共有画面を表示するまでの動作を示したシーケンス図である。
これを用いてWebブラウザ1100が共有画面を表示するまでの動作を説明する。
前提として、図11に示すように、Web画面共有・統合サーバ3000では既に統合画面生成部3100とリクエスト管理部3200と画面更新通知部3300が起動されているものとする(S0000〜S0002)。
そして、端末A1000において、ユーザ操作によってWebブラウザ1100が起動され(S0003)、ユーザがWebブラウザ1100に対して画面読み込みを要求する(S0004)。
Webブラウザ1100は、統合画面生成部3100へ共有画面読み込みリクエストを送信する(S0005)。
共有画面読み込みリクエストを受信した統合画面生成部3100では図1に示した共有画面3110にイベント制御スクリプト3111とイベント送信スクリプト3112とイベント受信スクリプト3113を組み込み、端末A1000に送信する画面を生成する(S0006)(共有画面情報管理ステップ)。
そして、生成された画面は統合画面生成部3100からWebブラウザ1100へ返信される(S0007)(共有画面情報管理ステップ)。
次に、図12に示すように、Webブラウザ1100は受け取った画面を共有画面1110として表示する(S0008)。
これに伴って共有画面1110に組み込まれているイベント制御スクリプト1111、イベント送信スクリプト1112、イベント受信スクリプト1113も動作を開始する。
イベント制御スクリプト1111は、イベント受信スクリプト1113の初期化処理を呼び(S0009)、イベント受信スクリプト1113は初期化処理として画面更新通知部3300へ受信接続通知を行う(S0010)。
続いて、イベント制御スクリプト1111は、イベント送信スクリプト1112の初期化処理を呼び(S0011)、イベント送信スクリプト1112は初期化処理としてリクエスト管理部3200へ画面更新問い合わせを行う(S0012)。
画面更新問い合わせを受けたリクエスト管理部3200は問い合わせを画面更新通知部3300へ転送する(S0014)。
この画面更新問合せは、他の端末における共有画面の画面状態を通知するよう要求する情報(通知要求)である。
画面更新問合せを受信した画面更新通知部3300は、画面の共有相手となる端末B2000のWebブラウザ2100がまだ共有画面へ接続していない(端末B2000から受信接続通知を受信していない)ため何もしない(S0015)。
また、イベント制御スクリプト1111は初期化処理として最後にWebブラウザ1100へユーザ操作をイベントとしてインターセプトすることを通知する(S0013)。
以上で端末A1000のWebブラウザ1100における共有画面表示が完了する。
図13、図14、図15は端末B2000のWebブラウザ2100が共有画面を表示するまでの動作を示したシーケンス図である。
これを用いてWebブラウザ2100が共有画面を端末A1000のWebブラウザ1100が表示している状態と同じ状態で表示するまでの動作を説明する。
図13に示すように、端末B2000において、端末A1000の場合(図12:S0003〜S0008)と同様に共有画面2110を表示する(S0100〜S0105)。
なお、端末A1000では、図11及び図12で説明したように、既に、共有画面1110を受信済みであり、イベント制御スクリプト1111、イベント送信スクリプト1112及びイベント受信スクリプト1113は起動済である。
次に、図14に示すように、端末B2000では、共有画面2110に組み込まれているイベント制御スクリプト2111、イベント送信スクリプト2112、イベント受信スクリプト2113が動作を開始する。
各スクリプトの初期化処理も端末A1000の場合(図12:S0009〜S0013)と同様に実行される(S0106〜S0110)。
イベント送信スクリプト2112の画面更新問い合わせを受けたリクエスト管理部3200は、その情報を画面更新通知部3300へ転送する(S0111)。
画面更新通知部3300は受け取った情報の情報源である端末B2000以外に、既に端末A1000の受信接続通知を受けており、また、イベント情報の配信ではないため、受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、端末A1000のみのため、端末A1000上のWebブラウザ1100のイベント受信スクリプト1113へ情報を転送する(S0112)。
次に、図15に示すように、端末A1000のイベント受信スクリプト1113は受け取った情報をイベント制御スクリプト1111へ転送し(S0113)、イベント制御スクリプト1111は受け取った情報が画面更新問い合わせであるため、共有画面1110の画面スクロール量や文字入力状態などの画面状態を取得する(S0114)。
そして、イベント制御スクリプト1111は、取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト1112へ渡し(S0115)、イベント送信スクリプト1112は画面更新問い合わせの返信をリクエスト管理部3200へ送信する(S0116)。
画面更新問い合わせの返信を受けたリクエスト管理部3200は、画面更新問い合わせの返信を画面更新通知部3300へ転送する(S0117)(共有制御受信ステップ)。
画面更新通知部3300は、受け取った情報の情報源である端末A1000以外に、端末B2000の受信接続通知を受けており、また、イベント情報の配信ではないため、受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、端末B2000のみのため、端末B2000上のWebブラウザ2100のイベント受信スクリプト2113へ情報を転送する(S0118)(共有制御送信ステップ)。
端末B2000のイベント受信スクリプト2113は、受け取った情報をイベント制御スクリプト2111へ転送し(S0119)、イベント制御スクリプト2111は受け取った情報が画面更新問い合わせの返信であるため、共有画面2110の画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する(S0120)。
以上で、端末A1000のWebブラウザ1100における共有画面1110と端末B2000のWebブラウザ2100における共有画面2110の表示が全く同じになり共有された状態となる。
図16及び図17は、端末A1000においてユーザがWebブラウザ1100に表示された共有画面1110の例えばボタンAをクリックした場合に、その操作結果が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末A1000でWebブラウザ1100を操作した結果が、端末B2000のWebブラウザ2100に同時に反映されるまでの動作を説明する。
図16に示すように、端末A1000においてユーザがWebブラウザ1100に表示された共有画面1110内のボタンAをクリックすると(S0200)、Webブラウザ1100にはイベント制御スクリプト1111からユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト1111へ渡す(S0201)。
イベント制御スクリプト1111は、イベントからイベント情報としてイベントの種類(この場合はクリック)、イベントが発生した場所(この場合はボタンAの場所)を取得し(S0202)、イベント送信スクリプト1112へ渡す(S0203)。
イベント送信スクリプト1112は、受け取ったイベント情報をリクエスト管理部3200へ送信する(S0204)。
次に、図17に示すように、リクエスト管理部3200は、受け取ったイベント情報を画面更新通知部3300へ転送し(S0205)、画面更新通知部3300は、受け取った情報の情報源である端末A1000以外に、端末B2000の受信接続通知を受けており、また、イベント情報の配信であるため、受信接続通知を受信済みである全ての配信先(イベント受信スクリプト)へイベント情報を送信する(S0206)。
端末A1000側でイベント情報を受け取ったイベント受信スクリプト1113は、イベント情報をイベント制御スクリプト1111へ転送し(S0207)、イベント制御スクリプト1111は受け取ったイベント情報を元に共有画面1110上にイベントを発生させる(S0208)。
一方、端末B2000側でイベント情報を受け取ったイベント受信スクリプト2113も端末A1000側と同様の動作をする(S0209〜S0210)。
以上で、端末A1000上で発生したユーザ操作が端末A1000のWebブラウザ1100における共有画面1110と端末B2000のWebブラウザ2100における共有画面2110で同じようにイベントとして動作し、各画面の表示が全く同じになり共有された状態となる。
以上のように、本実施の形態によれば、画面を共有するために必要な情報のやりとりを画面内に埋め込んだスクリプトのみで実現しているためクライアント端末に画面同期用プログラムを必要とせずに画面を共有することができる。
また、2端末以上の端末間における画面共有でも画面更新通知部が画面更新情報(画面情報、イベント情報)を受信接続通知してきた各端末へ配信可能であるため、複数端末間でWebブラウザに表示した画面を共有することができる。
以上、本実施の形態では、画面上で発生するユーザ操作イベントを取得・発生させる機能と、取得したイベント情報をサーバへ送信する機能と、サーバからのイベント情報を受信する機能を備えたWeb画面と、前記Web画面を生成する機能と、Web画面からのイベントを受信する機能とイベントを複数端末へ配信する機能を備えたサーバを用いてWeb画面を複数端末間で共有する実行装置を説明した。
実施の形態2.
以上の実施の形態1では複数端末間において1種類のWeb画面を共有するようにしたものであるが、次に複数端末間において複数種類のWeb画面を共有するような場合の実施の形態を示す。
図18は、3端末間において2種類のWeb画面を共有する方式を示すシステム構成図である。
図18において、実施の形態1のシステム構成図(図1)から変更された機能は統合画面生成部3100、イベント制御スクリプト3111、画面更新通知部3300である。
また、追加された機能は、統合画面3500、共有画面X3110、共有画面Y3120、接続管理部3400である。
他の機能は実施の形態1と同様である。
また、本実施の形態においても、統合画面生成部3100は共有画面情報管理部の例であり、リクエスト管理部3200は共有制御受信部の例であり、画面更新通知部3300は共有制御送信部の例である。
また、イベント制御スクリプト3111は制御手段の例であり、イベント送信スクリプト3112は送信手段の例であり、イベント受信スクリプト3113は受信手段の例である。
統合画面生成部3100は、端末のWebブラウザからのリクエストに応じて、接続管理部3400から得られる画面共有の接続状態管理テーブルを元に統合画面3500に共有画面X3110や共有画面Y3120とイベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113を組み込んだ画面を生成する機能である。
つまり、統合画面生成部3100は、1つの端末が2以上の共有画面を2以上の端末と共有する関係(例えば、端末A1000が共有画面Xを端末B2000と共有し、端末A1000が共有画面Yを端末C4000と共有する関係)にある場合に、2以上の共有画面(共有画面X、共有画面Y)を統合して統合画面(統合共有画面情報)とし、統合画面にイベント制御スクリプトとイベント送信スクリプトとイベント受信スクリプトとを組み込んだ画面(組み込み統合共有画面情報)を生成し、当該画面を2以上の共有画面を2以上の端末と共有している端末(端末A1000)に送信する。
また、他方の端末(端末B2000、端末C4000)には、対象となる共有画面にイベント制御スクリプトとイベント送信スクリプトとイベント受信スクリプトとを組み込んだ画面(組み込み共有情報)を生成し、当該画面を対象となる端末(端末B2000、端末C4000)に送信する。
なお、2以上の共有画面を2以上の端末と共有する関係にある端末(前述の例では、端末A1000)は、第1共有端末装置に相当し、他方の端末(前述の例では、端末B2000、端末C4000)は、第2共有端末装置に相当する。
イベント制御スクリプト3111は、画面内の特定領域でユーザのWeb画面操作イベントを取得・発生させるスクリプトである。
画面更新通知部3300は、接続管理部3400から得られる画面共有の接続状態管理テーブルを元に画面更新情報を各端末へ配信する機能である。
より具体的には、2以上の共有画面を2以上の端末と共有する関係にある端末で行われた操作内容をリクエスト管理部3200が受信した際に、画面更新通知部3300は、その操作内容が2以上の共有画面のうちのいずれの共有画面に対する操作内容であるかを判定し、判定した共有画面に対応する端末に対して、リクエスト管理部3200により受信された操作内容を送信する。
また、リクエスト管理部3200が、2以上の共有画面を2以上の端末と共有する関係にある端末から、画面更新問合せ(通知要求)を受信した場合に、画面更新通知部3300は、リクエスト管理部3200により受信された画面更新問合せを他方の端末の各々のイベント受信スクリプトに対して送信し、また、画面更新問合せに対する各端末からの応答を、画面更新問合せの送信元の端末(2以上の共有画面を2以上の端末と共有する関係にある端末)に送信する。
統合画面3500は、図19に示すような画面共有領域3501を持っており、この中に共有画面Xや共有画面YへのURLをはめ込み、共有画面X3504、共有画面Y3505として表示できるもので、タブ3502とタブ制御スクリプト3503によって画面共有領域3501内に表示している画面を切り替えることができるスクリプトが含まれたHTMLである。
共有画面X3110、共有画面Y3120は、共有する画面HTMLもしくはWebアプリケーションである。
接続管理部3400は図20に示す接続状態管理テーブルを参照する機能である。
次に動作について説明する。
各機能の動作はフローチャートを用いて説明し、各機能を組み合わせた全体の動作はシーケンス図を用いて説明する。各機能の動作については実施の形態1と異なる機能についてのみ説明する。
図21は統合画面生成部3100における処理フローチャートである。
統合画面生成部3100ではWebブラウザから画面取得処理を受け取ると、接続してきたWebブラウザが実行されている端末の情報を元に接続管理部3400から、共有画面のIDとURLの組を取得する(F0800)。
次に、統合画面生成部3100は、共有画面の情報の組を元に統合画面に共有画面ごとにタブを生成し、イベント制御スクリプト、イベント送信スクリプト、イベント受信スクリプトを埋め込み(F0801)、各共有画面がタブ埋め込まれ、各スクリプトが埋め込まれた画面を統合画面としてWebブラウザへ返す(F0802)。
図22及び図23はイベント制御スクリプト1111とイベント制御スクリプト2111とイベント制御スクリプト4111における処理フローチャートである。
図22(a)に示すように、各イベント制御スクリプトでは初期処理として、イベント受信スクリプトの初期化(F0900)、イベント送信スクリプトの初期化(F0901)の順で初期化を行い、最後に画面共有領域内におけるユーザ操作をイベントとしてインターセプトすることをWebブラウザへ通知する(F0902)。
また、図22(b)に示すように、画面共有中は、画面共有領域内で画面クリックや文字入力などのユーザ操作が発生すると、そのユーザ操作の種類と発生した場所(画面共有領域からの相対位置)の情報をイベント情報として取得し(F0903)、イベント情報とイベントが発生した共有画面の共有画面IDをイベント送信スクリプトへ渡す(F0904)。
また、図23に示すように、イベント受信スクリプトから呼び出しがあった場合は、イベント受信スクリプトから受け取った情報に含まれるイベントの種類によって処理が分かれる(F0905)。
イベントの画面更新問い合わせの場合、画面共有領域内で画面更新問い合わせに含まれる共有画面IDに対応する現時点の画面表示情報(画面共有領域内での画面スクロール量や文字列入力状態など)を不可視であっても取得し(F0906)、取得した画面表示情報をイベント送信スクリプトへ渡す(F0907)。
イベントの種類が画面更新問い合わせの返信の場合、イベント受信スクリプトより受け取った画面表示情報を共有画面IDに対応する共有画面上に不可視であっても反映させる(F0908)。
イベントの種類がWebブラウザのユーザ操作イベントの場合、イベント受信スクリプトより受け取ったイベント情報から、全く同様のイベントを共有画面IDに対応する共有画面上に不可視であっても発生させる(F0909)。
図24は画面更新通知部3300における処理フローチャートである。
画面更新通知部3300ではイベント受信スクリプトからの呼び出し(受信接続通知)があると、図24(a)に示すように、情報配信先として端末の受信接続を保持する(F1000)。
また、リクエスト管理部3200からの呼び出しがあると、図24(b)に示すように、リクエスト管理部3200が得た情報の情報源となる端末と共有画面IDにひもづく接続先一覧を接続管理部3400から取得し(F1001)、取得した接続先一覧に情報源となる端末以外からの受信接続通知があるかどうかで処理が分かれる(F1002)。
接続先一覧に情報源となる端末以外からの受信接続通知がある場合、イベント情報の配信かいなかさらに処理が分かれる(F1003)。
イベント情報の配信の場合、リクエスト管理部3200からの情報を共有画面IDごとの接続先一覧にある全受信接続先へ送信する(F1004)。
イベント情報の配信でない場合、リクエスト管理部3200からの情報を接続先一覧のうち、共有画面IDごとに情報源以外のランダムに選んだ一つの受信接続先へ送信する(F1005)。
情報源となる端末以外からの受信接続通知が無い場合、何もしない。
図25は統合画面1510と統合画面2510と統合画面4510に組み込まれているタブ制御スクリプトにおける処理フローチャートである。
図25(a)に示すように、タブ制御スクリプトでは統合画面がWebブラウザに読み込まれた際の初期処理としてタブ領域内におけるクリック操作をイベントとしてインターセプトすることをWebブラウザへ通知する(F1100)。
また、Webブラウザ上でのユーザ操作によってタブ領域内でクリック操作が発生した場合、図25(b)に示すように、どのタブがクリックされたかを取得し(F1101)、クリックされたタブに対応する共有画面以外を不可視にし(F1102)、クリックされたタブに対応する共有画面を可視にする(F1103)。
図26は接続管理部3400における処理フローチャートである。
接続管理部3400では処理が呼び出された場合、呼び出しの情報に含まれる列名とその値の組み合わせから一致する行を接続状態管理テーブルから取得して返す(F1200)。
次に、各機能を組み合わせた全体の動作を、端末A1000が最初に統合画面を表示し、次に端末B2000が統合画面を表示し、画面共有領域の特定共有画面が端末A1000で表示されている状態と同一になるまでの動作と、端末C4000が統合画面を表示し、画面共有領域の特定共有画面が端末A1000で表示されている状態と端末B2000で表示されている状態と同一になるまでの動作と、端末A1000においてユーザが統合画面1510内の画面共有領域にある共有画面Xを操作した結果が共有状態にある各端末における統合画面内の画面共有領域に反映されるまでの動作に分けて説明する。
まず、端末A1000のWebブラウザ1100と端末B2000のWebブラウザ2100と端末C4000のWebブラウザ4100が統合画面を表示し、その画面共有領域内における共有画面が接続状態管理テーブルに基づいて対応する端末の共有画面と同一の画面を表示するまでの動作について説明する。
ここでは統合画面の表示順を端末A1000、端末B2000、端末C4000の順にするが、処理内容が対称なため順序を入れ替えても動作は同様である。
図27及び図28は端末A1000のWebブラウザ1100が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてWebブラウザ1100が統合画面を表示するまでの動作を説明する。
図27に示すように、Web画面共有・統合サーバ3000では既に統合画面生成部3100とリクエスト管理部3200と画面更新通知部3300と接続管理部3400が起動されているものとする(S0300〜S0303)。
そして、端末A1000では、ユーザ操作によってWebブラウザ1100が起動され(S0304)、また、ユーザがWebブラウザ1100に画面読み込みを要求する(S0305)。
Webブラウザ1100は統合画面生成部3100へ統合画面読み込みリクエストを送信する(S0306)。
統合画面読み込みリクエストを受信した統合画面生成部3100ではリクエスト送信源の端末情報から共有すべき画面と共有相手の端末を知るために、接続管理部3400へリクエスト送信源の端末に関する接続状態を問い合わせる(S0307)。
接続管理部3400では、問い合わせに従って図20に示す接続状態管理テーブルを参照し(S0308)、取得した接続状態を返す(S0309)。
この場合は、図19において、端末1または端末2の列で値が端末Aの行で、共有IDが1の行と2の行を接続状態として得ることになる。
統合画面生成部3100は得られた接続状態を元に図19に示した統合画面3500に共有画面ごとにタブを生成し、イベント制御スクリプト3111とイベント送信スクリプト3112とイベント受信スクリプト3113を組み込むことで画面を生成する(S0310)。
生成された画面はWebブラウザ1100へ返信される(S0311)。
次に、図28に示すように、Webブラウザ1100は受け取った画面を統合画面1510として表示する(S0312)。
これに伴って統合画面1510に組み込まれているイベント制御スクリプト1111、イベント送信スクリプト1112、イベント受信スクリプト1113も動作を開始する。
イベント制御スクリプト1111はイベント受信スクリプト1113の初期化処理を呼び(S0313)、イベント受信スクリプト1113は初期化処理として画面更新通知部3300へ受信接続通知を行う(S0314)。
続いて、イベント制御スクリプト1111はイベント送信スクリプト1112の初期化処理を呼び(S0315)、イベント送信スクリプト1112は初期化処理としてリクエスト管理部3200へ画面更新問い合わせを行う(S0316)。
画面更新問い合わせを受けたリクエスト管理部3200は、問い合わせを画面更新通知部3300へ転送する(S0318)。
画面更新通知部3300は、受け取った情報の情報源となる端末に関わる接続先一覧を接続管理部3400へ問い合わせる(S0319)。
問い合わせを受けた接続管理部3400はS0308の場合と同様に接続状態管理テーブルを参照し(S0320)、結果を返す(S0321)。
画面更新通知部3300は接続管理部3400より得た情報を接続先一覧とするが、その一覧の中で情報源の端末(端末A1000)以外からまだ受信接続通知を受けていないため何もしない(S0322)。
イベント制御スクリプト1111は初期化処理として最後にWebブラウザ1100へユーザ操作をイベントとしてインターセプトすることを通知する(S0317)。
以上で端末A1000のWebブラウザ1100における統合画面表示が完了する。
図29、図30、図31、図32は端末B2000のWebブラウザ2100が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてWebブラウザ2100が統合画面の画面共有領域において共有画面Xを端末A1000のWebブラウザ1100が表示している状態と同じ状態で表示するまでの動作を説明する。
図29に示すように、端末B2000において、端末A1000の場合(図27、図28:S0304〜S0312)と同様に統合画面2510を表示する(S0400〜S0408)。
これに伴って、図30に示すように、統合画面2510に組み込まれているイベント制御スクリプト2111、イベント送信スクリプト2112、イベント受信スクリプト2113も動作を開始する。
各スクリプトの初期化処理も端末A1000の場合(図28:S0313〜S0317)と同様に実行される(S0409〜S0413)。
なお、端末A1000では、図27及び図28で説明したように、既に、共有画面1110を受信済みであり、イベント制御スクリプト1111、イベント送信スクリプト1112及びイベント受信スクリプト1113は起動済である。
図31に示すように、イベント送信スクリプト2112の画面更新問い合わせを受けたリクエスト管理部3200は、その情報を画面更新通知部3300へ転送する(S0414)。
画面更新通知部3300は、図28のS0319〜S0321の場合と同様に接続先一覧を取得する(S0415〜S0417)。
画面更新通知部3300は、取得した接続先一覧の中で情報源の端末(端末B2000)以外に、既に端末A1000の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面IDが1もしくは3の画面を持つ端末の受信済みの受信接続通知からそれぞれランダムに配信先を選ぶが、この場合、共有画面IDが1の画面を持つ端末A1000のみのため、端末A1000上のWebブラウザ1100のイベント受信スクリプト1113へ情報を転送する(S0418)。
図32に示すように、イベント受信スクリプト1113は、受け取った情報をイベント制御スクリプト1111へ転送し(S0419)、イベント制御スクリプト1111は受け取った情報が画面更新問い合わせであるため統合画面1510の画面共有領域において共有画面IDが1、つまり共有画面Xの画面スクロール量や文字入力状態などの画面状態を取得する(S0420)。
イベント制御スクリプト1111は、取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト1112へ渡し(S0421)、イベント送信スクリプト1112は画面更新問い合わせの返信をリクエスト管理部3200へ送信する(S0422)。
画面更新問い合わせの返信を受けたリクエスト管理部3200は、画面更新問い合わせの返信を画面更新通知部3300へ転送する(S0423)。
画面更新通知部3300は、S0415〜S0417の場合と同様に接続先一覧を取得する(S0424〜S0426)。
画面更新通知部3300は、取得した接続先一覧の中で情報源の端末(端末A1000)以外に、既に端末B2000の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面IDが1の画面を持つ端末の受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、共有画面IDが1の画面を持つ端末B2000のみのため、端末B2000上のWebブラウザ2100のイベント受信スクリプト2113へ情報を転送する(S0427)。
イベント受信スクリプト2113は、受け取った情報をイベント制御スクリプト2111へ転送し(S0428)、イベント制御スクリプト2111は受け取った情報が画面更新問い合わせの返信であるため、統合画面2510の画面共有領域において共有画面IDが1、つまり共有画面Xの画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する(S0429)。
以上で端末A1000のWebブラウザ1100における統合画面1510の画面共有領域と端末B2000のWebブラウザ2100における統合画面2510の画面共有領域において共有画面Xの表示が全く同じになり共有された状態となる。
図33、図34、図35、図36は端末C4000のWebブラウザ4100が統合画面を表示するまでの動作を示したシーケンス図である。
これを用いてWebブラウザ4100が統合画面の画面共有領域において共有画面Xを端末B2000のWebブラウザ2100が表示している状態と同じ状態で、共有画面Yを端末A1000のWebブラウザ1100が表示している状態と同じ状態で表示するまでの動作を説明する。
図33に示すように、端末C4000において、端末A1000の場合(図27、図28:S0304〜S0312)と同様に統合画面4510を表示する(S0500〜S0508)。
これに伴って、図34に示すように、統合画面4510に組み込まれているイベント制御スクリプト4111、イベント送信スクリプト4112、イベント受信スクリプト4113も動作を開始する。
各スクリプトの初期化処理も端末A1000の場合(図28:S0313〜S0317)と同様に実行される(S0509〜S0513)。
なお、端末A1000及び端末B2000では、図27〜図32で説明したように、既に、統合画面1510及び統合画面2510を受信済みであり、イベント制御スクリプト1111、イベント送信スクリプト1112及びイベント受信スクリプト1113、また、イベント制御スクリプト2111、イベント送信スクリプト2112及びイベント受信スクリプト2113は起動済である。
イベント送信スクリプト4112の画面更新問い合わせを受けたリクエスト管理部3200は、その情報を画面更新通知部3300へ転送する(S0514)。
画面更新通知部3300は、図28のS0319〜S0321の場合と同様に接続先一覧を取得する(S0515〜S0517)。
画面更新通知部3300は、取得した接続先一覧の中で情報源の端末(端末C4000)以外に、既に端末A1000と端末B2000の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面IDが2もしくは3の画面を持つ端末の受信済みの受信接続通知からそれぞれランダムに配信先を選ぶ。
この場合、共有画面IDが1の画面を持つ接続先は端末A1000のみのため、図35に示すように、端末A1000上のWebブラウザ1100のイベント受信スクリプト1113へ共有画面IDが2の画面更新問い合わせを、共有画面IDが3の画面を持つ接続先は端末B2000のみのため、端末B2000上のWebブラウザ2100のイベント受信スクリプト2113へ共有画面IDが3の画面更新問い合わせを転送する(S0518)。
図35に示すように、端末A1000において、イベント受信スクリプト1113は受け取った情報をイベント制御スクリプト1111へ転送し(S0519)、イベント制御スクリプト1111は受け取った情報が画面更新問い合わせであるため統合画面1510の画面共有領域において共有画面IDが2、つまり共有画面Yの画面スクロール量や文字入力状態などの画面状態を取得する(S0520)。
イベント制御スクリプト1111は取得した画面情報を画面更新問い合わせの返信としてイベント送信スクリプト1112へ渡し(S0521)、イベント送信スクリプト1112は画面更新問い合わせの返信をリクエスト管理部3200へ送信する(S0522)。
一方で、端末B2000においても同様に共有画面IDが3、つまり共有画面Xの画面情報が画面更新問い合わせの返信としてリクエスト管理部3200へ送信される(S0523〜S0526)。
以降のリクエスト管理部3200の処理は端末A1000からの画面更新問い合わせの返信の処理と端末B2000からの画面更新問い合わせの返信の処理の両処理が実行されるが、どちらも同様な処理のため端末A1000からの画面更新問い合わせの返信に対する処理について説明する。
図36に示すように、端末A1000から画面更新問い合わせの返信を受けたリクエスト管理部3200は画面更新問い合わせの返信を画面更新通知部3300へ転送する(S0527)。
画面更新通知部3300は、S0515〜S0517の場合と同様に接続先一覧を取得する(S0528〜S0530)。
画面更新通知部3300は取得した接続先一覧の中で情報源の端末(端末A1000)以外に、既に端末C4000の受信接続通知を受けており、また、イベント情報の配信ではないため、共有画面IDが2の画面を持つ端末の受信済みの受信接続通知からランダムに配信先を選ぶが、この場合、共有画面IDが2の画面を持つ端末C4000のみのため、端末C4000上のWebブラウザ4100のイベント受信スクリプト4113へ情報を転送する(S0531)。
イベント受信スクリプト4113は、受け取った情報をイベント制御スクリプト4111へ転送し(S0532)、イベント制御スクリプト4111は受け取った情報が画面更新問い合わせの返信であるため、統合画面4510の画面共有領域において共有画面IDが2、つまり共有画面Yの画面スクロール量や文字入力状態などの画面状態を画面更新問い合わせの返信内容に従って更新する(S0533)。
端末B2000からの画面更新問い合わせの返信も同様に適用されると共有画面Xが更新される。
以上で端末A1000のWebブラウザ1100における統合画面1510の画面共有領域と端末B2000のWebブラウザ2100における統合画面2510の画面共有領域と端末C4000のWebブラウザ4100における統合画面4510の画面共有領域において共有画面Xと共有画面Yの表示が全く同じになり共有された状態となる。
図37及び図38は、端末A1000においてユーザがWebブラウザ1100に表示された統合画面1510の画面共有領域における共有画面X内の例えばボタンAをクリックした場合に、その操作結果が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末A1000でWebブラウザ1100を操作した結果が、図20に示す接続状態管理テーブルに従い、端末B2000のWebブラウザ2100に同時に反映されるまでの動作を説明する。
図37に示すように、端末A1000においてユーザがWebブラウザ1100に表示された統合画面1510の画面共有領域における共有画面X内のボタンAをクリックすると(S0600)、Webブラウザ1100にはイベント制御スクリプト1111から画面共有領域におけるユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト1111へ渡す(S0601)。
イベント制御スクリプト1111はイベントからイベント情報としてイベントの種類(この場合はクリック)、イベントが発生した場所(この場合はボタンAの場所)を取得し(S0602)、イベント送信スクリプト1112へ渡す(S0603)。
イベント送信スクリプト1112は受け取ったイベント情報をリクエスト管理部3200へ送信する(S0604)。
図38に示すように、リクエスト管理部3200は受け取ったイベント情報を画面更新通知部3300へ転送する(S0605)。
画面更新通知部3300は図28のS0319〜S0321の場合と同様に接続先一覧を取得し(S0606〜S0608)、取得した接続先一覧の中で情報源の端末(端末A1000)以外に、端末B2000の受信接続通知を受けており、また、イベント情報の配信であるため、共有画面IDが1の画面を持つ端末の受信済みの受信接続通知から全ての配信先(イベント受信スクリプト)へイベント情報を送信する(S0609)。
端末A1000側でイベント情報を受け取ったイベント受信スクリプト1113はイベント情報をイベント制御スクリプト1111へ転送し(S0610)、イベント制御スクリプト1111は受け取ったイベント情報を元に統合画面1510の画面共有領域における共有画面IDが1の画面、つまり共有画面X上にイベントを発生させる(S0611)。
一方、端末B2000側でイベント情報を受け取ったイベント受信スクリプト2113も端末A1000側と同様の動作をする(S0612〜S0613)。
以上で、端末A1000上で発生したユーザ操作が、図20に示す接続状態管理テーブルに従い、端末A1000のWebブラウザ1100における統合画面1510の画面共有領域にある共有画面Xと端末B2000のWebブラウザ2100における統合画面2510の画面共有領域にある共有画面Xで同じようにイベントとして動作し、各画面の表示が全く同じになり共有された状態となる。
以上のように、本実施の形態によれば、接続管理部によって端末間で共有されている画面の関係を管理することによって、統合画面生成部が接続管理部と連携して画面の統合状態を端末によって変えることができる。
また、画面更新通知部が接続管理部と連携することで画面更新情報が適切な端末に配信され、複数端末間で複数種類のWeb画面の共有、つまりn端末対n端末で画面を共有することができる。
また、イベント制御スクリプトによる画面の更新は不可視の状態に関わりなく動作するため、ユーザのタブ操作で表示する共有画面を切り替えたとしても、常に最新の状態を表示することができる。
以上、本実施の形態では、複数端末間の複数Web画面共有の関係を参照する機能と、複数Web画面を統合し、切り替えて表示できるWeb画面を生成する機能を備えたWeb画面共有・統合装置を説明した。
実施の形態3.
以上の実施の形態2では複数端末間において複数種類のWeb画面を共有するようにしたものであるが、次に端末間におけるWeb画面の共有関係が動的に変化するような場合の実施の形態を示す。
図39は共有関係が状態1から状態3まで変化する様子を接続状態管理テーブルで示したものである。この変化を各端末へ反映する方式について説明する。
なお、システム構成図は実施の形態2の場合(図18)と同様で、機能に変更がある。
なお、図39に例示している共有関係の変化は、例えば、Web画面共有・統合サーバ3000の管理者が設定する。
図18において、実施の形態2から変更された機能はイベント制御スクリプト3111、統合画面3500のタブ制御スクリプト3503(図19)、接続管理部3400であり、他の機能は実施の形態2と同様である。
イベント制御スクリプト3111は画面内の特定領域でユーザのWeb画面操作イベントを取得・発生、タブ制御スクリプト3503にタブ追加もしくは削除を実行させるスクリプトである。
タブ制御スクリプト3503は、タブ3502のユーザ操作による画面共有領域3501内に表示している画面の切り替えとイベント制御スクリプト3111の呼び出しによってタブと共有画面を追加もしくは削除することができるスクリプトである。
接続管理部3400は、接続状態管理テーブルを管理する機能で図39に示すようなテーブルの変化を検知できる機能である。
次に動作について説明する。
各機能の動作はフローチャートを用いて、各機能を組み合わせた全体の動作はシーケンス図を用いて実施の形態2とは異なる部分についてのみ説明する。
図40及び図41は、イベント制御スクリプト1111とイベント制御スクリプト2111とイベント制御スクリプト4111における処理フローチャートである。
図22及び図23におけるフローチャートとの違いはF1310のみでF1300〜F1304は図22のF0900〜F0904と同一である。
F1310はイベント受信スクリプトからの呼び出しでイベントの種類がタブの追加もしくは削除であった場合に実行され、イベント受信スクリプトより受け取ったタブ追加・削除の情報をタブ制御スクリプトへ渡す。
図42は、統合画面1510と統合画面2510と統合画面4510に組み込まれているタブ制御スクリプトにおける処理フローチャートである。
図25におけるフローチャートとの違いはF1404のみでF1400〜F1403は図25のF1100〜F1103と同一である。
F1404はイベント制御スクリプトからの呼び出しがあった場合に実行され、受け取ったタブ追加・削除の情報に従ってタブの追加・削除と画面共有領域内で対応する共有画面の追加・削除を行う。
図43は、接続管理部3400における処理フローチャートである。
図26におけるフローチャートとの違いはF1501のみでF1500は図26のF1200と同一である。
F1501は接続状態管理テーブルが更新された場合に実行され、接続状態管理テーブルの変化を画面更新通知部3300へ送る。
各機能を組み合わせた全体の動作で実施の形態2と異なる点は、接続状態管理テーブルが変化した際にシステム全体が、変化後の接続状態管理テーブルに従った状態へ遷移する点であり、その動作部分についてシーケンス図を用いて説明する。
図44は、図39に示した接続状態管理テーブル状態1から状態2へ変化したときの動作を示したシーケンス図である。
これを用いて端末間の画面共有関係が減少した場合に端末間の画面共有関係が接続状態管理テーブルに従ったものへ遷移するまでの動作を説明する。
接続状態管理テーブルに変化(この場合は共有IDが2の行が削除された)があると接続管理部3400はこれを検知して削除された項目をタブ削除イベントとして画面更新通知部3300へ送る(S0700)。
画面更新通知部3300は受け取った情報が端末A1000と端末C4000に関するものなので、タブ削除イベント(削除指示)をイベント受信スクリプト1113とイベント受信スクリプト4113へ転送して(S701)、対象となるタブ(共有画面)を削除するよう指示する。
イベント受信スクリプト1113は、受け取った情報をイベント制御スクリプト1111へ転送し(S702)、イベント制御スクリプト1111は受け取った情報がタブ削除イベントであるため、タブ制御スクリプトへ削除情報を渡し、画面共有領域内の共有画面IDが2の画面、つまり共有画面Yと対応するタブが削除される(S0703)。
端末C4000側においても同様に共有画面Yと対応するタブが削除される(S0704〜S0705)。
以上で接続状態管理テーブルの変化に関わる全ての端末の画面共有関係の更新が完了する。
図45は、図39に示した接続状態管理テーブル状態2から状態3へ変化したときの動作を示したシーケンス図である。
これを用いて端末間の画面共有関係が増加した場合に端末間の画面共有関係が接続状態管理テーブルに従ったものへ遷移するまでの動作を説明する。
接続状態管理テーブルに変化(この場合は共有IDが4の行が追加された)があると接続管理部3400はこれを検知して追加された項目をタブ追加イベントとして画面更新通知部3300へ送る(S0800)。
画面更新通知部3300は、受け取った情報が端末A1000と端末B2000に関するものなので、タブ追加イベント(追加指示)をイベント受信スクリプト1113とイベント受信スクリプト2113へ転送して(S801)、タブ(共有画面)を追加するよう指示する。
イベント受信スクリプト1113は、受け取った情報をイベント制御スクリプト1111へ転送し(S802)、イベント制御スクリプト1111は受け取った情報がタブ追加イベントであるため、タブ制御スクリプトへ追加情報を渡し、画面共有領域内の共有画面IDが4の画面、つまり共有画面Yと対応するタブが追加される(S0803)。
端末B2000側においても同様に共有画面Yと対応するタブが追加される(S0804〜S0805)。
以上で接続状態管理テーブルの変化に関わる全ての端末の画面共有関係の更新が完了する。
以上のように、本実施の形態によれば、接続状態管理が接続状態管理テーブルの変化を検知した結果を画面更新通知部と連携して統合画面のタブ制御スクリプトを用いて、タブと共有画面の追加・削除を行うことで、端末間におけるWeb画面の共有関係が動的に変化するような場合でも、端末間の画面共有状態を接続状態管理テーブルに従った状態へ遷移させることができる。
以上、本実施の形態では、複数端末間の複数Web画面共有の関係の変化を検知できる機能を備えたWeb画面共有・統合装置を説明した。
実施の形態4.
以上の実施の形態では、端末間で共有する画面は全てWeb画面共有・統合サーバ上に配置された画面を対象としたものであるが、次は共有する画面としてWeb画面共有・統合サーバの外部にあるWebサーバの画面を共有するような場合の実施の形態を示す。
図46は、3端末間においてWeb画面共有・統合サーバ上にある2種類のWeb画面と外部Webサーバ上にある1種類のWeb画面を共有する方式を示すシステム構成図である。
図46において、実施の形態2のシステム構成図(図18)から変更された機能はイベント送信スクリプト3112とリクエスト管理部3200、追加された機能は外部Webサーバ5000であり、他の機能は実施の形態2及び実施の形態3と同様である。
イベント送信スクリプト3112は、共有画面IDとイベントの種類によってイベントを変換してリクエスト管理部3200へ送信するスクリプトである。
リクエスト管理部3200は、受信したイベント情報もしくはリクエスト転送イベントで外部Webサーバ5000と通信した結果を画面更新通知部3300へ転送する機能である。
外部Webサーバ5000(サーバ装置)は、Web画面共有・統合サーバ3000の外部にある画面共有の対象となるWebアプリケーションなどである。
図47は、外部Webサーバ上にある画面を共有する場合の接続状態管理テーブルの内容である。外部Webサーバ上にある画面は共有画面IDを負の値で設定する。
次に動作について説明する。
各機能の動作はフローチャートを用いて、各機能を組み合わせた全体の動作はシーケンス図を用いて実施の形態3とは異なる部分についてのみ説明する。
図48は、イベント送信スクリプト1112とイベント送信スクリプト2112とイベント送信スクリプト4112における処理フローチャートである。
図48(a)に示すように、各イベント送信スクリプトでは初期処理として、画面更新問い合わせをリクエスト管理部へ送る(F1600)。
また、図48(b)に示すように、画面共有中はイベント制御スクリプトからの呼び出しで、受け取ったイベント情報の内容によって処理が分かれる(F1601〜F1602)。
イベント情報で共有画面IDが負の値でかつイベントの種類がPOSTやGETといったリクエスト発生によるイベントの場合、リクエスト内容とその宛先をリクエスト転送イベントとしてリクエスト管理部3200へ送る(F1603)。
それ以外のイベント情報の場合、イベント制御スクリプトから受け取った情報をリクエスト管理部3200へ送る(F1604)。
図49は、リクエスト管理部3200における処理フローチャートである。
リクエスト管理部3200ではイベント送信スクリプトからの呼び出しで、受け取ったイベント情報の内容によって処理が分かれる(F1700)。
イベントの種類がリクエスト転送イベントの場合、イベント情報に含まれるリクエストの宛先へリクエスト内容を送信し、そのレスポンスを画面更新イベントとして画面更新通知部へ送る(F1701)。
それ以外のイベント情報の場合、イベント送信スクリプトからの情報を画面更新通知部へ転送する(F1702)。
各機能を組み合わせた全体の動作で実施の形態3と異なる点は、共有画面として外部Webサーバ上の画面が用いられた場合に、共有画面内から外部WebサーバへのHTTPリクエストを送信するためにリクエスト管理部を経由する点であり、その動作部分についてシーケンス図を用いて説明する。
図50及び図51は、端末B2000においてユーザがWebブラウザ2100に表示された統合画面2510の画面共有領域における共有画面Z(外部Webサーバの画面)内のサブミットボタンをクリックした場合に、その操作結果(画面遷移結果)が各端末の共有画面上に反映されるまでの動作を示したシーケンス図である。
これを用いて端末B2000のWebブラウザ2100で端末C4000のWebブラウザ4100と共有されている外部Webサーバ5000上の画面の共有画面Zを画面遷移操作した結果が、図47に示す接続状態管理テーブルに従い、Webブラウザ2100とWebブラウザ4100で同時に反映されるまでの動作を説明する。
図50に示すように、端末B2000においてユーザがWebブラウザ2100に表示された統合画面2510の画面共有領域における共有画面Z内のサブミットボタンをクリックすると(S0900)、Webブラウザ2100にはイベント制御スクリプト2111から画面共有領域におけるユーザ操作をイベントとしてインターセプトすることを通知されているため、イベントをイベント制御スクリプト2111へ渡す(S0901)。
イベント制御スクリプト2111は、イベントからイベント情報としてイベントの種類(この場合はサブミット)、イベントが発生した場所(この場合はサブミットボタンの場所)を取得し(S0902)、イベント送信スクリプト2112へ渡す(S0903)。
イベント送信スクリプト2112は、共有画面IDが負の値かつ受け取ったイベント情報がリクエストを送信するタイプであるため、リクエスト送信先とリクエスト内容を取得し、リクエスト転送イベントとして(S0904)、リクエスト管理部3200へ送信する(S0905)。
図51に示すように、リクエスト管理部3200は、受け取ったイベント情報がリクエスト転送イベントであるため、リクエスト送信先である外部Webサーバ5000へリクエスト内容を送信し、結果を取得する(S0906)。
取得した結果は画面更新通知部3300へ転送する(S0907)。
以降の処理は図38のS0606〜S0613の場合と同様にWebブラウザ2100上の共有画面ZとWebブラウザ4100上の共有画面Zで画面更新イベントとして外部Webサーバ5000からのリクエスト結果が反映される(S0908〜S0915)。
以上で、端末B2000上の外部Webサーバの画面で発生したユーザ操作が、図47に示す接続状態管理テーブルに従い、端末B2000のWebブラウザ2100における統合画面2510の画面共有領域にある共有画面Zと端末C4000のWebブラウザ4100における統合画面4510の画面共有領域にある共有画面Zで、Web画面共有・統合サーバ3000内の共有画面の共有と同じように動作し、各画面の表示が全く同じになり共有された状態となる。
以上のように、本実施の形態によれば、イベント送信スクリプトが外部Webサーバへのリクエストをリクエスト管理部が中継するようにし、リクエスト管理部は外部Webサーバからの結果を画面更新として画面更新通知部に配信させることで、共有する画面としてWeb画面共有・統合サーバの外部にあるWebサーバの画面を共有することができる。
また、統合画面上では外部Webサーバの画面がはめ込まれたことになり、外部のWeb資源を再利用できる。
以上、本実施の形態では、共有画面からリクエストを外部Webサーバへ転送できる機能と、外部Webサーバへのリクエスト転送結果を共有画面に反映できる機能を備えたWeb画面共有・統合装置を説明した。
最後に、実施の形態1〜4に示したWeb画面共有・統合サーバ3000のハードウェア構成例について説明する。
図52は、実施の形態1〜4に示すWeb画面共有・統合サーバ3000のハードウェア資源の一例を示す図である。
なお、図52の構成は、あくまでもWeb画面共有・統合サーバ3000のハードウェア構成の一例を示すものであり、Web画面共有・統合サーバ3000のハードウェア構成は図52に記載の構成に限らず、他の構成であってもよい。
図52において、Web画面共有・統合サーバ3000は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
Web画面共有・統合サーバ3000の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1〜4の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、例えば、共有画面3110、イベント制御スクリプト3111、イベント送信スクリプト3112、イベント受信スクリプト3113等が記憶されている。
また、ファイル群924には、実施の形態1〜4の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜4で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1〜4の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜4の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜4の「〜部」の手順や方法をコンピュータに実行させるものである。
このように、実施の形態1〜4に示すWeb画面共有・統合サーバ3000は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
実施の形態1に係るシステム構成例を示す図。 実施の形態1に係る端末の処理を示すフローチャート図。 実施の形態1に係るWebブラウザの処理を示すフローチャート図。 実施の形態1に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態1に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態1に係るイベント送信スクリプトの処理を示すフローチャート図。 実施の形態1に係るイベント受信スクリプトの処理を示すフローチャート図。 実施の形態1に係る統合画面生成部の処理を示すフローチャート図。 実施の形態1に係るリクエスト管理部の処理を示すフローチャート図。 実施の形態1に係る画面更新通知部の処理を示すフローチャート図。 実施の形態1に係る端末Aが共有画面を表示するときの処理シーケンス図。 実施の形態1に係る端末Aが共有画面を表示するときの処理シーケンス図。 実施の形態1に係る端末Bが共有画面を表示するときの処理シーケンス図。 実施の形態1に係る端末Bが共有画面を表示するときの処理シーケンス図。 実施の形態1に係る端末Bが共有画面を表示するときの処理シーケンス図。 実施の形態1に係る端末Aが共有画面を操作したときの処理シーケンス図。 実施の形態1に係る端末Aが共有画面を操作したときの処理シーケンス図。 実施の形態2に係るシステム構成例を示す図。 実施の形態2に係る統合画面の画面レイアウト例を示す図。 実施の形態2に係る接続状態管理テーブルの例を示す図。 実施の形態2に係る統合画面生成部の処理を示すフローチャート図。 実施の形態2に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態2に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態2に係る画面更新通知部の処理を示すフローチャート図。 実施の形態2に係る統合画面のタブ制御スクリプトの処理を示すフローチャート図。 実施の形態2に係る接続管理部の処理を示すフローチャート図。 実施の形態2に係る端末Aが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Aが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Bが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Bが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Bが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Bが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Cが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Cが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Cが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Cが統合画面を表示するときの処理シーケンス図。 実施の形態2に係る端末Aが統合画面の画面共有領域を操作したときの処理シーケンス図。 実施の形態2に係る端末Aが統合画面の画面共有領域を操作したときの処理シーケンス図。 実施の形態3に係る共有関係の変化の例を示す図。 実施の形態3に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態3に係るイベント制御スクリプトの処理を示すフローチャート図。 実施の形態3に係る統合画面のタブ制御スクリプトの処理を示すフローチャート図。 実施の形態3に係る接続管理部の処理を示すフローチャート図。 実施の形態3に係る接続状態管理テーブルが状態1から状態2へ変化したときの処理シーケンス図。 実施の形態3に係る接続状態管理テーブルが状態2から状態3へ変化したときの処理シーケンス図。 実施の形態4に係るシステム構成例を示す図。 実施の形態4に係る接続状態管理テーブルの例を示す図。 実施の形態4に係るイベント送信スクリプトの処理を示すフローチャート図。 実施の形態4に係るリクエスト管理部の処理を示すフローチャート図。 実施の形態4に係る外部Webサーバへのリクエストをリクエスト管理部が中継するときの処理シーケンス図。 実施の形態4に係る外部Webサーバへのリクエストをリクエスト管理部が中継するときの処理シーケンス図。 実施の形態1〜4に係るWeb画面共有・統合サーバのハードウェア構成例を示す図。
符号の説明
1000 端末A、1100 Webブラウザ、1110 共有画面、1111 イベント制御スクリプト、1112 イベント送信スクリプト、1113 イベント受信スクリプト、1510 統合画面、2000 端末B、2100 Webブラウザ、2110 共有画面、2111 イベント制御スクリプト、2112 イベント送信スクリプト、2113 イベント受信スクリプト、2510 統合画面、3000 Web画面共有・統合サーバ、3100 統合画面生成部、3110 共有画面、3120 共有画面、3111 イベント制御スクリプト、3112 イベント送信スクリプト、3113 イベント受信スクリプト、3200 リクエスト管理部、3300 画面更新通知部、3400 接続管理部、3500 統合画面、4000 端末C、4100 Webブラウザ、4111 イベント制御スクリプト、4112 イベント送信スクリプト、4113 イベント受信スクリプト、4510 統合画面、5000 外部Webサーバ。

Claims (13)

  1. 画面情報を表示する複数の端末装置に接続された情報処理装置であって、
    前記複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理部と、
    前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信部と、
    前記共有制御受信部により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信部とを有し、
    前記共有画面情報管理部は、
    1つの第1共有端末装置が2以上の共有画面情報を2以上の第2共有端末装置と共有する関係にある場合に、前記2以上の共有画面情報を統合して統合共有画面情報とし、統合共有画面情報に制御手段と受信手段と送信手段とを組み込んで組み込み統合共有画面情報とし、組み込み統合共有画面情報を前記第1共有端末装置に送信することを特徴とする情報処理装置。
  2. 前記共有画面情報管理部は、
    第2共有端末装置に対しては、対象となる共有画面情報に制御手段と受信手段と送信手段とを組み込んで組み込み共有情報とし、組み込み共有情報を送信することを特徴とする請求項に記載の情報処理装置。
  3. 前記共有制御受信部は、
    前記第1共有端末装置で動作している制御手段が取得し送信手段が送信した、前記第1共有端末装置で行われた操作内容を受信し、
    前記共有制御送信部は、
    前記共有制御受信部により受信された操作内容が前記2以上の共有画面情報のいずれの共有画面情報に対する操作内容であるかを判定し、判定した共有画面情報に対応する第2共有端末装置に対して、前記共有制御受信部により受信された操作内容を送信することを特徴とする請求項又はに記載の情報処理装置。
  4. 前記共有画面情報管理部は、
    第2共有端末装置における共有画面情報の画面状態を通知するよう要求する通知要求を生成する制御手段を統合共有画面情報に組み込み、
    第1共有端末装置からの通知要求に応答して、第2共有端末装置における共有画面情報の画面状態を取得する制御手段を共有画面情報に組み込み、
    前記共有制御受信部は、
    前記第1共有端末装置で動作している制御手段が生成し送信手段が送信した通知要求を受信し、前記共有制御送信部により通知要求が送信された各々の第2共有端末装置で動作している制御手段が取得し送信手段が送信した、各々の第2共有端末装置における共有画面情報の画面状態を受信し、
    前記共有制御送信部は、
    前記共有制御受信部により受信された通知要求を各々の第2共有端末装置の受信手段に対して送信し、前記共有制御受信部により受信された各々の第2共有端末装置における共有画面情報の画面状態を前記第1共有端末装置の受信手段に対して送信することを特徴とする請求項に記載の情報処理装置。
  5. 前記共有制御送信部は、
    前記第1共有端末装置の受信手段に対して、統合共有画面情報に含まれるいずれかの共有画面情報を削除するよう指示する削除指示を送信することを特徴とする請求項1〜4のいずれかに記載の情報処理装置。
  6. 画面情報を表示する複数の端末装置に接続された情報処理装置であって、
    前記複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理部と、
    前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信部と、
    前記共有制御受信部により受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信部とを有し、
    前記共有制御送信部は、
    組み込み共有画面情報を受信済みの共有端末装置の受信手段に対して、新たな共有画面情報を送信するとともに、当該新たな共有画面情報を受信済みの組み込み共有画面情報に追加するよう指示する追加指示を送信することを特徴とする情報処理装置。
  7. 前記共有画面情報管理部は、
    前記共有制御送信部から受信手段に対して送信された他の共有端末装置における操作内容を、共有端末装置において表示されている共有画面情報に反映させる制御手段を共有画面情報に組み込むことを特徴とする請求項1又は6に記載の情報処理装置。
  8. 前記共有画面情報管理部は、
    他の共有端末装置における共有画面情報の画面状態を通知するよう要求する通知要求を生成するとともに、他の共有端末装置で生成された通知要求に応答して、動作している共有端末装置における共有画面情報の画面状態を取得する制御手段を共有画面情報に組み込み、
    前記共有制御受信部は、
    前記共有画面情報管理部により組み込み共有画面情報が送信された後に、いずれかの共有端末装置で動作している制御手段が生成し送信手段が送信した通知要求を受信し、前記共有制御送信部により通知要求が送信された共有端末装置で動作している制御手段が取得し送信手段が送信した当該共有端末装置における共有画面情報の画面状態を受信し、
    前記共有制御送信部は、
    前記共有制御受信部により受信された通知要求を通知要求の送信元以外の他の共有端末装置の受信手段に対して送信し、前記共有制御受信部により受信された共有画面情報の画面状態を通知要求の送信元の共有端末装置の受信手段に対して送信することを特徴とする請求項1又はに記載の情報処理装置。
  9. 前記情報処理装置は、
    リクエストに対して応答を返信するサーバ装置に接続され、
    前記共有制御受信部は、
    いずれかの共有端末装置の制御手段が生成し送信手段が送信した、前記サーバ装置へのリクエストを受信し、前記サーバ装置に前記リクエストを送信するとともに、前記リクエストに対する応答を前記サーバ装置から受信し、
    前記共有制御送信部は、
    各々の共有端末装置の受信手段に対して、前記共有制御受信部が受信した前記サーバ装置からの応答を送信することを特徴とする請求項1又は6に記載の情報処理装置。
  10. 前記情報処理装置は、
    各々がスクリプトを実行可能な複数の端末装置に接続され、
    前記共有画面情報管理部は、
    共有端末装置で行われた操作内容を取得する制御スクリプトと、受信処理を行う受信スクリプトと、送信処理を行う送信スクリプトとを共有画面情報に組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信することを特徴
    とする請求項1又は6に記載の情報処理装置。
  11. 画面情報を表示する複数の端末装置に接続されたコンピュータが行う情報処理方法であって、
    前記コンピュータが、前記複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理ステップと、
    前記共有画面情報管理ステップにより組み込み共有画面情報が送信された後に、前記コンピュータが、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信ステップと、
    前記コンピュータが、前記共有制御受信ステップにより受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信ステップとを有し、
    前記共有画面情報管理ステップにおいて、
    前記コンピュータは、
    1つの第1共有端末装置が2以上の共有画面情報を2以上の第2共有端末装置と共有する関係にある場合に、前記2以上の共有画面情報を統合して統合共有画面情報とし、統合共有画面情報に制御手段と受信手段と送信手段とを組み込んで組み込み統合共有画面情報とし、組み込み統合共有画面情報を前記第1共有端末装置に送信することを特徴とする情報処理方法。
  12. 画面情報を表示する複数の端末装置に接続されたコンピュータが行う情報処理方法であって、
    前記コンピュータが、前記複数の端末装置のうち画面情報を共有する関係にある2以上の共有端末装置が共有する共有画面情報に、共有端末装置で動作し共有端末装置で行われた操作内容を取得する制御手段と、共有端末装置で動作し受信処理を行う受信手段と、共有端末装置で動作し送信処理を行う送信手段とを組み込んで組み込み共有画面情報とし、組み込み共有画面情報を各々の共有端末装置に対して送信する共有画面情報管理ステップと、
    前記共有画面情報管理ステップにより組み込み共有画面情報が送信された後に、前記コンピュータが、いずれかの共有端末装置で動作している制御手段が取得し送信手段が送信した、当該共有端末装置で行われた操作内容を受信する共有制御受信ステップと、
    前記コンピュータが、前記共有制御受信ステップにより受信された操作内容を、他の共有端末装置の受信手段に対して送信する共有制御送信ステップとを有し、
    前記共有制御送信ステップにおいて、
    前記コンピュータは、
    組み込み共有画面情報を受信済みの共有端末装置の受信手段に対して、新たな共有画面情報を送信するとともに、当該新たな共有画面情報を受信済みの組み込み共有画面情報に追加するよう指示する追加指示を送信することを特徴とする情報処理方法。
  13. コンピュータを、請求項1又は請求項6に記載された情報処理装置として機能させることを特徴とするプログラム。
JP2008331772A 2008-12-26 2008-12-26 情報処理装置及び情報処理方法及びプログラム Expired - Fee Related JP5197351B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008331772A JP5197351B2 (ja) 2008-12-26 2008-12-26 情報処理装置及び情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008331772A JP5197351B2 (ja) 2008-12-26 2008-12-26 情報処理装置及び情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2010152772A JP2010152772A (ja) 2010-07-08
JP5197351B2 true JP5197351B2 (ja) 2013-05-15

Family

ID=42571760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008331772A Expired - Fee Related JP5197351B2 (ja) 2008-12-26 2008-12-26 情報処理装置及び情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5197351B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9586139B2 (en) 2009-03-03 2017-03-07 Mobilitie, Llc System and method for game play in a dynamic communication network
FR2969379B1 (fr) 2010-12-17 2013-02-15 Thales Sa Refroidissement d'un equipement electronique
WO2013116761A1 (en) * 2012-02-01 2013-08-08 E3 Llc System and method for game play in a dynamic communication network
JP5086486B1 (ja) * 2012-03-09 2012-11-28 Scsk株式会社 情報出力共有システム
CN104753989B (zh) * 2013-12-27 2018-09-14 阿里巴巴集团控股有限公司 基于Web-based OS运行环境的屏幕影像传输播放方法及装置
WO2016199316A1 (ja) * 2015-06-12 2016-12-15 ベルフェイス株式会社 Webサイト疑似画面共有システム
JP6040388B1 (ja) * 2015-07-13 2016-12-07 メディアリンク株式会社 ネットワークシステムおよび画面共有サーバ
CN112702557A (zh) * 2020-12-23 2021-04-23 百果园技术(新加坡)有限公司 一种基于通话的屏幕共享方法、装置、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3437933B2 (ja) * 1999-01-21 2003-08-18 インターナショナル・ビジネス・マシーンズ・コーポレーション ブラウザ共有方法及びシステム
JP4622539B2 (ja) * 2005-01-24 2011-02-02 日本電気株式会社 Webコンテンツ同期システムおよび端末

Also Published As

Publication number Publication date
JP2010152772A (ja) 2010-07-08

Similar Documents

Publication Publication Date Title
JP5197351B2 (ja) 情報処理装置及び情報処理方法及びプログラム
US10015226B2 (en) Methods for making AJAX web applications bookmarkable and crawlable and devices thereof
JP4698756B2 (ja) ウェブベースアプリケーションのオフライン実行
US8346868B2 (en) Real-time web sharing system
US8161160B2 (en) XML-based web feed for web access of remote resources
US8930555B2 (en) Extending functionality of web-based applications
US8060891B2 (en) Management of external hardware appliances in a distributed operating system
EP1811747B1 (en) Method and apparatus for storing and restoring state information of remote user interface
US20080313545A1 (en) Systems and methods for providing desktop or application remoting to a web browser
JP2000231542A (ja) オフライン・クライアントの要求に対して応答を返す装置、方法および記憶媒体
EP1872208A1 (en) Method and apparatus to select and deliver portable portlets
CN111666585A (zh) 子应用访问的方法、装置、电子设备以及可读存储介质
JP2005149387A (ja) リアルタイムWeb共有システム
KR20110063633A (ko) 웹 사이트에 대한 대안의 사용자 경험 검색
US20120054327A1 (en) Site redirection
JP2011175461A (ja) 通信システム及びサーバ及び端末装置及び通信システムの通信方法及びサーバ用プログラム及び端末用プログラム
US20080005230A1 (en) Data Processing Device, Data Processing System, Data Processing Relay Device, and Data Processing Method
US8458146B2 (en) Accessing data remotely
CN110622135B (zh) 在涉及欠佳网络条件的情形下提供内容项的系统和方法
US11562092B1 (en) Loading and managing third-party tools on a website
US11108872B2 (en) System and method using the same, information processing apparatus and method using the same, and storage medium
JP6589510B2 (ja) ブックマーク共有化システム、サーバ装置及びプログラム
KR100637801B1 (ko) P2p 방식의 개인 홈페이지 서비스 시스템
JP4950389B2 (ja) ネットワークベースのアプリケーション、それを処理するためのアーキテクチャ及びシステム、ならびにそれを実行するための方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130205

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees