(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022122399
(43)【公開日】2022-08-23
(54)【発明の名称】ネットワークシステム、情報処理方法、およびプログラム
(51)【国際特許分類】
H04M 3/523 20060101AFI20220816BHJP
G06F 13/00 20060101ALI20220816BHJP
G06Q 50/10 20120101ALI20220816BHJP
【FI】
H04M3/523
G06F13/00 500H
G06Q50/10
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021019596
(22)【出願日】2021-02-10
(71)【出願人】
【識別番号】519091502
【氏名又は名称】株式会社TECH MONSTER
(74)【代理人】
【識別番号】100148275
【弁理士】
【氏名又は名称】山内 聡
(74)【代理人】
【識別番号】100136319
【弁理士】
【氏名又は名称】北原 宏修
(74)【代理人】
【識別番号】100142745
【弁理士】
【氏名又は名称】伊藤 世子
(74)【代理人】
【識別番号】100143498
【弁理士】
【氏名又は名称】中西 健
(72)【発明者】
【氏名】京保 雄一
【テーマコード(参考)】
5B084
5K201
5L049
【Fターム(参考)】
5B084AA01
5B084AA02
5B084AB06
5B084AB07
5B084AB11
5B084AB30
5B084BA08
5B084BB04
5B084CA07
5B084CF12
5B084DB08
5B084DC02
5B084DC03
5B084DC13
5K201BA13
5K201CA04
5K201CA10
5K201DC06
5K201EC05
5K201ED05
5K201EF04
5K201EF10
5L049CC11
(57)【要約】
【課題】オペレータがユーザに必要な情報をより効率的に伝えることができる技術を提供する。
【解決手段】カメラ290を含むユーザ端末200と、操作部340を含むオペレータ端末300と、を備えるネットワークシステム1が提供される。ユーザ端末は、カメラで撮影中の画像をインターネットを介してオペレータ端末に送信するとともに、カメラで撮影中の画像とオペレータ端末からの動画像とを表示する。オペレータ端末は、操作部に入力される命令に基づいて、カメラで撮影された画像に対する編集中の画像を、インターネットを介して動画像としてユーザ端末に送信する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
カメラを含むユーザ端末と、
操作部を含むオペレータ端末と、を備え、
前記ユーザ端末は、前記カメラで撮影中の画像をインターネットを介して前記オペレータ端末に送信するとともに、前記カメラで撮影中の画像と前記オペレータ端末からの動画像とを表示し、
前記オペレータ端末は、前記操作部に入力される命令に基づいて、前記カメラで撮影された画像に対する編集中の画像を、インターネットを介して前記動画像として前記ユーザ端末に送信する、ネットワークシステム。
【請求項2】
前記オペレータ端末は、前記編集中の画像として、前記カメラで撮影中の画像を切り取った静止画像に対する編集中のストリーミング画像を、前記ユーザ端末に送信する、請求項1に記載のネットワークシステム。
【請求項3】
前記オペレータ端末は、前記編集中の画像として、前記カメラで撮影中の動画像に対する編集中のストリーミング画像を、前記ユーザ端末に送信する、請求項1に記載のネットワークシステム。
【請求項4】
前記ユーザ端末は、前記カメラで撮影中の画像と、前記オペレータ端末からの編集中の画像と、を同時に並べて表示する、請求項1から3のいずれか1項に記載のネットワークシステム。
【請求項5】
前記オペレータ端末は、前記カメラで撮影中の画像と、前記編集中の画像と、を同時に並べて表示する、請求項1から4のいずれか1項に記載のネットワークシステム。
【請求項6】
ユーザ端末が、カメラで撮影中の画像を表示しながら、前記カメラで撮影中の画像をインターネットを介してオペレータ端末に送信するステップと、
前記オペレータ端末が、操作部に入力される命令に基づいて、前記カメラで撮影された画像に対する編集中の動画像を、インターネットを介して前記ユーザ端末に送信するステップと、
前記ユーザ端末が、前記動画像を表示するステップと、を備える情報処理方法。
【請求項7】
オペレータ端末のためのプログラムであって、
ユーザ端末で撮影された動画像を、インターネットを介して受信して表示するステップと、
前記操作部に入力される命令に基づいて、前記ユーザ端末で撮影された画像に対する編集命令を受け付けるステップと、
編集中の動画像を、インターネットを介して前記ユーザ端末に送信するステップと、をプロセッサに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インターネットなどのネットワークを利用したユーザとオペレータのコミュニケーションのためのネットワークシステムの技術に関する。
【背景技術】
【0002】
従前より、インターネットなどのネットワークを利用したユーザとオペレータとのコミュニケーションのための技術や、オペレータがユーザを支援するための技術などが知られている。たとえば、特開2016-183968号公報(特許文献1)には、音声ガイド支援システム及びそのプログラムが開示されている。特許文献1によると、ユーザのガイドを行う場合に、オペレータ端末に、ユーザ端末からのカメラ撮影画像データを表示して、ユーザ向けの音声入力がある場合には、ユーザ用音声データとしてユーザ端末宛にセンタサーバを介して送信すると共に、ユーザ周囲の人向けの音声入力がある場合には、外部用音声データとしてユーザ端末宛にセンタサーバを介して送信し、ユーザ端末が、受信したユーザ用音声データを音声入出力装置に音声出力し、受信した外部用音声データを音声外部出力部から外部へ音声出力する音声ガイド支援システムが提供される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的は、オペレータがユーザに必要な情報をより効率的に伝えることができる技術を提供することにある。
【課題を解決するための手段】
【0005】
本発明の一態様に従うと、カメラを含むユーザ端末と、操作部を含むオペレータ端末と、を備えるネットワークシステムが提供される。ユーザ端末は、カメラで撮影中の画像をインターネットを介してオペレータ端末に送信するとともに、カメラで撮影中の画像とオペレータ端末からの動画像とを表示する。オペレータ端末は、操作部に入力される命令に基づいて、カメラで撮影された画像に対する編集中の画像を、インターネットを介して動画像としてユーザ端末に送信する。
【発明の効果】
【0006】
以上のように、本発明によれば、オペレータがユーザに必要な情報をより効率的に伝えることができるようになる。
【図面の簡単な説明】
【0007】
【
図1】第1の実施の形態にかかるネットワークシステム1の全体構成と動作概要を示すイメージ図である。
【
図2】第1の実施の形態にかかるオペレータ端末300とユーザ端末200の画面例を示すイメージ図である。
【
図3】第1の実施の形態にかかるサーバ100の構成を示すブロック図である。
【
図4】第1の実施の形態にかかるユーザ端末200の構成を示すブロック図である。
【
図5】第1の実施の形態にかかるオペレータ端末300の構成を示すブロック図である。
【
図6】第1の実施の形態にかかるネットワークシステムの情報処理を示す第1のフローチャートである。
【
図7】第3の実施の形態にかかるネットワークシステム1を示すイメージ図である。
【
図8】第4の実施の形態にかかるオペレータ端末300とユーザ端末200の画面例を示すイメージ図である。
【
図9】第4の実施の形態にかかるオペレータ端末300とユーザ端末200の画面例を示すイメージ図である。
【
図10】第5の実施の形態にかかるオペレータ端末300とユーザ端末200の画面例を示すイメージ図である。
【
図11】第6の実施の形態にかかるオペレータ端末300とユーザ端末200の画面例を示すイメージ図である。
【発明を実施するための形態】
【0008】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
<第1の実施の形態>
<ネットワークシステム1の全体構成>
【0009】
まず、
図1を参照して本実施の形態にかかるネットワークシステム1の全体構成について説明する。本実施の形態にかかるネットワークシステム1は、主に、ユーザサポートサービスを提供するためのサーバ100と、当該サービスを利用する質問者としてのユーザが利用するユーザ端末200と、回答者としてのオペレータが利用するオペレータ端末300とを含む。
【0010】
なお、サーバ100は、クラウド上の単一または複数の装置によって実現されるものである。たとえば、サーバ100は、最初にQ&Aの問い合わせを受け付けてチャットボットなどによって対応するWebサイトを運営するサーバや、オペレータの稼働状態やオペレータ端末300の利用状態などを管理するサーバや、ユーザ端末200とオペレータ端末300とを常時接続させるためのサーバなどを含む概念である。
【0011】
ユーザ端末200は、スマートフォンやタブレットやパーソナルコンピュータなどによって実現され、インターネットやキャリア網を介してサーバ100やオペレータ端末300と通信可能である。
【0012】
オペレータ端末300は、パーソナルコンピュータやタブレットやスマートフォンなどによって実現され、インターネットやキャリア網を介してサーバ100やユーザ端末200と通信可能である。
<ネットワークシステム1の動作概要>
【0013】
次に、
図1および
図2を参照して、本実施の形態にかかるネットワークシステム1の動作概要について説明する。以下では、一例として、ユーザが、電気機器の使用方法をオペレータに教えてもらう場合について説明するが、本実施の形態にかかるネットワークシステム1は、他にも、料理の方法を伝える場合や、診察や、スポーツや、観光ガイドなどにも利用することができる。
【0014】
本実施の形態においては、まず、質問者が、ユーザ端末200を利用して、電気機器のホームページなどに貼られている質問のためのバナーやショートメールのURLなどをクリックする。サーバ100は、オペレータとやり取りするためのユーザ側WEBページをユーザ端末200にダウンロードして、登録されているオペレータの中から、現在顧客対応中でないオペレータを探す。サーバ100は、空いているオペレータを見つけると、当該オペレータのオペレータ端末300に、ユーザとやり取りするためのオペレータ側WEBページをダウンロードする。本実施の形態においては、WebRTC(Web Real-Time Communications)の技術を利用して、ユーザ端末200とオペレータ端末300とが、音声や画像をやり取りするものである。
【0015】
図2(A)に示すように、ユーザ端末200は、ダウンロードしたWEBページの指示に従って、カメラを起動して、撮影中の画像をディスプレイの左側の画面231に表示するとともに、撮影している動画像やマイクで取得した音声を常時接続サーバを介してオペレータ端末300に送信する。オペレータ端末300は、ダウンロードしたWEBページの指示に従って、ユーザ端末200で撮影されている画像のストリーミング映像をディスプレイの左側の画面331に表示するとともに、ユーザ端末200に入力された音声をスピーカから出力する。なお、オペレータ端末300のマイクで取得された音声は、ユーザ端末200のスピーカから出力される。
【0016】
この状態において、オペレータが所望のタイミングで所定のボタン333を押すと、オペレータ端末300は、ダウンロードしたWEBページの指示に従って、
図2(B)に示すように、押されたタイミングの画像の静止画像を、ディスプレイの右側の編集用画面332に表示する。オペレータは、当該静止画像に対して編集を加えることができる。たとえば、説明の対象となっているボタンや操作部やその他の部位に印をつけたり、説明のためのイラストやテキストなどを描いたりすることができる。オペレータ端末300は、編集されている右側の画面332の動画像やマイクで取得した音声を常時接続サーバを介してユーザ端末200に送信する。ユーザ端末200は、WEBページの指示に従って、ユーザ端末200で撮影されている動画像をディスプレイの左側の画面231に表示するとともに、オペレータ端末300からの編集中の動画像のストリーミング映像をディスプレイの右側の画面232に表示する。なお、この状態において、ユーザ端末200に入力された音声はオペレータ端末300で出力され、オペレータ端末300に入力された音声はユーザ端末200で出力される。
【0017】
このように、本実施の形態においては、ユーザ端末200のカメラで撮影されている画像をオペレータが確認できるだけでなく、オペレータはユーザやユーザ端末200から見えている景色に対して画像や文字やイラストなどを描くことができる。つまり、オペレータは、ユーザの周囲の状況を的確に認識しやすくなり、ユーザに対する説明も容易になる。また、ユーザは、自分が見ている景色に対して説明が付されたストリーミング画像を確認しながら、オペレータの説明を聞くことができる。その結果、ユーザがオペレータの意図を認識しやすく、オペレータとユーザとの間での話の齟齬を低減することができる。
【0018】
以下、このような機能を実現するためのネットワークシステム1の具体的な構成について詳述する。
<サーバの構成>
【0019】
まず、本実施の形態にかかるネットワークシステム1を構成するサーバ100の構成の一態様について説明する。
図3を参照して、サーバ100は、主たる構成要素として、CPU(Central Processing Unit)110と、メモリ120と、操作部140と、通信インターフェイス160とを含む。
【0020】
CPU110は、メモリ120に記憶されているプログラムを実行することによって、サーバ100の各部を制御する。たとえば、CPU110は、メモリ120に格納されているプログラムを実行し、各種のデータを参照することによって、後述する各種の処理を実行する。
【0021】
メモリ120は、各種のRAM、各種のROMなどによって実現され、サーバ100に内包されているものであってもよいし、サーバ100の各種インターフェイスに着脱可能なものであってもよいし、サーバ100からアクセス可能な他の装置の記録媒体であってもよい。メモリ120は、CPU110によって実行されるプログラムや、CPU110によるプログラムの実行により生成されたデータ、入力されたデータ、その他の本実施の形態にかかるサービスに利用されるデータベースなどを記憶する。
【0022】
たとえば、メモリ120は、オペレータのIDと、オペレータの名前と、オペレータ端末300のIDと、現在の稼働状態などの対応関係を記憶する。
【0023】
操作部140は、サービスの管理者などの命令を受け付けて、当該命令をCPU110に入力する。
【0024】
通信インターフェイス160は、CPU110からのデータを、インターネット、キャリア網、ルータなどを介して、ユーザ端末200や、オペレータ端末300や、その他の機器などに送信する。逆に、通信インターフェイス160は、インターネット、キャリア網、ルータなどを介してそれらの機器からのデータを受信して、CPU110に受け渡したり、メモリ120に格納したりする。
<ユーザ端末200の構成>
【0025】
次に、
図4を参照して、質問者などのユーザが利用するユーザ端末200の構成の一態様について説明する。たとえば本実施の形態にかかるユーザ端末200は、主たる構成要素として、CPU210と、メモリ220と、ディスプレイ230と、操作部240と、通信インターフェイス260と、スピーカ270と、マイク280と、カメラ290とを含む。
【0026】
CPU210は、メモリ220に記憶されているプログラムを実行することによって、ユーザ端末200の各部を制御する。
【0027】
メモリ220は、各種のRAMや、各種のROMなどによって実現される。メモリ220は、各種サービスのためのアプリケーションプログラム、インターネットからダウンロードしたWEBページ、カメラ290で撮影した動画像データや静止画像データ、マイク280で取得した音声データ、各種のサービス専用のアプリケーションプログラム、CPU310によるプログラムの実行により生成されたデータ、サーバ100から受信したデータ、操作部240を介して入力されたデータ、ユーザ端末200自身の情報やユーザを特定するための情報などを記憶する。
【0028】
ディスプレイ230は、CPU210からのデータに基づいて、画像やテキストを表示する。操作部240は、ポインティングデバイスやスイッチなどから構成され、ユーザからの各種の命令をCPU210に入力する。なお、ユーザ端末200は、ディスプレイ230と操作部240とを含むタッチパネル250を有してもよい。
【0029】
通信インターフェイス260は、インターネットやキャリア網やルータなどを介して、サーバ100やオペレータ端末300などの他の装置との間でデータを送受信する。たとえば、CPU210は、WEBブラウザのプログラムやその他のアプリケーションプログラムに従って、通信インターフェイス260を介してサーバ100と、画像データや、音声データや、チャットのためのテキストデータなど、各種の情報をやりとりする。
【0030】
スピーカ270は、CPU210からの信号に基づいて、各種の音声を出力する。CPU210は、オペレータ端末300が取得したオペレータの音声やチャットのテキストを音声出力してもよい。
【0031】
マイク280は、音声を受け付けて、音声データをCPU210に入力する。CPU210は、操作部240に限らず、ユーザからの音声メッセージを受け付けて、当該音声メッセージをサーバ100に送信する。
【0032】
カメラ290は、CPU210からの指示に従って、動画像や静止画像を撮影して、当該画像データをCPU210に入力したり、メモリ220に格納したりする。
<オペレータ端末300の構成>
【0033】
図5を参照して、ネットワークシステム1を構成するオペレータやサービスマンなどが利用するオペレータ端末300の構成の一態様について説明する。たとえばオペレータ端末300は、主たる構成要素として、CPU310と、メモリ320と、ディスプレイ330と、操作部340と、通信インターフェイス360と、スピーカ370と、マイク380とを含む。
【0034】
CPU310は、メモリ320に記憶されているプログラムを実行することによって、オペレータ端末300の各部を制御する。
【0035】
メモリ320は、各種のRAMや、各種のROMなどによって実現される。メモリ320は、各種サービスのためのアプリケーションプログラム、インターネットからダウンロードしたWEBページ、ユーザ端末200からの動画像データ、切り取った静止画像データ、オペレータ端末300での編集内容を示すデータや編集画面自体の変化を示す動画像データ、各種のサービス専用のアプリケーションプログラムや、CPU310によるプログラムの実行により生成されたデータ、サーバ100から受信したデータ、操作部340を介して入力されたデータ、オペレータ端末300自身の情報やオペレータを特定するための情報などを記憶する。
【0036】
ディスプレイ330は、CPU310からのデータに基づいて、画像やテキストを表示する。操作部340は、ポインティングデバイスやスイッチなどから構成され、ユーザからの、画像にイラストやテキストなどを追加する命令や編集を施すための命令などの各種の命令をCPU310に入力する。本実施の形態においては、オペレータ端末300は、ディスプレイ330と操作部340とを含むタッチパネル350を有していることが好ましい。
【0037】
通信インターフェイス360は、インターネットやキャリア網やルータなどを介して、サーバ100やユーザ端末200などの他の装置との間でデータを送受信する。たとえば、CPU310は、WEBブラウザのアプリケーションプログラムや各種サービスのアプリケーションプログラムに従って、通信インターフェイス360を介してサーバ100と、画像データや、音声データや、チャットのためのテキストデータなど、各種の情報をやりとりする。
【0038】
スピーカ370は、CPU310からの信号に基づいて、各種の音声を出力する。CPU210は、ユーザ端末200が取得したユーザの音声やチャットのテキストを音声出力してもよい。
【0039】
マイク380は、音声を受け付けて、音声データをCPU310に入力する。CPU310は、操作部340に限らず、オペレータからの音声メッセージを受け付けて、当該音声メッセージをサーバ100に送信してもよい。
【0040】
カメラ390は、CPU310からの指示に従って、動画像や静止画像を撮影して、当該画像データをCPU310に入力したり、メモリ320に格納したりする。
<ネットワークシステム1の情報処理>
【0041】
次に、
図6を参照して、本実施の形態にかかるネットワークシステム1のサーバ100やユーザ端末200やオペレータ端末300における情報処理について説明する。なお、サーバ100のCPU110は、メモリ120のプログラムに従って、以下の処理を実行する。ユーザ端末200のCPU210は、メモリ220のプログラムに従って、以下の処理を実行する。オペレータ端末300のCPU310は、メモリ320のプログラムに従って、以下の処理を実行する。
【0042】
まず、オペレータ端末300のCPU310は、操作部340を介して、オペレータからの指示に従って、通信インターフェイス360を介してサーバ100に接続する(ステップS102)。
【0043】
サーバ100のCPU110は、オペレータ端末300からの要求に応じて、通信インターフェイス160を介して、ログイン用のWEBページをオペレータ端末300にダウンロードする(ステップS104)。
【0044】
オペレータ端末300のCPU310は、WEBページをディスプレイ330に表示する。CPU310は、操作部340を介して、オペレータのIDやパスワードの入力を受け付けて、通信インターフェイス360を介してサーバ100に認証を要求する(ステップS106)。
【0045】
サーバ100のCPU110は、認証に成功すると、通信インターフェイス160を介して、オペレータ用のピアツーピア通信のためのWEBページをオペレータ端末300にダウンロードする(ステップS108)。
【0046】
オペレータ端末300のCPU310は、サーバ100からのWEBページをディスプレイ330に表示して、ユーザからの質問を待ち受ける(ステップS110)。
【0047】
ユーザ端末200のCPU210は、操作部240を介して、ユーザからの指示に従って、通信インターフェイス260を介してサーバ100に接続する(ステップS112)。たとえば、各種のホームページなどに貼られている質問のためのバナーやショートメールのURLなどをクリックすることによって、サーバ100への接続処理を開始することができる。
【0048】
サーバ100のCPU110は、ユーザ端末200からの要求に応じて、通信インターフェイス160を介して、ユーザサポート用のピアツーピア通信のためのWEBページをユーザ端末200にダウンロードする(ステップS114)。
【0049】
ユーザ端末200のCPU210は、サーバ100からのWEBページをディスプレイ230に表示する。CPU210は、操作部240を介してオペレータとのリアルタイムビデオ通信を開始するための命令を受け付けると、WEBページやリモートWebRTCの指示に従って、カメラ290を起動して、オペレータからの応答を待ち受ける(ステップS116)。
【0050】
サーバ100のCPU110は、通信インターフェイス160を介して、オペレータ端末300にユーザが待機していることを表示させる(ステップS118)。
【0051】
オペレータ端末300のCPU310は、操作部340を介して、オペレータからの開始命令を受け付けて(ステップS120)、通信インターフェイス360を介して、その旨をサーバ100に応答する(ステップS122)。
【0052】
サーバ100のCPU110は、通信インターフェイス160を介して、ユーザ端末200とオペレータ端末300とに、ピアツーピア通信の接続に必要な情報を提供する(ステップS124)。
【0053】
ユーザ端末200とオペレータ端末300とは、上述のサーバ100を介さないピアツーピア通信の接続に必要な情報を交換し合うことによって、ピアツーピア通信を開始して(ステップS126)、以下の状態に移行する。
【0054】
ユーザ端末200のCPU210は、カメラ290による撮影を行いながら、
図2に示すように、撮影中の動画像をディスプレイ230の左側に表示したり、当該動画像やマイク280からの音声を通信インターフェイス360を介してオペレータ端末300に送信したりする(ステップS130)。また、CPU210は、通信インターフェイス260を介して、オペレータ端末300からの編集中の動画像ストリーミングデータや音声データを受信して、編集中の動画像をディスプレイ230の右側に表示したり、スピーカ270からオペレータの音声を出力したりする(ステップS130)。また、CPU210は、オペレータとの通信を終了するためのボタンをディスプレイ230に表示したり、チャット画面235を表示したりする。
【0055】
オペレータ端末300のCPU310は、
図2に示すように、ユーザ端末200で撮影中の動画像をディスプレイ330の左側に表示したり、ユーザ端末200からの音声をスピーカ370から出力したりする(ステップS140)。CPU310は、操作部340からのオペレータによる切り取り命令を受け付けて、動画像から静止画像を取得して、ディスプレイ330の右側の編集用画面332に表示させる。CPU310は、タッチパネル350を介して静止画像に対して画像やテキストなどを上書きしたり編集したりしながら、当該編集されている画面自体の動画像やマイク380で拾った音声を通信インターフェイス360を介してユーザ端末200に送信する。
【0056】
なお、編集中においても、CPU310は、ディスプレイ330の左側に、ユーザ端末200から受信したカメラの撮影画像のストリーミング映像を表示しており、操作部340からのオペレータによる切り取り命令を受け付けて、動画像から静止画像を取得してもよい。すなわち、オペレータは、ディスプレイ330の右側の編集画面の静止画像を自由に更新して、編集作業を仕切り直すことができる。
【0057】
ユーザ端末200とオペレータ端末300とは、画面235,335を利用して、テキストやスタンプなどによるチャットを実行できる(ステップS150)
【0058】
本実施の形態においては、CPU310は、通信インターフェイス360を介して、ユーザ端末200からのカメラ動画像や音声や、オペレータ端末300での編集中の動画像や音声などをサーバ100にアップロードする(ステップS152)。
【0059】
サーバ100のCPU110は、通信インターフェイス160を介して、オペレータ端末300から受信した、ユーザ端末200からのカメラ動画像や音声や、オペレータ端末300での編集中の動画像や音声などをデータベースに蓄積していく(ステップS154)。
【0060】
本実施の形態においては、ユーザ端末200に対するユーザの命令や、オペレータ端末300に対するオペレータの命令や、通信切断などによって(ステップS160)、ユーザ端末200のCPU210は、ピアツーピアによるオペレータ端末300との通信を終了し(ステップS162)、オペレータ端末300のCPU310は、ピアツーピアによるユーザ端末200との通信を終了する(ステップS164)。
<第2の実施の形態>
【0061】
上記の実施の形態においては、サポートセンターとのコールセッション中に、ユーザ端末200において2つのビデオストリームが表示される。たとえば、1つ目のビデオストリームはオーディオがミュートされたユーザ端末200のカメラ290からの撮影画像であり、2つ目はオペレータ端末300からの編集に関するビデオ/オーディオストリームである。なお、オペレータ端末300から登録済みの製品のサポートファイルなどからビデオファイルのURLを送信すると、ユーザ端末200において3つ目のビデオが表示される場合もある。
【0062】
スマートフォンなどのOS(Operating System)の中には、ユーザ端末200が、オペレータ端末300からのビデオファイルを再生しようとすると、リモートWebRTCによるビデオ/オーディオストリームを停止してしまうものもある。つまり、ユーザは、いずれかの音声やビデオしか視聴することができない場合がある。オペレータ端末300からのビデオファイルを再生しつつ、リモートWebRTCのビデオ/オーディオストリームを中断しないようにするためには、新しいビデオファイルの音声をミュートする必要があるが、この場合は、ユーザ端末200では、オペレータ端末300からのビデオの音声を聞くことができないという問題が生じる。
【0063】
そこで、本実施の形態においては、以下のように構成されている。ユーザ端末200のCPU210は、オペレータ端末300からのビデオファイルのURLを受け取ると、WEBページの指示に従って、属性「ミュート」がオンになっている新しいビデオ要素を作成する。そして、ユーザ端末200のCPU210は、操作部240を介してユーザから、オペレータ端末300からのビデオの再生命令を受け付けると、WEBブラウザがリモートによるWebRTCビデオストリームを停止してしまわないように、ミュートされたビデオを再生し始める。そして、すぐに、CPU210は、WEBページの指示に従って、オペレータ端末300からのビデオのミュートを解除して、当該ビデオの音声をスピーカ270から出力し始める。
【0064】
なお、オペレータ端末300からのビデオを一時停止した場合には、CPU210は、WEBページの指示に従って、オペレータ端末300からのビデオのサウンドを再度ミュートにする。ユーザ端末200のCPU210は、オペレータ端末300からのビデオを再度再生する場合には、一旦ミュートされた状態で動画を再生し始めてから、すぐにWEBページの指示に従って、ミュートを解除する。
【0065】
本実施の形態においては、ユーザ端末200では、このような処理を実行することによって、リモートからのWebRTCビデオ/オーディオストリームを継続的に再生し続けながら、並行して、オペレータ端末300からのサポートビデオファイルも再生することができるものである。
<第3の実施の形態>
【0066】
また、ユーザ端末200やオペレータ端末300などのピア間で接続を確立しようとすると、WEBブラウザ間の直接接続が確立できない可能性ある。
【0067】
より詳細には、
図7に示すように、ピアが同じローカルネットワークにない場合、各ピアのパブリックアドレスを検出するために、パブリックにアクセス可能なSTUN(Session Traversal Utilities for NATs)サーバが使用される。STUNサーバを使用すると、クライアントは、NAT(Network Address Translation)によって割り当てられたパブリックIPアドレスとポートに関する情報を取得できる。これによって、相手端末からのデータパケットを受信することができる。
【0068】
しかしながら、パブリックIPアドレスとポートに関する既知の情報があっても、ピア間の直接接続が不可能になる場合がある。たとえば、NATまたはファイアウォールがそのような直接的なトラフィックを許可しないことがある。このような場合、ピア間の接続を確立する方法としては、TURN(Traversal Using Relay around NAT)と呼ばれる公的にアクセス可能な中間サーバを介してデータストリームをルーティングすることが有効である。TURNサーバは、ピア間のデータのリレーポイントとして動作し、あるピアから別のピアにデータストリームを転送する。
【0069】
TURNサーバは、ほとんどの場合ピア間の接続を提供するが、データストリームのリレーに使用するにはリソースを大量に消費する可能性があるため、最初に他のメカニズム(直接接続やSTUNサーバなど)を使用し、それらが失敗した場合に、フォールバックして、TURNサーバを使用することが好ましい。
【0070】
たとえば、ICE(Interactive Connectivity Establishment)方法論を採用するなどして、接続を確立するための最適な方法を見つけることができる。
【0071】
本実施の形態においては、ユーザ端末200からの呼びかけと、オペレータ端末300の応答とに基づいて、まず、サーバ100との間のWebRTC接続の確立を試みる。ユーザ端末200のWEBブラウザはSDPオファーを生成し、それをシグナリング(Websocket)サーバに送信する。シグナリングサーバが、SDPオファーをオペレータ端末300に転送する。オペレータ端末300のWEBブラウザは、ユーザ端末200からのSDPオファーを使用してSDP応答を生成し、それをシグナリングサーバに送信する。シグナリングサーバはそれをユーザ端末200に配信する。その間、接続用のICE候補が収集され、シグナリングサーバを介してユーザ端末200とオペレータ端末300との間で交換される。ユーザ端末200やオペレータ端末300は、直接接続するための最適な候補を見つけて使用する。このようにして、ユーザ端末200とオペレータ端末300とが相互に直接的に常時接続ができると、両者のWEBブラウザの間でデータパケットを直接的に送受信することができる。
【0072】
なお、NATやファイアウォールなどが原因で、直接ピアツーピア接続を確立するために使用できるICE候補がない場合は、ユーザ端末200やオペレータ端末300はTURNサーバから取得したICE候補を介して接続を試みる。TURNサーバを介した接続が確立されると、TURNサーバは、ピア間でデータパケットを中継する仲介サーバとして機能し始める。TURNサーバを介してデータを中継する場合、ユーザ端末200やオペレータ端末300はデータパケットをTURNサーバに送信し、TURNサーバはそれらを別のピアに転送する。データパケットの中継にTURNサーバを使用することで、ピア同士の直接接続が不可能な場合でも、TURNサーバを介してピアを接続することが可能になる。
【0073】
また、TURNサーバによるリレーを必要とする多数の接続を処理するために、STUN/TURNサーバクラスターの前に負荷分散を実装して、クラスター内の複数のサーバに負荷を分散させることができる。負荷分散を実装することにより、システムはスケーラブルになり、接続負荷を複数のTURNサーバのノードに分散することで、必要に応じて接続の増加に対応することができるようになる。
<第4の実施の形態>
【0074】
上記の実施の形態においては、
図2(B)に示すように、オペレータ端末300においては、ディスプレイ330の左側にユーザ端末200のカメラ290の撮影画像のストリーミングが表示され、ディスプレイ330の右側に編集画面が表示されるものであった。しかしながら、表示される位置は特に限定されない。たとえば、
図8に示すように、オペレータ端末300において、ディスプレイ330の右側にユーザ端末200のカメラ290の撮影画像のストリーミングが表示され、ディスプレイ330の左側に編集画面が表示されてもよい。
【0075】
同様に、
図8に示すように、ユーザ端末200において、ディスプレイ230の右側にユーザ端末200のカメラ290の撮影画像が表示され、ディスプレイ230の左側にオペレータ端末300からの編集画面のストリーミングが表示されてもよい。
【0076】
あるいは、
図9に示すように、オペレータ端末300において、ディスプレイ330の上側または下側にユーザ端末200のカメラ290の撮影画像のストリーミングが表示され、ディスプレイ330の下側または上側に編集画面が表示されてもよい。
【0077】
同様に、
図9に示すように、ユーザ端末200において、ディスプレイ230の上側または下側にユーザ端末200のカメラ290の撮影画像が表示され、ディスプレイ230の下側または上側にオペレータ端末300からの編集画面のストリーミングが表示されてもよい。
<第5の実施の形態>
【0078】
あるいは、常時2つの画面が表示されなくてもよい。たとえば、
図10(A)に示すように、ユーザ端末200は、ダウンロードしたWEBページの指示に従って、カメラを起動して、撮影している最中の動画像をディスプレイ230に表示するとともに、撮影している動画像やマイクで取得した音声を常時接続サーバを介してオペレータ端末300に送信する。オペレータ端末300は、ダウンロードしたWEBページの指示に従って、ユーザ端末200で撮影されている最中の動画像をディスプレイ330に表示するとともに、ユーザ端末200に入力された音声をスピーカから出力する。なお、オペレータ端末300のマイクで取得された音声は、ユーザ端末200のスピーカから出力される。
【0079】
この状態において、オペレータが所望のタイミングで所定のボタンを押すと、オペレータ端末300は、ダウンロードしたWEBページの指示に従って、
図10(B)に示すように、押されたタイミングの画像が静止画像として、ディスプレイ330の編集画面に表示する。オペレータは、当該静止画像に対して編集を加えることができる。たとえば、説明の対象となっているボタンや操作部やその他の部位に印をつけたり、説明のためのイラストを描いたりすることができる。オペレータ端末300は、ダウンロードしたWEBページの指示に従って、編集されている最中の右側の画面の動画像やマイクで取得した音声を常時接続サーバを介してユーザ端末200に送信する。ユーザ端末200は、ダウンロードしたWEBページの指示に従って、オペレータ端末300からの編集中の動画像をディスプレイ230に表示する。なお、この状態において、ユーザ端末200に入力された音声はオペレータ端末300で出力され、オペレータ端末300に入力された音声はユーザ端末200で出力される。
【0080】
なお、オペレータの説明がユーザに上手く伝わらない場合は、オペレータ端末300でも、ユーザ端末200でも、カメラに戻るためのボタン334、234を押すことによって、CPU310,210が、WEBページやリモートWebRTCの指示に従って、
図10(A)に示す状態からの処理を実行し直すことが好ましい。
【0081】
このように、本実施の形態においても、オペレータはユーザに見えている景色に対して画像や文字やイラストなどを描くことができる。つまり、オペレータは、ユーザの周囲の状況を的確に認識しやすくなり、ユーザに対する説明も容易になる。また、ユーザは、自分が見ている景色に対して説明が付された画像を確認することができる。その結果、ユーザがオペレータの意図を認識しやすくなり、オペレータとユーザとの間での話の齟齬を低減することができる。
<第6の実施の形態>
【0082】
上記の実施の形態においては、オペレータ端末300において、ユーザ端末200で撮影された動画像を切り取った静止画像に対する編集を行い、当該編集中のストリーミング画像をユーザ端末200で表示するものであった。しかしながら、
図11に示すように、オペレータ端末300において、ユーザ端末200で撮影された動画像に編集を行い、当該編集中のストリーミング画像をユーザ端末200で表示してもよい。
【0083】
より詳細には、本実施の形態においては、
図6のピアツーピア通信の開始(ステップS126)の後、以下のような処理が行われる。
【0084】
ユーザ端末200のCPU210は、カメラ290による撮影を行いながら、
図11に示すように、撮影中の動画像をディスプレイ230の左側に表示したり、当該動画像やマイク280からの音声を通信インターフェイス360を介してオペレータ端末300に送信したりする(ステップS130)。また、CPU210は、通信インターフェイス260を介して、オペレータ端末300からの編集中の動画像ストリーミングデータや音声データを受信して、編集中の動画像をディスプレイ230の右側に表示したり、スピーカ270からオペレータの音声を出力したりする(ステップS130)。また、CPU210は、オペレータとの通信を終了するためのボタンをディスプレイ230に表示したり、チャット画面235を表示したりする。
【0085】
オペレータ端末300のCPU310は、
図11に示すように、ユーザ端末200で撮影中の動画像をディスプレイ330の左側に表示したり、ユーザ端末200からの音声をスピーカ370から出力したりする(ステップS140)。CPU310は、操作部340からのオペレータによる編集開始を受け付けて、ユーザ端末200からの動画像自体を、ディスプレイ330の右側の編集用画面332に表示させる。CPU310は、タッチパネル350を介して静止画像に対して画像やテキストなどを上書きしたり編集したりしながら、当該編集されている画面自体の動画像やマイク380で拾った音声を通信インターフェイス360を介してユーザ端末200に送信する。
【0086】
なお、撮影動画に対する編集としては、キーボードやペンや筆などによる編集に限らず、オペレータ端末300のCPU310は、オペレータ端末300のカメラ390や外付けのカメラ390によって撮影された静止画像や動画像などを、MR(Mixed Reality)技術を利用することによって、ユーザ端末200の撮影動画に合成させることも可能である。この場合は、ユーザ端末200やオペレータ端末300では、ユーザ端末200で撮影中の動画と、ユーザ端末200で撮影中の動画に編集が加わった動画と、が並べて、または切り替わりながら表示される。
【0087】
なお、上記の実施の形態や本実施の形態の処理の方法を、ユーザ端末200やオペレータ端末300において、切り替えられることが好ましい。たとえば、ユーザ端末200のCPU210が、操作部240を介してユーザからの指示を受け付けることによって、第1の実施の形態の表示態様から、第4の実施の形態の表示態様に切り替えてもよい。あるいは、オペレータ端末300のCPU310が、操作部340を介してオペレータからの指示を受け付けることによって、第1の実施の形態の処理方法から、本実施の形態の処理方法に切り替えてもよい
<第7の実施の形態>
【0088】
上記の実施の形態のネットワークシステム1の各装置の役割の一部または全部を他の装置が実行してもよい。たとえば、サーバ100やユーザ端末200やオペレータ端末300の各々の役割の一部または全部を別の装置が担ったり、それらの装置の1つ1つの役割の一部または全部を、複数の装置で分担したりしてもよい。たとえば、サーバ100の役割が、クラウド上の複数の装置で実現されてもよいし、WEBページやWEBブラウザの役割が、ユーザ端末200やオペレータ端末300の別のアプリケーションプログラムで実現されたり、サーバ100によって実現されたりしてもよい。逆に、サーバ100の役割の一部または全部がユーザ端末200やオペレータ端末300によって実現されてもよい。
<まとめ>
【0089】
上記の実施の形態においては、カメラを含むユーザ端末と、操作部を含むオペレータ端末と、を備えるネットワークシステムが提供される。ユーザ端末は、カメラで撮影中の画像をインターネットを介してオペレータ端末に送信するとともに、カメラで撮影中の画像とオペレータ端末からの動画像とを表示する。オペレータ端末は、操作部に入力される命令に基づいて、カメラで撮影された画像に対する編集中の画像を、インターネットを介して動画像としてユーザ端末に送信する。
【0090】
好ましくは、オペレータ端末は、編集中の画像として、カメラで撮影中の画像を切り取った静止画像に対する編集中のストリーミング画像を、ユーザ端末に送信する。
【0091】
好ましくは、オペレータ端末は、編集中の画像として、カメラで撮影中の動画像に対する編集中のストリーミング画像を、ユーザ端末に送信する。
【0092】
好ましくは、ユーザ端末は、カメラで撮影中の画像と、オペレータ端末からの編集中の画像と、を同時に並べて表示する。
【0093】
好ましくは、オペレータ端末は、カメラで撮影中の画像と、編集中の画像に対する編集中の画像と、を同時に並べて表示する。
【0094】
上記の実施の形態においては、ユーザ端末が、カメラで撮影中の画像を表示しながら、カメラで撮影中の画像をインターネットを介してオペレータ端末に送信するステップと、オペレータ端末が、操作部に入力される命令に基づいて、カメラで撮影された画像に対する編集中の動画像を、インターネットを介してユーザ端末に送信するステップと、ユーザ端末が、動画像を表示するステップと、を備える情報処理方法が提供される。
【0095】
上記の実施の形態においては、オペレータ端末のためのプログラムが提供される。プログラムは、ユーザ端末で撮影された動画像を、インターネットを介して受信して表示するステップと、操作部に入力される命令に基づいて、ユーザ端末で撮影された画像に対する編集命令を受け付けるステップと、編集中の動画像を、インターネットを介してユーザ端末に送信するステップと、をプロセッサに実行させる。
【0096】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0097】
1 :ネットワークシステム
100 :サーバ
110 :CPU
120 :メモリ
140 :操作部
160 :通信インターフェイス
200 :ユーザ端末
210 :CPU
220 :メモリ
230 :ディスプレイ
240 :操作部
250 :タッチパネル
260 :通信インターフェイス
270 :スピーカ
280 :マイク
290 :カメラ
300 :オペレータ端末
310 :CPU
320 :メモリ
330 :ディスプレイ
340 :操作部
350 :タッチパネル
360 :通信インターフェイス
370 :スピーカ
380 :マイク
390 :カメラ
390B :外付けカメラ