(57)【要約】【課題】共有ブラウジングの方法およびシステムが、第１の型のブラウザに対応する第１の表示パラメータのセットおよび第２の型のブラウザに対応する第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定することを提供する。【解決手段】１つまたは複数のウェブ・アプリケーションに、カスタムの表示パラメータのセットを通知することができ、ウェブ・アプリケーションは、カスタムの表示パラメータのセットに基づいて、共有ブラウジング・セッションの間、ウェブ要求への応答をオーバライドすることができる。【選択図】図２
2014510335.tif 000002
【特許請求の範囲】
【請求項１】
第１の共有ブラウジング登録メッセージを受信するステップと、
前記第１の共有ブラウジング登録メッセージに基づいて、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザのうちの少なくとも１つを含む第１の型のブラウザに対応する第１の表示パラメータのセットを識別するステップと、
第２の共有ブラウジング登録メッセージを受信するステップと、
前記第２の共有ブラウジング登録メッセージに基づいて、ハンドヘルド・デバイスのブラウザを含む第２の型のブラウザに対応する第２の表示パラメータのセットを識別するステップと、
前記第１の表示パラメータのセットおよび前記第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定するステップと、
前記共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信するステップと、
前記カスタムの表示パラメータのセットに基づいて、前記ウェブ要求への応答をオーバライドするステップと
を含む、コンピュータにより実施される方法。
【請求項２】
前記カスタムの表示パラメータのセットを決定するステップが、前記第１の型のブラウザと前記第２の型のブラウザの両方で見ることができる代用サイトを識別するステップを含み、前記ウェブ要求が、要求されるサイトからのページと関連するリンク・イベントに対応し、前記ウェブ要求への前記応答をオーバライドするステップが、前記要求されるサイトからの前記ページの代わりに前記代用サイトからのページを使用するステップを含む、請求項１に記載の方法。
【請求項３】
前記カスタムの表示パラメータのセットを決定するステップが、表示関連のヘッダ情報を識別するステップを含み、前記ウェブ要求が、前記共有ブラウジング・セッションのリンク・イベントおよびクリック・イベントのうちの少なくとも１つに対応し、前記ウェブ要求への前記応答をオーバライドするステップが、前記応答に前記表示関連のヘッダ情報を追加するステップを含む、請求項１に記載の方法。
【請求項４】
第１の型のブラウザに対応する第１の表示パラメータのセットおよび第２の型のブラウザに対応する第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定するステップと、
１つまたは複数のウェブ・アプリケーションに前記カスタムの表示パラメータのセットを通知するステップと
を含む、コンピュータにより実施される方法。
【請求項５】
前記カスタムの表示パラメータのセットを決定するステップが、前記第１の型のブラウザと前記第２の型のブラウザの両方で見ることができるウェブサイトを識別するステップを含む、請求項４に記載の方法。
【請求項６】
前記第１の表示パラメータのセットが、ハンドヘルド・デバイスの表示機能と、デスクトップの表示機能、ラップトップの表示機能、およびタブレットの表示機能のうちの少なくとも１つとを示す、請求項５に記載の方法。
【請求項７】
前記第２の表示パラメータのセットが、ハンドヘルド・デバイスの表示機能を示す、請求項５に記載の方法。
【請求項８】
前記カスタムの表示パラメータのセットを決定するステップが、前記共有ブラウジング・セッションと関連する１つまたは複数のページを前記第１の型のブラウザと前記第２の型のブラウザの両方で見ることができるようにする表示関連のヘッダ情報を識別するステップを含む、請求項４に記載の方法。
【請求項９】
第１の共有ブラウジング登録メッセージを受信するステップと、
前記第１の共有ブラウジング登録メッセージに基づいて前記第１の表示パラメータのセットを識別するステップと、
第２の共有ブラウジング登録メッセージを受信するステップと、
前記第２の共有ブラウジング登録メッセージに基づいて前記第２の表示パラメータのセットを識別するステップと
をさらに含む、請求項４に記載の方法。
【請求項１０】
前記第１の型のブラウザが、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザのうちの少なくとも１つを含み、前記第２の型のブラウザが、ハンドヘルド・デバイスのブラウザを含む、請求項４に記載の方法。
【請求項１１】
コンピュータ可読記憶媒体と、
前記コンピュータ可読記憶媒体に格納されたコンピュータ使用可能コードであって、プロセッサによって実行されるとコンピュータに、
第１の型のブラウザに対応する第１の表示パラメータのセットおよび第２の型のブラウザに対応する第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定させ、
１つまたは複数のウェブ・アプリケーションに前記カスタムの表示パラメータのセットを通知させる、
コンピュータ使用可能コードと
を含む、コンピュータ・プログラム製品。
【請求項１２】
前記コンピュータ使用可能コードが、実行されるとコンピュータに、前記第１の型のブラウザと前記第２の型のブラウザの両方で見ることができるウェブサイトを識別させる、請求項１１に記載のコンピュータ・プログラム製品。
【請求項１３】
前記第１の表示パラメータのセットが、ハンドヘルド・デバイスの表示機能と、デスクトップの表示機能、ラップトップの表示機能、およびタブレットの表示機能のうちの少なくとも１つとを示すものである、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１４】
前記第２の表示パラメータのセットが、ハンドヘルド・デバイスの表示機能を示すものである、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１５】
前記コンピュータ使用可能コードが、実行されるとコンピュータに、前記共有ブラウジング・セッションと関連する１つまたは複数のページを前記第１の型のブラウザと前記第２の型のブラウザの両方で見ることができるようにする表示関連のヘッダ情報を識別させる、請求項１１に記載のコンピュータ・プログラム製品。
【請求項１６】
前記コンピュータ使用可能コードが、実行されるとコンピュータに、
第１の共有ブラウジング登録メッセージを受信させ、
前記第１の共有ブラウジング登録メッセージに基づいて前記第１の表示パラメータのセットを識別させ、
第２の共有ブラウジング登録メッセージを受信させ、
前記第２の共有ブラウジング登録メッセージに基づいて前記第２の表示パラメータのセットを識別させる、
請求項１１に記載のコンピュータ・プログラム製品。
【請求項１７】
前記第１の型のブラウザが、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザのうちの少なくとも１つを含むものであり、前記第２の型のブラウザが、ハンドヘルド・デバイスのブラウザを含むものである、請求項１１に記載のコンピュータ・プログラム製品。
【請求項１８】
第１の型のブラウザと第２の型のブラウザとの間の共有ブラウジング・セッションと関連するカスタムの表示パラメータのセットの通知を受信するステップと、
前記共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信するステップと、
前記カスタムの表示パラメータのセットに基づいて、前記ウェブ要求への応答をオーバライドするステップと
を含む、コンピュータにより実施される方法。
【請求項１９】
前記ウェブ要求が、第１のサイトからのページを示す前記共有ブラウジング・セッションのリンク・イベントに対応し、前記ウェブ要求への前項応答をオーバライドするステップが、前記第１のサイトからの前記ページの代わりに第２のサイトからのページを使用するステップを含む、請求項１８に記載の方法。
【請求項２０】
前記ウェブ要求が、前記共有ブラウジング・セッションのリンク・イベントおよびクリック・イベントのうちの少なくとも１つに対応し、前記ウェブ要求への前記応答をオーバライドするステップが、前記応答に表示関連のヘッダ情報を追加するステップを含む、請求項１８に記載の方法。
【請求項２１】
前記第１の型のブラウザが、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザのうちの少なくとも１つを含み、前記第２の型のブラウザが、ハンドヘルド・デバイスのブラウザを含む、請求項１８に記載の方法。
【請求項２２】
コンピュータ可読記憶媒体と、
前記コンピュータ可読記憶媒体に格納されたコンピュータ使用可能コードであって、プロセッサによって実行されるとコンピュータに、
第１の型のブラウザと第２の型のブラウザとの間の共有ブラウジング・セッションと関連するカスタムの表示パラメータのセットの通知を受信させ、
前記共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信させ、
前記カスタムの表示パラメータのセットに基づいて、前記ウェブ要求への応答をオーバライドさせる
コンピュータ使用可能コードと
を含む、コンピュータ・プログラム製品。
【請求項２３】
前記ウェブ要求が、第１のサイトからのページを示す前記共有ブラウジング・セッションのリンク・イベントに対応するものであり、前記コンピュータ使用可能コードが、実行されるとコンピュータに、前記第１のサイトからの前記ページの代わりに第２のサイトからのページを使用させる、請求項２２に記載のコンピュータ・プログラム製品。
【請求項２４】
前記ウェブ要求が、前記共有ブラウジング・セッションのリンク・イベントおよびクリック・イベントのうちの少なくとも１つに対応するものであり、前記コンピュータ使用可能コードが、実行されるとコンピュータに、表示関連のヘッダ情報を前記応答に追加させる、請求項２２に記載のコンピュータ・プログラム製品。
【請求項２５】
前記第１の型のブラウザが、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザのうちの少なくとも１つを含むものであり、前記第２の型のブラウザが、ハンドヘルド・デバイスのブラウザを含むものである、請求項２２に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の諸実施形態は、一般に共有ブラウジング（co-browsing）セッションに関する。より詳細には、諸実施形態は、モバイル機器とデスクトップ機器との間の共有ブラウジング・セッションに関する。
【背景技術】
【０００２】
２人のユーザが表示ページを共有し、ページの強調表示された部分を共有することさえできるピアツーピアの共有ブラウジング・セッションを、ウェブ・ウィジェットがサポートすることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、共有ブラウジング・セッションの参加者が、異なる表示機能を有する機器を使用する状況がいくつかある。例えば、ハンドヘルド機器のユーザが、デスクトップ・コンピュータを操作しているコンタクト・センタ（例えばヘルプ・デスク）の参加者との共有ブラウジング・セッションに参加することがある。このような場合、一方の機器で見ることができる（１つまたは複数の）あるページ・コンテンツが、もう一方の機器で見ることができない可能性がある。
【課題を解決するための手段】
【０００４】
諸実施形態は、第１の型のブラウザに対応する第１の表示パラメータのセットおよび第２の型のブラウザに対応する第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定する、コンピュータにより実施される方法を含むことができる。この方法また、カスタムの表示パラメータのセットを１つまたは複数のウェブ・アプリケーションに通知することを提供することができる。ウェブ・アプリケーションは、異なるサーバでホストされてもよい。
【０００５】
諸実施形態はまた、コンピュータ可読記憶媒体と、コンピュータ可読記憶媒体に格納されたコンピュータ使用可能コードとを有するコンピュータ・プログラム製品を含むことができる。プロセッサによって実行されると、コンピュータ使用可能コードによりコンピュータは、第１の型のブラウザに対応する第１の表示パラメータのセットおよび第２の型のブラウザに対応する第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定することができる。またコンピュータ使用可能コードによりコンピュータは、１つまたは複数のウェブ・アプリケーションにこのカスタムの表示パラメータのセットを通知することができる。ウェブ・アプリケーションは、異なるサーバでホストされてもよい。
【０００６】
他の実施形態は、第１の型のブラウザと第２の型のブラウザとの間の共有ブラウジング・セッションと関連するカスタムの表示パラメータのセットの通知が受信される、コンピュータにより実施される方法を含むことができる。この方法は、共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信することと、カスタムの表示パラメータのセットに基づいてウェブ要求への応答をオーバライドすること（overriding）とを提供することができる。
【０００７】
さらに、諸実施形態は、コンピュータ可読記憶媒体とコンピュータ可読記憶媒体に格納されたコンピュータ使用可能コードとを有するコンピュータ・プログラム製品を含むことができる。プロセッサによって実行されると、コンピュータ使用可能コードによりコンピュータは、第１の型のブラウザと第２の型のブラウザとの間の共有ブラウジング・セッションと関連するカスタムの表示パラメータのセットの通知を受信することができる。またコンピュータ使用可能コードによりコンピュータは、共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信し、カスタムの表示パラメータのセットに基づいてウェブ要求への応答をオーバライドすることができる。
【０００８】
諸実施形態はまた、第１の共有ブラウジング登録メッセージが受信され、第１の共有ブラウジング登録メッセージに基づいて、第１の表示パラメータのセットが識別される、コンピュータにより実施される方法を含むことができる。第１の表示パラメータのセットは、デスクトップ・ブラウザ、ラップトップ・ブラウザ、およびタブレット・ブラウザの少なくとも１つを含む、第１の型のブラウザに対応することができる。さらに、第２の共有ブラウジング登録メッセージを受信することができ、この方法は、第２の共有ブラウジング登録メッセージに基づいて、第２の表示パラメータのセットを識別することを提供することができる。第２の表示パラメータのセットは、ハンドヘルド機器のブラウザなど、第２の型のブラウザに対応することができる。第１および第２の表示パラメータのセットに基づいて、共有ブラウジング・セッションのために、カスタムの表示パラメータのセットを決定することができる。この方法はまた、共有ブラウジング・セッションと関連するブラウザからウェブ要求を受信することと、カスタムの表示パラメータのセットに基づいてウェブ要求への応答をオーバライドすることとを含むことができる。
【図面の簡単な説明】
【０００９】
次の明細書および添付の特許請求の範囲を読むことによって、また添付の図面を参照することによって、本発明の諸実施形態の様々な利点が当業者には明らかになるであろう。
【図１】一実施形態によるネットワーキング・アーキテクチャの一例のブロック図である。
【図２】一実施形態による共有ブラウジング・セッションを確立する方法の一例のフローチャートである。
【図３】一実施形態によるウェブ要求を処理する方法の一例のフローチャートである。
【図４】一実施形態によるカスタムの表示パラメータのセットを使用する共有ブラウジング方式の例のブロック図である。
【図５】一実施形態によるカスタムの表示パラメータのセットを使用する共有ブラウジング方式の例のブロック図である。
【発明を実施するための形態】
【００１０】
当業者には理解されるように、本発明の諸態様は、システム、方法、またはコンピュータ・プログラム製品として具体化することができる。したがって、本発明の諸態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、またはソフトウェアの態様とハードウェアの態様を組み合わせた実施形態の形をとることができ、本明細書ではすべて一般的に「回路」、「モジュール」、または「システム」と呼ぶことができる。さらに、本発明の諸態様は、コンピュータ可読プログラム・コードを組み入れた１つまたは複数のコンピュータ可読媒体に組み入れられたコンピュータ・プログラム製品の形をとることができる。
【００１１】
１つまたは複数のコンピュータ可読媒体の任意の組合せを使用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体、またはコンピュータ可読記憶媒体であることが可能である。コンピュータ可読記憶媒体は、例えば電子、磁気、光、電磁気、赤外線、または半導体のシステム、装置、またはデバイス、あるいは前述のものの任意の好適な組合せであることが可能であるが、それらに限定されない。コンピュータ可読記憶媒体のさらに特定の例（非網羅的リスト）には、１つもしくは複数の配線を有する電気接続、携帯可能なコンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能なプログラマブル読み出し専用メモリ（ＥＰＲＯＭもしくはフラッシュ・メモリ）、光ファイバ、ポータブル・コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、光学式記憶装置、磁気記憶装置、または上記の任意の好適な組合せが含まれることになる。この文書の文脈においては、コンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによって、またはこれらに接続して使用するためにプログラムを収容または格納することができる任意の有形媒体とすることができる。
【００１２】
コンピュータ可読信号媒体は、例えばベースバンドに、または搬送波の一部としてコンピュータ可読プログラム・コードを組み入れた伝搬データ信号を含むことができる。このような伝搬データ信号は、電磁気、光、またはその任意の好適な組合せを含む、ただしそれらに限定されない、様々な形態のいずれの形態をとることもできる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではないが、命令実行システム、装置、またはデバイスによって、またはこれらに接続して使用するためにプログラムを伝える、伝搬する、または伝送することができる任意のコンピュータ可読媒体とすることができる。
【００１３】
コンピュータ可読媒体に組み込まれたプログラム・コードは、無線、有線、光ファイバ・ケーブル、ＲＦなど、または上記の任意の好適な組合せを含む、ただしそれらに限定されない、任意の適切な媒体を使用して送信することができる。
【００１４】
本発明の諸態様のための動作を実行するためのコンピュータ・プログラム・コードは、Ｊａｖａ（Ｒ）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのようなオブジェクト指向プログラミング言語、ならびに「Ｃ」プログラミング言語または同様のプログラミング言語のような従来の手続きプログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで書くことができる。プログラム・コードは、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロン型ソフトウェア・パッケージとして、一部はユーザのコンピュータ上かつ一部はリモート・コンピュータ上で、または完全にリモート・コンピュータもしくはサーバ上で、実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）もしくはワイド・エリア・ネットワーク（ＷＡＮ）などの、任意の型のネットワークを介してユーザのコンピュータに接続することができる、または（例えば、インターネット・サービス・プロバイダを使用してインターネットを介して）外部コンピュータに接続することができる。
【００１５】
本発明の諸実施形態による方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図またはブロック図、あるいはその両方を参照して、本発明の諸態様について以下に記載する。フローチャート図またはブロック図、あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図、あるいはその両方の中のブロックの組合せは、コンピュータ・プログラム命令によって実行できることを理解されるであろう。こうしたコンピュータ・プログラム命令を、汎用コンピュータ、専用コンピュータ、または機械を製造するための他のプログラマブル・データ処理装置のプロセッサに提供することができ、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサによって実行される命令が、フローチャートまたはブロック図、あるいはその両方の１つまたは複数のブロックに指定される機能／動作を実行するための手段を作り出すようにすることができる。
【００１６】
またこうしたコンピュータ・プログラム命令は、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスに特定の方法で機能するよう命令することができるコンピュータ可読媒体に格納され、コンピュータ可読媒体に格納された命令が、フローチャートまたはブロック図、あるいはその両方の１つまたは複数のブロックに指定される機能／動作を実行する命令を含む製品を作り出すようにすることができる。
【００１７】
またコンピュータ・プログラム命令は、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされて、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作ステップを実行させてコンピュータ実行プロセスを作り出し、コンピュータまたは他のプログラマブル装置上で実行される命令が、フローチャートまたはブロック図、あるいはその両方の１つまたは複数のブロックに指定される機能／動作を実行するためのプロセスを提供するようにすることができる。
【００１８】
図１を参照すると、デスクトップ・ユーザ機器（ＵＥ）１２のデバイスが、ネットワーク２４を通じてハンドヘルドＵＥ１４のデバイスとの共有ブラウジング・セッションに参加するネットワーキング・アーキテクチャ１０を示している。例えば、デスクトップＵＥ１２のデバイスは、機関または企業、あるいはその両方の職員（例えば、カスタマー・サービス、ヘルプ・デスク、テクニカル・サポートの職員）が操作するコンタクト・センタのコンピュータである可能性があり、一方、ハンドヘルドＵＥ１４のデバイスは、職員からの援助または案内、あるいはその両方を必要としている個人によって操作される携帯情報端末（ＰＤＡ）またはワイヤレス・スマートフォンなどのデバイスである可能性がある。一般に、共有ブラウジング・セッションは、サーバ１８で実行中のウェブ・アプリケーション１６のようなアプリケーションによって提供されるウェブ・コンテンツを、ＵＥ１２、１４の両デバイスが同時に閲覧することを含むことができる。共有ブラウジング・セッション中、ＵＥ１２、１４の各デバイスの操作者は、様々なウェブ・ページにナビゲートし、ウェブ・ページの範囲を選択することができ、こうしたアクションは、他方のデバイスの操作者に表示される。共有ブラウジング・セッションの参加者はまた、他のアプリケーションがホストする他のサーバ（図示せず）のウェブページにナビゲートすることもできる。
【００１９】
さらに、サーバ２２で実行中のロジック２０が、共有ブラウジング・セッションの前に、または共有ブラウジング・セッション中に、共有ブラウジング・セッションのためにＵＥ１２、１４のデバイスを登録することができる。１つの例では、サーバ２２は、個々の参加者に制限を課すことなく、オリジン・サーバ、ゲートウェイ、プロキシ、およびクライアントのマクロインタラクション（macro-interactions）を特徴付けて制約するＲＥＳＴ（「REpresentative State Transfer」）サービスのサーバとして機能することができる。ウェブ・アプリケーション１６およびロジック２０は、代替的には同じサーバまたは他のプラットフォーム上にあることが可能である。
【００２０】
ＵＥ１２、１４のデバイスのネットワーク２４への接続は、状況に応じて、無線データ接続（例えば、IEEE 802.11、1999 Edition、LAN/MAN Wireless LANS（WiFi）、IEEE802.16-2004、LAN/MAN Broadband Wireless LANS（WiMAX）など）、携帯電話接続（例えば、W-CDMA（UMTS）、CDMA2000（IS-856/IS-2000）など）、有線データ接続（例えば、RS-232（ElectronicIndustries Alliance/EIA）、イーサネット（例えば、IEEE 802.3-2005、LAN/MAN CSMA/CD AccessMethod）、電力線通信（例えば、X10、IEEE P1675）、ＵＳＢ（例えば、Universal Serial Bus 2.0仕様））などを含みうる。ＵＥ１２、１４のデバイスは、同じ物理的位置に、または異なる位置にあることが可能である。
【００２１】
さらにネットワーク２４は、サーバ、アクセス・ポイント、ルータ、基地局、移動通信交換局、公衆交換電話網（ＰＳＴＮ）の構成要素などの任意の好適な組合せを含んで、ＵＥ１２、１４のデバイスとサーバ１８、２２との通信を容易にすることができる。サーバ１８、２２は、分散型または冗長型の、あるいはその両方の、ウェブ・ページのコンテンツ要求に応答することができるウェブベースのサーバを含むことができる。したがって、サーバ１８、２２には、ハイパーテキスト・マークアップ言語（ＨＴＭＬ）および他のマークアップ言語によりコード化されたコンテンツ、ならびにデータベースおよびＪａｖａ（Ｒ）のようなアプリケーションおよび他のアプリケーションを格納することができる。サーバ１８、２２は、プラットフォームを超えて複雑な方法でリソースを共有するクラウド・コンピューティング環境の一部であることも可能である。
【００２２】
一般に、ＵＥ１２、１４のデバイスは、それぞれ異なる型のブラウザを使用して、サーバ１８上のウェブ・コンテンツにアクセスすることができる。例えば、例示のデスクトップＵＥ１２のデバイスは、デスクトップ・コンピュータ、ラップトップ・コンピュータ、およびタブレット・コンピュータなど、比較的大きい画面を有するデバイスをサポートする表示機能を有するブラウザ２６を搭載する。このようなブラウザ型の例には、Mozilla社が提供するFirefox、Microsoft社が提供するInternet Explorerなどが含まれるが、それらに限定されない。一方、例示のハンドヘルドＵＥ１４のデバイスは、少なくとも部分的にはＵＥ１４のデバイスがより小さい画面を有するために、ブラウザ２６に比べて限られた表示機能を有するブラウザ２８を搭載する。このようなブラウザの型の例には、Mozilla社が提供するFirefoxMobile、Microsoft社が提供するInternet Explorer for Mobile、他のデバイス固有の専用ブラウザ（例えば、AppleiPhoneのウェブ・ブラウザ）などを含むことができるが、それらに限定されない。
【００２３】
さらに詳細に説明するように、ロジック２０は、デスクトップＵＥ１２のデバイスで実行中のブラウザ２６の型に対応する表示パラメータのセット、およびハンドヘルドＵＥ１４で実行中のブラウザ２８の型に対応する表示パラメータのセットに基づいて、共有ブラウジング・セッションのためにカスタムの表示パラメータのセットを決定することができる。カスタムの表示パラメータのセットは、２つのブラウザ固有の表示パラメータのセット間で「最小公分母」を構成することができる、または、２つの異なる型のブラウザ２６、２８間の共有ブラウジング・セッションを有効にするために必要とされる適切なウェブ応答の強化を表すことができる。
【００２４】
さらに、ロジック２０は、カスタムの表示パラメータのセットをウェブ・アプリケーション１６に通知して、共有ブラウジング・セッション中に発生するリンク・イベントおよびクリック・イベントがＵＥ１２、１４の両デバイスで適切に表示されるようにすることができる。例えば、例示のウェブ・アプリケーション１６は、カスタムの表示パラメータのセットに基づいたリンク・イベントおよびクリック・イベントに対応して、ウェブ要求への標準的な応答をオーバライドするロジック３０を含む。したがって、デスクトップＵＥ１２のデバイスで実行中のブラウザ２６は、完全なウェブサイト３２（例えば、www.foo.com）からページを要求することができ、カスタムの表示パラメータのセットが、ハンドヘルドＵＥ１４のデバイスには完全なサイトを表示する機能がないことを示す場合、ロジック３０は代わりにモバイル・ウェブサイト３３（例えば、m.foo.com）から対応するページを返す。
【００２５】
別の例では、カスタムの表示パラメータのセットは、特定の型のブラウザが応答を適切に表示するためにウェブ要求への応答に１つまたは複数の特別な表示関連ヘッダ（例えば、デバイスの型、ブラウザの型、ブラウザのバージョン、接続の型など）を追加すべきであることを示すことができる。したがって、ハンドヘルドＵＥ１４のデバイスで発生するクリック・イベント（例えば、表示されたウェブ・ページからの項目の選択）は、クリック・イベントがデスクトップ・ブラウザ２６によって適切に表示されるように、デスクトップＵＥ１２のデバイスに送信されたイベント通知応答にあるヘッダを追加することを必要とする可能性がある。同様に、デスクトップＵＥ１２のデバイスで発生するクリック・イベントは、ハンドヘルドＵＥ１４のデバイスに送信されたイベント通知応答にあるヘッダを追加することを必要とする可能性がある。表示関連ヘッダはまた、リンク・イベントおよび共有ブラウジング・セッション中に共有される他のイベントの通知をサポートするために使用することもできる。
【００２６】
次に図２を見ると、共有ブラウジング・セッションを確立する方法３４が示されている。この方法３４は、ＲＥＳＴサービス・プラットフォーム、または他のプラットフォームのようなサーバのロジック２０（図１）で実行することができる。例示の処理ブロック３６は、第１の型のブラウザから共有ブラウジング登録メッセージを受信することを提供し、例示の処理ブロック３８は、第２の型のブラウザから共有ブラウジング登録メッセージを受信することを提供する。すでに言及したように、第１の型のブラウザは、大きい画面と小さい画面の両方の表示機能を有するデスクトップ型、ラップトップ型、またはタブレット型、あるいはそのすべての型のブラウザである可能性があり、一方第２の型のブラウザは、小さい画面の表示機能のみを有するハンドヘルド・デバイス型のブラウザである可能性がある。さらに、登録メッセージは、共有ブラウジング・セッションの起動ページへのリンクの要求、他のデバイスへの共有ブラウジング・セッションに参加することへの招待、このような要求または招待、あるいはその両方への応答などを含むことができる。
【００２７】
ブロック４０において、第１の型のブラウザからの登録メッセージに基づいて、第１の表示パラメータのセットを識別することができ、第２の型のブラウザからの登録メッセージに基づいて、第２の表示パラメータのセットを識別することができる。例えば、第１の型のブラウザが大きい画面と小さい画面の両方を有すること、または第１の型のブラウザがある表示関連ヘッダ（例えば、デバイスの型、ブラウザの型、ブラウザのバージョン、接続の型など）と関連付けられること、あるいはその両方が判断される可能性がある。さらに、第２の型のブラウザが、大きい画面の機能のみを有すること、または第２の型のブラウザが、独自の対応する表示関連のヘッダ情報を有すること、あるいはその両方が判断されることがある。
【００２８】
例示のブロック４２は、識別されたブラウザ固有の表示パラメータのセットに基づいて、カスタムの表示パラメータのセットを決定することを提供する。すでに言及したように、カスタムの表示パラメータのセットは、２つのブラウザ固有の表示パラメータのセット間の「最小公分母」を構成することができる、または、２つの異なる型のブラウザ間で共有ブラウジング・セッションを有効にするために必要とされる適切なウェブ応答の強化を表すことができる。ブロック４４において、１つまたは複数のウェブ・アプリケーションに、カスタムの表示パラメータのセットを通知することができる。通知されたウェブ・アプリケーションを、異なるサーバ上でホストすることができる。
【００２９】
図３は、ウェブ要求を処理する方法４６を示している。この方法４６は、ウェブ・アプリケーションまたは他の好適なアプリケーションのロジック３０（図１）で実施することができる。例示のブロック４８は、第１の型のブラウザと第２の型のブラウザの間の共有ブラウジング・セッションと関連するカスタムの表示パラメータのセットの通知を受信することを提供する。ブロック５０において共有ブラウジング・セッションと関連するブラウザから、ウェブ要求を受信することができ、すでに記載したように、ウェブ要求は、共有ブラウジング・セッション中に発生するリンク・イベント、クリック・イベントなどに対応することができる。例示のブロック５２は、カスタムの表示パラメータのセットに基づいて、ウェブ要求への応答をオーバライドする。
【００３０】
例えばウェブ要求が、あるサイト（例えば、www.foo.com）からのページを示すリンクイベントに対応する場合、ブロック５２は要求されるページの代わりに別のサイト（例えば、m.foo.com）からのページを自動的に使用することができる。さらにブロック５２は、表示関連のヘッダ情報を応答に追加することができる。詳細には、追加のヘッダ情報は、ブラウザの１つ（例えば、フル画面のブラウザ）に、（リンク・イベントの場合は）返されるページまたは（クリック・イベントの場合は）クリック・アニメーションを、あたかも他の型のブラウザ（例えば、ハンドヘルド・デバイスのブラウザ）で表示されるように表示するよう命令することができる。同様の機能をハンドヘルド・デバイスのブラウザに関して、ハンドヘルド・デバイスのブラウザの表示機能に応じて、実現することができる。オーバライドは、サーバ側全体で行われ、共有ブラウジング・セッションに参加しているブラウザに変更を行う、またはこのブラウザを置き換える必要をなくすことができる。
【００３１】
次に図４を見ると、モバイル・ブラウザ２８との共有ブラウジング・セッション中にロジック３０がデスクトップ・ブラウザ２６からウェブ要求５４を受信するシナリオが示されており、このウェブ要求５４は、ウェブサイト（例えば、www.foo.com）の完全版からのページを識別する。このような場合、ロジック３０は、カスタムの表示パラメータのセット６０を調べることができ、カスタムの表示パラメータのセット６０は、デスクトップ・ブラウザ２６とモバイル・ブラウザ２８の両方がハンドヘルド・デバイスの表示機能を有することを示す可能性がある。したがって、ウェブサイトの完全版からの要求されたページ（および対応するデスクトップ・ブラウザのヘッダ情報）を含む応答５６を返すのではなく、例示のロジック３０は、ウェブサイトのモバイル版（例えば、m.foo.com）からの同様のページと、返されるページをモバイル・ページとして表示するようデスクトップ・ブラウザ２６に命令する適切な表示関連のヘッダ情報とを含んだ応答５８で応答５６をオーバライドする。
【００３２】
図５は、ロジック３０が表示パラメータ６０のカスタム・セットを使用して、共有ブラウジング・セッションにおける１つまたは複数のページ・クリック・イベント６２を処理することも可能であることを示している。ページ・クリック・イベント６２は、ページをレンダリングするために使用される適切な文書オブジェクト・モデル（ＤＯＭ）のプロパティまたは他の適切な状態特性表示（state characterization）において反映されることが可能である。例示の例では、モバイル・ブラウザ２８は、クリック・イベント６２をロジック３０に発行し、ロジック３０がモバイル・ヘッダ情報を含むクリック・アニメーション応答６６で、デスクトップ・ヘッダ情報を有する標準的なクリック・アニメーション応答６４をオーバライドする。前述の例で言及したように、例示のデスクトップ・ブラウザ２６はハンドヘルド・デバイスの表示機能を有するので、クリック・アニメーション応答６６は、デスクトップ・ブラウザ２６とモバイル・ブラウザ２８の両方で同じ外観および操作感（lookand feel）を有することができる。リンク・イベントおよびクリック・イベントに関してクライアントがそれらのピアからの更新をポーリングする他の実行を使用することもできる。
【００３３】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。この関連で、フローチャートまたはブロック図の各ブロックは、コードのモジュール、セグメント、または一部を表すことができ、（１つまたは複数の）指定された論理機能を実行するための１つまたは複数の実行可能命令を含む。また、いくつかの代替的な実施では、ブロックに示した機能が図に示した順序を外れて行われる場合があることに注意されたい。例えば、連続して示した２つのブロックは、実際には実質的に同時に行われる場合があり、またはブロックは、関与する機能に応じて、時には逆の順序で行われる場合がある。またブロック図またはフローチャート図、あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図、あるいはその両方におけるブロックの組合せは、指定された機能または動作を行う特殊用途ハードウェア・ベースのシステムによって、あるいは特殊用途ハードウェアおよびコンピュータ命令の組合せによって、実行可能であることにも注意されたい。さらに、「第１の」、「第２の」などの用語は、本明細書では、単に説明を容易にするために使用しており、他に指示がない限り、特定の時間的または時系列的意味を持たない。
【００３４】
前述の記載から、本発明の諸実施形態の広範な技術を様々な形で実施できることを、当業者は理解するであろう。したがって、本発明の諸実施形態を、その特定の例と関連して説明したが、図面、明細書、および次の特許請求の範囲を検討すれば当業者には他の変更形態が明らかとなるので、本発明の諸実施形態の真の範囲は、そのように限定されるべきではない。
【図１】
2014510335.tif 000003
【図２】
2014510335.tif 000004
【図３】
2014510335.tif 000005
【図４】
2014510335.tif 000006
【図５】
2014510335.tif 000007
2014510335.tif 000008
2014510335.tif 000009
2014510335.tif 000010
2014510335.tif 000011
2014510335.tif 000012
【国際調査報告】
2014510335.tif 000013
2014510335.tif 000014