(57)【要約】【課題】各端末やＷｅｂサーバに同期用の別のページを実行させることなく、システム全体で同期に要する処理負荷をできる限り軽減するページ同期方法等を提供する。【解決手段】プロキシサーバが、各端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、状態通知プログラムは、そのページ内の１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されている。各端末は、状態通知プログラムを実行することによって、そのページ状態通知をプロキシサーバへ送信する。次に、プロキシサーバが、一方の端末から受信したページ状態通知を、他方の端末へ転送することによって、各端末は、そのページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映する。【選択図】図３
2015114742.tif 000002
【特許請求の範囲】
【請求項１】
第１の端末及び第２の端末と、ページを配信するＷｅｂサーバと、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバとを有するシステムにおけるページ同期方法において、
前記プロキシサーバが、第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されている第１のステップと、
第１の端末及び第２の端末が、前記プロキシサーバから受信したページをディスプレイに表示すると共に、そのページに含まれる前記状態通知プログラムを実行することによって、前記ページ状態通知を、前記プロキシサーバへ送信する第２のステップと、
前記プロキシサーバが、一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送する第３のステップと、
第１の端末又は第２の端末が、前記プロキシサーバから受信したページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映する
ことを特徴とするページ同期方法。
【請求項２】
前記ユーザ入力要素インタフェースは、ボタン／ボックス部、テキスト／イメージ入力部、パラメータ入力部、及び／又は、スクロール／フォーカス位置部であり、
前記ユーザ記述情報は、当該ユーザ入力要素インタフェースの設定状態を表す
ことを特徴とする請求項１に記載のページ同期方法。
【請求項３】
第１のステップについて、前記状態通知プログラムは、第１の端末及び第２の端末に対して第２のステップで、所定時間毎に、当該ページ状態通知を前記プロキシサーバへ送信するように構成されていることを特徴とする請求項１又は２に記載のページ同期方法。
【請求項４】
前記プロキシサーバは、ページ毎に、先に受信したページ状態通知に含まれるユーザ入力要素インタフェースのユーザ記述情報を記録しており、
第３のステップについて、先に受信した当該ページに対するユーザ記述情報と、現に受信した当該ページに対するユーザ記述情報とを比較して相違している場合にのみ、当該ページ状態通知を、他方の第２の端末又は第１の端末へ転送する
ことを特徴とする請求項１から３のいずれか１項に記載のページ同期方法。
【請求項５】
第２のステップについて、
一方の第１の端末又は第２の端末は、同一ページを表示した同期状態ページ及び更新操作ページと、前記更新操作ページから前記同期状態ページへ反映する同期ボタンとを、ディスプレイに表示しており、
他方の第２端末又は第１の端末から受信したページ状態通知に含まれるユーザ記述情報によって、前記同期状態ページ及び前記更新操作ページを更新する第２１のステップと、
前記更新操作ページのユーザ入力要素インタフェースに対して、ユーザによってそのユーザ記述情報が更新される第２２のステップと、
ユーザによって前記同期ボタンが押下された際に、前記更新操作ページのユーザ入力要素インタフェースのユーザ記述情報を前記同期状態ページへ反映する第２３のステップと
を有することを特徴とする請求項１から４のいずれか１項に記載のページ同期方法。
【請求項６】
第１のステップについて、
前記プロキシサーバが、第１の端末から受信したページ取得要求を前記Ｗｅｂサーバへ転送する第１１のステップと、
前記プロキシサーバが、前記Ｗｅｂサーバから受信したページ応答に、前記状態通知プログラムを埋め込んで、当該ページ応答を第１の端末へ送信する第１２のステップと、
前記プロキシサーバが、前記ページ取得要求のアドレスに対するアクセスを要求するページ遷移通知を、第２の端末へ送信する第１３のステップと、
第２の端末が、前記ページ遷移通知に含まれるアドレスへ向けて、ページ取得要求を前記プロキシサーバへ送信する第１４のステップと、
前記プロキシサーバが、前記Ｗｅｂサーバから受信したページ応答に、前記状態通知プログラムを埋め込んで、当該ページ応答を第２の端末へ送信する第１５のステップと
を有することを特徴とする請求項１から５のいずれか１項に記載のページ同期方法。
【請求項７】
第１の端末及び第２の端末と、ページを配信するＷｅｂサーバとの間で、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバにおいて、
第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されているページ応答転送手段と、
前記状態通知プログラムが実行されることによって、第１の端末及び第２の端末から、前記ページ状態通知を受信するページ状態通知受信手段と、
一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送するページ状態通知転送手段と
を有し、
第１の端末又は第２の端末に、前記ページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映させる
ことを特徴とするプロキシサーバ。
【請求項８】
第１の端末及び第２の端末と、ページを配信するＷｅｂサーバとの間で、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバに搭載されたコンピュータを機能させるプログラムにおいて、
第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されているページ応答転送手段と、
前記状態通知プログラムが実行されることによって、第１の端末及び第２の端末から、前記ページ状態通知を受信するページ状態通知受信手段と、
一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送するページ状態通知転送手段と
してコンピュータを機能させ、
第１の端末又は第２の端末に、前記ページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映させることを特徴とするプロキシサーバ用のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の端末間で、各ブラウザに同一ページを同期して表示させる技術に関する。
【背景技術】
【０００２】
インターネットに接続可能な端末には、一般的に、様々メディアを再生及び操作するためのユーザインタフェースとしての「Ｗｅｂブラウザ」が実装されている。ブラウザは、特に、ＡＪＡＸ(Asynchronous JavaScript＋XML)の普及によって、非同期でのコンテンツの取得や、動的なコンテンツの描画を可能とする。これに対し、近年、複数の端末間で、各ブラウザに同一ページを表示させるページ同期サービスが提供されてきている。
【０００３】
従来、制御側端末及び被制御側端末が、同期制御サーバを介してＷｅｂサーバにアクセスすることによって、制御側端末のブラウザ上での操作を、被制御側端末と同期させる技術がある（例えば特許文献１参照）。この技術によれば、最初に、制御側端末及び被制御側端末はそれぞれ、ユーザ操作に基づいて同期するウィンドウとは別に、同期制御サーバとの間の通信を管理するノードマネジャのウィンドウを開く。制御側端末について、ブラウザ上でユーザ操作に基づくページ遷移のイベントは、ページマネジャによって検知され、そのイベントは同期制御サーバへ送信される。同期制御サーバは、そのイベント情報を、被制御側端末へ送信する。被制御側端末は、イベント情報をノードマネジャによって受信し、そのイベント情報がページに反映される。このように、同期制御サーバを仲介させることによって、既存のＷｅｂサーバに更なる機能を追加することなく、ページ同期サービスを提供する。
【０００４】
また、本願と同一出願人に基づく従来技術として、既存のＷｅｂサーバに更なる機能を追加することなく、第三者制御サーバを用いて、制御側端末に表示されたページを、被制御側端末に表示させる技術もある（例えば特許文献２参照）。この技術によれば、制御側端末は、イベント情報を第三者制御サーバに送信する制御ＵＩ(User Interface)ページを取得する。また、被制御端末は、第三者制御サーバから受信したイベント情報をページに反映する被制御ＵＩページを取得する。そして、第三者制御サーバが仲介することによって、制御ＵＩページから被制御ＵＩページへのブラウザ同期を実現する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２１５１７３号公報
【特許文献２】特開２０１２−１４６３５号公報
【非特許文献】
【０００６】
【非特許文献１】「JavaScript Object Notation」、[online]、［平成２５年１１月２９日検索］、インターネット＜URL:http://ja.wikipedia.org/wiki/JavaScript_Object_Notation＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１によれば、端末は、同期させるページとは別に、ノードマネジャのウィンドウを開いておくことが必要となる。また、非特許文献２によれば、制御側ＵＩページと、被制御側ＵＩページとが別々に必要となる。更に、一方の端末のマウスの挙動さえも他方の端末で同期させようとした場合、先のページと後のページとの間で詳細な差分情報を取得することも必要となる。これらの同期処理の方法によれば、別途のページコンテンツの作成によるコンテンツサイズの増加や、完全に同期させることによる演算処理量の増加につながることとなる。
【０００８】
そこで、本発明は、ブラウザに表示されるページを同期させるサービスについて、各端末やＷｅｂサーバに同期用の別のページを実行させることなく、システム全体で同期に要する処理負荷をできる限り軽減したページ同期方法、プロキシサーバ及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明によれば、第１の端末及び第２の端末と、ページを配信するＷｅｂサーバと、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバとを有するシステムにおけるページ同期方法において、
プロキシサーバが、第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されている第１のステップと、
第１の端末及び第２の端末が、プロキシサーバから受信したページをディスプレイに表示すると共に、そのページに含まれる状態通知プログラムを実行することによって、ページ状態通知を、プロキシサーバへ送信する第２のステップと、
プロキシサーバが、一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送する第３のステップと、
第１の端末又は第２の端末が、プロキシサーバから受信したページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映する
ことを特徴とする。
【００１０】
本発明のページ同期方法における他の実施形態によれば、
ユーザ入力要素インタフェースは、ボタン／ボックス部、テキスト／イメージ入力部、パラメータ入力部、及び／又は、スクロール／フォーカス位置部であることも好ましい。
【００１１】
本発明のページ同期方法における他の実施形態によれば、
第１のステップについて、状態通知プログラムは、第１の端末及び第２の端末に対して第２のステップで、所定時間毎に、当該ページ状態通知をプロキシサーバへ送信するように構成されていることも好ましい。
【００１２】
本発明のページ同期方法における他の実施形態によれば、
プロキシサーバは、ページ毎に、先に受信したページ状態通知に含まれるユーザ入力要素インタフェースのユーザ記述情報を記録しており、
第３のステップについて、先に受信した当該ページに対するユーザ記述情報と、現に受信した当該ページに対するユーザ記述情報とを比較して相違している場合にのみ、当該ページ状態通知を、他方の第２の端末又は第１の端末へ転送することも好ましい。
【００１３】
本発明のページ同期方法における他の実施形態によれば、
第２のステップについて、
一方の第１の端末又は第２の端末は、同一ページを表示した同期状態ページ及び更新操作ページと、更新操作ページから同期状態ページへ反映する同期ボタンとを、ディスプレイに表示しており、
他方の第２端末又は第１の端末から受信したページ状態通知に含まれるユーザ記述情報によって、同期状態ページ及び更新操作ページを更新する第２１のステップと、
更新操作ページのユーザ入力要素インタフェースに対して、ユーザによってそのユーザ記述情報が更新される第２２のステップと、
ユーザによって同期ボタンが押下された際に、更新操作ページのユーザ入力要素インタフェースのユーザ記述情報を同期状態ページへ反映する第２３のステップと
を有することも好ましい。
【００１４】
本発明のページ同期方法における他の実施形態によれば、
第１のステップについて、
プロキシサーバが、第１の端末から受信したページ取得要求をＷｅｂサーバへ転送する第１１のステップと、
プロキシサーバが、Ｗｅｂサーバから受信したページ応答に、状態通知プログラムを埋め込んで、当該ページ応答を第１の端末へ送信する第１２のステップと、
プロキシサーバが、ページ取得要求のアドレスに対するアクセスを要求するページ遷移通知を、第２の端末へ送信する第１３のステップと、
第２の端末が、ページ遷移通知に含まれるアドレスへ向けて、ページ取得要求をプロキシサーバへ送信する第１４のステップと、
プロキシサーバが、Ｗｅｂサーバから受信したページ応答に、状態通知プログラムを埋め込んで、当該ページ応答を第２の端末へ送信する第１５のステップと
を有することも好ましい。
【００１５】
本発明によれば、第１の端末及び第２の端末と、ページを配信するＷｅｂサーバとの間で、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバにおいて、
第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されているページ応答転送手段と、
状態通知プログラムが実行されることによって、第１の端末及び第２の端末から、ページ状態通知を受信するページ状態通知受信手段と、
一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送するページ状態通知転送手段と
を有し、
第１の端末又は第２の端末に、ページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映させる
ことを特徴とする。
【００１６】
本発明によれば、第１の端末及び第２の端末と、ページを配信するＷｅｂサーバとの間で、第１の端末及び第２の端末の間でページの表示を同期させるプロキシサーバに搭載されたコンピュータを機能させるプログラムにおいて、
第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものであって、該状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を含むページ状態通知を、当該プロキシサーバへ送信するように構成されているページ応答転送手段と、
状態通知プログラムが実行されることによって、第１の端末及び第２の端末から、ページ状態通知を受信するページ状態通知受信手段と、
一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送するページ状態通知転送手段と
してコンピュータを機能させ、
第１の端末又は第２の端末に、ページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映させることを特徴とする。
【発明の効果】
【００１７】
本発明のページ同期方法、プロキシサーバ及びプログラムによれば、ブラウザに表示されるページを同期させるサービスについて、各端末やＷｅｂサーバに同期用の別のページを実行させることなく、システム全体で同期に要する処理負荷をできる限り軽減することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明におけるシステム構成図である。
【図２】端末間で同一ページを表示させるシーケンス図である。
【図３】本発明における端末２から端末３へページを同期させるシーケンス図である。
【図４】本発明における端末３から端末２へページを同期させるシーケンス図である。
【図５】オペレータ側端末における操作画面図である。
【図６】本発明におけるプロキシサーバの機能構成図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【００２０】
図１は、本発明におけるシステム構成図である。
【００２１】
図１のシステムによれば、Ｗｅｂサーバ４から配信されるページの表示を、端末２及び端末３との間で同期させるために、プロキシサーバ１がインターネットに接続されている。端末２及び端末３は、プロキシサーバ１を介してＷｅｂサーバ４へアクセスし、ページをダウンロードして表示する。例えば端末２、３は、パーソナルコンピュータであってもよいし、スマートフォンやタブレット端末であってもよい。また、プロキシサーバ１は、不特定多数の端末からアクセスされるものであってもよいし、特定のネットワークドメインに接続する端末からのアクセスのみ受け付けるものであってもよい。
【００２２】
端末同士の間でページを同期させる用途として、例えば、コールセンタのオペレータ操作の端末と、ユーザ操作の端末との間で、同一ページを閲覧しながら会話する場合がある。この場合、当該ページに対するオペレータの入力操作は、ユーザ操作の端末にも反映させる必要がある。逆に、当該ページに対するユーザの入力操作は、オペレータ操作の端末にも反映させる必要もある。
【００２３】
図１によれば、各端末のディスプレイに表示されたページには、「ユーザ入力要素インタフェース」が構成されている。ユーザ入力要素インタフェースとしては、例えば、ボタン／ボックス部、テキスト／イメージ入力部、パラメータ入力部、及び／又は、スクロール／フォーカス位置部がある。即ち、ページの中で、ユーザが入力操作可能な要素インタフェースであればよい。また、当該ユーザ入力要素インタフェースの設定状態を、「ユーザ記述情報」として表す。ユーザ記述情報は、例えば、ボタンのＯＮ／ＯＦＦや、ボックスのチェック／非チェックのような設定情報である。
【００２４】
これに対し、本願の発明者らは、各端末を操作する両方のユーザが同期によって認識したい部分は、本来、ページの中でもユーザ入力要素インタフェースの部分のみではないか？と考えた。そのために、端末間で同一ページが表示された後は、そのユーザ入力要素インタフェースの部分のみを、プロキシサーバ１を介して同期させればよい。
【００２５】
図２は、端末間で同一ページを表示させるシーケンス図である。
【００２６】
（Ｓ０）最初に、端末２及び３はそれぞれ、プロキシサーバ１との間でセッションを確立する。その上で、端末２及び３は予め、プロキシサーバ１との間で認証シーケンスを実行することによって、ページを同期させるグループを構成する。図２によれば、オペレータ操作の端末２と、ユーザ操作の端末３とが、同一ページを表示させるグループとして構成される。
【００２７】
［第１のステップ：Ｓ１］
（Ｓ１１）端末２について、所望ページを開くためのＵＲＬがクリックされたとする。このとき、端末２は、そのページのＵＲＬを含むページ取得要求を、プロキシサーバ１へ送信する。ページ取得要求は、例えばＨＴＴＰ(HyperText Transfer Protocol)のＧＥＴリクエストである。プロキシサーバ１は、そのページをキャッシュしていない場合、そのページ取得要求をＷｅｂサーバ４へ送信する。Ｗｅｂサーバ４は、要求されたページを含むページ応答を、プロキシサーバ１へ応答する。
【００２８】
（Ｓ１２）プロキシサーバ１は、Ｗｅｂサーバ４から受信したページ応答に、「状態通知スクリプト」（プログラム）を埋め込んで、当該ページ応答を端末２へ返信する。「状態通知スクリプト」は、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対する「ユーザ記述情報」を含むページ状態通知を、当該プロキシサーバ１へ送信するように構成されている。
【００２９】
ページ応答を受信した端末２は、レンダリング処理を実行し、そのディスプレイに当該ページを表示すると共に、状態通知スクリプトも実行される。これによって、端末３に、オペレータが意図的に同期管理アプリケーションやプラグインをインストールすることなく、当該ページに対して操作された際（ユーザ入力要素インタフェースに入力操作がされた際）、「ページ状態通知」をプロキシサーバ１へ送信させることができる。
【００３０】
「スクリプト」とは、機械語へのコンパイル（変換）を実行する必要がない簡易プログラムをいう。一般に、実行形式のプログラムは、ソースコードを機械語にコンパイルする必要があるのに対して、スクリプトはコンパイルを必要としない。スクリプトは、一般に、ページのＨＴＭＬ(Hyper Text Markup Language)に埋め込まれる。これによって、特別な開発環境は要さず、ＨＴＭＬだけでは提供できない様々な機能を、スクリプトを実行することによって提供する。スクリプト記述言語としては、例えばJavaScript（登録商標）、VBScript（登録商標）、Perl等がある。
【００３１】
ここで、JavaScriptとは、Ｗｅｂ上で、インタラクティブに表現可能とするべきオブジェクト指向のスクリプト言語である。JavaScriptは、端末に実装された既存のブラウザによって実行できる。
例えば、ＨＴＭＬファイルに、以下のようなダグを組み込むことができる。
<script type="text/javascript" src="sample.js">
・・・・・・・・・・・・
</script>
このタグは、「JavaScriptを使用しており、そのスクリプトファイルはsample.jsである」ことを意味する。
【００３２】
（Ｓ１３）次に、プロキシサーバ１は、ページ応答を端末２へ送信した後（Ｓ１２）、端末２と同期するグループに属する端末３へ、「ページ遷移通知」を送信する。ページ遷移通知には、端末２に表示されたページのＵＲＬを含める。
【００３３】
尚、ページ遷移通知は、一方の端末からのページ取得要求によって同期すべきページが更新された際、他方の端末へそのページを取得するべく通知するものである。ページ遷移通知は、例えばHTTP/XML POSTのＳＯＡＰ(Simple
Object Access Protocol)を利用して、以下のようなコードで表される。尚、ＳＯＡＰは、ＸＭＬ文書にエンベロープ（封筒）と呼ばれる付帯情報が付いたメッセージを、ＨＴＴＰプロトコルで交換するプロトコルをいう。
<?xml
version="1.0" encoding="UTF-8" ?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<syncCallRequest xmlns="http://kddilabs.jp/wsdl/websync/v1/local">
<sessionID>a4f6cd5ddbf32bc24a0450ebdb766bce</sessionID>
<jsonReq>{";status";:";1";,";isinitiator";:";true";,";urlprev";
:";https://<Webサーバ>/index.jsp";}</jsonReq>#遷移前
<DEFANGED_option>https://<Webサーバ>/index.jsp?tag=1
</DEFANGED_option>#遷移後
</syncCallRequest>
</soapenv:Body>
</soapenv:Envelope>
ここで、callstatus=2が、ページ遷移通知を表す。このページ遷移通知を受信したブラウザ(calleeID(02))は、Ｗｅｂページにアクセスし、callerID(01)が遷移した先のＷｅｂページを受信する。
【００３４】
尚、Ｗｅｂサーバ１から端末２へ「ページ遷移通知」が送信される技術として、「Comet」の技術を用いることも好ましい。「Comet」とは、サーバで発生したイベントを、クライアントからの要求メッセージを受信することなく、当該クライアントへ送信することができる技術をいう。具体的には、サーバは、クライアントからのリクエストに対して直ぐに応答することなく保留状態にしておく。当該サーバで、所定ページで何らかのイベントが発生したときに、そのページを応答する。これによって、サーバで発生したイベントを、直ぐにクライアントへ送信することができる。
【００３５】
同期し合う端末２及び３はそれぞれ、プロキシサーバ１へ、Cometのリクエストを予め送信しておく。これに対し、プロキシサーバ１は、このCometのリクエストを保留状態とする。その後、プロキシサーバ１は、ページ遷移通知を送信すべきトリガが発生した際に、ページ遷移通知のCometのレスポンスを、端末２へ送信することができる。
【００３６】
（Ｓ１４）端末３は、ページ遷移通知を受信した際に、そのページ遷移通知に含まれたＵＲＬへ向けて、ページ取得要求をプロキシサーバ１へ送信する。プロキシサーバ１が、そのＵＲＬのページを既にキャッシュしている場合、あえてＷｅｂサーバ４へアクセスする必要がない。
【００３７】
（Ｓ１５）プロキシサーバ１が、前述したＳ１２と同様に、要求されたページを含むページ応答に「状態通知プログラム」を埋め込んで、当該ページ応答を端末３へ送信する。ページ応答を受信した端末３は、レンダリング処理を実行し、そのディスプレイに当該ページを表示すると共に、状態通知スクリプトも実行される。これによって、端末３に、ユーザが意図的に同期管理アプリケーションをインストールすることなく、当該ページに対して操作された際（ユーザ入力要素インタフェースに入力操作がされた際）、「ページ状態通知」をプロキシサーバ１へ送信させることができる。即ち、端末側の機能は全て、プロキシサーバ１から送信されるページ応答に、状態通知スクリプトとして埋め込まれている。
【００３８】
図３は、本発明における端末２から端末３へページを同期させるシーケンス図である。
【００３９】
［第２のステップ：Ｓ２］
各端末２及び３は、状態通知スクリプトの実行によって、所定時間（例えば２，３秒程度）毎に、当該ページ状態通知をプロキシサーバ１へ送信する。ページ状態通知は、例えばページ状態に変化があっても無くても、所定時間毎に送信されるものであってもよい。
【００４０】
ページ状態通知は、AjaxのJSON形式の例によれば、例えば以下のように記述される（例えば非特許文献１参照）。
funcID=01
&param=http://<Webサーバのアドレス>/main.php?ws=client
&param2=
[
{"wName":"this","kind":1,"ID":"sync_button1","value":"null"},
{"wName":"this","kind":1,"ID":"sync_button2","value":"null"},
{"wName":"this","kind":1,"ID":"sync_button3","value":"null"},
{"wName":"this","kind":2,"ID":"textBox1","value":"null"}
{"wName":"this","kind":2,"ID":"textBox2","value":"null"}
{"wName":"this","kind":2,"ID":"textBox3","value":"null"}
]
&time=1234567890123
--------------
funcID：プロキシが備える機能を一意に識別するための識別子
wName：状態を監視しているウィンドウを示す識別子
kind：状態を取得する要素を一意に識別するための識別子
(1:ボタン, 2：テキストボックス)
ID：同じ種類の要素の部品を一意に識別するための識別子
value：部品が持つ値
time：送信時刻
--------------
【００４１】
図３によれば、オペレータが、端末２のブラウザに表示されたページについて、ユーザ入力要素インタフェースであるボタン［会員Ａ］をクリックして選択したとする。その後に、端末２が送信するページ状態通知は、例えば以下のようなものである。
［ボタン１の押下、テキストボックスへの入力無し］
funcID=01
&param=http://<Webサーバのアドレス>/main.php?ws=client
&param2=
[
{"wName":"this","kind":1,"ID":"sync_button1","value":"ボタン1"},
{"wName":"this","kind":1,"ID":"sync_button2","value":"null"},
{"wName":"this","kind":1,"ID":"sync_button3","value":"null"},
{"wName":"this","kind":2,"ID":"textBox1","value":"null"}
{"wName":"this","kind":2,"ID":"textBox2","value":"null"}
{"wName":"this","kind":2,"ID":"textBox3","value":"null"}
]
&time=1234567890123
【００４２】
［第３のステップ：Ｓ３］
プロキシサーバ１は、端末２から受信したページ状態通知を、他方の端末３へ転送する。
【００４３】
ここで、プロキシサーバ１は、ページ毎に、先に受信したページ状態通知に含まれるユーザ入力要素インタフェースのユーザ記述情報を記録することも好ましい。この場合、先に受信した当該ページに対するユーザ記述情報と、現に受信した当該ページに対するユーザ記述情報とを比較して相違している場合にのみ、当該ページ状態通知を、他方の端末３へ転送する。
【００４４】
［第４のステップ：Ｓ４］
端末３は、プロキシサーバ１から受信したページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映する。
これによって、既存のＷｅｂブラウザを搭載した端末であれば、本発明のプロキシサーバ１をネットワークに備えるだけで、端末間で、特にユーザ入力要素インタフェースにおけるページを同期させることができる。
【００４５】
図４は、本発明における端末３から端末２へページを同期させるシーケンス図である。
【００４６】
（Ｓ２）ユーザが、端末３のブラウザに表示されたページについて、ユーザ入力要素インタフェースであるテキスト部分［ユーザＩＤ］に、文字を入力したとする。その後に、端末３は、以下のようなページ状態通知をプロキシサーバ１へ送信する。
［ボタン１の押下、テキストボックスへの入力あり］
funcID=14
&param=http://webserver/main.php?ws=client
&param2=
[
{"wName":"this","kind":6,"ID":"sync_button1","value":"ボタン1"},
{"wName":"this","kind":1,"ID":"sync_button2","value":"null"},
{"wName":"this","kind":1,"ID":"sync_button3","value":"null"},
{"wName":"this","kind":2,"ID":"textBox1","value":"TASAKA"}
{"wName":"this","kind":2,"ID":"textBox2","value":"null"}
{"wName":"this","kind":2,"ID":"textBox3","value":"null"}
]
&time=1234567890123
【００４７】
（Ｓ３）プロキシサーバ１は、端末３から受信したページ状態通知を、他方の端末２へ転送する。
【００４８】
（Ｓ４）端末２は、プロキシサーバ１から受信したページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映する。
これによって、端末間で双方向に、特にユーザ入力要素インタフェースにおけるページを同期させることができる。
その後、各端末２及び３は、状態通知スクリプトの実行によって、所定時間（例えば２，３秒程度）毎に、当該ページ状態通知をプロキシサーバ１へ送信する。
【００４９】
図５は、オペレータ側端末における操作画面図である。
【００５０】
図５によれば、オペレータ操作の端末２には、２つの同一ページと、同期ボタンとが表示されている。
同期状態ページ：相手方端末３と同期した状態を表すページ
更新操作ページ：自側端末２に表示されたページに、オペレータが操作した状態
同期ボタン    ：更新操作ページから同期状態ページへ反映する操作ボタン
【００５１】
ここで、第２のステップについて、図５のページ操作を説明する。
（Ｓ２１）相手方端末３から受信したページ状態通知に含まれるユーザ記述情報によって、同期状態ページ及び更新操作ページを更新する。
（Ｓ２２）更新操作ページのユーザ入力要素インタフェースに対して、オペレータによってそのユーザ記述情報が更新される。
（Ｓ２３）ユーザによって同期ボタンが押下された際に、更新操作ページのユーザ入力要素インタフェースのユーザ記述情報を同期状態ページへ反映する。
これによって、オペレータ操作の端末２における途中の操作内容は、相手方端末３へ直ぐに、ページ状態通知として送信されない。オペレータが最終的に決定した操作内容が、同期ボタンの押下に応じて、そのページ状態通知が、プロキシサーバ１を介して相手方端末３へ送信される。ユーザ操作の端末３から見ると、無駄な操作過程が見えず、最終的な操作内容だけを認識しやすくなる。
【００５２】
図６は、本発明におけるプロキシサーバの機能構成図である。
【００５３】
図６によれば、プロキシサーバ１は、インターネットに接続する通信インタフェース１００と、ＨＴＴＰ処理部１０１と、プロキシ機能部１０２と、ページ応答転送部１１と、ページ状態通知受信部１２と、ページ状態通知転送部１３とを有する。通信インタフェース１００を除くこれら機能構成部は、サーバに搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
【００５４】
ＨＴＴＰ処理部１０１は、ＨＴＴＰに基づくメッセージを、端末２との間で交換する。プロキシ機能部１０２は、既存のプロキシ機能であって、ページのキャッシュ機能を有するものであってもよい。
【００５５】
ページ応答転送部１１は、第１の端末及び第２の端末へ応答すべきページに、状態通知プログラムを埋め込んで送信するものである（前述した図２の第１のステップＳ１と同様）。状態通知プログラムは、そのページ内に構成された１つ以上のユーザ入力要素インタフェースに対するユーザ記述情報を当該プロキシサーバへ送信するように構成されている。
【００５６】
ページ状態通知受信部１２は、状態通知プログラムが実行されることによって、第１の端末及び第２の端末から、当該ページ内のユーザ入力要素インタフェースのユーザ記述情報を含むページ状態通知を受信する（前述した図３の第２のステップＳ２と同様）。
【００５７】
ページ状態通知転送部１３は、一方の第１の端末又は第２の端末から受信したページ状態通知を、他方の第２の端末又は第１の端末へ転送する（前述した図３の第３のステップＳ３と同様）。
【００５８】
これによって、第１の端末又は第２の端末に、ページ状態通知に含まれるユーザ記述情報を、当該ページのユーザ入力要素インタフェースへ反映させることができる（前述した図３の第４のステップＳ４と同様）。
【００５９】
以上、詳細に説明したように、本発明のページ同期方法、プロキシサーバ及びプログラムによれば、ブラウザに表示されるページを同期させるサービスについて、各端末やＷｅｂサーバに同期用の別のページを実行させることなく、システム全体で同期に要する処理負荷をできる限り軽減することができる。本発明によれば、プロキシサーバを備えるだけで、既存のＷｅｂサーバやブラウザに更なる機能を追加する必要がない。また、ブラウザに表示されたページの同期も、ユーザ入力要素インタフェースのみであるために、同期シーケンスが簡単化される。特に、コールセンタのオペレータの端末とユーザの端末との間で、同期された同一アドレスのページを閲覧しながら会話する場合に、プロキシサーバを介するだけで、同一ページにおけるユーザ入力要素インタフェースのユーザ記述情報を同期させることができる。
【００６０】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００６１】
１  プロキシサーバ
１００  通信インタフェース
１０１  ＨＴＴＰ処理部
１０２  プロキシ機能部
１１  ページ応答転送部
１２  ページ状態通知受信部
１３  ページ状態通知転送部
２  オペレータ操作の端末、第１の端末
３  ユーザ操作の端末、第２の端末
４  Ｗｅｂサーバ
【図１】
2015114742.tif 000003
【図２】
2015114742.tif 000004
【図３】
2015114742.tif 000005
【図４】
2015114742.tif 000006
【図５】
2015114742.tif 000007
【図６】
2015114742.tif 000008