(57)【要約】【課題】複数の装置間で、ウェブページの表示を整合させる。【解決手段】オペレータ端末１２は、顧客と共有すべきウェブページである共有ページについて、その全てのコンテンツを含む共有ページの全体画像を取得し、顧客端末１４へ提供する。オペレータ端末１２は、共有ページをウェブブラウザの画面に表示させ、オペレータの操作に応じて共有ページの一部のコンテンツを画面に表示させる。オペレータ端末１２は、共有ページ全体の中で画面表示中の領域を示す位置情報を取得し、顧客端末１４へ提供する。顧客端末１４は、オペレータ端末１２から提供された共有ページの全体画像のうち、オペレータ端末１２から提供された位置情報が示す領域の画像を表示させる。【選択図】図３
2015097069.tif 000002
【特許請求の範囲】
【請求項１】
同一のウェブページを閲覧すべき第１ユーザの端末と第２ユーザの端末を備え、
前記第１ユーザの端末は、
第１ユーザの操作に応じて、前記ウェブページの一部を示す部分画像を画面に表示させるページ表示部と、
前記画面に非表示の画像を含む前記ウェブページの全体画像を前記第２ユーザの端末へ提供するページ画像提供部と、
前記ページ表示部により前記画面に表示された部分画像が全体画像に占める領域を示す位置情報を前記第２ユーザの端末へ提供する表示領域通知部と、を有し、
前記第２ユーザの端末は、前記第１ユーザの端末から提供された前記ウェブページの全体画像のうち、前記第１ユーザの端末から提供された位置情報が示す領域の画像を表示させる共有画像表示部を有することを特徴とする情報処理システム。
【請求項２】
前記ページ表示部は、第１ユーザが入力したウェブページの遷移を伴わない所定の操作に応じて、前記ウェブページの部分画像を変更し、
前記所定の操作に応じて、前記表示領域通知部は、変更後の部分画像に応じた新たな位置情報を前記第２ユーザの端末へ提供する一方、前記ページ画像提供部は、前記ウェブページの全体画像を前記第２ユーザの端末へ再度提供することを抑制することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１ユーザの端末は、共有画像表示部と改変情報通知部をさらに有し、
前記ページ画像提供部は、前記ウェブページの全体画像を前記第１ユーザの端末の共有画像表示部へも提供し、
前記表示領域通知部は、前記位置情報を前記第１ユーザの端末の共有画像表示部へも提供し、
前記第１ユーザの端末の共有画像表示部は、前記ウェブページの全体画像のうち前記位置情報が示す領域の画像を表示させ、
前記改変情報通知部は、前記第１ユーザの端末の前記共有画像表示部により表示された画像に対する第１ユーザによる改変内容を示す改変情報を前記第２ユーザの端末へ提供し、
前記第２ユーザの端末の共有画像表示部は、前記第１ユーザの端末から提供された改変情報が示す改変内容を、表示中の画像に反映させることを特徴とする請求項１または２に記載の情報処理システム。
【請求項４】
前記ページ画像提供部は、所定のウェブサーバから前記ウェブページを読み込み、その読み込みが完了したとき前記ウェブページの全体画像を取得し、
前記ページ表示部は、前記ページ画像提供部とは独立して前記ウェブサーバから前記ウェブページを読み込んで画面に表示させ、前記ウェブページの読み込みが未完了でも前記ウェブページに対する第１ユーザの操作を受け付け、その操作に応じた処理を実行することを特徴とする請求項１から３のいずれかに記載の情報処理システム。
【請求項５】
ユーザの操作に応じて、ウェブページの一部を示す部分画像を画面に表示させるページ表示部と、
前記画面に非表示の画像を含む前記ウェブページの全体画像を、前記ウェブページを閲覧させるべき他ユーザの装置へ提供する画像提供部と、
前記ページ表示部により前記画面に表示された部分画像が全体画像に占める領域を示す位置情報を前記他ユーザの装置へ提供することにより、前記ウェブページの全体画像のうち前記位置情報が示す領域の画像を表示する処理を前記他ユーザの装置に実行させる表示領域通知部と、
を備えることを特徴とする情報処理装置。
【請求項６】
ユーザの操作に応じて、ウェブページの一部を示す部分画像を画面に表示させる機能と、
前記画面に非表示の画像を含む前記ウェブページの全体画像を、前記ウェブページを閲覧させるべき他ユーザの装置へ提供する機能と、
前記表示させる機能により前記画面に表示された部分画像が全体画像に占める領域を示す位置情報を前記他ユーザの装置へ提供することにより、前記ウェブページの全体画像のうち前記位置情報が示す領域の画像を表示する処理を前記他ユーザの装置に実行させる機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理技術に関し、特に情報処理システム、情報処理装置およびコンピュータプログラムに関する。
【背景技術】
【０００２】
本出願人は、顧客応対を支援するためのビデオチャット技術を提案している（例えば特許文献１参照）。また、複数の端末装置で同じウェブページを閲覧するためのウェブページ共有システムが提案されている（例えば特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−０８４１２３号公報
【特許文献２】特開２００１−３３３０６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献２は、同じウェブページを閲覧すべき装置間で、ウェブページのＵＲＬを共有することにより、同じウェブページを表示させるものである。しかし、このような方式では、同じＵＲＬであっても各装置で使用されるブラウザの種類によってウェブページの表示態様が異なってしまうことがある。本発明者は、複数の装置間でウェブページの表示を整合させるために改善の余地があると考えた。
【０００５】
本発明は発明者の上記課題認識にもとづきなされたものであり、その主な目的は、複数の装置間で、ウェブページの表示を整合させるための技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の情報処理システムは、同一のウェブページを閲覧すべき第１ユーザの端末と第２ユーザの端末を備える。第１ユーザの端末は、第１ユーザの操作に応じて、ウェブページの一部を示す部分画像を画面に表示させるページ表示部と、画面に非表示の画像を含むウェブページの全体画像を第２ユーザの端末へ提供するページ画像提供部と、ページ表示部により画面に表示された部分画像が全体画像に占める領域を示す位置情報を第２ユーザの端末へ提供する表示領域通知部と、を有する。第２ユーザの端末は、第１ユーザの端末から提供されたウェブページの全体画像のうち、第１ユーザの端末から提供された位置情報が示す領域の画像を表示させる共有画像表示部を有する。
【０００７】
本発明の別の態様は、情報処理装置である。この装置は、ユーザの操作に応じて、ウェブページの一部を示す部分画像を画面に表示させるページ表示部と、画面に非表示の画像を含むウェブページの全体画像を、ウェブページを閲覧させるべき他ユーザの装置へ提供する画像提供部と、ページ表示部により画面に表示された部分画像が全体画像に占める領域を示す位置情報を他ユーザの装置へ提供することにより、ウェブページの全体画像のうち位置情報が示す領域の画像を表示する処理を他ユーザの装置に実行させる表示領域通知部と、を備える。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現を、方法、プログラム、プログラムを格納した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、複数の装置間で、ウェブページの表示を一層整合させやすくなる。
【図面の簡単な説明】
【００１０】
【図１】異なる端末間で同一のウェブページを閲覧する従来の仕組みを模式的に示す図である。
【図２】異なる端末間で同一のウェブページを閲覧する実施の形態の仕組みを模式的に示す図である。
【図３】実施の形態のビデオチャットシステムの構成を示す図である。
【図４】図３のオペレータ端末の機能構成を示すブロック図である。
【図５】図３の顧客端末の機能構成を示すブロック図である。
【図６】ビデオチャットのユーザインタフェースを示す図である。
【発明を実施するための形態】
【００１１】
実施の形態の構成を説明する前に、従来の技術の課題を含む概要を説明する。
図１は、異なる端末間で同一のウェブページを閲覧する（以下「ウェブページを共有する」とも呼ぶ。）従来の仕組みを模式的に示す。オペレータは、自端末でウェブブラウザを起動し、ウェブブラウザの起動に伴って開かれたウィンドウであり、ウェブブラウザに対するユーザインタフェースとなるウィンドウ（以下「ブラウザウィンドウ」とも呼ぶ。）２０２において、顧客と共有すべきウェブページ２０３Ａを開く。オペレータ端末２０１は、ブラウザウィンドウ２０２で開かれたウェブページ２０３ＡのＵＲＬを、ビデオチャットサーバ２２０を介して顧客端末２３０へ送信する。顧客端末２３０は、オペレータ端末２０１から通知されたＵＲＬにもとづいてウェブページのデータを取得し、自端末のブラウザウィンドウにウェブページ２０３Ｂを表示させる。これにより、オペレータと顧客が同じウェブページを閲覧することができる。
【００１２】
しかし、図１の方式では、オペレータ端末におけるウェブページの表示態様と、顧客端末におけるウェブページの表示態様が異なってしまうことがあった。典型的には、オペレータ端末の環境（ＯＳやウェブブラウザ等）と顧客端末の環境が不一致のときに生じる。また、共有すべきウェブページの表示時に、顧客端末でエラー（ＪＡＶＡスクリプトエラー等、「ＪＡＶＡスクリプト」は登録商標）が発生することもあった。この場合、オペレータ端末でも同様のエラーが発生することもあれば、環境の相違によりオペレータ端末ではエラーが未発生のこともある。したがって、オペレータと顧客間で十分な情報共有ができないこともあった。
【００１３】
図２は、異なる端末間で同一のウェブページを閲覧する実施の形態の仕組みを模式的に示す。オペレータ端末２１１では、ビデオチャットアプリケーションに加えて、ウェブ共有アプリケーション２４０が起動される。ウェブ共有アプリケーション２４０はオペレータからの入力指示に応じてウェブページを開き、画面上で表示されている領域２３３Ａのみならず非表示の領域２３４を含む当該ウェブページの全体画像を取得する。その際、ウェブページの読み込みやレンダリングにおいて発生したエラーは無視して全体画像を取得する。またウェブ共有アプリケーション２４０は、ウェブページの全体画像のうち画面に表示されている領域２３３Ａを示す位置情報を取得する。そして、ウェブページの全体画像と位置情報を、ビデオチャットサーバ２２１へ提供する。オペレータ端末２１１および顧客端末２３１のビデオチャットアプリケーションは、ウェブページの全体画像のうち位置情報が示す領域（オペレータ端末２１１では領域２３３Ａ、顧客端末２３１では領域２３３Ｂ、これらは同じ内容を示す）を画面に表示させる。
【００１４】
この構成によると、オペレータ端末および顧客端末のビデオチャットアプリケーションは共有すべきウェブページの画像データを取得し、その画像データの少なくとも一部をそのまま表示させればよい。この結果、オペレータ端末と顧客端末のＯＳやウェブブラウザの種類が異なっても、オペレータ端末におけるウェブページの表示態様と、顧客端末におけるウェブページの表示態様を整合させることができる。また、ウェブ共有アプリケーションは、ウェブページ解析・画像化時のエラーは無視してベストエフォートで画像化するため、顧客端末でエラーが発生してしまうことを抑制し、オペレータと顧客との円滑な情報共有を支援できる。また、ウェブページの全体画像を最初に一度提供し、スクロール等のオペレータ操作によるウェブページの表示態様の変更は、差分の位置情報のみを提供することで、サーバや端末、ネットワークのリソース消費を抑制することができる。
【００１５】
実施の形態の構成を詳細に説明する。
図３は、実施の形態のビデオチャットシステムの構成を示す。ビデオチャットシステム１０は、オペレータ端末１２、顧客端末１４、ビデオチャットサーバ１６を備える。これらの各装置はＬＡＮ・ＷＡＮ・インターネット等を含む通信網１８を介して接続される。ビデオチャットシステム１０は、商品説明や各種相談のためのビデオチャットサービスを顧客に提供し、そのビデオチャットの中で企業のオペレータと顧客は同じウェブページを閲覧（言い換えれば共有）する。このウェブページを以下「共有ページ」とも呼ぶ。
【００１６】
オペレータ端末１２は、メーカや小売等の企業において顧客応対業務を担当するオペレータにより操作される情報処理装置であり、例えばＰＣやタブレット端末である。顧客端末１４は、オペレータとのビデオチャットを所望する顧客により操作される情報処理装置であり、例えばＰＣやタブレット端末、スマートフォンである。
【００１７】
ビデオチャットサーバ１６は、オペレータ端末１２と顧客端末１４それぞれとの通信セッションを確立し、オペレータ端末１２と顧客端末１４間で送受される各種データを中継する。またビデオチャットサーバ１６はウェブサーバとしての機能を有し、オペレータ用のビデオチャット画面のウェブページをオペレータ端末１２へ提供する。同様に、顧客用のビデオチャット画面のウェブページを顧客端末１４へ提供する。ウェブサーバ２０は、商品説明やＱ＆Ａ等のコンテンツを含む各種ウェブページを外部のウェブクライアント端末へ提供する。実施の形態では、オペレータが指定した共有ページをオペレータ端末１２へ提供する。
【００１８】
図４は、図３のオペレータ端末１２の機能構成を示すブロック図である。ブロック図における各ブロックは、ハードウェア的には、コンピュータのＣＰＵやメモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【００１９】
図４の各機能ブロックは、プログラムモジュールとして実装されてもよく、そのプログラムモジュールをＣＰＵが実行することにより、各機能ブロックの機能が発揮されてもよい。また図４には不図示だが、オペレータ端末１２は、種々の設定値や処理中のデータを記憶するメモリやストレージ等のデータ保持部をさらに備える。図４の各機能ブロックは、データ保持部に記憶されたデータを適宜参照してデータ処理を実行する。後述する図５のブロック図および顧客端末１４についても同様である。
【００２０】
オペレータ端末１２は、インタフェース部３０、ウェブブラウザ部３２、ウェブ共有部３４、ビデオチャット部３６を備える。インタフェース部３０は、オペレータ端末１２とオペレータ（端末の操作者）、また、オペレータ端末１２と外部装置とのインタフェース機能を提供する。ウェブブラウザ部３２は公知のウェブブラウザの機能を提供する。
【００２１】
ビデオチャット部３６は、ビデオチャットのクライアント機能を提供し、例えばオペレータ用のビデオチャット画面を表示させる。ウェブ共有部３４およびビデオチャット部３６は、ウェブブラウザプログラムで予め定められたＡＰＩ（Application Programming Interface）を適宜コールし、ウェブブラウザ部３２の機能を適宜使用する。
【００２２】
ビデオチャット部３６は、その機能を示すＪＡＶＡスクリプトコードが、ビデオチャットサーバ１６から提供されるオペレータ用ビデオチャット画面のウェブページプログラム（ＨＴＭＬプログラム等）に記述されることにより実装されてもよい。この場合、ウェブブラウザ部３２が、オペレータ用ビデオチャット画面のウェブページのプログラムを読み込み、その中に記述されたＪＡＶＡスクリプトコードを実行することにより、ビデオチャット部３６の各機能が実現されてもよい。
【００２３】
ウェブ共有部３４は、オペレータ端末１２と顧客端末１４間でウェブページを共有するための処理を実行する。具体的には、共有ページの全体画像と、オペレータ端末１２の画面上で表示中の共有ページの領域を示す位置情報を取得する。実施の形態では、ウェブ共有部３４は、ウェブ共有アプリケーションとしてオペレータ端末１２にインストールされることとする。変形例として、ウェブ共有部３４は、外部のウェブアプリケーションサーバが提供するＡＳＰサービスを利用して実現されてもよい。例えば、ビデオチャット部３６と同様に、ウェブ共有部３４の機能を示すＪＡＶＡスクリプトコードが、外部のウェブアプリケーションサーバが提供するウェブ共有画面のウェブページプログラムに記述されることにより実装されてもよい。そして、オペレータの操作に応じてウェブブラウザ部３２がそのウェブページを読み込み、その中に記述されたＪＡＶＡスクリプトコードを実行することにより、ビデオチャット部３６の各機能が実現されてもよい。
【００２４】
インタフェース部３０は、操作検出部４０、表示制御部４２、通信部４４を含む。操作検出部４０は、キーボードやマウス等の入力装置に対するオペレータの操作入力を検出し、入力された操作内容をウェブ共有部３４、ビデオチャット部３６へ通知する。ウェブ共有部３４およびビデオチャット部３６の各機能ブロックは、操作検出部４０を介して、オペレータの操作を受け付ける。
【００２５】
表示制御部４２は、ウェブ共有部３４またはビデオチャット部３６から出力された画像データを不図示のディスプレイドライバへ出力することにより、ディスプレイの表示内容を制御する。ウェブ共有部３４およびビデオチャット部３６の各機能ブロックは、表示制御部４２を介して、各種情報や画像をディスプレイに表示させる。通信部４４は、所定の通信プロトコル（例えばＨＴＴＰ）にしたがって外部装置と通信する。ウェブ共有部３４およびビデオチャット部３６の各機能ブロックは、通信部４４を介して、外部装置（例えばビデオチャットサーバ１６やウェブサーバ２０）と電子データを送受する。
【００２６】
ウェブ共有部３４は、第１処理部５０と第２処理部６０を含む。第１処理部５０は、共有ページに関するオペレータ操作用の処理を実行する。具体的には、共有ページを表示させるためのブラウザウィンドウであり、ウェブ共有アプリケーションの起動により生成されたウィンドウ（以下「ウェブ共有ウィンドウ」とも呼ぶ。）に対するオペレータの操作に関連する処理を実行する。第２処理部６０は、画面表示等のユーザインタフェース処理は実行せず、共有ページの画像化に関する処理を実行する。第１処理部５０と第２処理部６０は、互いに独立してウェブブラウザ部３２の機能を呼び出しつつ、以下に示す処理を適宜並行して実行する。
【００２７】
第１処理部５０は、ページ読込部５２、ページ表示部５４、表示領域検出部５６、表示領域通知部５８を含む。ページ読込部５２は、ウェブ共有ウィンドウに対するオペレータ操作に基づいて共有ページのＵＲＬを取得し、そのＵＲＬを指定したＨＴＴＰリクエストをウェブサーバ２０へ送信する。ページ読込部５２は、ウェブサーバ２０から送信された共有ページのデータを読み込み、所定の記憶領域へ格納する。
【００２８】
ページ表示部５４は、ウェブ共有アプリケーションの起動に伴い、所定サイズのウェブ共有ウィンドウをディスプレイに表示させる。ページ表示部５４は、ページ読込部５２により読み込まれた共有ページのデータをレンダリングし、そのレンダリング結果である画像をウェブ共有ウィンドウに表示させる。言い換えれば、共有ページがもたらす情報であり、各種テキストや画像を含むコンテンツを示す画像をウェブ共有ウィンドウに表示させる。共有ページの全コンテンツを含む全体画像のサイズが大きい場合、共有ページ全体をウェブ共有ウィンドウに表示させることはできないため、共有ページの一部コンテンツを示す部分画像をウェブ共有ウィンドウに表示させる。
【００２９】
またページ表示部５４は、共有ページの表示処理、具体的には共有ページのデータに対する解析処理・レンダリング処理（ＪＡＶＡスクリプトプログラムの実行を含む）の中でエラーが発生するか否かにかかわらず表示処理を継続する。例えば、ＪＡＶＡスクリプトエラー等が発生しても、当該エラーが無視可能なエラー種類、言い換えれば、表示処理の継続が可能なエラー種類であれば表示処理を中止せず、エラー発生箇所の処理をスキップする等により当該エラーを無視して表示処理を継続する。
【００３０】
ページ読込部５２とページ表示部５４は、ウェブ共有ウィンドウに対して入力されたオペレータの操作であり、ウェブ共有ウィンドウに表示された共有ページに対するオペレータの操作を受け付ける。ページ読込部５２とページ表示部５４は、共有ページの読み込み処理・表示処理が完了したか否かに関わらず、言い換えれば、共有ページの読み込み処理・表示処理の途中であってもオペレータの操作を受け付ける。この操作は、例えば、共有ページに設けられたページリンクに対する選択操作（クリック操作）や、ボタン等のフォームに対する操作、共有ページの表示対象領域の変更操作（典型的にはウェブ共有ウィンドウのスクロールバーの移動操作）を含む。
【００３１】
ページ読込部５２は、ウェブ共有ウィンドウに対するオペレータの操作に応じて、それまでの共有ページ読み込み処理を中止し、新たな共有ページの読み込み処理を開始する。ただし、オペレータの操作が共有ページ内での移動操作やスクロール操作等、他のウェブページへの遷移（すなわち共有ページの切替）を伴わない操作である場合、ページ読込部５２は、それまでの共有ページ読み込み処理を継続し、また新たな共有ページの読み込み開始を抑制する。
【００３２】
ページ表示部５４は、ウェブ共有ウィンドウに対するオペレータの操作に応じて、ウェブ共有ウィンドウにおける共有ページの表示を更新する。例えば、新たな共有ページを表示させ、またウェブ共有ウィンドウにおける共有ページの表示対象領域を変更する。言い換えれば、ウェブ共有ウィンドウに表示させる共有ページそのもの、もしくは表示対象とする共有ページの部分画像を変更する。
【００３３】
表示領域検出部５６は、後述するイベント検出部６４が共有ページの読み込み完了イベントを検出した場合に、ウェブ共有ウィンドウに表示中の共有ページの部分画像が、共有ページの全体画像に占める領域を示す位置情報を取得する。表示中の領域は、共有ページに含まれるコンテンツのうちオペレータが視認可能な状態でディスプレイ画面に表示されているコンテンツが配置された領域と言える。
【００３４】
表示領域検出部５６は、公知の方法により位置情報を取得してもよく、例えばＪＡＶＡスクリプトにおいて予め用意されたオブジェクト、メソッドを使用して位置情報を取得してもよい。実施の形態では、ウェブ共有ウィンドウに表示中の共有ページの領域について、共有ページの左上端を原点とする二次元座標系における当該領域の左上端横座標値（window.pageXOffset）、左上端縦座標値（window.pageYOffset）を取得する。そして、ウェブ共有ウィンドウの横幅（window.innerWidth）、高さ（window.innerHeight）にもとづき右下端横座標値、右下端縦座標値を取得し、左上横座標値・左上縦座標値・右下横座標値・右下縦座標値の組み合わせを位置情報として生成する。変形例として、位置情報は、左上横座標値・左上縦座標値・ブラウザウィンドウの横幅・高さの組み合わせでもよく、他の構成であってもよい。
【００３５】
表示領域通知部５８は、表示領域検出部５６により取得された位置情報を後述の共有画像表示部７０へ出力するとともに顧客端末１４へも提供する。実施の形態では、位置情報をビデオチャットサーバ１６へ送信し、ビデオチャットサーバ１６から顧客端末１４へ送信させる。
【００３６】
第２処理部６０は、ページ読込部６２、イベント検出部６４、ページ画像取得部６６、ページ画像提供部６８を含む。ページ読込部６２は、ウェブ共有ウィンドウに対するオペレータ操作に基づいてオペレータが所望する共有ページのＵＲＬを取得し、そのＵＲＬを指定したＨＴＴＰリクエストをウェブサーバ２０へ送信する。ページ読込部６２は、ウェブサーバ２０から送信された共有ページのデータを読み込み、所定の記憶領域へ格納する。ページ読込部６２は、ページ読込部５２と同じウェブページを取得するが、ページ読込部５２とは独立して、典型的にはページ読込部５２と並行して動作する。
【００３７】
ページ読込部５２と同様に、ページ読込部６２は、オペレータの操作に応じて、それまでの共有ページ読み込み処理を中止し、新たな共有ページの読み込み処理を開始する。ただし、オペレータの操作が他のウェブページへの遷移を伴わない操作の場合は、ページ読込部５２は、それまでの共有ページ読み込み処理を継続し、また新たな共有ページの読み込み開始を抑制する。
【００３８】
イベント検出部６４は、ページ読込部６２による共有ページ読み込み処理の実行中に、ウェブブラウザ部３２が予め保持するコンポーネントである読み込み完了イベントの発生を監視する。例えば、ウェブブラウザがＩｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（商標または登録商標）の場合、「ＤｏｃｕｍｅｎｔＣｏｍｐｌｅｔｅ」イベントの発生を監視する。イベント検出部６４は、読み込み完了イベントの発生を検出すると、共有ページの読み込み完了を示す情報をページ画像取得部６６および表示領域検出部５６へ出力する。
【００３９】
ページ画像取得部６６は、共有ページの読み込み完了がイベント検出部６４から通知されると、共有ページをビットマップ画像化した共有ページの全体画像（以下「共有ページ全体画像」と呼ぶ。）を取得する。共有ページ全体画像は、共有ページの全てのコンテンツを含み、ウェブ共有ウィンドウに非表示の画像を含むビットマップ画像データである。画像データの形式は、ＪＰＥＧ、ＰＮＧ、ＢＭＰ、ＴＩＦＦ等、公知の形式でよい。ページ画像取得部６６は、ページ読込部６２により読み込みが完了した共有ページの全データをレンダリングし、そのレンダリング結果である共有ページ全体画像のデータをメモリ内に格納する。
【００４０】
ページ表示部５４と同様にページ画像取得部６６は、共有ページの解析処理・レンダリング処理の中でエラーが発生するか否かにかかわらず画像化処理を継続する。例えば、ＪＡＶＡスクリプトエラー等が発生しても、エラーを無視して共有ページ全体画像の生成処理の実行を継続する。
【００４１】
ページ画像提供部６８は、ページ画像取得部６６により取得された共有ページ全体画像を後述の共有画像表示部７０へ出力するとともに顧客端末１４へも提供する。実施の形態では、位置情報をビデオチャットサーバ１６へ送信し、ビデオチャットサーバ１６から顧客端末１４へ送信させる。実際には、表示領域検出部５６により取得された位置情報と、ページ画像取得部６６により取得された共有ページ全体画像の組み合わせを共有画像表示部７０および顧客端末１４へ提供してもよい。
【００４２】
ビデオチャット部３６は、共有画像表示部７０、改変受付部７２、改変内容通知部７４、撮影画像表示部７６、チャット表示部７８を含む。共有画像表示部７０は、表示領域通知部５８から提供された位置情報と、ページ画像提供部６８から提供された共有ページ全体画像を受け付ける。共有画像表示部７０は、ブラウザウィンドウ（以下「ビデオチャットウィンドウ」と呼ぶ。）に表示されたオペレータ用ビデオチャット画面の共有画像表示領域に、共有ページ全体画像のうち位置情報が示す領域の画像を表示させる。具体的には、共有ページ全体画像から、位置情報が示す左上端座標値と右下端座標値により形成される矩形領域のビットマップ画像データを切り出し、その矩形領域のビットマップ画像データを表示させる。これにより、ウェブ共有ウィンドウに表示された共有ページの部分画像と同じ画像を共有画像表示領域に表示させる。
【００４３】
共有画像表示部７０は、共有ページ全体画像と位置情報の組み合わせ、もしくは位置情報単体を受け付けるたびに、共有画像表示領域における画像を更新する。すなわち、ウェブ共有ウィンドウに対するオペレータ操作に応じて、表示領域検出部５６が位置情報を新たに取得し、ページ画像取得部６６が共有ページ全体画像を新たに取得するたびに、新たに取得されたそれらのデータにしたがって共有画像表示領域の表示内容を更新する。これにより、ウェブ共有ウィンドウにおける共有ページの表示内容と、ビデオチャットウィンドウの共有画像表示領域における共有ページの表示内容の同期を維持する。
【００４４】
改変受付部７２は、ビデオチャットウィンドウの共有画像表示領域に表示中の共有ページ画像に対するオペレータによる編集・改変操作を検出する。この操作は、オリジナルの共有ページ画像の少なくとも一部を別の態様へ変更する操作であり、例えば新たな線図の描画操作や、既存の線図の削除操作を含む。共有画像表示部７０は、オペレータの編集・改変操作を共有ページ画像に反映させ、例えば、オペレータが描画した画像オブジェクトを共有画像表示領域に表示させる。
【００４５】
改変内容通知部７４は、共有ページ画像に対するオペレータの編集・改変内容を示す改変情報を顧客端末１４へ送信する。実施の形態では、改変情報をビデオチャットサーバ１６へ送信し、ビデオチャットサーバ１６から顧客端末１４へ送信させる。この改変情報は、例えば、オペレータが描画した画像オブジェクトの種類（線図の種類等）と、共有画像表示領域における描画位置を示す座標を含む。
【００４６】
撮影画像表示部７６は、オペレータ端末１２と接続された不図示のカメラにより撮像された動画（映像）または静止画（以下「オペレータ画像」とする。）を取得し、ビデオチャットウィンドウの撮影画像表示領域に表示させる。さらに、オペレータ端末１２と接続された不図示のマイクにより取得された音声をスピーカから出力してもよい。チャット表示部７８は、オペレータおよび顧客が入力装置に入力した情報を取得し、ビデオチャットウィンドウのチャット表示領域に表示させる。例えば、オペレータと顧客との対話の中で入力された文字列であり、オペレータと顧客の双方で共有される文章（以下「チャット文章」と呼ぶ。）を表示させる。
【００４７】
オペレータ端末１２は、カメラが撮像したオペレータ画像と、オペレータが入力したチャット文章を、公知の方法によりビデオチャットサーバ１６を介してオペレータ端末１２へ送信する。これらとともに音声データを送信してもよい。また、オペレータ端末１２は、顧客端末１４において顧客が入力したチャット文章を、公知の方法によりビデオチャットサーバ１６を介して取得し、チャット表示部７８が画面表示させる。なお、顧客端末１４側のカメラで撮像した画像や、顧客端末１４側のマイクで取得した音声をさらに取得してもよく、すなわち、画像や音声も双方向で送受されてもよいことはもちろんである。
【００４８】
図５は、図３の顧客端末１４の機能構成を示すブロック図である。顧客端末１４は、インタフェース部８０、ウェブブラウザ部８２、ビデオチャット部８４を備える。インタフェース部８０は、顧客端末１４と顧客（端末の操作者）、また、顧客端末１４と外部装置とのインタフェース機能を提供する。ウェブブラウザ部８２は公知のウェブブラウザの機能を提供する。顧客端末１４のＯＳおよびウェブブラウザは、オペレータ端末１２のＯＳおよびウェブブラウザとは異なる種類であってよい。
【００４９】
ビデオチャット部８４は、ビデオチャットのクライアント機能を提供し、例えば顧客用のビデオチャット画面を表示させる。ビデオチャット部８４は、ウェブブラウザプログラムで予め定められたＡＰＩを適宜コールして、ウェブブラウザ部８２の機能を適宜使用する。ビデオチャット部８４は、その機能を示すＪＡＶＡスクリプトコードが、ビデオチャットサーバ１６から提供される顧客用ビデオチャット画面のウェブページプログラムに記述されることにより実装されてもよい。この場合、ウェブブラウザ部８２が、顧客用ビデオチャット画面のウェブページプログラム内に記述されたＪＡＶＡスクリプトコードを実行することにより、ビデオチャット部８４の各機能が実現されてもよい。
【００５０】
インタフェース部８０は、操作検出部８６、表示制御部８８、通信部９０を含む。操作検出部８６は、キーボードやマウス等の入力装置に対する顧客の操作入力を検出し、入力された操作内容をビデオチャット部８４へ通知する。ビデオチャット部８４は、操作検出部４０を介して、オペレータの操作を受け付ける。
【００５１】
表示制御部８８は、ビデオチャット部８４から出力された画像データを不図示のディスプレイドライバへ出力することにより、ディスプレイの表示内容を制御する。ビデオチャット部８４は、表示制御部８８を介して、各種情報・画像をディスプレイに表示させる。通信部９０は、所定の通信プロトコル（例えばＨＴＴＰ）にしたがって外部装置と通信する。ビデオチャット部８４は、通信部４４を介して、外部装置（例えばビデオチャットサーバ１６）と電子データを送受する。
【００５２】
ビデオチャット部８４は共有画像表示部９２、撮影画像表示部９４、チャット表示部９６を含む。共有画像表示部９２は、オペレータ端末１２の共有画像表示部７０に対応し、オペレータ端末１２から提供された共有ページ全体画像と位置情報を受け付ける。共有画像表示部９２は、ブラウザウィンドウ（以下「ビデオチャットウィンドウ」と呼ぶ。）に表示された顧客用ビデオチャット画面の共有画像表示領域に、共有ページ全体画像のうち位置情報が示す領域の画像を表示させる。具体的には、共有ページ全体画像から、位置情報が示す左上端座標値と右下端座標値により形成される矩形領域のビットマップ画像データを切り出し、その矩形領域のビットマップ画像データを表示させる。これにより、オペレータ端末１２のウェブ共有ウィンドウに表示された共有ページの部分画像と同じ画像を共有画像表示領域に表示させる。
【００５３】
共有画像表示部９２は、共有ページ全体画像と位置情報の組み合わせ、もしくは位置情報単体を受け付けるたびに、共有画像表示領域における画像を更新する。すなわち、オペレータ端末１２のウェブ共有ウィンドウに対するオペレータ操作に応じて、オペレータ端末１２の表示領域検出部５６が位置情報を新たに取得し、オペレータ端末１２のページ画像取得部６６が共有ページ全体画像を新たに取得するたびに、新たに取得されたそれらのデータにしたがって共有画像表示領域の表示内容を更新する。これにより、オペレータ端末１２のウェブ共有ウィンドウにおける表示内容と、顧客端末１４のビデオチャットウィンドウの共有画像表示領域における表示内容の同期を維持する。
【００５４】
また共有画像表示部９２は、オペレータ端末１２から提供された改変情報にしたがって共有画像表示領域の共有ページ画像に対するオペレータの編集・改変内容を反映させる。例えば、共有画像表示部９２は、編集情報が示す種類の画像オブジェクト（各種の線図等）を、編集情報が示す共有画像表示領域の描画位置に設定し、共有画像表示領域に表示させる。これにより、オペレータ端末１２と顧客端末１４それぞれの共有画像表示領域の表示内容を同期させる。
【００５５】
撮影画像表示部９４は、オペレータ端末１２のカメラで撮像され、ビデオチャットサーバ１６を介して提供されたオペレータ画像を取得し、ビデオチャットウィンドウの撮影画像表示領域に表示させる。音声データも提供される場合はその音声をスピーカから出力させる。チャット表示部９６は、オペレータおよび顧客が入力装置に入力した情報、例えばチャット文章を取得し、ビデオチャットウィンドウのチャット表示領域に表示させる。顧客端末１４は、顧客が入力したチャット文章を、公知の方法によりビデオチャットサーバ１６を介してオペレータ端末１２へ送信する。既述したように、顧客端末１４は、カメラやマイクで取得した画像や音声をオペレータ端末１２へさらに送信してもよい。
【００５６】
以上の構成によるビデオチャットシステム１０の動作を、実施の形態のビデオチャットのユーザインタフェースを示す図６を参照しつつ説明する。
【００５７】
商品説明を希望する顧客は、顧客端末１４を使用してメーカのウェブサイトにアクセスし、ウェブページ上でオペレータとのビデオチャットの開始を選択する。ビデオチャットサーバ１６は、顧客用のビデオチャット画面のウェブページを顧客端末１４へ送信する。顧客端末１４は、そのウェブページを顧客側ディスプレイ画面１２０のブラウザウィンドウ（ビデオチャットウィンドウ１２２）に表示させる。
【００５８】
一方、企業のオペレータは顧客からのビデオチャットの開始要求を受け付けると、ビデオチャットの開始指示をオペレータ端末１２へ入力する。オペレータ端末１２は、ビデオチャットサーバ１６にアクセスし、ビデオチャットサーバ１６は、オペレータ用のビデオチャット画面のウェブページをオペレータ端末１２へ送信する。オペレータ端末１２は、そのウェブページをオペレータ側ディスプレイ画面１００のブラウザウィンドウ（ビデオチャットウィンドウ１０４）に表示させる。
【００５９】
以降、ビデオチャットが開始され、オペレータ端末１２の撮影画像表示部７６は、オペレータ端末１２側のカメラで撮像されたオペレータ画像をビデオチャットウィンドウ１０４の撮影画像表示領域１１４に表示させる。同様に、顧客端末１４の撮影画像表示部９４は、オペレータ端末１２から提供されたオペレータ画像をビデオチャットウィンドウ１２２の撮影画像表示領域１２６に表示させる。また、オペレータ端末１２のチャット表示部７８は、オペレータおよび顧客が入力したチャット文章をビデオチャットウィンドウ１０４のチャット表示領域１１６に表示させる。同様に、顧客端末１４のチャット表示部９６は、オペレータおよび顧客が入力したチャット文章をビデオチャットウィンドウ１２２のチャット表示領域１２８に表示させる。ビデオチャットサーバ１６は、ビデオチャットにおいてオペレータ端末１２〜顧客端末１４間でやり取りされる映像データ、静止画データ、音声データ、テキストデータ等を中継する。
【００６０】
オペレータは、ビデオチャット中に顧客とウェブページを共有する必要が生じると、オペレータ端末１２に予めインストールされたウェブ共有アプリケーションを起動する。オペレータ端末１２のページ表示部５４は、ウェブ共有ウィンドウ１０２を表示させ、オペレータは、共有ページのＵＲＬを指定する操作をウェブ共有ウィンドウ１０２に対して入力する。ここでは共有ページ１０６をオペレータと顧客が共有すべきシチュエーションであることとする。
【００６１】
ページ読込部５２は、ウェブ共有ウィンドウ１０２においてオペレータが指定したウェブページを共有ページとしてウェブサーバ２０からの読み込み処理を開始する。このとき、ページ読込部６２も同じ共有ページの読み込み処理を開始する。ページ表示部５４は、ページ読込部５２により読み込まれた共有ページのデータをレンダリングし、レンダリング結果の画像をウェブ共有ウィンドウ１０２に表示させる。ページ表示部５４は、ＪＡＶＡスクリプトエラーが発生しても、そのエラーを無視して共有ページのレンダリング処理・表示処理を継続する。
【００６２】
ページ表示部５４は、ページ読込部５２による共有ページ（共有ページのデータとともに読み込まれる画像データ等を含む）の読み込みが完了することを待たずに、レンダリング結果の共有ページの画像をウェブ共有ウィンドウ１０２に順次表示させる。またページ表示部５４は、ページ読込部５２による共有ページの読み込みが完了することを待たずに、ウェブ共有ウィンドウ１０２に表示させた共有ページに対するオペレータの操作、例えば他ページへの遷移指示や、同一ページ内でのアンカーによる移動操作、スクロールバー操作等を受け付けて、共有ページの表示を更新する。
【００６３】
この例では共有ページ１０６のサイズが大きいため、ウェブ共有ウィンドウ１０２には共有ページ１０６の一部のコンテンツが表示される。初期状態ではページの左上端を起点とする所定サイズの矩形領域が表示される。オペレータは、顧客に閲覧させたいコンテンツの領域がウェブ共有ウィンドウ１０２に表示されるようスクロールバー１０８を操作する。ページ表示部５４は、スクロールバー１０８に対する操作に応じて、オペレータが所望するコンテンツの領域、すなわち共有ページ１０６の部分画像をウェブ共有ウィンドウ１０２に表示させる。
【００６４】
ページ読込部６２による共有ページの読み込みが完了すると、ページ読込部６２（ページ読込部６２がコールするウェブブラウザ部３２）は、予め定められた読み込み完了イベントを発生させる。イベント検出部６４は、読み込み完了イベントの発生を検出すると、その旨をページ画像取得部６６および表示領域検出部５６へ通知する。ページ画像取得部６６は、読み込み完了イベントの発生を契機として共有ページ全体画像を取得する。すなわち、図６の共有ページ１０６全体のビットマップ画像を取得する。
【００６５】
並行して表示領域検出部５６は、共有ページの全体画像のうちウェブ共有ウィンドウ１０２で表示中の領域について、当該領域を特定可能な位置情報を取得する。ウェブ共有部３４（表示領域通知部５８、ページ画像提供部６８）は、共有ページ全体画像と位置情報の組み合わせをビデオチャット部３６へ送信する。また、共有ページ全体画像と位置情報の組み合わせをビデオチャットサーバ１６を介して顧客端末１４へ送信する。
【００６６】
オペレータ端末１２の共有画像表示部７０は、ウェブ共有部３４から提供された共有ページ全体画像と位置情報にもとづいて、共有ページ１０６の部分画像をビデオチャットウィンドウ１０４の共有画像表示領域１１０に表示させる。同様に顧客端末１４の共有画像表示部９２は、オペレータ端末１２のウェブ共有部３４から提供された共有ページ全体画像と位置情報にもとづいて、共有ページ１０６の部分画像をビデオチャットウィンドウ１２２の共有画像表示領域１２４に表示させる。これにより、オペレータ端末１２のウェブ共有ウィンドウ１０２とビデオチャットウィンドウ１０４、顧客端末１４のビデオチャットウィンドウ１０４における共有ページの表示内容が整合する。
【００６７】
このように、ビデオチャットシステム１０では、顧客端末１４に共有ページの構造化文書を解析・表示させるのではなく、オペレータ端末１２のウェブ共有部３４が共有ページの構造化文書を解析し、共有ページの画像データを生成する。そして、その画像データを顧客端末１４へ提供し、表示させる。これにより、オペレータ端末１２と顧客端末１４のＯＳやウェブブラウザの種類が異なっても、顧客端末１４は画像データを表示させるだけであるため、オペレータ端末１２における共有ページの表示態様と、顧客端末１４における共有ページの表示態様を整合させることができる。すなわち、顧客端末１４の環境として様々なＯＳやウェブブラウザを許容するビデオチャットサービスを実現できる。
【００６８】
また、オペレータ端末１２のウェブ共有部３４は、共有ページの解析処理等において発生したエラーは無視して、共有ページの全体画像を生成するため、顧客端末１４での共有ページの表示時にエラーが発生することを抑制できる。例えば、オペレータ端末１２と顧客端末１４が個々に共有ページを解析する場合、双方の端末で生じたエラーへの対処方法がオペレータと顧客で異なることがある。この場合、オペレータ端末１２における共有ページの表示態様と、顧客端末１４における共有ページの表示態様が不整合となり、オペレータと顧客間の情報共有が不十分となってしまう。ビデオチャットシステム１０では、共有ページの解析処理等で生じたエラーに、オペレータ端末１２のウェブ共有部３４が一元的に対処するため、双方の端末間で共有ページの表示態様を整合させることができる。
【００６９】
また、ウェブ共有ウィンドウ１０２の表示処理は、共有ページ画像化のための読み込み処理とは独立して実行するため、共有ページの読み込み完了を待たずに、ウェブ共有ウィンドウ１０２に対するオペレータ操作を受け付け、その操作に応じた処理を実行できる。これにより、１つのページの読み込み完了を待たずに、ウェブ共有ウィンドウ１０２で表示させるページを随時切替えることができ、ウェブ共有ウィンドウ１０２に最終的な共有ページを表示させるまでの時間を短縮することができる。すなわち、顧客側ディスプレイ画面１２０に共有ページ画像を表示させるまでの時間を短縮することができる。例えば、ウェブ共有ウィンドウ１０２の表示内容がページＡ→ページＢ→ページＣと遷移し、ページＣが共有ページとなる場合に、ページＡおよびページＢの読み込み完了を待つ必要がなく、ページ遷移による遅延時間を低減できる。
【００７０】
また、イベント検出部６４で読み込み完了イベントを検出した時点で、ページ画像取得部６６が共有ページ全体画像を取得する処理と、表示領域検出部５６が位置情報を取得する処理を並行実行する。これにより、共有ページの読み込みが完了してから、オペレータがウェブ共有ウィンドウ１０２において共有ページの表示領域を調整する方式に比べて遅延時間を低減できる。すなわち、顧客側ディスプレイ画面１２０に共有ページ画像を表示させるまでの時間を短縮することができる。
【００７１】
動作の説明を再開する。ウェブ共有ウィンドウ１０２で表示対象とする共有ページそのもの（共有ページのＵＲＬ）が変更されると、新たな共有ページの全体画像と位置情報をビデオチャット部３６および顧客端末１４へ提供する。ウェブ共有ウィンドウ１０２に表示される共有ページそのものが変更されない操作、すなわち他ページへの遷移が発生しない操作であり、同一ページ内での移動操作やスクロールバー１０８の移動操作を受け付けた場合は、ページ読込部５２およびページ読込部６２はウェブページの新たな取得を抑制する。またページ画像取得部６６は、共有ページ全体画像の新たな取得を抑制し、ページ画像提供部６８は、共有ページ全体画像の新たな送信を抑制する。その一方で、表示領域検出部５６は、新たな位置情報を取得し、表示領域通知部５８は、その新たな位置情報をビデオチャット部３６および顧客端末１４へ提供する。
【００７２】
このように、共有ページ全体画像を最初に一度、ビデオチャットクライアントへ提供した後は、オペレータの操作が共有ページ自体を変更するものでなければ、再度の送信を抑制し、差分の位置情報のみを提供する。例えば、オペレータがウェブ共有ウィンドウ１０２において１つの共有ページをスクロールさせつつ商品説明を行う間は、表示対象となる共有ページの部分画像変更に伴う差分の位置情報のみを顧客端末１４へ提供する。ビデオチャットシステム１０では、共有ページの画像データと、表示領域を示す位置情報を分離したことで、一般的に大きなデータサイズとなる画像データの送信頻度を抑制する。これにより、各装置のシステムリソースや、通信網１８のネットワークリソースの消費量を低減できる。
【００７３】
なお、オペレータ端末１２の共有画像表示部７０と、顧客端末１４の共有画像表示部９２は、位置情報のみが新たに提供された場合、事前に（最近の過去時点に）提供された共有ページ全体画像と、新たに提供された位置情報にもとづいて、共有画像表示領域１１０および共有画像表示領域１２４の表示内容を更新する。これにより、オペレータ端末１２のウェブ共有ウィンドウ１０２とビデオチャットウィンドウ１０４、顧客端末１４のビデオチャットウィンドウ１０４における共有ページの表示内容の整合性を維持できる。
【００７４】
オペレータは、共有画像表示領域１１０に表示された共有ページ画像に対して、適宜改変操作を入力する。オペレータ端末１２の改変受付部７２は、その改変操作を受け付け、共有画像表示部７０は、共有ページ画像に改変内容を反映する。図６では、顧客の注意を喚起するための描画オブジェクト１１２を追加的に描画している。改変内容通知部７４は、改変内容を示す改変情報を顧客端末１４へ送信する。顧客端末１４の共有画像表示部９２は、改変情報が示す改変内容を共有画像表示領域１２４に表示中の共有ページ画像に対して反映する。
【００７５】
このように、オペレータ端末１２にも共有ページ画像を表示させることにより、オペレータは共有ページ画像の改変・編集が可能になる。また、オペレータによる改変内容は顧客端末１４における共有ページ画像に反映するため、共有画像に対する改変内容も共有でき、オペレータと顧客の一層円滑な意思疎通を実現できる。
【００７６】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００７７】
上記実施の形態では、オペレータ端末１２と顧客端末１４間で送受されるビデオチャット関連データをビデオチャットサーバ１６が中継することとした。変形例として、オペレータ端末１２と顧客端末１４は、Ｐ２Ｐ通信等の公知技術にもとづいて、ビデオチャット関連データを直接送受してもよい。
【００７８】
上述した実施の形態および変形例の任意の組み合わせもまた本発明の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施の形態および変形例それぞれの効果をあわせもつ。また、請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。
【符号の説明】
【００７９】
１０  ビデオチャットシステム、  １２  オペレータ端末、  １４  顧客端末、  １６  ビデオチャットサーバ、  ２０  ウェブサーバ、  ５４  ページ表示部、  ５６  表示領域検出部、  ５８  表示領域通知部、  ６６  ページ画像取得部、  ６８  ページ画像提供部、  ７０  共有画像表示部、  ７４  改変内容通知部、  ９２  共有画像表示部。
【図１】
2015097069.tif 000003
【図２】
2015097069.tif 000004
【図３】
2015097069.tif 000005
【図４】
2015097069.tif 000006
【図５】
2015097069.tif 000007
【図６】
2015097069.tif 000008