説明

サーバシステム

【課題】特殊なブラウザを必要とせずに、コンピュータ間でリアルタイムで同じウェブ情報を共有する。
【解決手段】ユーザがサーバシステム100にアクセスすると、サーバシステム100は、ユーザのコンピュータ上にサロゲート(代理)153を作成するための可搬性コードをユーザのコンピュータに送信する。同じセッションにおいてユーザに対して作成されるサロゲートは、サーバシステムのコントローラ111によって接続され、サロゲート153は、コントローラ111と、ユーザのコンピュータ上のそれぞれのブラウザ151との間のインタフェースとして作用する。セッションのユーザがブラウザ151でウェブサイトアドレスを変更すると、対応するサロゲート153がその新しいアドレスを取得して、インターネットを通じて同じセッションの他のサロゲート173に送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信ネットワークを通じてユーザ間で通信を行うシステムおよび方法に関し、特に、ワールドワイドウェブ(WWW)上で情報の協調的ブラウジングおよび双方向(対話的)通信を行うシステムおよび方法に関する。
【背景技術】
【0002】
コンピュータユーザは、インターネットとして知られる、コンピュータネットワークからなる広大な国際ネットワーク上で多くのリソースにアクセスすることができる。WWWは、インターネットのグラフィカルサブネットワークである。Netscapeブラウザのような普通の「ウェブブラウザ」ソフトウェアにより、ユーザは、WWW上のウェブサーバによって提供されるインターネット情報あるいはサービスに直ちにアクセスすることができる。
【0003】
多くのインターネットサービスはユーザ間の通信を可能にしている。例えば、複数のコンピュータユーザが、「テキストチャット」サービスを提供する指定されたウェブサーバにアクセスすることにより、リアルタイムで互いにテキストで双方向に通信することが可能である。
【0004】
また、コンピュータユーザは、Shared Mosaicブラウザを用いてウェブブラウジング体験を共有することも可能である。このためには、各ユーザはコンピュータ上にShared Mosaicソフトウェアの自分のコピーを有することが要求される。ユーザと仲間の間のリンクを確立するため、ユーザは、例えば、電子メールや電話により、ユーザの特定のブラウザを識別するインターネットプロトコル(IP)ポート番号を事前に仲間に通知する必要がある。その後、仲間は、それぞれのコンピュータ上でそれぞれのブラウザを起動し、通知されたIPポート番号を入力することにより、ユーザのコンピュータと仲間のコンピュータの間にインターネットを通じてリンクを確立する。ユーザは、インターネットのあるウェブサイトを訪れているときに、ブラウザによって与えられる選択肢を選択して、確立されたリンクを通じてそのウェブサイトからの同じ情報を仲間と共有することができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
Shared Mosaic型のシステムは、ユーザとその仲間がリアルタイムで同じウェブ情報を共有することができるという点では好ましいが、そのアプリケーションはある面では不利であると認められる。特に、より一般的なさまざまなブラウザが使用されているのにもかかわらず、従来のシステムを利用するためには、ユーザと仲間はそれぞれ同一の特殊なブラウザ(例えば、Shared Mosaicブラウザ)を有する必要がある。
【課題を解決するための手段】
【0006】
これに対して、本発明は、上記の問題点を解決する。本発明によれば、各ユーザが協調的なウェブブラウジングセッションに参加したいときに、ユーザは、ユーザのコンピュータ上にサロゲート(代理)を作成するためのモバイル(可搬性)コードをユーザのコンピュータに送信するシステムにアクセスする。同じセッションにおいてユーザに対して作成されるサロゲートは、システム内の少なくとも1つのコントローラによって接続され、サロゲートは、コントローラと、ユーザのコンピュータ上のそれぞれのブラウザとの間のインタフェースとして作用する。ブラウザは、互いに異なっていてもよい。そのセッションのユーザが、あるブラウザでウェブサイトアドレスを変更すると、対応するサロゲートがその新しいアドレスを取得して、インターネットを通じて同じセッションの他のサロゲートに送信する。その後、他の各サロゲートは、それぞれのブラウザに対して、これに従ってウェブアドレスを変更するよう指示する。このようにして、あるセッションのユーザは、ウェブサイトからウェブサイトへ同期して移動することが可能となり、リアルタイムで情報を共有することになる。
【図面の簡単な説明】
【0007】
【図1】本発明に従って、WWWを通じて情報を取得し交換するサーバシステムのブロック図である。
【図2】図1のシステムの動作を実行する際のステップを示す流れ図である。
【図3】図1のシステムの動作を実行する際のステップを示す流れ図である。
【図4】図1のシステムの複数のコントローラの階層を示す図である。
【発明を実施するための形態】
【0008】
図1に、本発明の原理を実現するサーバシステム100を示す。サーバシステム100は、ウェブサーバとしてワールドワイドウェブ(WWW)に接続される。システム100の動作は、Netscapeブラウザのような標準的なウェブブラウザ、標準的なハイパーテキスト転送プロトコル(HTTP)およびハイパーテキストマークアップ言語(HTML)に対応している。とりわけ、本発明によれば、システム100は、ユーザに、(a)WWW上のさまざまなウェブサイトのHTML文書の協調的ブラウジング、および(b)ユーザ間のリアルタイムの双方向通信というサービスを提供する。特に、システム100によれば、協調的ブラウジングセッション中に、複数のユーザ(共同作業者)は、ユニフォームリソースロケータ(URL)によってアドレス可能なウェブサイトからの情報を同期的かつ協調的にブラウズ(閲覧)することが可能となる。また、共同作業者は、例えばテキストチャット通信を通じて相互に対話することも可能である。さらに、システム100によれば、ユーザは、進行中のセッションに自由に参加すること、および、進行中のセッションから自由に退出することが可能であり、また、システム100は、変化するセッション数および特定のセッションの共同作業者の数を収容するように容量を拡大縮小することが可能である。
【0009】
図1に示されるように、ユーザは、コンピュータU−1を利用して、所定のURLでWWWを通じてシステム100にアクセスすることが可能である。コンピュータU−1は、Netscapeブラウザのような標準的なウェブブラウザ151が動作する従来のパーソナルコンピュータ(PC)でよい。U−1がリンク105を通じてシステム100に接続されると、システム100内のマネージャ107は、ウェブブラウザ151と、コモンゲートウェイインタフェース(CGI)を有するHTTPサーバ109を通じてU−1との通信を開始する。
【0010】
マネージャ107は、ユーザが協調的ブラウジングセッションを確立するのを助けるサービスルーチンからなる。図2および図3に、本発明によるサービスルーチンのステップを示す。ステップ201で、マネージャ107はホームページがU−1に表示されるようにする。このホームページは、ユーザに挨拶し、システム100によって提供されるサービスを説明する。次に、ステップ203で、マネージャ107は、U−1から、ユーザ情報を引き出す。この情報には、ユーザ識別(ID)、パスワードおよびその他の、そのユーザが権限のあるユーザであることを確かめるのに必要な管理データが含まれる。ステップ205で、マネージャ107は、ユーザがセッションを作成したいか、それとも、進行中のセッションに参加したいかについてU−1に問い合わせる。ここで、U−1のユーザはセッションを作成することを選択したとする。ステップ207で、マネージャ107は、ユーザに対して、作成するセッションの詳細(例えば、セッションの目的あるいは話題)、および、それが秘密セッションであるかそれとも公開セッションであるかを入力するよう促す。例えば、秘密セッションの場合、共同作業者となりたい者は、参加するためには、セッションを作成したユーザのユーザIDによってこのユーザが誰であるかを明らかにしなければならない。公開セッションの場合、セッションのトピックはリストされ、共同作業者となりたい者により検索可能である。
【0011】
この例では、U−1のユーザは、作成するセッションは公開であり、セッションの目的は自動車の購入であるとする。ステップ209で、マネージャ107は、新たなセッションの開始に進み、サロゲート153をコンピュータU−1のブラウザ151内に作成する。このために、システム100は、標準的なJAVA(登録商標)言語のような可搬性プログラミング言語による可搬性コードをコンピュータU−1に送信する。この例では、可搬性コードはJAVA(登録商標)アプレットの形式であるとする。サロゲート153は、アプレットがコンピュータU−1に到達して、ブラウザ151内で実行を開始するときに実現される。サロゲート153については以下でさらに説明するが、今のところ、セッションを実行するためにブラウザを補助するように作用することを知っていれば十分である。
【0012】
この例では新しいセッションであるため、ステップ211で、マネージャ107は、このセッションを管理し制御するように、新たなコントローラ111を割り当てる。ステップ213で、マネージャ107は、リンク113を通じてコントローラ111をサロゲート153に接続し、同時にリンク105を切断する。
【0013】
サロゲート153は、ブラウザ151とコントローラ111の間のインタフェースとして作用する。とりわけ、サロゲート153は、ブラウザとのユーザ対話をモニタし、ユーザ対話をコントローラ111に報告する。
【0014】
この時点で注意すべき点であるが、サロゲート153は、オンデマンドでU−1に送信されU−1上で実行されたJAVA(登録商標)アプレットを用いて実現されており、従来のアプリケーションの場合のように事前にユーザコンピュータ上にインストールされあるいは維持されるソフトウェアは不要である。従って、Netscapeブラウザのような標準的なJAVA(登録商標)対応ブラウザを利用して本発明を実現することが可能である。換言すれば、システム100は、本発明のサービスを利用するために特殊なブラウザソフトウェアを有することをユーザに要求しない。
【0015】
新たなセッションが開始した後、コンピュータU−1のユーザは、ブラウザ151で、自動車のウェブサイトあるいはその他のウェブサイトにURLを変更して、さまざまな車のモデルやその仕様に関する情報を取得する。新しいURLはサロゲート153によってコントローラ111に送信され、この新しいURLは記録され、同じセッションの他の共同作業者がいれば、その共同作業者のサロゲートに送られる。同時に、ブラウザ151は、この新しいURLのウェブサーバにアクセスし、コンピュータU−1上に、そのウェブサーバによって提供されるHTML文書を開く。
【0016】
第2のユーザが、コンピュータU−2を利用して、所定のURLのシステム100にアクセスし、進行中のセッションに参加することが可能である。コンピュータU−2がHTTPサーバ109へのリンク(図示せず)を確立した後、マネージャ107は、上記と同様にして、図2のステップ201および203を行う。しかし、ステップ205で、この例ではU−2のユーザは進行中のセッションへの参加を選択する。この場合、図3のステップ302で、マネージャ107は、U−2に対して、この第2ユーザが参加したいのは秘密セッションかそれとも公開セッションかについて問い合わせる。この例では、第2ユーザは公開セッションへの参加を選択したとすると、マネージャ107はステップ306に進む。そうでない場合は、ステップ304に示すように、第2ユーザは、セッションの作成者のユーザIDによって、参加する秘密セッションが何であるかを明らかにする必要がある。
【0017】
ステップ306で、マネージャ107は、コンピュータU−1のユーザによって作成された自動車購入セッションを含むすべての進行中のセッションのリストをコンピュータU−2に表示する。次に、マネージャ107はステップ308に進み、第2ユーザによって選択されたセッションを判定する。この例では、第2ユーザは、リストされた話題を、マウスデバイスを用いてポイントしクリックすることによって自動車購入セッションに参加することを選択したとする。ステップ310で、サロゲート173が、前に説明したのと同様にして、コンピュータU−2上のブラウザ171内に作成される。このブラウザは、本発明によれば、ブラウザ151と異なっていてもよい。サロゲート173が作成され、自動車購入セッションがコントローラ111に割り当てられたことを知ると、ステップ312で、マネージャ107は、コントローラ111を、リンク175を通じてサロゲート170に接続する。
【0018】
この時点で、コントローラ111によって、接続された各共同作業者のコンピュータへ、新たな共同作業者の存在についてのメッセージが送られる。その後、U−2のユーザには、セッションが通ったURLの系列を訪れてその履歴を概観する機会が与えられる。このURLの系列は、セッションが進行するにつれてコントローラ111に記録され更新されている。また、U−2のユーザには、他の共同作業者と同期して新たなHTML文書をブラウズするオプションも与えられる。このオプションが実行されると、コントローラ111は、現在のURLをサロゲート173に送る。サロゲート173は、ウェブブラウザ171に、この現在のURLのHTML文書を開くよう指示する。
【0019】
自動車購入セッションの間、ブラウザ151がURLを変更すると、その新しいURL情報はサロゲート153によって取得され、サロゲート153はこの情報を、コントローラ111を介して他のすべての共同作業者のサロゲートへ通知する。その後、各サロゲートは、それぞれのブラウザに、この新しいURLのHTML文書を開くよう指示する。こうして、セッションが進行するにつれて、共同作業者は、URLからURLへと同期的に異動して文書をブラウズすることが可能となる。
【0020】
この特定実施例では、セッションの作成者は、そのセッションを先導することを除いては、他の共同作業者と同じ能力を与えられる。さらに、コントローラ111に接続されたサロゲートは、共同作業者が、テキストで相互にリアルタイムで双方向通信することが可能なようにプログラムされる。共同作業者は、HTML文書を開きながら、マウスデバイスを用いてコンピュータ上で指定されたアイコンをポイントしクリックして、自動車に関する意見を交換するためにテキストチャット接続を形成する。しかし、理解されるように、当業者であれば、コントローラ111が何らかのアクセス制御を行うようにプログラムすることも可能である。例えば、コントローラ111が、協調的セッション中に、異なる共同作業者には異なる能力を与えることも可能である。また、コントローラ111が優先度方式を実施することにより、共同作業者が代わる代わるセッションを先導し相互に通信することも可能である。
【0021】
セッションを作成すること、または、進行中のセッションに参加することを求める他のコンピュータユーザは、上記のU−1あるいはU−2と同様のプロセスを実行する。しかし、コントローラによって制御される特定のセッションに多くの共同作業者が参加すると、コントローラは、ある時点で過負荷になる可能性がある。システム100のサーバベースのアーキテクチャではあらゆるユーザの接続に関する情報がマネージャ107に存在するため、システム容量は、サービス品質に影響を与えることなく、増加する共同作業者を収容するように容易に拡張可能である。コントローラにおいて、共同作業者数が所定のしきい値に到達すると、マネージャ107は新しいコントローラを使用して、過剰の共同作業者を接続する。同じセッションに対するこの新しいコントローラと既存のコントローラは、階層的に動的に再編成され、相互の通信および調整を行い、同期的にセッションを実行する。図4に、そのような階層の例を示す。既存のコントローラ(Eとマークされた円で示す)と、新しいコントローラ(Nとマークされた円で示す)はスタートポロジーを形成する。この階層では、コントローラ388は情報センタとして作用し、あるコントローラから他のすべてのコントローラへ効率的に情報を分配する。
【0022】
さらに、多くのコントローラが関わると、システム100の初期容量は尽きる可能性がある。この場合も、本発明によるシステム100のアーキテクチャにより、システム100に容易に吸収させることが可能な追加ハードウェアを用いて新しいコントローラを設けることが可能である。
【0023】
同様に、セッション数が所定のしきい値を超えるときには、マネージャ107と同様の複数のマネージャを設け、これらのマネージャは、図4と同様の階層に動的に再編成される。
【0024】
以上、本発明の実施例について説明したが、さまざまな変形例が可能である。例えば、実施例では、共同作業者間のテキストチャット通信機能がサロゲートの協力により実現される。サロゲートを用いて、「テキストチャット」通信に加えて、あるいはその代わりに、他の通信手段を設けることも可能である。そのような他の通信手段には、標準的な電話、インターネット電話、パケット電話およびビデオ会議機能が含まれる。
【0025】
さらに重要なこととして、システム100は、例えばサービス販売員が、製品の販売、あるいは、顧客との請求書の問題点の解決をしようとする場合に、サービス産業にとって非常に有効である。販売の場合、サービス販売員(例えばU−1のユーザ)と顧客(例えばU−2のユーザ)が、システム100にアクセスし、あるセッションに参加して、コンピュータネットワーク(例えばWWW)を通じて関連する製品データベース(例えばウェブサイト)に協調的にアクセスし、リアルタイムで相互に対話的に通信して販売を完了することが可能である。請求書の問題点の場合、サービス販売員と顧客はあるセッションに参加し、代わる代わる関連するデータベースを参照して、リアルタイムで相互に対話的に通信し、請求書の問題点を解決することができる。
【0026】
さらに、実施例の協調的セッションでは、URLを変更したブラウザのサロゲートがコントローラを介して他の共同作業者のサロゲートへ新しいURL情報を送る。その後、他の各サロゲートはそれぞれのウェブブラウザにその新しいURLのHTML文書を開くよう指示する。これに対して、URLを共有する代わりに、共同作業者は、HTML文書の内容を共有することも可能である。この代替法では、サロゲートは、対応するブラウザによって開かれた新しいURLのHTML文書のコピーを取得し、それを、コントローラを通じて、他のサロゲートに送る。他のサロゲートは、それぞれのウェブブラウザに、受け取ったコピーを表示するよう指示する。
【0027】
しかし、上記のURL共有法と内容共有法では異なる効果を生じることがある。URL共有法では、各共同作業者が独立にその新しいURLにアクセスして文書を取得すると、そのURLに過大なトラフィックが発生することがある。実際、一部の共同作業者は文書にアクセスすることができるが、他の共同作業者はウェブサーバが過負荷となったためにアクセスを拒否されるという可能性がある。内容共有法では、ウェブサーバから一度だけ文書を取得することによって、そのような過負荷は避けられる。
【0028】
さらに、URL共有法では、共同作業者は同一の文書を見ていない可能性がある。例えば、文書が、そのウェブサイトが訪問された回数を記録するフィールドを含む場合、各共同作業者が見ている文書は少なくともそのフィールドの示される数については異なる。従って、URL共有法は、2人の共同作業者が同一の文書を受け取ることができるべきではないような場合には有効である。例として、請求書の問題点の解決の場合、サービス販売員は顧客よりも多くのデータを有することが好ましい。例えば、顧客に提示されるものに加えて、サービス販売員は、文書から、顧客に対する評価(良い顧客か悪い顧客か)を見たいことがある。この評価は秘密である。内容共有法では、このようなデータのカスタマイズは容易には実現可能ではないが、URL共有法では、このカスタマイズは、サービス販売員に特別のユーザIDを割り当てることにより比較的簡単である。データベースが認識可能な特別IDにより、データベースは、サービス販売員と顧客に異なるバージョンの文書を送信する。
【0029】
最後に、上記では、システム100について、さまざまなシステム機能が別個の機能ブロックによって実行されるような形式で説明した。しかし、これらのブロックの機能の一部または全部を、例えば適当にプログラムしたプロセッサによって実現することも可能である。
【符号の説明】
【0030】
100 サーバシステム
107 マネージャ
109 HTTPサーバ
151 ウェブブラウザ
153 サロゲート
171 ウェブブラウザ
173 サロゲート
388 コントローラ

