JP2004005396A - Sbc collaboration system and proxy server for realizing the sbc collaboration - Google Patents

Sbc collaboration system and proxy server for realizing the sbc collaboration Download PDF

Info

Publication number
JP2004005396A
JP2004005396A JP2003008852A JP2003008852A JP2004005396A JP 2004005396 A JP2004005396 A JP 2004005396A JP 2003008852 A JP2003008852 A JP 2003008852A JP 2003008852 A JP2003008852 A JP 2003008852A JP 2004005396 A JP2004005396 A JP 2004005396A
Authority
JP
Japan
Prior art keywords
sbc
application
server
client
proxy server
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.)
Granted
Application number
JP2003008852A
Other languages
Japanese (ja)
Other versions
JP3943504B2 (en
Inventor
Naohisa Tanabe
田辺 直久
Shinya Hanano
花野 真也
Masafumi Higuchi
樋口 雅文
Kenji Takahashi
高橋 健司
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003008852A priority Critical patent/JP3943504B2/en
Publication of JP2004005396A publication Critical patent/JP2004005396A/en
Application granted granted Critical
Publication of JP3943504B2 publication Critical patent/JP3943504B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To conduct collaborative operation which makes use of optional applications in an SBC server, among a plurality of SBC clients using a conventional SBC middleware. <P>SOLUTION: A proxy server, which is inserted between the SBC server equipped with the SBC middleware capable of introducing an optional application and a plurality of SBC clients, who are connected with the SBC server via a network and remotely operate the application, is provided with an operation right control part giving an operation authority which allows a first SBC client to execute the application, an operation information relay part which receives first inputting operation information to execute the application from the first SBC client and forwards the first input operation information thus received to the SBC server to execute the application and an execution screen transmitting part, which receives the execution screen of the application from the SBC server and transmits the execution screen to a plurality of SBC clients. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、SBC(server−based computing)コラボレーション技術に関し、特に、複数の遠隔ユーザがSBCサーバ上で稼動するアプリケーション画面を共有し、協調作業することを可能にするプロキシサーバを備えた、センター集中型のSBCコラボレーション技術に関する。
【0002】
【従来の技術】
近年、いわゆるSBC(server−based computing)技術により、ネットワーク内のSBCサーバで稼動する任意のアプリケーションを、ネットワークに接続された単一のSBCクライアントのSBCブラウザから、ユーザが遠隔利用できるシステムが開発されている。
【0003】
SBCシステムでは、高負荷のアプリケーションをクライアント端末ではなくサーバで実行し、その実行画面だけをクライアントに送信する。ユーザはあたかも自分の端末にインストールされたアプリケーションを実行するかのように、サーバ内のアプリケーションを利用することができる。ユーザとサーバとの関係は基本的に1対1対応であり、各ユーザはそれぞれ単独でサーバ内のアプリケーションを利用する。クライアント端末は、入力操作に対応した実行画面をサーバから受け取るだけなので、PDAなどの低性能の端末からでも複雑なアプリケーションを実行することが可能になる。
【0004】
図1は、現在利用されているSBCシステムの概要を説明するためのネットワーク構成図である。現状のSBCシステムαは、任意のアプリケーションをインストール可能なSBCミドルウエア2を具備したSBCサーバ3と、ネットワーク4を介してSBCサーバ3にアクセス可能なSBCクライアント106を含む。SBCクライアント106は、SBCブラウザ105を備え、このSBCブラウザ105からネットワーク4を介してSBCミドルウエア2上のアプリケーション1を遠隔利用する。
【0005】
SBCクライアント106のユーザ(不図示)が、SBCサーバ3上のアプリケーション1を遠隔利用する場合、マウス、キーボード、タブレット、ジョイスティック、その他任意の入力装置(不図示)を使って入力操作する。SBCブラウザ105は、ユーザによる入力操作情報を、ネットワーク4を介してSBCサーバ上で稼動するSBCミドルウエア2に送信する(ST1)。
【0006】
SBCミドルウエア2は、ネットワーク4を介してSBCブラウザ105から受信した入力操作情報を、SBCミドルウエア2上で稼動するアプリケーション1に受け渡す(ST2)。アプリケーション1は、ユーザの入力操作情報に基づいた処理を実行し、実行結果である画面更新情報をSBCミドルウエア2に供給する(ST3)。SBCミドルウエア2は、アプリケーション1から受け取った画面更新情報を、ネットワークを介してSBCクライアント106に転送して、画面更新情報の内容をSBCブラウザ105の画面に表示させる(ST4)。
【0007】
このような動作を繰り返すことで、ユーザは、SBCサーバ3上のアプリケーション1を、SBCクライアント106にインストールされたアプリケーションのごとく利用することができる。
【0008】
なお、SBCサーバ3上のアプリケーション1としては、SBCミドルウエア2が対応するOS(operating system)上で動作し得るアプリケーションであれば、たとえば、エディタソフト、DTP(desktop publishing)ソフト、CAD(computer aided design)ソフト、ゲームソフトなど、基本的にはどのようなアプリケーションでもほぼ動作可能である。
【0009】
SBCミドルウエア2としては、たとえばMetaFrame(Citrix社の登録商標)、VNC(Virtual Network Computing;AT&T社)、Tarantella(SCO社の登録商標)、GO−Global(GraphOn社の登録商標)などを適用することができる。
【0010】
ところで、現状のSBCシステムαにおけるSBCミドルウエア2は、あくまでも個々のユーザが単独でSBCサーバ3上のアプリケーション1を利用することを前提としている。したがって、SBCサーバ3で稼動するアプリケーション1の画面を複数のSBCクライアント106のSBCブラウザ105に表示して、ユーザ間でアプリケーション1を相互に利用する、あるいはリアルタイムで協調作業を行う、などのコラボレーションを実現するのは容易ではない。
【0011】
一方、ウェブ上で使用可能なアプリケーションを複数人で共有し、協調作業を行う技術が知られている(たとえば、特許文献1および2参照)。また、サーバ上で実際に稼動するアプリケーションソフトを1つに限定して、クライアントのキー操作による実行画面を複数のクライアントに配信し、協調作業を可能にする技術が知られている(たとえば、特許文献3参照)。
【0012】
【特許文献1】
特開2000−112862号公報
【0013】
【特許文献2】
特開平11−25042号公報
【0014】
【特許文献3】
特開平3−273443号公報
【0015】
【発明が解決しようとする課題】
しかし、これらの技術を、高度で複雑なアプリケーションの並列的な遠隔利用とデータの集中管理を前提とするサーバベースコンピューティング(SBC)によるコラボレーションに、即座に適用することはできない。
【0016】
そこで、本発明は、既存のSBCシステムを利用して、複数のSBCクライアントとSBCサーバとの間で、SBCサーバ内の任意のアプリケーションを共有し、協調作業することを可能にする新規なSBCコラボレーションシステムを提供する。
【0017】
【課題を解決するための手段】
上記課題を解決するために、SBCサーバと複数のSBCクライアントとをつなぐネットワークの任意の領域にプロキシサーバを配置し、1のSBCクライアントにより実行されるSBCサーバ上のアプリケーション画面をプロキシサーバでコピーして、各SBCクライアントに配信する。また、SBCクライアントの要求に応じて、アプリケーションを操作できる操作権の所在をプロキシサーバで動的に切り換えることにより、協調作業(セッション)に参加している任意のSBCクライアントがアプリケーション操作に介入することを可能にする。
【0018】
より具体的には、本発明の第1の側面では、任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、SBCサーバにネットワークを介して接続され、前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントと、ネットワーク上の任意の領域に配置され、SBCサーバと複数のSBCクライアントとの間を接続するプロキシサーバとを含むSBCコラボレーションシステムを提供する。このSBCコラボレーションシステムにおいて、プロキシサーバは、(a)第1のSBCクライアントに、前記アプリケーションの実行を許可する操作権を付与し、(b)第1のSBCクライアントから前記アプリケーションを実行する第1の入力操作情報を受信し、第1の入力操作情報をSBCサーバに転送して前記アプリケーションを実行させ、(c)前記アプリケーションの実行画面をSBCサーバから受け取って、この実行画面を前記複数のSBCクライアントに配信する。
【0019】
複数のSBCクライアントは、SBCサーバ上のアプリケーションを用いて協調作業するためのセッショングループを構成する。プロキシサーバは、セッショングループを構成する複数のSBCクライアントの間で、操作権の受け渡しを管理する。操作権が与えられるのは、複数のSBCクライアントの中の1のSBCクライアントであるが、操作権の所在を複数のSBCクライアントの間で調整することによって、複数のSBCクライアントが協調して、SBCサーバ上の1のアプリケーションを操作することが可能になる。
【0020】
プロキシサーバは、操作権を有するSBCクライアントの入力操作に応じたアプリケーションの実行画面を、セッションに参加している複数のSBCクライアントの数だけ複製し、配信する。
【0021】
プロキシサーバは、操作権を有さない第2のSBCクライアントから操作権取得要求を受け取った場合に、第1のSBCクライアントに対し、操作権譲渡依頼を送信する。そして、第1のSBCクライアントから操作権譲渡の許可通知を受け取った場合に、操作権を前記第2のSBCクライアントに移転する。
【0022】
このように、プロキシサーバを介してアプリケーション操作権の移転を調整することにより、既存のSBCミドルウエアをそのまま利用して、複数のSBCクライアントの間での協調作業が可能になる。
【0023】
本発明の第2の側面では、任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、SBCサーバにネットワークを介して接続され前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントとの間に挿入されるプロキシサーバを提供する。プロキシサーバは、(a)第1のSBCクライアントに、前記アプリケーションの実行を許可する操作権を付与する操作権管理部と、(b)第1のSBCクライアントから、前記アプリケーションを実行するための第1の入力操作情報を受信し、この第1の入力操作情報を前記SBCサーバに転送して前記アプリケーションを実行させる操作情報中継部と、(c)前記アプリケーションの実行画面をSBCサーバから受け取って、当該実行画面を複数のSBCクライアントに送信する実行画面配信部とを備える。
【0024】
実行画面配信部は、アプリケーションの実行画面を複数のSBCクライアントの数だけ複製する複写部を有する。複製された実行画面を一律にセッションに参加しているSBCクライアントに配信するので、SBCクライアントとSBCサーバとの間の通信速度、応答性を高く維持することができる。
【0025】
操作権管理部は、操作権を有さない第2のSBCクライアントから、操作権取得要求を受け取った場合に、第1のSBCクライアントに対して、操作権の譲渡依頼を送信する。そして、第1のSBCクライアントから操作権譲渡の許可通知を受け取った場合に、操作権を第2のSBCクライアントに移転する。
【0026】
操作権管理部により、複数のSBCクライアントの間でのアプリケーション操作権の移転を管理するので、既存のSBCシステムを利用した協調作業を可能にする。
【0027】
その他の構成、特徴についても、以下で図面を参照して述べる詳細な説明により、明白になるものである。
【0028】
【発明の実施の形態】
図2は、本発明の一実施形態に係るSBCコラボレーションシステムβの概略構成図である。SBCコラボレーションシステムβは、SBCサーバ3と、SBCサーバ3にネットワーク4を介して接続される複数のSBCクライアント6A、6B,6Cと、ネットワーク4上の任意の領域に設置されるプロキシサーバ10を含む。
【0029】
SBCサーバ3は、任意のアプリケーションを導入可能なSBCミドルウエア2を有する。SBCミドルウエア2は既存のSBCミドルウエアである。各SBCクライアント6は、SBCブラウザ5と、SBCコラボレーション補助部7とを有し、ユーザは、SBCブラウザ6から、ネットワーク4を介してSBCミドルウエア2上のアプリケーション1を遠隔利用することができる。SBCコラボレーション補助部7は、プロキシサーバ10によるSBCコラボレーション処理を、SBCクライアント6の側から補助する。
【0030】
プロキシサーバ10は、SBCサーバ3とSBCクライアント6A〜6Cとの間に設置され、操作情報処理部11と、コラボレーション制御部12を有する。操作情報処理部11は、各SBCクライアント6のSBCブラウザ5を介して入力されるアプリケーション操作に関連する情報を処理する。一方、コラボレーション制御部12は、SBCクライアントのSBCコラボレーション補助部7を介して入力される情報を処理し、複数のSBCクライアント6間でのコラボレーション動作を制御する。
【0031】
ネットワーク4およびプロキシサーバ10を介して、SBCサーバ3に接続されるSBCクライアント6A〜6Cは、SBCミドルウエア2上のアプリケーション1を利用したセッションを行うためのグループを構成する。これをたとえばセッショングループIとする。図2では、例示の便宜上、3つのSBCクライアント6A〜6Cを図示しているが、もちろんこれ以上の数のSBCクライアントでセッショングループを構成してもよい。また図示はしないが、複数のセッショングループが、ネットワーク4とプロキシサーバ10を介してSBCサーバ3に接続され、セッショングループごとに並列的にアプリケーション1を遠隔利用して協調作業することができる。
【0032】
グループ全体でのセッションIDと、このグループでセッションに参加するユーザのユーザIDは、あらかじめ契約等によりプロキシサーバに予約登録しておく。予約登録により、SBCクライアント6に、協調作業を行うためのプロキシサーバのIPアドレスと、ポート番号が付与されるものとする。
【0033】
プロキシサーバ10は、SBCクライアント6から見ると仮想的なSBCサーバであり、SBCサーバ3からみると仮想的なSBCクライアントである。サーバ3にとっては、アプリケーション1を利用するクライアントはセッショングループIであって、セッショングループIにいくつのSBCクライアントが属し、現在グループ内のどのSBCクライアントがアプリケーションの実行を行っているかは問題でない。実際にアプリケーションを実行するのは、セッショングループI内の1のSBCクライアントであるが、操作権の所在については、プロキシサーバ10が管理しており、SBCサーバ3からみると、あくまでもセッショングループIがアプリケーション1を利用している状態が成立する。したがって、既存のSBCミドルウエア2の基本態様である1対1対応のアプリケーション操作をそのまま利用して、グループIの内部で複数のSBCクライアントによる協調作業が可能になる。
【0034】
図3は、プロキシサーバ10の詳細なブロック構成図である。プロキシサーバ10は、上述した操作情報処理部11とコラボレーション制御部12に加え、SBCクライアント6A、6B,6Cからの入力を受け付ける、対クライアント入力受付部15と、SBCサーバ3からの入力を受け付ける、対サーバ入力受付部16と、クライアント情報を格納するクライアント情報データベース18を有する。クライアント情報としては、セッションID,参加予定ユーザID,パスワード、SBCサーバ3のIP、ポート番号などが挙げられる。なお、クライアント情報の一部またはすべては、SBCサーバ3内にも設定される。
【0035】
対クライアント入力受付部15は、SBCクライアント6から受け取ったパケットを、パケットに含まれる情報の種類に応じて、操作情報処理部11か、コラボレーション制御部12のいずれかに振り分ける。
【0036】
操作情報処理部11は、セッショングループIに属する1のSBCクライアント6による入力操作をSBCサーバ3に中継する操作情報中継部25と、入力された操作情報に基づいてSBCサーバ3内で実行された実行画面を各SBCクライアント6A〜6Cに配信するSBCブラウザ画面配信部21を有する。SBCブラウザ画面配信部21は複写部22を有し、配信に先立って、アプリケーションの実行画面を参加ユーザ分だけコピーする。
【0037】
操作情報中継部25は、対クライアント入力受付部15から送られてきたパケットが、現在操作権が与えられているSBCクライアント(以下、「特権ユーザ」と称する)からのパケットであるか否かを判断するパケット判断部26を有する。パケットが特権ユーザからのものであれば、パケット送信部27からこのパケットをSBCサーバ3へ送信する。パケットが現在の特権ユーザ以外のユーザ(以下、「通常ユーザ」と称する)からのものであれば、誤操作による入力とみなして、操作情報破棄部28でパケットを破棄する。
【0038】
一方、コラボレーション制御部12は、コラボレーションユーザ認証部31と、コラボレーションセッション管理部32と、コラボレーション操作権管理部33を有する。これらの要素の動作の詳細については後述する。
【0039】
図4は、SBCクライアント6上に表示されるSBCコラボレーションブラウザ41の一例を示す。SBCコラボレーションブラウザ41は、SBCブラウザ5と、SBCコラボレーション補助部7を有する。SBCブラウザ5は、サーバ3で実行され、プロキシサーバ10により複写・配信された実行画面(SBCブラウザ画面)を表示する。すべての参加ユーザは、SBCブラウザ5上で、現在の実行画面をリアルタイムで閲覧することができる。
【0040】
SBCコラボレーション補助部7は、セッション情報表示部42と、能動制御部43を有する。セッション情報表示部42は、一例として、セッション参加者および現在の操作権の所在を示す参加者一覧画面52と、システムの稼動履歴を表示するメッセージ表示画面53を有する。能動制御部43は、操作権取得要求ボタン54を有する。SBCミドルウエア2上のアプリケーション1を利用した協調作業中に、任意のSBCクライアントがアプリケーション1の実行に関与したい場合に、この操作権取得要求ボタン54をクリックする。操作権取得要求ボタンによる操作権変更については、後述する。
【0041】
図4の例では、たとえばSBCクライアント6AのユーザであるTanabeに操作権が与えられており、他のSBCクライアント6B,6Cのユーザは、閲覧権のみを有する。閲覧権は参加ユーザ全員に自動的に与えられ、もちろん操作権を有するユーザも閲覧権を有する。したがって、SBCクライアント6とプロキシサーバ10の間で、アプリケーションの操作権者には双方向の通信が与えられ、それ以外のアプリケーション閲覧者には片方向の通信が成立する。
【0042】
セッション開始時の操作権の所在については、たとえば、セッショングループI内でセッションを召集して最初にプロキシサーバ10にアクセスした者に操作権を与えてもよいし、開始時に操作権が与えられる者をあらかじめ決めておいてもよい。
【0043】
図5は、図2のSBCシステムβを用いたコラボレーションの処理シーケンスを示す図である。SBCクライアント6A〜6C、プロキシサーバ10、SBCサーバ3のすべてが立ち上げられている状態とする(ST11〜ST14)。
【0044】
この状態で、たとえばSBCクライアント6Aのユーザ(特権ユーザ)が、あらかじめ指定されたプロキシサーバ10のポート(不図示)に接続して、SBCコラボレーションのサービスを要求する(ST15)。この接続要求は、図4に示すSBCコラボレーションブラウザ41のSBCコラボレーション補助部7から行われる。プロキシサーバ10は、アクセスしてきたSBCクライアント6Aについてクライアント認証を行う(ST16)。
【0045】
クライアント認証手続きにおいて、プロキシサーバ10のコラボレーションユーザ認証部31は、対クライアント入力受付部15から、SBCクライアント6AのユーザID、パスワード、クライアントIPアドレスなどを受け取る。コラボレーションユーザ認証部31は、コラボレーションセッション管理部32にセッションIDの確認を要求する。コラボレーションセッション管理部32は、クライアント情報データベース18を検索して、アクセスされたプロキシサーバ10のポート番号から予約されたセッションIDを抽出し、抽出したセッションIDから参加予定ユーザIDを検索する。コラボレーションユーザ認証部31は、SBCクライアント6AのユーザIDが参加予定ユーザIDの中に含まれていれば、そのパスワードを確認して認証を完了し(ST16でYES)、SBCクライアント6Aに認証完了情報を送信する(ST17)。
【0046】
一方、コラボレーションセッション管理部32は、ユーザ認証部31でユーザ認証が成功したならば、セッションID,ユーザID,クライアントIPアドレスなどのセッション情報を更新する。コラボレーション操作権管理部33は、セッション情報の更新にともなって、最初に接続要求してきたSBCクライアント6Aに操作権を付与し、操作権情報を更新する。
【0047】
この時点で、SBCクライアント6AのSBCコラボレーション補助部7Aの参加者一覧画面52(図4参照)には、最初の参加者であるSBCクライアント6Aのユーザ名(たとえばTanabe)が、操作権を有する特権ユーザとしてIPアドレス(192.168.10.1)とともに表示される。そして、他のセッション参加者の認証が完了するまで待機状態となる(ST18)。
【0048】
同様に、その他のSBCクライアント6B,6Cも、プロキシサーバ10に対して接続を要求し(ST19)、それぞれクライアント認証を受ける(ST20でYES)。SBCクライアント6B,6Cの認証が完了する都度、プロキシサーバ10から、すでに参加しているすべてのSBCクライアント6に認証完了情報が送信される(ST21)。これにより、SBCコラボレーション補助部7の参加者一覧画面52に認証が完了したユーザ名が順次表示される。たとえば、SBCクライアント6Bの参加要求に対して認証が完了したならば、SBCクライアント6Aの参加者一覧画面52に、新たな参加者としてSBCクライアント6Bのユーザ名(たとえばNakamura)が追加表示される(ST22a)。同時に、SBCクライアント6Bの参加者一覧画面52には、特権ユーザの名前(Tanabe)と自己の名前(Nakamura)とが表示される(ST22b)。そして、すべての参加者の認証が済むまで、待機する(ST22a、ST22b)。
【0049】
次に、SBCクライアント6A(特権ユーザ)は、プロキシサーバ10に対してSBCコラボレーション開始命令を送信する(ST23)。プロキシサーバ10は、コラボレーション開始命令を受信し(ST24)、SBCサーバ3に対してSBCサービスの開始を要求する(ST25)。
【0050】
SBCサーバ3は、プロキシサーバ10からのサービス要求(セッション開始要求)に対してクライアント認証を行い(ST26)、認証に成功したならば(ST26でYES)、プロキシサーバ10に対してコラボレーション開始通知を送信する(ST27)。プロキシサーバ10は、このコラボレーション開始通知を受信し、セッションに参加しているすべての参加者のSBCクライアント6A〜6Cに送信する(ST28)。これを受けて、図4に示すように、SBCクライアント6A〜6Cのメッセージ表示画面53に、コラボレーションが開始された旨が表示される(ST29、ST30)。
【0051】
コラボレーションの開始と並行して、SBCサーバ3は、アプリケーション1の全画面情報をプロキシサーバ10に送信する(ST31)。プロキシサーバ10は、全画面情報を受信すると、(ST32)、その全画面情報を、参加ユーザの数だけ複写し、複写画面を各SBCクライアント6A〜6Cに配信する(ST33)。配信された全画面情報は、SBCクライアント6A〜6CのSBCブラウザ5A〜5C上に表示される(ST34、ST35)。
【0052】
図6および8は、上述したコラボレーション開始処理(ST23〜ST30)と、全画面出力処理(ST31〜ST35)を、システム動作の側面から示す図である。まず、図6において、操作権を有するSBCクライアント6AのSBCコラボレーション補助部7Aは、プロキシサーバ10に対してコラボレーション開始要求を送信する(矢印(1))。コラボレーションの開始要求は、たとえば図7に示すコラボレーション開始確認画面で、開始ボタン61をクリックすることにより実行される。
【0053】
コラボレーション開始確認画面は、操作権の与えられたSBCクライアント6AのSBCコラボレーション補助部7Aにのみ表示される構成とする。この場合、特権ユーザに与えられるアプリケーションの操作権の中に、コラボレーションの開始権も含まれることになる。あるいは、認証が完了したすべての参加ユーザのSBCコラボレーション補助部5に、コラボレーション開始確認画面を表示する構成としてもよい。後者の場合、操作権を有さない通常ユーザがコラボレーション開始要求ボタンをクリックしても、コラボレーションユーザ認証部31とコラボレーション操作権管理部33による確認処理で拒否されることになるので、結局は、特権ユーザがコラボレーションを開始することになる。
【0054】
コラボレーション開始要求は、プロキシサーバ10の対クライアント入力受付部15で受信され、コラボレーションセッション管理部32に送られる(矢印(2))。コラボレーションセッション管理部32は、コラボレーション開始要求が入力されたポート番号からセッションIDを検索し、検索されたセッションIDが、現在起動されていない(つまり、これから新たに開始される)セッションのIDであることを確認する。そして、コラボレーション開始要求を起動したユーザのIDを確認する(処理(3))。
【0055】
コラボレーションセッション管理部32は、コラボレーション操作権管理部33に、このセッションの操作権の所在がコラボレーションの開始を要求したユーザにあることを確認する(矢印(4))。確認後、コラボレーションユーザ認証部31から、コラボレーションの開始を要求したユーザのパスワードを取得する(矢印(5))。
【0056】
パスワード取得後、コラボレーションセッション管理部32は、SBCサーバ3にSBCセッションの開始を要求し、SBCサーバ3はユーザID、パスワード、SBCサーバ3のポート番号などからクライアント認証して、セッション開始要求に対する応答を返す(矢印(6))。なお、図示の便宜上、処理(6)を双方向の矢印で示してあるが、SBCサーバ3からの応答は、対サーバ入力受付部16を介してコラボレーションセッション管理部32に供給される。
【0057】
コラボレーションセッション管理部32は、各SBCクライアント6A〜6Cの対プロキシ入力受付部8A〜8Cに対して、セッション開始通知を送信する(矢印(7))。セッション開始通知は、各SBCクライアントのSBCコラボレーション補助部7A〜7Cに送られ(矢印(8))、図4のメッセージ表示部53に表示される。図4の例では、「17:25コラボレーションが開始されました」と表示されている。
【0058】
一方、SBCミドルウエア2は、セッション開始要求に応じて、アプリケーション1を起動する(矢印(9))。アプリケーション1はアプリケーションの全画面を出力し(矢印(10))、SBCサーバ3は、プロキシサーバ10の対サーバ入力受付部16に、全画面を送信する(矢印(11))。
【0059】
図8は、SBC画面出力時のシステム動作図である。図8に示す動作は、セッション開始直後の全画面出力にも、アプリケーションの実行結果である実行画面の出力にも等しく適用される。相違は、全画面出力時には、すべての画面情報を複写し配信するのに対し、アプリケーション実行画面の場合は、実行操作による変更部分のみを複写し、配信する点だけであるので、図8を参照して全画面出力動作を説明する。
【0060】
まず、セッション開始要求に応じてSBCサーバ3内で立ち上げられたアプリケーション1は、SBCミドルウエア2上で全画面を開く(矢印(1))。SBCミドルウエア2は、全画面をその属性とともにプロキシサーバ10に送信する(矢印(2))。プロキシサーバ10の対サーバ入力受付部16は、受信した全画面および属性を、ポート番号とともにSBCブラウザ画面配信部21の複写部22に供給する(矢印(3))。
【0061】
SBCブラウザ画面配信部21は、コラボレーションセッション管理部32に対して、画面出力先を確認する。コラボレーションセッション管理部32は、ポート番号から、セッションIDと、このセッションに参加するすべてのSBCクライアントのIPアドレスを検索し、画面出力先の検索結果をSBCブラウザ画面配信部21に供給する(矢印(4))。SBCブラウザ画面配信部21は、複写部22で画面出力先の数に対応する部数だけ、全画面情報をコピーし、これを各SBCクライアント6A〜6Cに配信する(矢印(5))。
【0062】
各SBCクライアント6A〜6Cの対プロキシ入力受付部8A〜8Cは、受信した全画面情報をSBCブラウザ5A〜5Cに供給し(矢印(6))、SBCブラウザ5A〜5Cに最初の全画面を表示する。
【0063】
図5に戻り、参加者全員のSBCブラウザ5A〜5Cに全画面が表示され、実質的にコラボレーション可能な状態になったところで、アプリケーションの操作権が与えられたSBCクライアント6Aの特権ユーザが、マウス・キーボード等を用いてSBCブラウザ5A上でアプリケーションの操作を行う(ST36)。マウス・キーボード等の入力操作情報は、プロキシサーバ10の対クライアント入力受付部15から、操作情報処理部11の操作情報中継部25に供給される。
【0064】
操作情報中継部25のパケット判断部26(図3参照)は、この入力操作情報を含むパケットが、操作権を有する特権ユーザからのものであるか否かを判断する(ST37)。パケットが、通常ユーザからのものである場合は、(ST37でNO)、操作情報破棄部28で、この入力操作情報を破棄する。一方、パケットが特権ユーザからのものであれば(ST37でYES)、パケット送信部27から、このパケットをSBCサーバ3に送信する(ST38)。
【0065】
パケットの判断は、パケット判断部26が、コラボレーションセッション管理部32およびコラボレーション操作権管理部33に、受信したパケットに関するセッションID、参加ユーザID,現在の操作権の所在(特権ユーザID)を確認することによって行われる。このような判断により、受信したパケットが正しく操作権を有する特権ユーザからのパケットである場合にのみ、SBCサーバ3に入力操作情報を中継する。操作権のない通常ユーザからのパケットを破棄するのは、操作権がないにもかかわらずマウス・キーボード等の誤操作、あるいは無意識の操作などで、アプリケーションの実行操作が錯綜するのを防止するためである。
【0066】
SBCサーバ3は、特権ユーザからの入力操作情報を受け取ると、その入力操作情報に基づいてアプリケーション1を実行する(ST39)。アプリケーション1を実行した結果、実行画面が更新される。SBCサーバ3は、更新部分(変更部分)についての画面更新情報を、プロキシサーバ10に送信する(ST40)。上述したように、実際にアプリケーションの実行が開始されると、セッション開始時とは異なり、全画面情報を送信する必要はなく、実行結果である差分情報だけを送信すればよい。
【0067】
プロキシサーバ10は対サーバ入力受付部16で画面更新情報を受信すると、この画面更新情報をSBCブラウザ画面配信部21に供給する。SBCブラウザ画面配信部21は、画面更新情報を受信すると(ST41)、複写部22で画面更新情報を参加ユーザ分コピーし、これを各SBCクライアント6A〜6Cに配信する(ST42)。SBCクライアント6A〜6Cは、すでに表示されている全画面に画面更新情報を組み込んで、特権ユーザによるアプリケーションの実行結果をSBCブラウザ5A〜5C上に表示する(ST43,ST44)。
【0068】
画面更新情報の複写、配信動作は、図8を参照して説明した全画面情報の複写、配信動作と同様であるので、ここでは説明を省略する。特権ユーザがアプリケーションの実行を継続する限り、ST36〜ST44の処理が繰り返され、各SBCクライアント6A〜6Cに実行画面がリアルタイムで表示される。
【0069】
SBCクライアントは、表示機能さえあれば、複雑なアプリケーションの実行をリアルタイムで遠隔閲覧することができ、各SBCクライアントでのアプリケーションの運用管理コストを削減することができる。また、セッション開始時の全画面情報の送信以降は、アプリケーションの実行による画面更新情報のみを送信するので、通信量が軽く、十分な通信速度を確保できる。さらに、SBCクライアントに配信する画面情報をコピーするだけなので、プロキシサーバ10での処理が早く、SBCコラボレーションシステム全体としてアプリケーションの実行に対する即応性や操作性が高い。
【0070】
操作権を有する特権ユーザのSBCクライアントも、表示装置と入力装置さえあれば、SBCサーバに搭載された複雑で高度なアプリケーションを、SBCクライアント自体にインストールされたアプリケーションを操作するかのように実行することができる。実行履歴は、SBCサーバで集中管理するので、SBCクライアントの資源管理の負担が大幅に軽減される。
【0071】
図9は、複数のセッション参加ユーザの間での操作権受け渡しの処理シーケンスを示す図である。セッション参加ユーザのSBCクライアント6A〜6C、プロキシサーバ10、SBCサーバ3のすべてがセッション状態にある(ST51〜ST54)。
【0072】
まず、SBCクライアント6B,6Cのいずれかの通常ユーザが、SBCコラボレーション補助部7の操作権取得要求ボタン54(図4参照)をクリックすることによって、プロキシサーバ10に対し、アプリケーション操作権の取得要求を行う(ST55)。プロキシサーバ10は、操作権取得要求を受信すると(ST56)、現在の特権ユーザのSBCクライアント6Aに対して、アプリケーション操作権の譲渡依頼を発する(ST57)。
【0073】
SBCクライアント6Aでは、アプリケーション操作権の譲渡依頼を許可するか否かを特権ユーザに問い合わせる(ST58)。問い合わせは、たとえば図11(a)に示す操作権譲渡要求画面を、SBCクライアント6AのSBCコラボレーション補助部7Aに表示することにより行なう。特権ユーザは、アプリケーション操作権の譲渡を許可する場合(ST58でYES)は、許可ボタン71をクリックし、操作権の譲渡を拒否する場合(ST58でNO)は、拒否ボタン72をクリックする。
【0074】
図9の例では、操作権譲渡要求画面は、現在の特権ユーザ(SBCクライアント6A)のSBCコラボレーション補助部7Aにのみ表示される構成としているが、操作権変更の予告として、すべてのSBCクライアント6A〜6BのSBCコラボレーション補助部7A〜7Cに操作権譲渡要求画面を表示する構成としてもよい。この場合は、特権ユーザ以外の者による許可ボタン71あるいは拒否ボタン72の操作は、プロキシサーバ10での特権ユーザIDの確認後に破棄されることになる。
【0075】
操作権譲渡要求画面のボタン操作により、SBCクライアント6Aは譲渡依頼に対する回答をプロキシサーバ10に送信する(ST59)。プロキシサーバ10は、特権ユーザからの回答を受信すると(ST60)、操作権の譲渡が成立したかどうかを判断し(ST61)、譲渡依頼結果をSBCクライアント6A〜6Cに送信する(ST62)。
【0076】
譲渡依頼結果は、SBCクライアント6A〜6CのSBCコラボレーション補助部7に表示される(ST63、ST64)。譲渡依頼が拒否された場合は、たとえば図11(b)に示す操作権譲渡拒否画面が、操作権取得要求を行ったSBCクライアント6CのSBCコラボレーション補助部7Cに表示される。譲渡依頼が許可された場合は、すべてのSBCクライアント6A〜6Cの参加者一覧画面52(図4参照)が、たとえば、「閲覧:Tanabe(192.168.10.1)、閲覧:Nakamura(192.168.10.2)、操作権:Suzuki(192.168.10.3)」のように変更される。操作権の所在が変更されたことが明示されれば、表示の順序は不問である。操作権の所在をハイライト表示する、異なる色で表示するなどして、強調してもよい。また、参加者一覧画面52上で操作権の変更を表示するとともに、メッセージ表示画面53のセッション履歴に、操作権の譲渡を時刻とともに表示してもよい。
【0077】
図10は、操作権の変更手続きを、システム動作の側面から説明するための図である。たとえば、SBCクライアント6Cが、SBCコラボレーション補助部7Cからプロキシサーバ10に操作権取得要求を送信する(矢印(1))。プロキシサーバ10の対クライアント入力受付部15は、この操作権取得要求を、ポート番号、クライアントIPアドレスとともに、コラボレーション操作権管理部33に供給する(矢印(2))。コラボレーション操作権管理部33は、コラボレーションセッション管理部32に、セッションIDおよびユーザIDを確認する。コラボレーションセッション管理部32は、ポート番号からセッションIDとユーザIDを抽出し、抽出結果をコラボレーション操作権管理部33に供給する(矢印(3))。コラボレーション操作権管理部33は、セッションIDから現在の特権ユーザIDを検索し(処理(4))、現在の特権ユーザ(SBCクライアント6Aのユーザ)に、操作権譲渡依頼を送信する(矢印(5))。
【0078】
SBCクライアント6Aの対プロキシ入力受付部8Aは、受信した操作権譲渡依頼をSBCコラボレーション補助部7Aに供給する(矢印(6))。SBCコラボレーション補助部7Aは、たとえば図11(a)に示す操作権譲渡依頼画面を表示する。SBCクライアント6Aは、譲渡依頼に対する回答をプロキシサーバ10に送信する(矢印(7))。プロキシサーバ10の対クライアント入力受付部15は、譲渡依頼結果をコラボレーション操作権管理部33に供給する(矢印(8))。
【0079】
コラボレーション操作権管理部33は、回答結果が操作権譲渡の許可であれば、現在の特権ユーザIDを更新して、更新された特権ユーザ情報を、すべてのSBCクライアント6A〜6Cに送信する(矢印(9))。回答結果が操作権譲渡の拒否であれば、現在の特権ユーザIDを維持して、操作権拒否の通知をSBCクライアント6Cに送信する。
【0080】
SBCクライアント6A〜6Cの対プロキシ入力受付部8A〜8Cは、新たな特権ユーザ、または操作権譲渡依頼の拒否結果をSBCコラボレーション補助部7A〜7Cに供給し、表示する(矢印(10))。
【0081】
図9に戻って、操作権の譲渡の結果、新たな特権ユーザ、たとえばSBCクライアント6Cのユーザは、マウス・キーボード等を用いて、SBCブラウザ5C上でアプリケーションを操作する(ST65)。入力操作情報は、プロキシサーバ10へ送信され、プロキシサーバ10の操作情報中継部25で、入力操作情報が特権ユーザからのパケットであるか否を判断する(ST66)。特権ユーザからのパケットであれば(ST66でYES)、この入力操作情報をSBCサーバ3に中継する(ST67)。SBCサーバ3は、入力操作情報に応じてアプリケーションを実行する(ST68)。特権ユーザからのパケットでない場合は(ST66でNO)、操作情報破棄部28でパケットを破棄する。
【0082】
SBCサーバ3は、アプリケーションの実行結果である画面更新情報をプロキシサーバ10に送信する(ST69)。プロキシサーバ10は、受信した画面更新情報を参加ユーザ分コピーして、セッションに参加しているすべてのSBCクライアント6A〜6Cに配信する(ST70、ST71)。SBCクライアント6A〜6Cは、更新された実行画面をSBCブラウザ5A〜5C上に表示する(ST72、ST73)。
【0083】
画面更新情報の複写、配信のシステム動作は、図8と関連して説明したとおりであり、説明を省略する。新たな特権ユーザによるアプリケーションの操作は、次に操作権取得要求ボタンがクリックされ、操作権の譲渡が許可されるまで継続し、ST65〜ST73が繰り返される。
【0084】
このように、アプリケーションの操作権を有する特権ユーザだけが実際にSBCサーバ3内のアプリケーション1を実行することができるが、操作権の所在は、特権ユーザと、グループ内の通常ユーザとの間のネゴシエーションにより、随時変更可能である。操作権の変更、所在については、プロキシサーバ10のコラボレーション操作権管理部33が一括管理するので、SBCクライアント6への負担は少ない。
【0085】
また、操作権の所在にかかわらず、アプリケーション1の実行画面はプロキシサーバ10で複製され配信されるので、セッションに参加するSBCクライアント6のすべてにおいてリアルタイムで表示される。SBCサーバ3からみると、あくまでもアプリケーション1を実行するクライアントはセッショングループIであり、クライアントとアプリケーションの実行を1対1対応とする既存のSBCミドルウエア2の基本仕様をそのまま利用することができる。
【0086】
以上では、セッション参加予定者がすべて揃ってからセッションを開始する例に基づいて、処理シーケンスとシステム動作を説明した。しかし、セッショングループIに所属するユーザが、セッションへ途中参加できる構成にしてもよい。この場合、操作権を有する特権ユーザは、他のセッション参加者のログイン状態を確認しつつ、自分の意思によってコラボレーション開始命令を出し、コラボレーションを開始させることができる。また、SBCクライアント6B,6Cも、参加予定のすべてのクライアントの参加まで待たずに、特権ユーザによるコラボレーション開始命令が出されるまで待機することになる。さらに、操作権を有する特権ユーザが、グループ内に属する新たなユーザの参加を許可あるいは不許可にする構成にすることも可能である。
【0087】
処理シーケンスとしては、セッション開始後に、セッションへの参加を要求するSBCクライアント6D(不図示)が、SBCコラボレーションブラウザ41を立ち上げて、プロキシサーバ10への接続要求を行う。クライアント認証後、プロキシサーバ10のコラボレーションセッション管理部32は、入力ポート番号からセッションIDを検索し、検索されたセッションが現在セッション中であるか否かを判断する。セッション中であれば、コラボレーション操作権管理部33に現在の特権ユーザを確認し、特権ユーザであるSBCクライアント6Aに対して、コラボレーション参加要求依頼を送信する。SBCクライアント6Aは参加要求依頼を受信し、SBCコラボレーション補助部7Aに、たとえば図12(a)に示すコラボレーション参加要求画面が表示される。
【0088】
特権ユーザは、コラボレーション参加要求画面で許可ボタン81または拒否ボタン82をクリックすることによって、セッション途中でのユーザの参加を許可、あるいは不許可する。不許可の場合、プロキシサーバ10のコラボレーションセッション管理部32は、参加要求を行ったSBCクライアント6Dに対して、不許可通知を送信する。SBCクライアント6DのSBCコラボレーション補助部7Dには、たとえば図12(b)に示すコラボレーション参加拒否画面が表示される。
【0089】
許可ボタン81のクリックによりセッション参加が許可された場合は、プロキシサーバ10のコラボレーションセッション管理部32で、セッション参加中のユーザIDのリストに新たなユーザIDが追加される。これと同時に、プロキシサーバ10はSBCサーバ3に対して、現在の全画面情報を要求する。SBCサーバ3は、現在の全画面情報をプロキシサーバ10に送信する。プロキシサーバ10のSBCブラウザ画面配信部21は、セッション参加が認められたSBCクライアント6Dに全画面情報を配信し、SBCクライアント6DのSBCブラウザ5Dに、現在のアプリケーション実行画面が表示される。
【0090】
コラボレーションセッション管理部32はさらに、すべてのSBCクライアント6A〜6Dに対し、更新されたセッション参加者情報を送信する。SBCクライアント6A〜6DのSBCコラボレーション補助部7A〜7Dにおいて、参加者一覧画面52とメッセージ表示画面53(図4参照)が更新される。すなわち、参加者一覧画面52に、たとえば「閲覧:Maeda(192.168.10.4)」という情報が追加され、メッセージ表示画面53のセッション履歴に、SBCクライアント6Dの参加が時刻とともに表示される。
【0091】
セッションの終了に関しては、特権ユーザがSBCクライアント6を強制的に終了させる方法と、コラボレーション開始確認画面(図7参照)とは別画面で中止させる方法が考えられる。後者の場合は、たとえばSBCクライアント6の画面上で右クリックすることによって、コラボレーション中止メニューが表示され選択される。
【0092】
プロキシサーバ10は、セッション中止要求を受けると、SBCサーバ3との間の接続を切断する。SBCサーバ3では、アプリケーションは起動した状態で保存されており、プロキシサーバ10から再度接続すると、切断したときのアプリケーションの状態からコラボレーションを継続できる。
【0093】
なお、上述した実施形態では、プロキシサーバ10からSBCサーバ3への接続に特権ユーザのユーザIDを用いているが、プロキシサーバ10において、SBCサーバ3上のアプリケーション1と対応付けて独自のユーザIDとパスワードを保持する形態としてもよい。
【0094】
SBCコラボレーションシステムβは、教育、医療、設計、建築など、任意の分野に適用可能である。いずれの場合も、協調作業を行なう現場では、表示機能と簡単な入力装置を有するSBCクライアント6を準備するだけでよい。高負荷のアプリケーションはSBCサーバ3内で実行し、プロキシサーバ10により、その実行画面をセッションに参加したすべてのSBCクライアントにリアルタイムで配信する。また、セッション履歴と操作権の所在、変更をプロキシサーバ10で集中管理するので、SBCクライアント6の負荷が少ない。
【0095】
SBCクライアントとしては、既存のSBCブラウザを有するデスクトップPCやノートパソコン、PDA,携帯電話などの端末装置を用いることができる。このようなSBCブラウザ機能に、本発明で使用するSBCコラボレーション補助部7を付加するだけで、SBCサーバ3内の任意のアプリケーションを遠隔利用したSBCコラボレーションが可能になる。
【0096】
SBCクライアント6のSBCコラボレーション補助部7の処理動作と、プロキシサーバ10の処理動作は、ハードウエア、ソフトウエア、ファームウエアのいずれで実現してもよい。SBCコラボレーション補助部7をソフトウエアで実現する場合は、SBCコラボレーション補助プログラムをコンピュータ読み取り可能な任意の記録媒体に記録して配布してもよいし、プロキシサーバ10からネットワーク4を介してSBCクライアントに配信してもよい。
【0097】
SBCクライアントにインストールされるSBCコラボレーション補助プログラムは、以下の手順を含む。
(a)プロキシサーバが第1のSBCクライアントにアプリケーションの操作権を付与したときに、SBCクライアントに操作権の所在を表示させる
(b)第1のSBCクライアントがSBCサーバ上のアプリケーションを実行したときに、SBCクライアントに、プロキシサーバを介して送られてくる実行画面を表示させる。
(c)第2のSBCクライアントが、アプリケーションの操作権を取得したときに、SBCクライアントに、操作権の移転を表示させる。
【0098】
このSBCコラボレーション補助プログラムはさらに、SBCクライアントに必要に応じて操作権の取得を要求させる手順を含む。
【0099】
既存のSBCクライアント端末にコラボレーション補助プログラムを導入するだけで、遠隔のSBCサーバ内の任意のアプリケーションを利用して、協調作業が可能になる。
【0100】
プロキシサーバをソフトウエアで実現する場合は、プロキシサーバで実行されるSBCコラボレーション処理プログラムをインストールすればよい。SBCコラボレーション処理プログラムは、以下の手順を含む。
(a)プロキシサーバに、第1のSBCクライアントに対してアプリケーションの操作権を付与させる。
(b)第1のSBCクライアントから、SBCサーバ上のアプリケーションを実行する第1の入力操作情報を受信したときに、プロキシサーバに、第1の入力操作情報をSBCサーバへ転送させる。
(c)SBCサーバから前記アプリケーションの実行画面を受信したときに、前記プロキシサーバに、当該実行画面を前記複数のSBCクライアントに配信させる。
【0101】
プロキシサーバにこのような機能をインストールすることにより、既存のSBCシステムを利用したSBCコラボレーションを実現することができる。
【0102】
【発明の効果】
本発明によれば、既存のSBCミドルウエアを利用したまま、複数のSBCクライアント間で、SBCサーバ内のアプリケーションの共有、協調作業が可能になる。
【0103】
コラボレーション中は、アプリケーションの実行に伴う画面更新情報のみを複製し配信するので、即応性にすぐれる。
【図面の簡単な説明】
【図1】一般的なSBCシステムの概略構成図である。
【図2】本発明の一実施形態に係るSBCコラボレーションシステムの概略構成図であり、複数のSBCクライアント間でSBCサーバ上のアプリケーションの共有および協調作業を可能にするプロキシサーバを含むネットワーク構成を示す図である。
【図3】図2のシステムで用いられるプロキシサーバのブロック構成図である。
【図4】SBCクライアント上に表示されるSBCコラボレーションブラウザの一例を示す図である。
【図5】SBCコラボレーションの開始処理シーケンスを示す図である。
【図6】SBCコラボレーション開始時のシステムの動作を説明するための図である。
【図7】コラボレーション開始確認画面の一例を示す図である。
【図8】SBCコラボレーションにおけるSBC画面出力時のシステムの動作を説明するための図である。
【図9】アプリケーション操作権譲渡の処理シーケンスを示す図である。
【図10】操作権譲渡時のシステムの動作を説明するための図である。
【図11】操作権譲渡要求画面と、操作権譲渡拒否画面の一例を示す図である。
【図12】コラボレーション参加要求画面と、コラボレーション参加拒否画面の一例を示す図である。
【符号の説明】
α SBCシステム
β SBCコラボレーションシステム
1 アプリケーション
2 SBCミドルウエア
3 SBCサーバ
4 ネットワーク
5A、5B、5C SBCブラウザ
6A、6B、6C SBCクライアント
7A、7B、7C SBCコラボレーション補助部
8A、8B,8C 対プロキシ入力受付部
10 プロキシサーバ
11 操作情報処理部
12 コラボレーション制御部
15 対クライアント入力受付部
16 対サーバ入力受付部
18 クライアント情報データベース
21 SBCブラウザ画面配信部(実行画面配信部)
22 複写部
25 操作情報中継部
26 パケット判断部
27 パケット送信部
28 操作情報破棄部
31 コラボレーションユーザ認証部
32 コラボレーションセッション管理部
33 コラボレーション操作権管理部
41 SBCコラボレーションブラウザ
42 セッション情報表示部
43 能動制御部
52 参加者一覧画面
53 メッセージ表示画面
54 操作権取得要求ボタン
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to server-based computing (SBC) collaboration technology, and more particularly, to a centralized centralized server that includes a proxy server that enables a plurality of remote users to share an application screen running on an SBC server and perform cooperative work. Type of SBC collaboration technology.
[0002]
[Prior art]
In recent years, a system has been developed by so-called SBC (server-based computing) technology that allows a user to remotely use an arbitrary application running on an SBC server in a network from an SBC browser of a single SBC client connected to the network. ing.
[0003]
In the SBC system, a high-load application is executed not on the client terminal but on the server, and only the execution screen is transmitted to the client. The user can use the application in the server as if the user installed the application on his terminal. The relationship between the user and the server is basically one-to-one, and each user independently uses the application in the server. Since the client terminal only receives the execution screen corresponding to the input operation from the server, it becomes possible to execute a complicated application even from a low-performance terminal such as a PDA.
[0004]
FIG. 1 is a network configuration diagram for explaining an outline of an SBC system currently used. The current SBC system α includes an SBC server 3 having an SBC middleware 2 in which an arbitrary application can be installed, and an SBC client 106 capable of accessing the SBC server 3 via a network 4. The SBC client 106 includes an SBC browser 105, and remotely uses the application 1 on the SBC middleware 2 from the SBC browser 105 via the network 4.
[0005]
When the user (not shown) of the SBC client 106 uses the application 1 on the SBC server 3 remotely, an input operation is performed using a mouse, a keyboard, a tablet, a joystick, or any other input device (not shown). The SBC browser 105 transmits the input operation information by the user to the SBC middleware 2 running on the SBC server via the network 4 (ST1).
[0006]
The SBC middleware 2 transfers the input operation information received from the SBC browser 105 via the network 4 to the application 1 running on the SBC middleware 2 (ST2). The application 1 executes a process based on the input operation information of the user, and supplies screen update information as an execution result to the SBC middleware 2 (ST3). The SBC middleware 2 transfers the screen update information received from the application 1 to the SBC client 106 via the network, and displays the contents of the screen update information on the screen of the SBC browser 105 (ST4).
[0007]
By repeating such an operation, the user can use the application 1 on the SBC server 3 like an application installed in the SBC client 106.
[0008]
The application 1 on the SBC server 3 is an application that can run on an OS (operating system) corresponding to the SBC middleware 2, for example, editor software, desktop publishing (DTP) software, CAD (computer aided). Basically, almost any application such as design software or game software can be operated.
[0009]
As the SBC middleware 2, for example, MetaFrame (registered trademark of Citrix), VNC (Virtual Network Computing; AT & T), Tarantella (registered trademark of SCO), GO-Global (registered trademark of GraphOn) and the like are applied. be able to.
[0010]
By the way, the SBC middleware 2 in the current SBC system α is based on the premise that each user uses the application 1 on the SBC server 3 alone. Therefore, the screen of the application 1 running on the SBC server 3 is displayed on the SBC browsers 105 of the plurality of SBC clients 106, and the user can use the application 1 mutually or collaborate in real time. It is not easy to realize.
[0011]
On the other hand, there is known a technique in which an application usable on the web is shared by a plurality of people and cooperative work is performed (for example, see Patent Documents 1 and 2). Also, there is known a technology that limits application software actually running on a server to one, distributes an execution screen by a key operation of a client to a plurality of clients, and enables cooperative work (for example, see Patent Reference 3).
[0012]
[Patent Document 1]
JP 2000-112852 A
[0013]
[Patent Document 2]
JP-A-11-25042
[0014]
[Patent Document 3]
JP-A-3-273443
[0015]
[Problems to be solved by the invention]
However, these technologies cannot be immediately applied to server-based computing (SBC) collaboration, which presumes parallel remote use of highly complex applications and centralized data management.
[0016]
Therefore, the present invention provides a new SBC collaboration that enables an existing SBC system to share an arbitrary application in an SBC server between a plurality of SBC clients and an SBC server and perform a cooperative operation. Provide system.
[0017]
[Means for Solving the Problems]
In order to solve the above-mentioned problem, a proxy server is arranged in an arbitrary area of a network connecting an SBC server and a plurality of SBC clients, and an application screen on the SBC server executed by one SBC client is copied by the proxy server. And distributes it to each SBC client. In addition, in response to a request from the SBC client, the location of the operation right for operating the application is dynamically switched by the proxy server, so that any SBC client participating in the cooperative work (session) intervenes in the application operation. Enable.
[0018]
More specifically, according to the first aspect of the present invention, an SBC server having SBC middleware capable of introducing an arbitrary application is connected to the SBC server via a network, and the application can be used remotely. Provided is an SBC collaboration system including a plurality of SBC clients and a proxy server arranged in an arbitrary area on a network and connecting between the SBC server and the plurality of SBC clients. In this SBC collaboration system, the proxy server (a) gives the first SBC client an operation right for permitting the execution of the application, and (b) the first SBC client executes the first application that executes the application from the first SBC client. Receiving the input operation information, transferring the first input operation information to the SBC server to execute the application, and (c) receiving an execution screen of the application from the SBC server, and displaying the execution screen of the plurality of SBC clients. Deliver to.
[0019]
The plurality of SBC clients constitute a session group for cooperative work using an application on the SBC server. The proxy server manages the transfer of the operation right among a plurality of SBC clients constituting the session group. The operation right is given to one SBC client among the plurality of SBC clients, but by coordinating the location of the operation right among the plurality of SBC clients, the plurality of SBC clients cooperate with each other, One application on the server can be operated.
[0020]
The proxy server copies and distributes the execution screen of the application corresponding to the input operation of the SBC client having the operation right by the number of the plurality of SBC clients participating in the session.
[0021]
When receiving the operation right acquisition request from the second SBC client having no operation right, the proxy server transmits an operation right transfer request to the first SBC client. Then, when the operation right transfer permission notification is received from the first SBC client, the operation right is transferred to the second SBC client.
[0022]
In this way, by adjusting the transfer of the application operation right via the proxy server, it is possible to cooperate with a plurality of SBC clients using the existing SBC middleware as it is.
[0023]
According to a second aspect of the present invention, an SBC server having SBC middleware capable of introducing an arbitrary application is connected to a plurality of SBC clients connected to the SBC server via a network and capable of remotely using the application. Provide a proxy server to be inserted into the. The proxy server includes: (a) an operation right management unit that gives an operation right to permit execution of the application to the first SBC client; and (b) a second operation right for executing the application from the first SBC client. Receiving the first input operation information, transferring the first input operation information to the SBC server, and executing the application; and (c) receiving an execution screen of the application from the SBC server. An execution screen distribution unit that transmits the execution screen to a plurality of SBC clients.
[0024]
The execution screen distribution unit includes a copy unit that duplicates the execution screen of the application by the number of the plurality of SBC clients. Since the copied execution screen is uniformly distributed to the SBC clients participating in the session, it is possible to maintain a high communication speed and high responsiveness between the SBC client and the SBC server.
[0025]
When receiving the operation right acquisition request from the second SBC client having no operation right, the operation right management unit transmits an operation right transfer request to the first SBC client. Then, when the operation right transfer permission notification is received from the first SBC client, the operation right is transferred to the second SBC client.
[0026]
The operation right management unit manages the transfer of the application operation right among the plurality of SBC clients, so that the cooperative work using the existing SBC system is enabled.
[0027]
Other configurations and features will become apparent from the detailed description given below with reference to the drawings.
[0028]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 2 is a schematic configuration diagram of the SBC collaboration system β according to an embodiment of the present invention. The SBC collaboration system β includes an SBC server 3, a plurality of SBC clients 6A, 6B, 6C connected to the SBC server 3 via a network 4, and a proxy server 10 installed in an arbitrary area on the network 4. .
[0029]
The SBC server 3 has the SBC middleware 2 into which an arbitrary application can be introduced. The SBC middleware 2 is existing SBC middleware. Each SBC client 6 has an SBC browser 5 and an SBC collaboration auxiliary unit 7, and a user can remotely use the application 1 on the SBC middleware 2 from the SBC browser 6 via the network 4. The SBC collaboration assisting unit 7 assists the SBC client 6 in the SBC collaboration process by the proxy server 10.
[0030]
The proxy server 10 is installed between the SBC server 3 and the SBC clients 6A to 6C, and has an operation information processing unit 11 and a collaboration control unit 12. The operation information processing unit 11 processes information related to an application operation input via the SBC browser 5 of each SBC client 6. On the other hand, the collaboration control unit 12 processes information input via the SBC collaboration auxiliary unit 7 of the SBC client, and controls a collaboration operation among the plurality of SBC clients 6.
[0031]
The SBC clients 6A to 6C connected to the SBC server 3 via the network 4 and the proxy server 10 form a group for performing a session using the application 1 on the SBC middleware 2. This is, for example, a session group I. Although three SBC clients 6A to 6C are illustrated in FIG. 2 for convenience of illustration, a session group may be composed of more SBC clients. Although not shown, a plurality of session groups are connected to the SBC server 3 via the network 4 and the proxy server 10, and can cooperate by remotely using the application 1 for each session group.
[0032]
The session ID of the entire group and the user IDs of the users participating in the session in this group are reserved and registered in the proxy server in advance by contract or the like. It is assumed that the IP address and the port number of the proxy server for performing the cooperative work are assigned to the SBC client 6 by the reservation registration.
[0033]
The proxy server 10 is a virtual SBC server when viewed from the SBC client 6, and is a virtual SBC client when viewed from the SBC server 3. For the server 3, the client that uses the application 1 is the session group I, and it does not matter how many SBC clients belong to the session group I and which SBC client in the group is currently executing the application. Actually, the application is executed by one SBC client in the session group I. However, the location of the operation right is managed by the proxy server 10, and from the viewpoint of the SBC server 3, the session group I is The state where the application 1 is used is established. Therefore, it is possible to perform cooperative work by a plurality of SBC clients within the group I by directly using the one-to-one application operation, which is a basic aspect of the existing SBC middleware 2.
[0034]
FIG. 3 is a detailed block configuration diagram of the proxy server 10. The proxy server 10 accepts inputs from the SBC clients 6A, 6B, 6C, accepts inputs from the client input accepting unit 15, and accepts inputs from the SBC server 3, in addition to the operation information processing unit 11 and the collaboration control unit 12 described above. It has a server input receiving unit 16 and a client information database 18 for storing client information. Examples of the client information include a session ID, a scheduled user ID, a password, the IP and port number of the SBC server 3, and the like. Part or all of the client information is also set in the SBC server 3.
[0035]
The input-to-client receiving unit 15 distributes the packet received from the SBC client 6 to either the operation information processing unit 11 or the collaboration control unit 12 according to the type of information included in the packet.
[0036]
The operation information processing unit 11 is an operation information relay unit 25 that relays an input operation by one SBC client 6 belonging to the session group I to the SBC server 3, and is executed in the SBC server 3 based on the input operation information. It has an SBC browser screen distribution unit 21 that distributes the execution screen to each of the SBC clients 6A to 6C. The SBC browser screen distribution unit 21 has a copy unit 22, and copies the execution screen of the application for the participating users before distribution.
[0037]
The operation information relay unit 25 determines whether the packet transmitted from the client input reception unit 15 is a packet from an SBC client (hereinafter, referred to as a “privileged user”) to which the operation right is currently given. It has a packet determining unit 26 for determining. If the packet is from a privileged user, the packet transmitting unit 27 transmits the packet to the SBC server 3. If the packet is from a user other than the current privileged user (hereinafter, referred to as a “normal user”), it is regarded as an input due to an erroneous operation, and the operation information discarding unit 28 discards the packet.
[0038]
On the other hand, the collaboration control unit 12 includes a collaboration user authentication unit 31, a collaboration session management unit 32, and a collaboration operation right management unit 33. Details of the operation of these elements will be described later.
[0039]
FIG. 4 shows an example of the SBC collaboration browser 41 displayed on the SBC client 6. The SBC collaboration browser 41 has the SBC browser 5 and the SBC collaboration assistant 7. The SBC browser 5 is executed by the server 3 and displays an execution screen (SBC browser screen) copied and distributed by the proxy server 10. All participating users can browse the current execution screen on the SBC browser 5 in real time.
[0040]
The SBC collaboration auxiliary unit 7 has a session information display unit 42 and an active control unit 43. The session information display unit 42 has, as an example, a session participant list screen 52 indicating the session participants and the location of the current operation right, and a message display screen 53 displaying the operation history of the system. The active control unit 43 has an operation right acquisition request button 54. If an arbitrary SBC client wants to participate in the execution of the application 1 during the cooperative work using the application 1 on the SBC middleware 2, the operation right acquisition request button 54 is clicked. The change of the operation right by the operation right acquisition request button will be described later.
[0041]
In the example of FIG. 4, for example, the operation right is given to the user of the SBC client 6A, Tanabe, and the users of the other SBC clients 6B, 6C have only the viewing right. The viewing right is automatically given to all participating users, and of course, the user having the operation right also has the viewing right. Therefore, between the SBC client 6 and the proxy server 10, two-way communication is given to the application operation right holder, and one-way communication is established to other application viewers.
[0042]
Regarding the location of the operation right at the start of the session, for example, the person who convened the session within the session group I and first accessed the proxy server 10 may be given the operation right, or the person who is given the operation right at the start. May be determined in advance.
[0043]
FIG. 5 is a diagram showing a processing sequence of collaboration using the SBC system β of FIG. It is assumed that all of the SBC clients 6A to 6C, the proxy server 10, and the SBC server 3 have been started (ST11 to ST14).
[0044]
In this state, for example, the user (privileged user) of the SBC client 6A connects to a port (not shown) of the proxy server 10 specified in advance and requests an SBC collaboration service (ST15). This connection request is made from the SBC collaboration auxiliary unit 7 of the SBC collaboration browser 41 shown in FIG. The proxy server 10 performs client authentication for the accessing SBC client 6A (ST16).
[0045]
In the client authentication procedure, the collaboration user authentication unit 31 of the proxy server 10 receives the user ID, password, client IP address, and the like of the SBC client 6A from the client input receiving unit 15. The collaboration user authentication unit 31 requests the collaboration session management unit 32 to confirm the session ID. The collaboration session management unit 32 searches the client information database 18, extracts the reserved session ID from the accessed port number of the proxy server 10, and searches for the participation scheduled user ID from the extracted session ID. If the user ID of SBC client 6A is included in the scheduled user ID, collaboration user authentication unit 31 confirms the password and completes the authentication (YES in ST16), and provides authentication completion information to SBC client 6A. Is transmitted (ST17).
[0046]
On the other hand, when the user authentication is successful in the user authentication unit 31, the collaboration session management unit 32 updates the session information such as the session ID, the user ID, and the client IP address. With the update of the session information, the collaboration operation right management unit 33 assigns the operation right to the SBC client 6A that has first requested the connection, and updates the operation right information.
[0047]
At this point, the participant list screen 52 (see FIG. 4) of the SBC collaboration auxiliary unit 7A of the SBC client 6A displays the user name (for example, Tanabe) of the first participant SBC client 6A with the privilege having the operation right. The user is displayed with the IP address (192.168.10.1). Then, it waits until the authentication of another session participant is completed (ST18).
[0048]
Similarly, the other SBC clients 6B and 6C also request connection to the proxy server 10 (ST19), and receive client authentication (YES in ST20). Each time the authentication of the SBC clients 6B and 6C is completed, the proxy server 10 transmits the authentication completion information to all the SBC clients 6 that have already participated (ST21). As a result, the names of the users whose authentication has been completed are sequentially displayed on the participant list screen 52 of the SBC collaboration auxiliary unit 7. For example, when the authentication is completed in response to the participation request of the SBC client 6B, the user name (for example, Nakamura) of the SBC client 6B is additionally displayed as a new participant on the participant list screen 52 of the SBC client 6A ( ST22a). At the same time, the participant list screen 52 of the SBC client 6B displays the name of the privileged user (Tanabe) and the name of the self (Nakamura) (ST22b). Then, it waits until all participants have been authenticated (ST22a, ST22b).
[0049]
Next, SBC client 6A (privileged user) transmits an SBC collaboration start command to proxy server 10 (ST23). The proxy server 10 receives the collaboration start command (ST24), and requests the SBC server 3 to start the SBC service (ST25).
[0050]
The SBC server 3 performs client authentication on the service request (session start request) from the proxy server 10 (ST26). If the authentication is successful (YES in ST26), the SBC server 3 sends a collaboration start notification to the proxy server 10. It transmits (ST27). The proxy server 10 receives the collaboration start notification and transmits it to the SBC clients 6A to 6C of all participants participating in the session (ST28). In response, as shown in FIG. 4, a message indicating that the collaboration has been started is displayed on message display screen 53 of SBC clients 6A to 6C (ST29, ST30).
[0051]
In parallel with the start of the collaboration, the SBC server 3 sends the full screen information of the application 1 to the proxy server 10 (ST31). Upon receiving the full screen information (ST32), the proxy server 10 copies the full screen information by the number of participating users, and distributes the copied screen to each of the SBC clients 6A to 6C (ST33). The distributed full screen information is displayed on the SBC browsers 5A to 5C of the SBC clients 6A to 6C (ST34, ST35).
[0052]
6 and 8 are diagrams showing the above-described collaboration start processing (ST23 to ST30) and full screen output processing (ST31 to ST35) from the side of the system operation. First, in FIG. 6, the SBC collaboration assisting unit 7A of the SBC client 6A having the operation right transmits a collaboration start request to the proxy server 10 (arrow (1)). The request for starting the collaboration is executed, for example, by clicking the start button 61 on the collaboration start confirmation screen shown in FIG.
[0053]
The collaboration start confirmation screen is configured to be displayed only on the SBC collaboration auxiliary unit 7A of the SBC client 6A to which the operation right has been given. In this case, the right to operate the application given to the privileged user also includes the right to start collaboration. Alternatively, a configuration may be adopted in which a collaboration start confirmation screen is displayed on the SBC collaboration auxiliary unit 5 of all participating users who have completed authentication. In the latter case, even if a normal user who does not have the operation right clicks the collaboration start request button, the user is rejected in the confirmation processing by the collaboration user authentication unit 31 and the collaboration operation right management unit 33. The privileged user will start the collaboration.
[0054]
The collaboration start request is received by the client input reception unit 15 of the proxy server 10 and sent to the collaboration session management unit 32 (arrow (2)). The collaboration session management unit 32 searches for a session ID from the port number to which the collaboration start request has been input, and the searched session ID is the ID of a session that is not currently activated (that is, newly started). Make sure that Then, the ID of the user who has activated the collaboration start request is confirmed (process (3)).
[0055]
The collaboration session management unit 32 confirms with the collaboration operation right management unit 33 that the user who has requested the start of the collaboration has the operation right of this session (arrow (4)). After the confirmation, the password of the user who has requested the start of the collaboration is acquired from the collaboration user authentication unit 31 (arrow (5)).
[0056]
After obtaining the password, the collaboration session management unit 32 requests the SBC server 3 to start an SBC session, and the SBC server 3 performs client authentication based on the user ID, the password, the port number of the SBC server 3, and the like, and responds to the session start request. (Arrow (6)). For convenience of illustration, the process (6) is indicated by a two-way arrow, but a response from the SBC server 3 is supplied to the collaboration session management unit 32 via the server input receiving unit 16.
[0057]
The collaboration session management unit 32 transmits a session start notification to the proxy input reception units 8A to 8C of the SBC clients 6A to 6C (arrow (7)). The session start notification is sent to the SBC collaboration assisting units 7A to 7C of each SBC client (arrow (8)) and displayed on the message display unit 53 in FIG. In the example of FIG. 4, "17:25 Collaboration has started" is displayed.
[0058]
On the other hand, the SBC middleware 2 starts the application 1 in response to the session start request (arrow (9)). The application 1 outputs the full screen of the application (arrow (10)), and the SBC server 3 transmits the full screen to the server input receiving unit 16 of the proxy server 10 (arrow (11)).
[0059]
FIG. 8 is a system operation diagram when the SBC screen is output. The operation shown in FIG. 8 is equally applied to the full screen output immediately after the start of the session and to the output of the execution screen which is the execution result of the application. The difference is that all screen information is copied and delivered at the time of full screen output, whereas only the changed part by the execution operation is copied and delivered in the case of the application execution screen, so see FIG. Next, the full-screen output operation will be described.
[0060]
First, the application 1 started in the SBC server 3 in response to the session start request opens the entire screen on the SBC middleware 2 (arrow (1)). The SBC middleware 2 transmits the entire screen together with its attributes to the proxy server 10 (arrow (2)). The input-to-server accepting unit 16 of the proxy server 10 supplies the received entire screen and the attributes together with the port number to the copying unit 22 of the SBC browser screen distribution unit 21 (arrow (3)).
[0061]
The SBC browser screen distribution unit 21 confirms the screen output destination to the collaboration session management unit 32. The collaboration session management unit 32 searches the port ID for the session ID and the IP addresses of all the SBC clients participating in this session, and supplies the search result of the screen output destination to the SBC browser screen distribution unit 21 (arrow ( 4)). The SBC browser screen distribution unit 21 copies all screen information by the number of copies corresponding to the number of screen output destinations in the copying unit 22, and distributes this to each of the SBC clients 6A to 6C (arrow (5)).
[0062]
The proxy input accepting units 8A to 8C of the SBC clients 6A to 6C supply the received full screen information to the SBC browsers 5A to 5C (arrows (6)) and display the first full screen on the SBC browsers 5A to 5C. I do.
[0063]
Returning to FIG. 5, when the full screen is displayed on the SBC browsers 5A to 5C of all the participants and the collaborative state is substantially achieved, the privileged user of the SBC client 6A to which the operation right of the application has been given is designated by a mouse. The application is operated on the SBC browser 5A using a keyboard or the like (ST36). Input operation information such as a mouse / keyboard is supplied from the client input receiving unit 15 of the proxy server 10 to the operation information relay unit 25 of the operation information processing unit 11.
[0064]
The packet determination unit 26 (see FIG. 3) of the operation information relay unit 25 determines whether the packet including the input operation information is from a privileged user having the operation right (ST37). If the packet is from a normal user (NO in ST37), the operation information discard unit 28 discards the input operation information. On the other hand, if the packet is from a privileged user (YES in ST37), packet transmitting section 27 transmits this packet to SBC server 3 (ST38).
[0065]
For packet determination, the packet determination unit 26 checks the session ID, the participating user ID, and the location of the current operation right (privileged user ID) of the received packet with the collaboration session management unit 32 and the collaboration operation right management unit 33. This is done by: With such a determination, the input operation information is relayed to the SBC server 3 only when the received packet is a packet from a privileged user who has the correct operation right. Discarding packets from normal users who do not have the operation right is intended to prevent complicated operation of application execution due to erroneous operation of the mouse / keyboard or unintentional operation despite the lack of operation right. is there.
[0066]
Upon receiving the input operation information from the privileged user, the SBC server 3 executes the application 1 based on the input operation information (ST39). As a result of executing the application 1, the execution screen is updated. The SBC server 3 transmits screen update information on the update part (change part) to the proxy server 10 (ST40). As described above, when the execution of the application is actually started, unlike when the session is started, it is not necessary to transmit the full screen information, and only the difference information that is the execution result need be transmitted.
[0067]
When the proxy server 10 receives the screen update information at the server input receiving unit 16, it supplies this screen update information to the SBC browser screen distribution unit 21. Upon receiving the screen update information (ST41), the SBC browser screen distribution unit 21 copies the screen update information for the participating users by the copying unit 22, and distributes it to each of the SBC clients 6A to 6C (ST42). The SBC clients 6A to 6C incorporate the screen update information into all the screens already displayed, and display the execution results of the application by the privileged user on the SBC browsers 5A to 5C (ST43, ST44).
[0068]
The operation of copying and distributing the screen update information is the same as the operation of copying and distributing the full screen information described with reference to FIG. As long as the privileged user continues to execute the application, the processes in ST36 to ST44 are repeated, and the execution screen is displayed on each of the SBC clients 6A to 6C in real time.
[0069]
The SBC client can remotely view the execution of a complex application in real time as long as it has a display function, and can reduce the operation management cost of the application in each SBC client. Further, after transmission of all screen information at the start of the session, only the screen update information by the execution of the application is transmitted, so that the communication volume is light and a sufficient communication speed can be secured. Furthermore, since only the screen information to be distributed to the SBC client is copied, the processing in the proxy server 10 is fast, and the SBC collaboration system as a whole has high responsiveness and operability to application execution.
[0070]
The SBC client of the privileged user having the operation right also executes the complicated and sophisticated application mounted on the SBC server as if the application installed on the SBC client itself is operated, as long as the display device and the input device are provided. be able to. Since the execution history is centrally managed by the SBC server, the resource management burden on the SBC client is greatly reduced.
[0071]
FIG. 9 is a diagram showing a processing sequence for transferring the operation right among a plurality of session participants. All of the SBC clients 6A to 6C, the proxy server 10, and the SBC server 3 of the session participating user are in the session state (ST51 to ST54).
[0072]
First, when one of the normal users of the SBC clients 6B and 6C clicks the operation right acquisition request button 54 (see FIG. 4) of the SBC collaboration auxiliary unit 7, an application operation right acquisition request is issued to the proxy server 10. Is performed (ST55). Upon receiving the operation right acquisition request (ST56), the proxy server 10 issues a request to transfer the application operation right to the SBC client 6A of the current privileged user (ST57).
[0073]
The SBC client 6A inquires of the privileged user whether to permit the transfer request of the application operation right (ST58). The inquiry is made by, for example, displaying the operation right transfer request screen shown in FIG. 11A on the SBC collaboration auxiliary unit 7A of the SBC client 6A. The privileged user clicks the permission button 71 when permitting the transfer of the application operation right (YES in ST58), and clicks the reject button 72 when rejecting the transfer of the operation right (NO in ST58).
[0074]
In the example of FIG. 9, the operation right transfer request screen is configured to be displayed only on the SBC collaboration auxiliary unit 7A of the current privileged user (SBC client 6A). However, as a notice of the change of the operation right, all the SBC clients 6A are notified. The operation right transfer request screen may be displayed on the SBC collaboration assisting units 7A to 7C of 6C to 6B. In this case, the operation of the permission button 71 or the reject button 72 by a person other than the privileged user is abandoned after the proxy server 10 confirms the privileged user ID.
[0075]
By operating a button on the operation right transfer request screen, the SBC client 6A transmits a response to the transfer request to the proxy server 10 (ST59). When receiving the answer from the privileged user (ST60), the proxy server 10 determines whether or not the transfer of the operation right has been established (ST61), and transmits the transfer request result to the SBC clients 6A to 6C (ST62).
[0076]
The transfer request result is displayed on the SBC collaboration auxiliary unit 7 of the SBC clients 6A to 6C (ST63, ST64). When the transfer request is rejected, for example, an operation right transfer rejection screen shown in FIG. 11B is displayed on the SBC collaboration auxiliary unit 7C of the SBC client 6C that has made the operation right acquisition request. When the transfer request is permitted, the participant list screens 52 (see FIG. 4) of all the SBC clients 6A to 6C are displayed as, for example, “Browsing: Tanabe (192.168.10.1), Browsing: Nakamura (192) .168.10.2), operation right: Suzuki (192.168.10.3). If it is specified that the location of the operation right has been changed, the order of display does not matter. The location of the operation right may be highlighted, for example, by highlighting it or displaying it in a different color. Further, the change of the operation right may be displayed on the participant list screen 52, and the transfer of the operation right may be displayed together with the time in the session history of the message display screen 53.
[0077]
FIG. 10 is a diagram for explaining the procedure for changing the operation right from the aspect of the system operation. For example, the SBC client 6C transmits an operation right acquisition request from the SBC collaboration auxiliary unit 7C to the proxy server 10 (arrow (1)). The input-to-client receiving unit 15 of the proxy server 10 supplies the operation right acquisition request to the collaboration operation right management unit 33 together with the port number and the client IP address (arrow (2)). The collaboration operation right management unit 33 confirms the session ID and the user ID with the collaboration session management unit 32. The collaboration session management unit 32 extracts the session ID and the user ID from the port number, and supplies the extraction result to the collaboration operation right management unit 33 (arrow (3)). The collaboration operation right management unit 33 retrieves the current privileged user ID from the session ID (process (4)), and transmits an operation right transfer request to the current privileged user (user of the SBC client 6A) (arrow (5) )).
[0078]
The proxy input receiving unit 8A of the SBC client 6A supplies the received operation right transfer request to the SBC collaboration auxiliary unit 7A (arrow (6)). The SBC collaboration assisting unit 7A displays, for example, an operation right transfer request screen shown in FIG. The SBC client 6A transmits a response to the transfer request to the proxy server 10 (arrow (7)). The client input reception unit 15 of the proxy server 10 supplies the transfer request result to the collaboration operation right management unit 33 (arrow (8)).
[0079]
If the answer result is permission for transfer of the operation right, the collaboration operation right management unit 33 updates the current privileged user ID and transmits the updated privileged user information to all the SBC clients 6A to 6C (arrows). (9)). If the answer is rejection of the transfer of the operation right, the current privileged user ID is maintained and a notification of the rejection of the operation right is transmitted to the SBC client 6C.
[0080]
The proxy input accepting units 8A to 8C of the SBC clients 6A to 6C supply the new privileged user or the rejection result of the operation right transfer request to the SBC collaboration auxiliary units 7A to 7C and display them (arrow (10)).
[0081]
Returning to FIG. 9, as a result of the transfer of the operation right, a new privileged user, for example, the user of the SBC client 6C operates the application on the SBC browser 5C using a mouse / keyboard or the like (ST65). The input operation information is transmitted to the proxy server 10, and the operation information relay unit 25 of the proxy server 10 determines whether the input operation information is a packet from a privileged user (ST66). If the packet is from a privileged user (YES in ST66), this input operation information is relayed to SBC server 3 (ST67). The SBC server 3 executes the application according to the input operation information (ST68). If the packet is not from a privileged user (NO in ST66), the operation information discard unit 28 discards the packet.
[0082]
The SBC server 3 transmits screen update information, which is the execution result of the application, to the proxy server 10 (ST69). The proxy server 10 copies the received screen update information for the participating users and distributes it to all the SBC clients 6A to 6C participating in the session (ST70, ST71). The SBC clients 6A to 6C display the updated execution screen on the SBC browsers 5A to 5C (ST72, ST73).
[0083]
The system operation of copying and distributing the screen update information is as described with reference to FIG. 8, and the description is omitted. The operation of the application by the new privileged user continues until the operation right acquisition request button is clicked next and the transfer of the operation right is permitted, and ST65 to ST73 are repeated.
[0084]
As described above, only the privileged user having the operation right of the application can actually execute the application 1 in the SBC server 3, but the operation right is located between the privileged user and the normal user in the group. It can be changed at any time by negotiation. Since the collaboration operation right management unit 33 of the proxy server 10 collectively manages the change and location of the operation right, the burden on the SBC client 6 is small.
[0085]
In addition, regardless of the location of the operation right, the execution screen of the application 1 is copied and distributed by the proxy server 10, so that it is displayed in real time on all the SBC clients 6 participating in the session. From the viewpoint of the SBC server 3, the client that executes the application 1 is the session group I, and the existing basic specifications of the SBC middleware 2 that has one-to-one correspondence between the client and the application can be used as they are.
[0086]
In the above, the processing sequence and the system operation have been described based on an example in which a session is started after all prospective session participants have been prepared. However, a configuration may be employed in which a user belonging to the session group I can participate in the session halfway. In this case, the privileged user who has the operation right can issue a collaboration start command according to his / her own intention while confirming the login state of another session participant, and start the collaboration. Also, the SBC clients 6B and 6C do not wait until all clients scheduled to participate, but wait until a privileged user issues a collaboration start command. Furthermore, it is also possible to adopt a configuration in which a privileged user having an operation right permits or denies participation of a new user belonging to the group.
[0087]
As a processing sequence, after the session starts, an SBC client 6D (not shown) requesting participation in the session starts up the SBC collaboration browser 41 and makes a connection request to the proxy server 10. After the client authentication, the collaboration session management unit 32 of the proxy server 10 searches for the session ID from the input port number, and determines whether the searched session is currently in session. During the session, the current privileged user is confirmed to the collaboration operation right management unit 33, and a collaboration participation request request is transmitted to the SBC client 6A, which is the privileged user. The SBC client 6A receives the request for participation, and a collaboration participation request screen shown in FIG. 12A is displayed on the SBC collaboration assisting unit 7A.
[0088]
The privileged user clicks the permission button 81 or the rejection button 82 on the collaboration participation request screen to permit or prohibit the user's participation during the session. In the case of non-permission, the collaboration session management unit 32 of the proxy server 10 transmits a non-permission notification to the SBC client 6D that has made the participation request. For example, a collaboration participation rejection screen shown in FIG. 12B is displayed on the SBC collaboration auxiliary unit 7D of the SBC client 6D.
[0089]
When the participation in the session is permitted by clicking the permission button 81, the collaboration session management unit 32 of the proxy server 10 adds a new user ID to the list of user IDs participating in the session. At the same time, the proxy server 10 requests the current full screen information from the SBC server 3. The SBC server 3 sends the current full screen information to the proxy server 10. The SBC browser screen distribution unit 21 of the proxy server 10 distributes the full screen information to the SBC client 6D whose session participation has been recognized, and the current application execution screen is displayed on the SBC browser 5D of the SBC client 6D.
[0090]
The collaboration session management unit 32 further transmits updated session participant information to all the SBC clients 6A to 6D. In the SBC collaboration assisting units 7A to 7D of the SBC clients 6A to 6D, the participant list screen 52 and the message display screen 53 (see FIG. 4) are updated. That is, for example, information such as “Browsing: Maeda (192.168.10.4)” is added to the participant list screen 52, and the participation of the SBC client 6D is displayed in the session history of the message display screen 53 together with the time. .
[0091]
Regarding the termination of the session, a method in which the privileged user forcibly terminates the SBC client 6 and a method in which the session is terminated on a screen different from the collaboration start confirmation screen (see FIG. 7) are considered. In the latter case, for example, by right-clicking on the screen of the SBC client 6, a collaboration stop menu is displayed and selected.
[0092]
Upon receiving the session stop request, the proxy server 10 disconnects the connection with the SBC server 3. In the SBC server 3, the application is stored in an activated state, and when the connection is made again from the proxy server 10, the collaboration can be continued from the state of the application at the time of disconnection.
[0093]
In the above-described embodiment, the user ID of the privileged user is used for the connection from the proxy server 10 to the SBC server 3. However, the proxy server 10 associates the unique user ID with the application 1 on the SBC server 3. And a password may be held.
[0094]
The SBC collaboration system β is applicable to any field such as education, medical care, design, and architecture. In any case, at the site where the cooperative work is performed, it is only necessary to prepare the SBC client 6 having the display function and the simple input device. The high-load application is executed in the SBC server 3, and the proxy server 10 distributes the execution screen to all the SBC clients participating in the session in real time. In addition, since the session history and the location and change of the operation right are centrally managed by the proxy server 10, the load on the SBC client 6 is small.
[0095]
As the SBC client, a terminal device such as a desktop PC, a notebook personal computer, a PDA, or a mobile phone having an existing SBC browser can be used. By simply adding the SBC collaboration assisting unit 7 used in the present invention to such an SBC browser function, SBC collaboration using an arbitrary application in the SBC server 3 remotely is enabled.
[0096]
The processing operation of the SBC collaboration auxiliary unit 7 of the SBC client 6 and the processing operation of the proxy server 10 may be realized by any of hardware, software, and firmware. When the SBC collaboration assisting unit 7 is realized by software, the SBC collaboration assisting program may be recorded on an arbitrary computer-readable recording medium and distributed, or may be transmitted from the proxy server 10 to the SBC client via the network 4. May be delivered.
[0097]
The SBC collaboration auxiliary program installed on the SBC client includes the following procedure.
(A) When the proxy server gives the first SBC client the operation right of the application, the SBC client displays the location of the operation right.
(B) When the first SBC client executes an application on the SBC server, the SBC client displays an execution screen sent via the proxy server.
(C) When the second SBC client acquires the operation right of the application, the second SBC client causes the SBC client to display the transfer of the operation right.
[0098]
The SBC collaboration auxiliary program further includes a procedure for requesting the SBC client to acquire an operation right as necessary.
[0099]
By simply introducing the collaboration assisting program into an existing SBC client terminal, cooperative work can be performed using an arbitrary application in a remote SBC server.
[0100]
If the proxy server is realized by software, an SBC collaboration processing program executed by the proxy server may be installed. The SBC collaboration processing program includes the following procedure.
(A) The proxy server is given the operation right of the application to the first SBC client.
(B) When the first input operation information for executing the application on the SBC server is received from the first SBC client, the proxy server transfers the first input operation information to the SBC server.
(C) When receiving the execution screen of the application from the SBC server, the proxy server distributes the execution screen to the plurality of SBC clients.
[0101]
By installing such a function in the proxy server, SBC collaboration using an existing SBC system can be realized.
[0102]
【The invention's effect】
ADVANTAGE OF THE INVENTION According to this invention, sharing of the application in an SBC server and cooperative work between several SBC clients are possible, using the existing SBC middleware.
[0103]
During the collaboration, only the screen update information associated with the execution of the application is copied and distributed, so that the responsiveness is excellent.
[Brief description of the drawings]
FIG. 1 is a schematic configuration diagram of a general SBC system.
FIG. 2 is a schematic configuration diagram of an SBC collaboration system according to an embodiment of the present invention, showing a network configuration including a proxy server that enables sharing and cooperative work of applications on an SBC server among a plurality of SBC clients. FIG.
FIG. 3 is a block diagram of a proxy server used in the system of FIG. 2;
FIG. 4 is a diagram showing an example of an SBC collaboration browser displayed on an SBC client.
FIG. 5 is a diagram showing an SBC collaboration start processing sequence.
FIG. 6 is a diagram for explaining an operation of the system at the start of SBC collaboration.
FIG. 7 is a diagram showing an example of a collaboration start confirmation screen.
FIG. 8 is a diagram for explaining an operation of the system when an SBC screen is output in SBC collaboration.
FIG. 9 is a diagram showing a processing sequence of application operation right transfer.
FIG. 10 is a diagram for explaining the operation of the system at the time of transferring the operation right.
FIG. 11 illustrates an example of an operation right transfer request screen and an operation right transfer rejection screen.
FIG. 12 is a diagram showing an example of a collaboration participation request screen and a collaboration participation rejection screen.
[Explanation of symbols]
α SBC system
β SBC Collaboration System
1 application
2 SBC middleware
3 SBC server
4 Network
5A, 5B, 5C SBC browser
6A, 6B, 6C SBC client
7A, 7B, 7C SBC Collaboration Assistant
8A, 8B, 8C proxy input receiving unit
10 Proxy server
11 Operation information processing unit
12 Collaboration control unit
15 Client input reception unit
16 Server input reception unit
18 Client information database
21 SBC browser screen distribution unit (execution screen distribution unit)
22 Copier
25 Operation information relay unit
26 Packet judgment unit
27 Packet Transmitter
28 Operation information discarding section
31 Collaboration User Authentication Department
32 Collaboration Session Management Department
33 Collaboration Operation Right Management Department
41 SBC Collaboration Browser
42 Session information display section
43 Active control unit
52 Participant list screen
53 Message display screen
54 Operation right acquisition request button

Claims (18)

任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、
前記SBCサーバにネットワークを介して接続され、前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントと、
前記ネットワーク上の任意の領域に配置され、前記SBCサーバと複数のSBCクライアントとの間を接続するプロキシサーバと
を含み、前記プロキシサーバは、
第1のSBCクライアントに、前記アプリケーションの実行を許可する操作権を付与し、
前記第1のSBCクライアントから、前記アプリケーションを実行する第1の入力操作情報を受信し、当該第1の入力操作情報を前記SBCサーバに転送して前記アプリケーションを実行させ、
前記アプリケーションの実行画面を前記SBCサーバから受け取って、当該実行画面を前記複数のSBCクライアントに配信することを特徴とするSBCコラボレーションシステム。
An SBC server having SBC middleware capable of introducing an arbitrary application,
A plurality of SBC clients connected to the SBC server via a network and capable of remotely using the application;
A proxy server arranged in an arbitrary area on the network and connecting between the SBC server and a plurality of SBC clients, wherein the proxy server comprises:
Giving the first SBC client an operation right to permit execution of the application,
Receiving, from the first SBC client, first input operation information for executing the application, transferring the first input operation information to the SBC server, and causing the SBC server to execute the application;
An SBC collaboration system receiving an execution screen of the application from the SBC server and delivering the execution screen to the plurality of SBC clients.
前記プロキシサーバは、前記複数のSBCクライアントの間で、前記操作権の受け渡しを管理することを特徴とする請求項1に記載のSBCコラボレーションシステム。The SBC collaboration system according to claim 1, wherein the proxy server manages the transfer of the operation right among the plurality of SBC clients. 前記プロキシサーバは、前記アプリケーションの実行画面を前記複数のSBCクライアントの数だけ複製し、配信することを特徴とする請求項1に記載のSBCコラボレーションシステム。The SBC collaboration system according to claim 1, wherein the proxy server copies and distributes the execution screen of the application by the number of the plurality of SBC clients. 前記プロキシサーバは、前記操作権を有さない第2のSBCクライアントから第2の入力操作情報を受信した場合に、当該第2の入力操作情報を破棄することを特徴とする請求項1に記載のSBCコラボレーションシステム。2. The proxy server according to claim 1, wherein the proxy server, when receiving the second input operation information from the second SBC client not having the operation right, discards the second input operation information. SBC collaboration system. 前記プロキシサーバは、前記操作権を有さない第2のSBCクライアントから操作権取得要求を受け取った場合に、前記第1のSBCクライアントに対し、操作権譲渡依頼を送信することを特徴とする請求項1に記載のSBCコラボレーションシステム。The proxy server transmits an operation right transfer request to the first SBC client when receiving an operation right acquisition request from a second SBC client not having the operation right. Item 2. The SBC collaboration system according to item 1. 前記プロキシサーバは、前記第1のSBCクライアントから操作権譲渡の許可通知を受け取った場合に、前記操作権を前記第2のSBCクライアントに移転することを特徴とする請求項5に記載のSBCコラボレーションシステム。The SBC collaboration according to claim 5, wherein the proxy server transfers the operation right to the second SBC client when receiving the permission notification of the transfer of the operation right from the first SBC client. system. 任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、前記SBCサーバにネットワークを介して接続され前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントとの間に挿入されるプロキシサーバであって、
第1のSBCクライアントに、前記アプリケーションの実行を許可する操作権を付与する操作権管理部と、
前記第1のSBCクライアントから、前記アプリケーションを実行するための第1の入力操作情報を受信し、前記第1の入力操作情報を前記SBCサーバに転送して、前記アプリケーションを実行させる操作情報中継部と、
前記アプリケーションの実行画面を前記SBCサーバから受け取って、当該実行画面を前記複数のSBCクライアントのすべてに送信する実行画面配信部と
を備えることを特徴とするプロキシサーバ。
An SBC server having SBC middleware capable of introducing an arbitrary application, and a proxy server inserted between a plurality of SBC clients connected to the SBC server via a network and capable of remotely using the application. hand,
An operation right management unit for giving an operation right to permit execution of the application to the first SBC client;
An operation information relay unit that receives, from the first SBC client, first input operation information for executing the application, transfers the first input operation information to the SBC server, and causes the SBC server to execute the application When,
A proxy server, comprising: an execution screen distribution unit that receives an execution screen of the application from the SBC server and transmits the execution screen to all of the plurality of SBC clients.
前記実行画面配信部は、前記アプリケーションの実行画面を前記複数のSBCクライアントの数だけ複製する複写部を有することを特徴とする請求項7に記載のプロキシサーバ。The proxy server according to claim 7, wherein the execution screen distribution unit includes a copy unit that duplicates the execution screen of the application by the number of the plurality of SBC clients. 前記操作情報中継部は、
受信した入力操作情報が、前記操作権が付与された第1のSBCクライアントから送信された第1の入力操作情報か否かを判断する判断部と、
前記受信した操作情報が、前記第1の入力操作情報でない場合に、当該受信した操作情報を破棄する破棄部と
を有することを特徴とする請求項7に記載のプロキシサーバ。
The operation information relay unit,
A determining unit that determines whether the received input operation information is the first input operation information transmitted from the first SBC client to which the operation right has been given;
The proxy server according to claim 7, further comprising: a discarding unit that discards the received operation information when the received operation information is not the first input operation information.
前記操作情報中継部は、前記受信した操作情報が前記第1の入力操作情報である場合に、当該受信した操作情報を前記SBCサーバに転送する送信部をさらに有することを特徴とする請求項9に記載のプロキシサーバ。The said operation information relay part further has a transmission part which transfers the said received operation information to the said SBC server, when the said received operation information is the said 1st input operation information. Proxy server described in. 前記操作権管理部は、前記操作権を有さない第2のSBCクライアントから操作権取得要求を受け取った場合に、前記第1のSBCクライアントに対して、操作権の譲渡依頼を送信することを特徴とする請求項7に記載のプロキシサーバ。The operation right management unit, when receiving an operation right acquisition request from a second SBC client not having the operation right, transmits an operation right transfer request to the first SBC client. The proxy server according to claim 7, characterized in that: 前記操作権管理部は、前記第1のSBCクライアントから操作権譲渡の許可通知を受け取った場合に、前記操作権を、前記第2のSBCクライアントに移転することを特徴とする請求項11に記載のプロキシサーバ。12. The operation right management unit according to claim 11, wherein the operation right management unit transfers the operation right to the second SBC client when receiving an operation right transfer permission notification from the first SBC client. Proxy server. 任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、前記SBCサーバにネットワークを介して接続され前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントとの間に、プロキシサーバを設置し、
前記プロキシサーバから、前記複数のSBCクライアントの中の第1のSBCクライアントに、前記SBCサーバ上のアプリケーションを遠隔実行するための操作権を付与し、
前記第1のSBCクライアントによる第1の入力操作情報を、前記プロキシサーバからSBCサーバに中継して前記アプリケーションを実行させ、
前記アプリケーションの実行画面を前記プロキシサーバで複製し、複製した実行画面を前記複数のSBCクライアントに送信することを特徴とするSBCコラボレーション方法。
A proxy server is installed between an SBC server having SBC middleware capable of introducing an arbitrary application, and a plurality of SBC clients connected to the SBC server via a network and capable of remotely using the application,
From the proxy server, granting an operation right for remotely executing an application on the SBC server to a first SBC client among the plurality of SBC clients;
Relaying the first input operation information by the first SBC client from the proxy server to the SBC server to execute the application;
An SBC collaboration method, wherein an execution screen of the application is copied by the proxy server, and the copied execution screen is transmitted to the plurality of SBC clients.
前記複数のSBCクライアントのすべてに、前記アプリケーションの実行画面を閲覧する閲覧権を付与し、
前記操作権を有さない第2のSBCクライアントによる第2の入力操作情報があった場合に、前記プロキシサーバにおいて、当該第2の入力操作情報を破棄することを特徴とする請求項13に記載のSBCコラボレーション方法。
Granting a viewing right to view the execution screen of the application to all of the plurality of SBC clients,
14. The proxy server according to claim 13, wherein when there is second input operation information by the second SBC client not having the operation right, the proxy server discards the second input operation information. SBC collaboration method.
第2のSBCクライアントから、前記操作権の取得要求があった場合に、前記プロキシサーバから前記第1のSBCクライアントに対して前記操作権の譲渡依頼を発し、
前記第1のSBCクライアントが前記操作権の譲渡を許可した場合に、前記プロキシサーバにより前記操作権を前記第1のSBCクライアントから第2のSBCクライアントに移転することを特徴とする請求項13に記載のSBCコラボレーション方法。
When the second SBC client requests the acquisition of the operation right, the proxy server issues a request to transfer the operation right to the first SBC client;
14. The method according to claim 13, wherein when the first SBC client permits the transfer of the operation right, the proxy server transfers the operation right from the first SBC client to a second SBC client. The described SBC collaboration method.
任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバと、前記SBCサーバにネットワークを介して接続され前記アプリケーションを遠隔的に利用可能な複数のSBCクライアントとの間に挿入されるプロキシサーバで実行されるSBCコラボレーション処理プログラムであって、
前記プロキシサーバに、第1のSBCクライアントに対して前記アプリケーションの操作権を付与させる手順と、
前記第1のSBCクライアントから、前記アプリケーションを実行する第1の入力操作情報を受信したときに、前記プロキシサーバに、前記第1の入力操作情報を前記SBCサーバへ中継させる手順と、
前記SBCサーバから前記アプリケーションの実行画面を受信したときに、前記プロキシサーバに、当該実行画面を前記複数のSBCクライアントに配信させる手順と
を含むことを特徴とするSBCコラボレーション処理プログラム。
An SBC server having SBC middleware capable of introducing an arbitrary application, and a proxy server connected between the SBC server via a network and a plurality of SBC clients that can remotely use the application and execute the application. SBC collaboration processing program,
Causing the proxy server to give the first SBC client an operation right for the application;
A step of, when receiving, from the first SBC client, first input operation information for executing the application, causing the proxy server to relay the first input operation information to the SBC server;
Causing the proxy server to distribute the execution screen to the plurality of SBC clients when the execution screen of the application is received from the SBC server.
任意のアプリケーションを導入可能なSBCミドルウエアを備えるSBCサーバに、ネットワークおよびプロキシサーバを介して接続される複数のSBCクライアントの各々にインストールされるSBCコラボレーション補助プログラムであって、
前記プロキシサーバが第1のSBCクライアントに前記アプリケーションの操作権を付与したときに、各SBCクライアントに当該操作権の所在を表示させる手順と、
前記第1のSBCクライアントが前記アプリケーションを実行したときに、各SBCクライアントに、前記プロキシサーバを介して送られてくる実行画面を表示させる手順と、
第2のSBCクライアントが前記操作権を取得したときに、各SBCクライアントに、前記操作権の移転を表示させる手順と
を含むことを特徴とするSBCコラボレーション補助プログラム。
An SBC collaboration auxiliary program installed on each of a plurality of SBC clients connected via a network and a proxy server to an SBC server having SBC middleware capable of introducing an arbitrary application,
When the proxy server grants the first SBC client the operation right of the application, displaying the location of the operation right on each SBC client;
When the first SBC client executes the application, causing each SBC client to display an execution screen sent via the proxy server;
Causing the respective SBC clients to display the transfer of the operation right when the second SBC client acquires the operation right.
各SBCクライアントに、必要に応じて前記操作権の取得を要求させる手順をさらに含むことを特徴とする請求項17に記載のSBCコラボレーション補助プログラム。18. The SBC collaboration auxiliary program according to claim 17, further comprising a step of requesting each SBC client to acquire the operation right as needed.
JP2003008852A 2002-04-10 2003-01-16 SBC collaboration system and proxy server for realizing SBC collaboration Expired - Lifetime JP3943504B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003008852A JP3943504B2 (en) 2002-04-10 2003-01-16 SBC collaboration system and proxy server for realizing SBC collaboration

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002108396 2002-04-10
JP2003008852A JP3943504B2 (en) 2002-04-10 2003-01-16 SBC collaboration system and proxy server for realizing SBC collaboration