【特許請求の範囲】
【請求項1】
協調的セッションを実現する装置であって、前記装置は通信ネットワークを介して少なくとも1つのデバイスと通信するものであり、そして、
前記装置の外部にあるソースからプログラミングコードを受信するインタフェースと、
前記プログラミングコードに基づいて、前記装置のサロゲートを生成するプロセッサとを含み、前記装置のサロゲートは、前記少なくとも1つのデバイスのサロゲートへ情報を送信して前記セッションを実現するものであり、
前記通信ネットワーク上の、前記装置以外の少なくとも1つのソースを識別するアドレスを含むデータを前記デバイスが受信したことに応動して、前記デバイスのサロゲートは、前記デバイスに、前記アドレスによって識別される少なくとも1つのソースから情報を得るよう指示し、そして、
ユーザが互いに対話的に通信することができるよう、前記装置のサロゲートと前記デバイスのサロゲートとがプログラムされる、装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2011−76633(P2011−76633A)
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願番号】特願2011−317(P2011−317)
【出願日】平成23年1月5日(2011.1.5)
【分割の表示】特願2008−207732(P2008−207732)の分割
【原出願日】平成9年7月14日(1997.7.14)
【出願人】(596092698)アルカテル−ルーセント ユーエスエー インコーポレーテッド (965)
【Fターム(参考)】