Publications (2)

Publication Number Publication Date
JP2004005396A true JP2004005396A (en) 2004-01-08
JP3943504B2 JP3943504B2 (en) 2007-07-11

Family

ID=30446856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003008852A Expired - Lifetime JP3943504B2 (en) 2002-04-10 2003-01-16 SBC collaboration system and proxy server for realizing SBC collaboration

Country Status (1)

Country Link
JP (1) JP3943504B2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210317A (en) * 2007-02-28 2008-09-11 Fuji Xerox Co Ltd Processing execution system, relay device, and program
JP2008217290A (en) * 2007-03-02 2008-09-18 Casio Comput Co Ltd Server device, information processing system and server control program
JP2011034341A (en) * 2009-07-31 2011-02-17 Casio Computer Co Ltd Server device, server-based computing system and program
KR101401938B1 (en) 2012-10-09 2014-06-27 에스케이플래닛 주식회사 Application Launch Service System and Method, Apparatus supporting the same
JP2016131030A (en) * 2016-02-16 2016-07-21 ソニー株式会社 Information processing method and information processing apparatus
JP2018018344A (en) * 2016-07-28 2018-02-01 日本電気株式会社 Server device, thin client system, notification transfer method, and program
JP2018163698A (en) * 2018-06-27 2018-10-18 ソニー株式会社 Information processing method and information processing apparatus
US11487412B2 (en) 2011-07-13 2022-11-01 Sony Corporation Information processing method and information processing system

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210317A (en) * 2007-02-28 2008-09-11 Fuji Xerox Co Ltd Processing execution system, relay device, and program
JP2008217290A (en) * 2007-03-02 2008-09-18 Casio Comput Co Ltd Server device, information processing system and server control program
JP2011034341A (en) * 2009-07-31 2011-02-17 Casio Computer Co Ltd Server device, server-based computing system and program
US11487412B2 (en) 2011-07-13 2022-11-01 Sony Corporation Information processing method and information processing system
KR101401938B1 (en) 2012-10-09 2014-06-27 에스케이플래닛 주식회사 Application Launch Service System and Method, Apparatus supporting the same
JP2016131030A (en) * 2016-02-16 2016-07-21 ソニー株式会社 Information processing method and information processing apparatus
JP2018018344A (en) * 2016-07-28 2018-02-01 日本電気株式会社 Server device, thin client system, notification transfer method, and program
JP2018163698A (en) * 2018-06-27 2018-10-18 ソニー株式会社 Information processing method and information processing apparatus

Also Published As

Publication number Publication date
JP3943504B2 (en) 2007-07-11

Similar Documents

Publication Publication Date Title
US7191217B2 (en) Distributed server-based collaborative computing
US5949975A (en) Method and system for negotiating capabilities when sharing an application program with multiple computer systems
US7987360B2 (en) Method for implementing grouping devices and interacting among grouped devices
US7451181B2 (en) Apparatus for controlling a shared screen
US7835510B2 (en) Conference system and terminal apparatus
US20050033656A1 (en) Collaboration system suitable for on-line shopping
US20020026478A1 (en) Method and apparatus for forming linked multi-user groups of shared software applications
US20030085923A1 (en) Method and apparatus for conducting a collaboration session in which screen displays are commonly shared with participants
US7120667B2 (en) Method and system for ad hoc networking of computer users
US20050256909A1 (en) Peer-to-peer file sharing
JP2011100270A (en) Screen sharing system and screen sharing server
JP2000032033A (en) Information exchange method, information management information device, information management device, information distribution device, recording medium recording information management distribution program and read by computer, recording medium recording information management program and read by computer and recording medium recording information distribution program and read by computer
JP3943504B2 (en) SBC collaboration system and proxy server for realizing SBC collaboration
KR20030012520A (en) A remote control method of long distant computer from mobile using mobile set and system thereof
JP2009009455A (en) Service cooperation support system
KR100341395B1 (en) Collaborative group editor system using JAVA specific property on internet and method thereof
US20020107922A1 (en) Processing apparatus, management apparatus, computer system, and memory medium and program
JP4095352B2 (en) Information processing apparatus, information processing apparatus control method, and computer program for executing the control method
WO2023029974A1 (en) Cloud service method, and electronic device and computer-readable storage medium
CN102473226A (en) Information management device, information management method, and information management program
US20050071768A1 (en) Method, apparatus, system, and program for providing a virtual office, and a medium storing the program
JPH0589217A (en) Shared screen display controller
Ma et al. A P2P groupware system with decentralized topology for supporting synchronous collaborations
JP2003087250A (en) Network information processing system and method for processing information
JP2003087248A (en) Network information processing system and method for constructing network

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070215

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070222

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: 20070320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070405

R151 Written notification of patent or utility model registration

Ref document number: 3943504

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20100413

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120413

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140413

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term