(第1の実施形態)
図1は、チャットシステム1のシステム構成を表すシステム構成図である。チャットシステム1は、ネットワーク300に設けられる。チャットシステム1は、チャットサーバ100及び端末装置200を備える。チャットサーバ100及び端末装置200は、ネットワーク300を介して互いに通信可能に接続される。チャットシステム1のチャットサーバ100は、1つ以上の端末装置200と通信可能に接続される。ネットワーク300は、どのようなネットワークで構築されてもよい。例えば、ネットワーク300は、インターネットで構成されてもよい。チャットサーバ100は、複数台のサーバで構成されてもよい。チャットシステム1は、端末装置200のユーザから寄せられたサービスに関する問合せ対応を行う。チャットシステム1は、スタッフによる問合せ対応の最中に、端末装置200のユーザが持つ怒りの感情を抑制する。スタッフは、チャットサーバ100を運用する者であってもよいし、端末装置200のユーザにサービスを提供する者であってもよい。
図2は、チャットサーバ100の機能構成を表す機能ブロック図である。チャットサーバ100は、サーバ又は産業用コンピュータ等の情報処理装置を用いて構成される。チャットサーバ100は、バスで接続されたプロセッサやメモリや補助記憶装置などを備える。チャットサーバ100は、端末装置200からの要求に応じて、端末装置200と通信を行う。チャットサーバ100は、チャットプログラムを実行することで、通信部101、入力部102、表示部103、感情記憶部104、応答文記憶部105及び制御部106を備える装置として機能する。
通信部101は、ネットワークインタフェースである。通信部101はネットワーク300を介して端末装置200と通信する。通信部101は、例えば無線LAN(Local Area Network)、有線LAN又はLTE(Long Term Evolution)(登録商標)等の通信方式で通信してもよい。
入力部102は、タッチパネル、マウス及びキーボード等の入力装置を用いて構成される。入力部102は、入力装置をチャットサーバ100に接続するためのインタフェースであってもよい。この場合、入力部102は、入力装置において入力された入力信号から入力データ(例えば、チャットサーバ100に対する指示を示す指示情報)を生成し、チャットサーバ100に入力する。
表示部103は、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ等の出力装置である。表示部103は、出力装置をチャットサーバ100に接続するためのインタフェースであってもよい。この場合、表示部103は、映像データから映像信号を生成し自身に接続されている映像出力装置に映像信号を出力する。
感情記憶部104は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。感情記憶部104は、端末装置200のユーザがどの程度の怒りを表明しているかを示す感情状態を記憶する。感情状態は、端末装置200のユーザの持つ感情を複数の状態のいずれかで示す情報である。感情状態は、例えば、“怒り・無”、“怒り・中”、“怒り・大”又は“同調”の4種類で表される。“怒り・無”は、ユーザは怒りを表明していない、又は、ユーザは怒りを表明したことがあるがすでに怒りを有していない状態を表す。“怒り・中”は、怒りの強さとして1段階目の怒りを表明している状態を表す。“怒り・大”は、怒りの強さとして2段階目の怒りを表明している状態を表す。“同調”は、2段階目の怒りに到達した次に遷移するの状態を表す。なお、感情状態の段階数は4種類に限定されない。例えば、感情状態は、“怒り・無”、“怒り・中”、“怒り・大”及び“同調”の4種類に加えて、“怒り・小”を加えた5種類であってもよいし、“怒り・無”、“怒り・有”及び“同調”の3種類であってもよい。感情状態は何種類であってもよい。
応答文記憶部105は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。応答文記憶部105は、応答文テーブルを記憶する。応答文テーブルは、チャットサーバ100が端末装置200に送信する応答文に関する情報を保持する。応答文は、チャットサーバ100が端末装置200に対して送信する文字列である。
図4は、第1の実施形態の応答文テーブルの一具体例を示す図である。応答文テーブルは、応答文レコードを有する。応答文レコードは、感情状態と感情状態に対応付けられた応答文との各値を有する。第1の実施形態の応答文レコードは、例えば、感情状態が“怒り・中”である場合には、ユーザの怒りに同調する応答文が対応付けられて記録されてもよい。応答文レコードは、例えば、感情状態が“怒り・大”である場合には、ユーザのより強い怒りに同調する応答文が対応付けられて記録されてもよい。応答文レコードは、例えば、感情状態が“同調”である場合には、スタッフに対して同情する応答文が対応付けられて記録されてもよい。応答文は、感情記憶部104に記憶される感情状態に基づいて決定される。1つの感情状態に対して複数の応答文が保持されていてもよいし、1つの感情状態に対して1つの応答文が保持されていてもよい。
図4に示される例では、応答文テーブルの最上段の応答文レコードは、感情状態の値が“怒り・中”、応答文の値が“担当者様、お客様がお待ちですよ。”、…、“担当者様、早くしてください。”である。従って、応答文テーブルの最上段の応答文レコードによると、チャットサーバ100は、感情記憶部104に記憶される感情状態が“怒り・中”である場合、感情状態が“怒り・中”である応答文レコードに保持される応答文のうち、いずれか1つを端末装置200に送信する。なお、図4に示される応答文の値は一具体例に過ぎない。そのため、図4とは異なる応答文の値が保持されていてもよい。例えば、応答文レコードは、応答文の値として、“他に方法はないか”、“やり方に誤りはないのか”又は“そんなに難しいとは思えない”等の値を保持してもよい。応答文の値は、予め定められた文字列であればどのような文字列であってもよい。
図2に戻って、チャットサーバ100の説明を続ける。制御部106は、チャットサーバ100の各部の動作を制御する。制御部106は、例えばプロセッサ及びRAM(Random Access Memory)を備えた装置により実行される。制御部106は、チャットプログラムを実行することによって、応答部107、感情決定部108、感情取得部109及び時間計測部110として機能する。
応答部107は、端末装置200とチャットを行う。具体的には、応答部107は、端末装置200からチャット開始の要求を受け付ける。応答部107は、チャット開始の要求を受け付けると、要求元の端末装置200に対して所定の文字列を送信する。所定の文字列は、ウェルカムメッセージ等の予め定められた定型文字列である。所定の文字列は、応答文記憶部105に記憶されてもよいし、応答部107に記憶されてもよい。応答部107は、チャット開始の要求を受け付けると、表示部103にチャット画面を表示させる。
応答部107は、文字列を送信する場合に、位置情報を合わせて送信する。位置情報は、応答部107が入力部102を介することなく送信された文字列をユーザ側又はサーバ側のどちら側に表示させるかを示す表示位置に関する情報である。ユーザ側とは、端末装置200のユーザによって送信された文字列が表示される態様で文字列が表示されることを表す位置情報である。サーバ側とは、チャットサーバ100によって送信された文字列が表示される態様で文字列が表示されることを表す位置情報である。位置情報は、例えば、1又は0等の2値で示されてもよい。位置情報が2値で示される場合、ユーザ側の場合は1、サーバ側の場合は0で示されてもよい。位置情報の初期値はサーバ側であってもよい。
応答部107は、所定の条件を満たすまで、端末装置200から受け付けた文字列に応じて、自律的に所定の応答文を端末装置200に送信する。所定の条件は、例えば、端末装置200から、後述の怒り状態を示す情報を受信した場合であってもよいし、応答部107では応答できない文字列を受信した場合であってもよいし、端末装置200から所定回数の文字列を受信した場合であってもよい。応答できない文字列とは、応答部107が、端末装置200に送信する応答文を決定できなかった文字列である。所定回数とは、例えば5回であってもよいし、10回であってもよく、何回であってもよい。
応答部107は、所定の条件を満たした場合、スタッフによって入力部102を介して入力された文字列を、端末装置200に送信可能とする。応答部107は、所定の条件を満たした場合、感情決定部108又は時間計測部110に対して、入力部102を介して入力が開始された旨を出力する。応答部107は、所定の条件を満たした場合、位置情報をユーザ側とする。
応答部107は、感情取得部109から感情状態を受付ける。応答部107は、感情情報を受付けると、応答文記憶部105から応答文を取得する。応答部107は、応答文テーブルに保持される応答文レコードのうち、受け付けた感情状態が一致する応答文レコードを取得する。応答部107は、取得した応答文レコードから応答文を1つ取得する。応答部107は、取得した応答文を端末装置200へ送信する。なお、応答部107は、応答文レコードに応答文が複数保持されている場合、ランダムに応答文を選択してもよい。
感情決定部108は、端末装置200のユーザから受け付けた感情情報に基づいて、感情状態を決定する。感情情報は、チャットサーバ100によって受信された端末装置200のユーザの感情を示す。感情情報は、例えば、端末装置200のユーザが、怒り状態にあるか、冷静状態にあるかを示す。感情情報は、例えば、1又は0等の2値で示されてもよい。感情情報が2値で示される場合、怒り状態の場合は1、冷静状態の場合は0で示されてもよい。感情決定部108は、応答部107から入力部102を介して入力が開始された旨を受け付けると、感情情報の決定を開始してもよい。
感情取得部109は、所定のタイミングで感情記憶部104から感情状態を取得する。所定のタイミングとは、例えば、時間計測部110から時間経過の通知を示す信号を受け付けた場合であってもよいし、端末装置200のユーザから文字列を受信した後であってもよい。感情取得部109は、取得した感情状態が所定の条件を満たす場合、感情状態を応答部107に出力する。所定の条件とは、応答部107が端末装置200に対して応答文の送信が必要となる条件であればどのような条件であってもよい。所定の条件とは、例えば、感情状態が、“怒り・中”、“怒り・大”又は“同調”であることであってもよい。
時間計測部110は、応答部107が感情状態に基づいて自律的に端末装置200に対して応答文を送信する間隔となる時間を計測する。時間計測部110は、応答部107から入力部102を介して入力が開始された旨を受け付けると、所定の時間の計測を開始する。時間計測部110は、計測を開始して所定の時間が経過した場合、感情取得部109に対して時間経過の通知を示す信号を出力する。所定の時間とは、5秒であってもよいし、10秒であってもよい。所定の時間は、スタッフによって予め決定されてもよい。時間計測部110は、感情取得部109に時間経過の通知を示す信号を出力すると、再び所定の時間を計測する。
図3は、端末装置200の機能構成を表す機能ブロック図である。端末装置200は、スマートフォン、タブレットコンピュータ又はパーソナルコンピュータ等の情報処理装置を用いて構成される。端末装置200は、バスで接続されたプロセッサやメモリや補助記憶装置などを備える。端末装置200は、チャットサーバ100と通信を行う。端末装置200は、チャットプログラムを実行することで、通信部201、入力部202、表示部203及び制御部204を備える装置として機能する。端末装置200は、チャットサーバ100のチャット相手となる装置である。
通信部201は、ネットワークインタフェースである。通信部201はネットワーク300を介して、チャットサーバ100と通信する。通信部201は、例えば無線LAN、有線LAN又はLTE等の通信方式で通信してもよい。
入力部202は、タッチパネル、マウス及びキーボード等の入力装置を用いて構成される。入力部202は、入力装置を端末装置200に接続するためのインタフェースであってもよい。この場合、入力部202は、入力装置において入力された入力信号から入力データ(例えば、端末装置200に対する指示を示す指示情報)を生成し、端末装置200に入力する。
表示部203は、CRTディスプレイ、液晶ディスプレイ、有機ELディスプレイ等の出力装置である。表示部203は、出力装置を端末装置200に接続するためのインタフェースであってもよい。この場合、表示部203は、映像データから映像信号を生成し自身に接続されている映像出力装置に映像信号を出力する。
制御部204は、端末装置200の各部の動作を制御する。制御部204は、例えばプロセッサ及びRAMを備えた装置により実行される。制御部204は、チャットプログラムを実行することによって、チャット部205及び画面生成部206として機能する。
チャット部205は、入力部202からの入力に応じて、チャットサーバ100に対してチャット開始の要求を送信する。チャット部205は、チャットサーバ100から文字列(例えば、応答文)を受信すると、画面生成部206に出力する。チャット部205は、チャット開始の要求後、入力部202から受け付けた入力に応じて、チャットサーバ100に対して文字列及び感情情報を送信する。チャット部205は、感情情報生成部の一態様である。感情情報生成部は、入力部202から受け付けた入力に応じて感情情報を生成する。
画面生成部206は、入力部202から受け付けた入力情報、チャットサーバ100から受け付けた文字列に基づいて、画面情報を生成する。生成された画面情報は表示部203に出力される。画面生成部206は、入力部202から受け付けた入力に基づいて、画面情報を再生成してもよい。この場合、再生成された画面情報は、表示部203に出力される。
図5は、第1の実施形態の端末装置200の表示部203に表示されるチャット画面の第1の具体例を示す図である。図5に示されるチャット画面では、位置情報はサーバ側を示す情報である。表示部203は、アイコン301、吹出302、領域303、吹出304、領域305、吹出306、領域307、吹出308、領域309、吹出310、領域311、領域312、領域313、ボタン314及びボタン315を含む。アイコン301は、応答部107から送信された応答文のうち、応答部107が入力部102からの入力を受け付けることなく送信した応答文であることを示すアイコンである。
吹出302は、領域303を含む。吹出302は、端末装置200からチャット開始の要求を受け付けた場合に、応答部107から送信される所定の文字列(例えば、ウェルカムメッセージ)を含む。領域303は、チャットサーバ100が吹出302に含まれる応答文を送信した時間を表す。領域303によると、チャットサーバ100は、15:57に、吹出302に含まれる応答文を送信したことがわかる。
吹出304は、領域305を含む。吹出304は、端末装置200からチャットサーバ100に対して送信された文字列を含む。吹出304は、感情情報として怒り状態を示す情報(以下「怒り情報」という。)が同時に送信されている。この場合、吹出304は、怒り情報が送信されていることを示す色で表現される。怒り情報が送信されていることを示す色は、例えば、赤であってもよいし、黄であってもよい。怒り情報が送信されていることを示す色は、冷静状態を示す情報(以下「冷静情報」という。)を示す色と、チャットサーバ100から送信された応答文の吹出の色と異なるならば、どのような色であってもよい。領域305は、端末装置200が吹出304に含まれる質問文を送信した時間を表す。領域305によると、端末装置200は、15:57に吹出304に含まれる質問文を送信したことがわかる。表示部203では、吹出302及び吹出304のように、チャットサーバ100が送信した文字列と、端末装置200が送信した文字列とでは吹出の向きが異なって表示される。
吹出306は、領域307を含む。吹出306は、チャットサーバ100から端末装置200に対して送信された文字列を含む。吹出306は、端末装置200から文字列を受け付けた場合に、文字列の内容を確認する文字列を含む。応答部107は、吹出306に含まれる文字列を送信した場合に、文字列の内容の候補を示すボタンを送信してもよい。この場合、端末装置200のユーザは、送信されたボタンを選択することで、問い合わせたい質問を内容を的確にチャットサーバ100に送信できる。領域307によると、端末装置200は、15:58に吹出306に含まれる文字列を送信したことがわかる。
吹出308は、領域309を含む。吹出308は、端末装置200からチャットサーバ100に対して送信された文字列を含む。吹出308は、感情情報として冷静情報が同時に送信されている。この場合、吹出308は、冷静情報が送信されていることを示す色で表現される。冷静情報が送信されていることを示す色は、例えば、青であってもよいし、白であってもよい。冷静情報が送信されていることを示す色は、怒り情報を示す色と、チャットサーバ100から送信された応答文の吹出の色と異なるならば、どのような色であってもよい。領域309は、端末装置200が吹出308に含まれる文字列を送信した時間を表す。領域309によると、端末装置200は、15:58に吹出308に含まれる質問文を送信したことがわかる。
吹出310は、領域311を含む。吹出310は、端末装置200のユーザからの問合せに回答するために必要な情報を、ユーザから聞き出すための文字列を含む。応答部107は、吹出310に含まれる文字列を送信した場合に、領域312に含まれるボタンを送信する。領域312に含まれるボタンは、問合せに回答するために必要な情報として、ユーザが知っている情報を確認するボタンである。端末装置200のユーザは、送信されたボタンを選択することで、チャットサーバ100に送信できる情報を通知することができる。領域311は、応答部107が吹出310に含まれる文字列を送信した時間を表す。領域311によると、応答部107は、15:59に吹出310に含まれる文字列を送信したことがわかる。
領域312は、チャットサーバ100が端末装置200に送信した操作領域画像を含む。送信された操作領域画像は、端末装置200によって送信された文字列(吹出308に含まれる文字列)に基づいて決定される。領域312によると、操作領域画像は“ユーザID”、“メールアドレス”、“電話番号”及び“全くない”の4つが送信されている。
端末装置200のユーザは、領域312のいずれか1つの操作領域画像を選択してもよい。選択された操作領域画像を示す情報は、チャットサーバ100に送信される。
領域313は、文字列入力領域を示す画像を含む領域である。端末装置200のユーザは、領域313をタッチすることで、文字列が入力部202に入力される。入力された文字列は、領域313に表示される。ボタン314は、入力された文字列と怒り情報とをチャットサーバ100に送信する操作領域画像である。端末装置200のユーザは、ボタン314を選択すると、操作領域画像に応じた指示が入力部202に受付けられる。ボタン314が選択されると、チャット部205は怒り情報を生成する。ボタン314が選択されると、端末装置200は、領域313に入力された文字列と怒り情報とをチャットサーバ100に送信する。ボタン315は、入力された文字列と冷静情報とをチャットサーバ100に送信する操作領域画像である。端末装置200のユーザは、ボタン315を選択すると、操作領域画像に応じた指示が入力部202に受付けられる。ボタン315が選択されると、チャット部205は冷静情報を生成する。ボタン315が選択されると、端末装置200は、領域313に入力された文字列と冷静情報とをチャットサーバ100に送信する。
図6は、第1の実施形態の端末装置200の表示部203に表示されるチャット画面の第2の具体例を示す図である。図6に示されるチャット画面では、位置情報はユーザ側を示す情報である。表示部203は、アイコン316、吹出317、吹出318、吹出319、吹出320、吹出321、吹出322及びアイコン301aを含む。アイコン316は、応答部107から送信された応答文のうち、スタッフによって入力部102を介して入力された応答文であることを示すアイコンである。
吹出317は、チャットサーバ100から端末装置200に送信された文字列を含む。吹出317に含まれる文字列は、スタッフによって入力部102を介して入力された文字列である。吹出318は、端末装置200のユーザによって入力された文字列を含む。吹出318は、端末装置200からチャットサーバ100に対して送信された質問文を含む。吹出318は、感情情報として怒り情報が同時に送信されている。吹出319は、端末装置200からチャットサーバ100に対して送信された質問文を含む。吹出319は、感情情報として怒り情報が同時に送信されている。
吹出320は、チャットサーバ100から端末装置200に送信された文字列を含む。吹出320に含まれる文字列は、スタッフによって入力部102を介して入力された文字列である。吹出321は、端末装置200からチャットサーバ100に対して送信された質問文を含む。吹出321は、感情情報として怒り情報が同時に送信されている。
吹出322は、チャットサーバ100から端末装置200に送信された文字列を含む。吹出322は、応答部107が入力部102を介することなく送信した応答文を含む。応答部107は、所定のタイミングで感情状態を受付けると、感情状態に応じた応答文を応答文記憶部105から取得する。応答部107は、取得した応答文を端末装置200に送信する。アイコン301aは、応答部107から送信された応答文のうち、応答部107が入力部102からの入力を受け付けることなく送信した応答文であることを示すアイコンである。画面生成部206は、端末装置200によって送信された文字列が表示される領域に応答部107が送信した応答文を表示する。例えば、表示部203では、吹出317及び吹出320のように入力部102を介して入力された文字列と、端末装置200が送信した文字列とでは吹出の向きが異なって表示される。また、吹出322のように、チャットサーバ100が入力部102を介することなく送信した文字列は、端末装置200が送信した文字列と同じ向きの吹出が表示される。
図7は、第1の実施形態の感情状態の状態遷移図である。図7の実線は、冷静状態を示す情報が送信されたことを示す。図7の一点鎖線は、怒り状態を示す情報が送信されたことを示す。図7の点線は、スタッフによって入力部102を介して問合せ対応の終了を示す所定の文言が送信されたことを示す。
感情決定部108は、入力部102を介して入力が開始された旨を応答部107から受け付けると、感情状態の決定を開始する。状態401は、初期状態である。初期状態は、感情状態の決定が開始された後、なんらの処理もなされていない状態である。感情決定部108は、状態401の場合に冷静情報を受付けると、状態402へ遷移する。感情決定部108は、状態401の場合に怒り情報を受付けると、状態403へ遷移する。
状態402は、感情状態が“怒り・無”の状態である。“怒り・無”の状態は、感情決定部108によって、ユーザが怒りを感じていないと決定された状態である。“怒り・無”の状態では、応答部107は、自律的に応答文を送信しない。感情決定部108は、状態402の場合に冷静情報を受付けると、状態402へ遷移する。感情決定部108は、状態402の場合に怒り情報を受付けると、状態403へ遷移する。感情決定部108は、状態402の場合に問合せ対応の終了を示す所定の文言を受付けると、状態406へ遷移する。感情取得部109は、状態402の場合に感情状態を取得すると、感情状態を応答部107に出力しなくてもよい。
状態403は、感情状態が“怒り・中”の状態である。“怒り・中”の状態は、感情決定部108によって、ユーザが怒りを感じていると決定された状態である。“怒り・中”の状態では、応答部107は、ユーザの怒りに同調した応答文を送信する。例えば、応答文記憶部105から感情状態が“怒り・中”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態403の場合に冷静情報を受付けると、状態402へ遷移する。感情決定部108は、状態403の場合に怒り情報を受付けると、状態404へ遷移する。感情決定部108は、状態403の場合に問合せ対応の終了を示す所定の文言を受付けると、状態406へ遷移する。感情取得部109は、状態403の場合に感情状態を取得すると、感情状態を応答部107に出力する。
状態404は、感情状態が“怒り・大”の状態である。“怒り・大”の状態は、感情決定部108によって、ユーザが大きな怒りを感じていると決定された状態である。“怒り・大”の状態では、応答部107は、ユーザのより強い怒りに同調した応答文を送信する。例えば、応答文記憶部105から感情状態が“怒り・大”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態404の場合に冷静情報を受付けると、状態405へ遷移する。感情決定部108は、状態404の場合に怒り情報を受付けると、状態405へ遷移する。感情決定部108は、状態404の場合に問合せ対応の終了を示す所定の文言を受付けると、状態406へ遷移する。感情取得部109は、状態404の場合に感情状態を取得すると、感情状態を応答部107に出力する。
状態405は、感情状態が“同調”の状態である。“同調”の状態は、感情決定部108によって、ユーザの怒りが継続しており、怒りの抑制が必要であると決定された状態である。“同調”の状態では、応答部107は、スタッフに対して同情した応答文を送信する。例えば、応答文記憶部105から感情状態が“同調”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態405の場合に冷静情報を受付けると、状態403へ遷移する。感情決定部108は、状態405の場合に怒り情報を受付けると、状態404へ遷移する。感情決定部108は、状態405の場合に問合せ対応の終了を示す所定の文言を受付けると、状態406へ遷移する。感情取得部109は、状態405の場合に感情状態を取得すると、感情状態を応答部107に出力する。
状態406は、終了状態である。終了状態は、問合せ対応の終了を示す所定の文言を受付けた場合に遷移する状態である。感情取得部109は、終了状態に遷移した場合、感情状態を取得する処理を終了する。
図8は、チャットサーバ100が応答文を送信する処理の流れを示すフローチャートである。感情取得部109は、所定のタイミングで感情記憶部104から感情状態を取得する(ステップS101)。所定のタイミングとは、例えば、時間計測部110から時間経過の通知を示す信号を受け付けた場合であってもよいし、端末装置200のユーザから文字列を受け付けた後であってもよい。感情取得部109は、感情状態が“怒り・無”であるか否かを判定する(ステップS102)。感情取得部109は、感情状態が“怒り・無”である場合(ステップS102:YES)、処理を終了する。
感情取得部109は、感情状態が“怒り・無”でない場合(ステップS102:NO)、感情状態を応答部107に出力する。応答部107は、感情状態に基づいて、応答文記憶部105から応答文を取得する(ステップS103)。具体的には、応答部107は、応答文テーブルに保持される応答文レコードのうち、感情状態が一致する応答文レコードに保持される応答文を1つ取得する。応答部107は、取得した応答文を端末装置200に送信する(ステップS104)。
図9は、端末装置200が画面情報を生成する処理の流れを示すフローチャートである。端末装置200は、チャットサーバ100から応答文を受信する(ステップS201)。端末装置200の画面生成部206は、時間を取得する(ステップS202)。時間は、受信した応答文に添付されていてもよいし、端末装置200に内蔵された時計から取得されてもよいし、ネットワーク300を介して外部のサーバから取得されてもよい。
画面生成部206は、ユーザ側の応答文か否かを判定する(ステップS203)。画面生成部206は、応答文に含まれる位置情報に基づいて、ユーザ側の応答文か否かを判定する。位置情報がユーザ側の情報である場合(ステップS203:YES)、画面生成部206は、ユーザ側に表示される場合の吹出画像を生成する(ステップS204)。位置情報がユーザ側の情報ではない場合(ステップS203:NO)、画面生成部206は、サーバ側に表示される場合の吹出画像を生成する(ステップS205)。画面生成部206によって生成される吹出画像には、受信した文字列と時間とが含まれる。画面生成部206は、生成した吹出画像を表示部203に表示する(ステップS206)。
このように構成されたチャットシステム1では、チャットサーバ100の感情決定部108が、端末装置200のユーザから受信した怒り状態又は冷静状態を示す感情情報に応じて、感情状態を決定する。感情状態は、端末装置200のユーザがどの程度の怒りを表明しているかを示す。応答部107は、感情状態が“怒り・中”以上の怒り状態を示す場合、感情状態に応じた応答文を端末装置200のユーザに送信する。例えば、応答部107は、感情状態が“怒り・中”又は“怒り・大”となった場合、ユーザの怒りに同調する応答文を送信する。したがって、ユーザは、ユーザ自身の怒りを客観的に認識できる。ユーザの怒りが継続して感情状態が“同調”となった場合、問合せ対応を行うスタッフに同情する応答文を送信する。したがって、ユーザは、ユーザ自身の怒りが過剰なものであることを認識できる。このように、端末装置200のユーザは、応答部107による応答文を確認することで、自身の感情を客観視することができ、怒りの状態である場合は冷静な状態になることができる。冷静状態になったユーザは、怒りの感情をスタッフに伝えることもなくなるため、スタッフの精神的負荷を軽減することが可能となる。また、問合せ対応も円滑に進行したり、商品の購買意欲の向上に繋げることができる等、コミュニケーションを円滑に行うことができる。また、応答文は、ユーザによって送信された文字列と同じ向きで端末装置200の表示部203に表示される。同じ向きで表示されることで、ユーザは、ユーザ自身の感情をより客観的に認識できる。
(第2の実施形態)
次に、第2の実施形態におけるチャットシステム1について説明する。第2の実施形態におけるチャットシステム1は、チャットサーバ100の代わりにチャットサーバ100aを備える点で第1の実施形態とは異なるが、それ以外の構成は同じである。第2の実施形態におけるチャットシステム1は、商品購入における問合せ対応等に伴うユーザの不安又は疑念等の負の感情を解消する。以下、第1の実施形態と異なる点について説明する。
図10は、第2の実施形態のチャットサーバ100aの機能構成を表す機能ブロック図である。チャットサーバ100aは、感情記憶部104の代わりに感情記憶部104aを備え、制御部106の代わりに制御部106aを備える点で第1の実施形態におけるチャットサーバ100と異なるが、それ以外の構成は同じである。
感情記憶部104aは、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。感情記憶部104aは、端末装置200のユーザがどの程度の不安又は疑念等の負の感情を表明しているかを示す感情状態を記憶する。負の感情とは、チャットの支障となるユーザの感情を表す。第2の実施形態における感情状態は、例えば、“疑い・無”、“疑い・中”、“疑い・大”又は“同調”の4種類で表される。“疑い・無”は、ユーザは負の感情を表明していない、又は、ユーザは負の感情を表明したことがあるがすでに負の感情を有していない状態を表す。“疑い・中”は、負の感情の強さとして1段階目の負の感情を表明している状態を表す。“疑い・大”は、負の感情の強さとして2段階目の負の感情を表明している状態を表す。“同調”は、2段階目の負の感情に到達した次に遷移する状態を表す。なお、感情状態の段階数は4種類に限定されない。例えば、感情状態は、“疑い・無”、“疑い・中”、“疑い・大”及び“同調”の4種類に加えて、“疑い・小”を加えた5種類であってもよいし、“疑い・無”、“疑い・有”及び“同調”の3種類であってもよい。感情状態は何種類であってもよい。
制御部106aは、チャットサーバ100aの各部の動作を制御する。制御部106aは、例えばプロセッサ及びRAMを備えた装置により実行される。制御部106は、チャットプログラムを実行することによって、応答部107a、感情決定部108、感情取得部109及び時間計測部110として機能する。
応答部107aは、端末装置200とチャットを行う。具体的には、応答部107aは、端末装置200からチャット開始の要求を受け付ける。応答部107aは、チャット開始の要求を受け付けると、要求元の端末装置200に対して所定の文字列を送信する。所定の文字列は、ウェルカムメッセージ等の予め定められた定型文字列である。所定の文字列は、応答文記憶部105に記憶されてもよいし、応答部107aに記憶されてもよい。応答部107aは、チャット開始の要求を受け付けると、表示部103にチャット画面を表示させる。応答部107aは、定型文字列と合わせて、ユーザに対する質問を示す文字列と質問に対する回答を示す複数のボタンとを送信する。ユーザに対する質問は、例えば、ユーザへ推奨する商品を決定するための質問文である。応答部107aは、質問文に対するユーザの回答に応じて、追加の質問を示す文字列を含むボタンを送信してもよい。ユーザへ推奨する商品の決定は、公知の意思決定アルゴリズムが用いられてもよい。応答部107aは、文字列を送信する場合に、位置情報を合わせて送信する。
応答部107aは、所定の条件を満たすまで、端末装置200から受け付けた文字列に応じて、自律的に所定の応答文を端末装置200に送信する。所定の条件は、例えば、端末装置200から、後述の疑い状態を示す情報を受信した場合であってもよいし、応答部107aでは応答できない文字列を受信した場合であってもよいし、端末装置200から所定回数の文字列を受信した場合であってもよいし、ユーザへ推奨する商品が決定されたタイミングであってもよい。応答できない文字列とは、応答部107aが、端末装置200に送信する応答文を決定できなかった文字列である。所定回数とは、例えば5回であってもよいし、10回であってもよく、何回であってもよい。
応答部107aは、所定の条件を満たした場合、スタッフによって入力部102を介して入力された文字列を、端末装置200に送信可能とする。応答部107aは、所定の条件を満たした場合、感情決定部108又は時間計測部110に対して、入力部102を介して入力が開始された旨を出力する。応答部107aは、所定の条件を満たした場合、位置情報をユーザ側とする。応答部107aは、所定の条件を満たした場合、所定の定型文字列を送信してもよい。所定の定型文字列は、例えば、スタッフ又はオペレータ等が入力を開始する旨を示す文字列であってもよい。
応答部107aは、感情取得部109から感情状態を受付ける。応答部107aは、感情情報を受付けると、応答文記憶部105から応答文を取得する。応答部107aは、応答文テーブルに保持される応答文レコードのうち、受け付けた感情状態が一致する応答文レコードを取得する。応答部107aは、取得した応答文レコードから応答文を1つ取得する。応答部107aは、取得した応答文を端末装置200へ送信する。なお、応答部107aは、応答文レコードに応答文が複数保持されている場合、ランダムに応答文を選択してもよい。
図11は、第2の実施形態の応答文テーブルの一具体例を示す図である。応答文テーブルは、応答文レコードを有する。第2の実施形態の応答文レコードは、例えば、感情状態が“疑い・中”である場合には、ユーザの不安又は疑念等の負の感情に同調する応答文が対応付けられて記録されてもよい。応答文レコードは、例えば、感情状態が“疑い・大”である場合には、ユーザのより不安又は疑念等の負の感情に同調する応答文が対応付けられて記録されてもよい。応答文レコードは、例えば、感情状態が“同調”である場合には、スタッフに対して同情する応答文が対応付けられて記録されてもよい。応答文は、感情記憶部104aに記憶される感情状態に基づいて決定される。1つの感情状態に対して複数の応答文が保持されていてもよいし、1つの感情状態に対して1つの応答文が保持されていてもよい。
図11に示される例では、応答文テーブルの最上段の応答文レコードは、感情状態の値が“疑い・中”、応答文の値が“それ、本当ですか?”、…、“でも、お高いんでしょう?”である。従って、応答文テーブルの最上段の応答文レコードによると、チャットサーバ100aは、感情記憶部104aに記憶される感情状態が“疑い・中”である場合、感情状態が“疑い・中”である応答文レコードに保持される応答文のうち、いずれか1つを端末装置200に送信する。なお、図11に示される応答文の値は一具体例に過ぎない。そのため、図11とは異なる応答文の値が保持されていてもよい。例えば、応答文レコードは、応答文の値として、“他にないの?”、“それはわかりにくい”又は“コスパがすごく悪い”等の値を保持してもよい。応答文の値は、予め定められた文字列であればどのような文字列であってもよい。
図12は、第2の実施形態の感情状態の状態遷移図である。図12の実線は、冷静状態を示す情報が送信されたことを示す。図12の一点鎖線は、疑い状態を示す情報(以下「疑い情報」という。)が送信されたことを示す。図12の点線は、スタッフによって入力部102を介して対応終了を示す所定の文言が送信されたことを示す。
感情決定部108は、入力部102を介して入力が開始された旨を応答部107aから受け付けると、感情状態の決定を開始する。状態601は、初期状態である。初期状態は、感情状態の決定が開始された後、なんらの処理もなされていない状態である。感情決定部108は、状態601の場合に冷静情報を受付けると、状態602へ遷移する。感情決定部108は、状態601の場合に疑い情報を受付けると、状態603へ遷移する。
状態602は、感情状態が“疑い・無”の状態である。“疑い・無”の状態は、感情決定部108によって、ユーザが負の感情を感じていないと決定された状態である。“疑い・無”の状態では、応答部107aは、自律的に応答文を送信しない。感情決定部108は、状態602の場合に冷静情報を受付けると、状態602へ遷移する。感情決定部108は、状態602の場合に疑い情報を受付けると、状態603へ遷移する。感情決定部108は、状態602の場合に対応の終了を示す所定の文言を受付けると、状態606へ遷移する。感情取得部109は、状態602の場合に感情状態を取得すると、感情状態を応答部107aに出力しなくてもよい。
状態603は、感情状態が“疑い・中”の状態である。“疑い・中”の状態は、感情決定部108によって、ユーザが負の感情を感じていると決定された状態である。“疑い・中”の状態では、応答部107aは、ユーザの負の感情に同調した応答文を送信する。例えば、応答文記憶部105から感情状態が“疑い・中”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態603の場合に冷静情報を受付けると、状態602へ遷移する。感情決定部108は、状態603の場合に疑い情報を受付けると、状態604へ遷移する。感情決定部108は、状態603の場合に対応の終了を示す所定の文言を受付けると、状態606へ遷移する。感情取得部109は、状態603の場合に感情状態を取得すると、感情状態を応答部107aに出力する。
状態604は、感情状態が“疑い・大”の状態である。“疑い・大”の状態は、感情決定部108によって、ユーザが大きな負の感情を感じていると決定された状態である。“疑い・大”の状態では、応答部107aは、ユーザのより強い負の感情に同調した応答文を送信する。例えば、応答文記憶部105から感情状態が“疑い・大”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態604の場合に冷静情報を受付けると、状態605へ遷移する。感情決定部108は、状態604の場合に疑い情報を受付けると、状態605へ遷移する。感情決定部108は、状態604の場合に対応の終了を示す所定の文言を受付けると、状態606へ遷移する。感情取得部109は、状態604の場合に感情状態を取得すると、感情状態を応答部107aに出力する。
状態605は、感情状態が“同調”の状態である。“同調”の状態は、感情決定部108によって、ユーザの負の感情が継続しており、負の感情の抑制が必要であると決定された状態である。“同調”の状態では、応答部107aは、スタッフに対して同情した応答文を送信する。例えば、応答文記憶部105から感情状態が“同調”に対応付けられた応答文を取得し、取得した応答文を端末装置200に送信する。感情決定部108は、状態605の場合に冷静情報を受付けると、状態603へ遷移する。感情決定部108は、状態605の場合に疑い情報を受付けると、状態604へ遷移する。感情決定部108は、状態605の場合に対応の終了を示す所定の文言を受付けると、状態606へ遷移する。感情取得部109は、状態605の場合に感情状態を取得すると、感情状態を応答部107aに出力する。
状態606は、終了状態である。終了状態は、対応の終了を示す所定の文言を受付けた場合に遷移する状態である。感情取得部109は、終了状態に遷移した場合、感情状態を取得する処理を終了する。
図13は、第2の実施形態の端末装置200の表示部203に表示されるチャット画面の第1の具体例を示す図である。表示部203は、アイコン501、吹出502、吹出503、吹出504、吹出505、アイコン506、吹出507、吹出508、ボタン509及びボタン510を含む。アイコン501は、応答部107aから送信された応答文のうち、応答部107aが入力部102からの入力を受け付けることなく送信した応答文であることを示すアイコンである。
吹出502は、端末装置200からチャット開始の要求を受け付けた場合に、応答部107aから送信される所定の文字列(例えば、ウェルカムメッセージ)を含む。なお、応答部107aは、定型文字列と合わせて、ユーザに対する質問を示す文字列(不図示)と質問に対する回答を示す複数のボタン(不図示)とを送信する。端末装置200のユーザは、送信されたボタンを選択することで、質問文に対する回答を的確にチャットサーバ100aに送信できる。第2の実施形態では、ユーザへ推奨する商品を決定するための質問文が送信される。
吹出503は、端末装置200からチャットサーバ100aに対して送信された文字列を含む。吹出503は、質問に対する回答を示す文字列を含む。吹出503は、感情情報として冷静情報が同時に送信されている。表示部203では、吹出502及び吹出503のように、チャットサーバ100aが送信した文字列と、端末装置200が送信した文字列とでは吹出の向きが異なって表示される。
吹出504は、チャットサーバ100aから端末装置200に対して送信された文字列を含む。吹出504は、質問文から得られた回答に基づく応答文を含む。応答文は、応答文記憶部105に記憶されていてもよい。吹出505は、チャットサーバ100aから端末装置200に対して送信された文字列を含む。吹出505は、質問文から得られた回答に基づく応答文を含む。吹出505は、ユーザに対する共感を示す文言と、スタッフが回答に参加する旨を示す文言と、を含む。吹出504及び吹出505に含まれる文字列は、ユーザへ推奨する商品が決定された場合に送信される文字列である。吹出504及び吹出505に含まれる文字列は、応答文記憶部105に記憶されていてもよい。なお、吹出505に含まれる文字列が送信されたタイミングで、位置情報がサーバ側からユーザ側に切り替えられる。
アイコン506は、応答部107aから送信された応答文のうち、スタッフによって入力部102を介して入力された応答文であることを示すアイコンである。吹出507は、チャットサーバ100aから端末装置200に送信された文字列を含む。吹出507に含まれる文字列は、スタッフによって入力部102を介して入力された文字列である。
吹出508は、端末装置200のユーザによって入力された文字列を含む。吹出508は、端末装置200からチャットサーバ100aに対して送信された質問文を含む。吹出508は、感情情報として疑い情報が同時に送信されている。この場合、吹出508は、疑い情報が送信されていることを示す色で表現される。疑い情報が送信されていることを示す色は、例えば、赤であってもよいし、黄であってもよい。疑い情報が送信されていることを示す色は、冷静情報を示す色と、チャットサーバ100aから送信された応答文の吹出の色と異なるならば、どのような色であってもよい。感情決定部108は、受信した疑い情報に基づいて、感情状態を“疑い・中”に決定する。
ボタン509は、入力された文字列と疑い情報とをチャットサーバ100aに送信する操作領域画像である。端末装置200のユーザは、ボタン509を選択すると、操作領域画像に応じた指示が入力部202に受付けられる。ボタン509が選択されると、チャット部205は疑い情報を生成する。ボタン509が選択されると、端末装置200は、文字列入力領域に入力された文字列と疑い情報とをチャットサーバ100aに送信する。ボタン510は、入力された文字列と冷静情報とをチャットサーバ100aに送信する操作領域画像である。端末装置200のユーザは、ボタン510を選択すると、操作領域画像に応じた指示が入力部202に受付けられる。ボタン510が選択されると、チャット部205は冷静情報を生成する。ボタン510が選択されると、端末装置200は、文字列入力領域に入力された文字列と冷静情報とをチャットサーバ100aに送信する。
図14は、第2実施形態の端末装置200の表示部203に表示されるチャット画面の第2の具体例を示す図である。図14は、図13に示されるチャットの続きを表す。表示部203は、アイコン506、吹出511、吹出512、吹出513、吹出514、吹出515、吹出516及びアイコン501aを含む。
吹出511は、チャットサーバ100aから端末装置200に送信された文字列を含む。吹出511に含まれる文字列は、スタッフによって入力部102を介して入力された文字列である。吹出512は、端末装置200からチャットサーバ100aに対して送信された質問文を含む。吹出512に含まれる文字列は、ユーザによって入力部202を介して入力された文字列である。吹出512は、感情情報として疑い情報が同時に送信されている。感情決定部108は、受信した疑い情報に基づいて、感情状態を“疑い・大”に決定する。
吹出513は、チャットサーバ100aから端末装置200に送信された文字列を含む。吹出513は、応答部107aが入力部102を介することなく送信した応答文を含む。応答部107aは、所定のタイミングで感情状態を受付けると、感情状態“疑い・大”に応じた応答文を応答文記憶部105から取得する。応答部107aは、取得した応答文を端末装置200に送信する。アイコン501aは、応答部107aから送信された応答文のうち、応答部107aが入力部102からの入力を受け付けることなく送信した応答文であることを示すアイコンである。
吹出514は、チャットサーバ100aから端末装置200に送信された文字列を含む。吹出514に含まれる文字列は、スタッフによって入力部102を介して入力された文字列である。吹出515は、端末装置200からチャットサーバ100aに対して送信された質問文を含む。吹出515に含まれる文字列は、ユーザによって入力部202を介して入力された文字列である。吹出515は、感情情報として冷静情報が同時に送信されている。感情決定部108は、受信した冷静情報に基づいて、感情状態を“同調”に決定する。
吹出516は、チャットサーバ100aから端末装置200に送信された文字列を含む。吹出516は、応答部107aが入力部102を介することなく送信した応答文を含む。応答部107aは、所定のタイミングで感情状態を受付けると、感情状態“同調”に応じた応答文を応答文記憶部105から取得する。応答部107aは、取得した応答文を端末装置200に送信する。
このように構成されたチャットシステム1では、チャットサーバ100aの感情決定部108が、端末装置200のユーザから受信した疑い状態又は冷静状態を示す感情情報に応じて、感情状態を決定する。感情状態は、端末装置200のユーザがどの程度の負の感情を表明しているかを示す。応答部107aは、感情状態が“疑い・中”以上の疑い状態を示す場合、感情状態に応じた応答文を端末装置200のユーザに送信する。例えば、応答部107aは、感情状態が“疑い・中”又は“疑い・大”となった場合、ユーザの負の感情に同調する応答文を送信する。したがって、ユーザは、ユーザ自身の負の感情を客観的に認識できる。ユーザの負の感情が継続して感情状態が“同調”となった場合、対応を行うスタッフに同情する応答文を送信する。したがって、ユーザは、ユーザ自身の負の感情が過剰なものであることを認識できる。このように、端末装置200のユーザは、応答部107aによる応答文を確認することで、自身の感情を客観視することができ、負の感情の状態である場合は冷静な状態になることができる。冷静状態になったユーザは、負の感情をスタッフに伝えることもなくなるため、スタッフの精神的負荷を軽減することが可能となり、また問合せ対応も円滑に進行したり、商品の購買意欲の向上に繋げることができる。また、応答文は、ユーザによって送信された文字列と同じ向きで端末装置200の表示部203に表示される。同じ向きで表示されることで、ユーザは、ユーザ自身の感情をより客観的に認識できる。
<実施形態の変形例>
チャットシステム1は、怒り以外の感情情報を示すように構成されてもよい。感情情報は、例えば、喜びの感情、悲しみの感情又は楽しみの感情を示す情報で構成されてもよい。この場合、図5のボタン314は、入力された文字列と怒り状態を示す情報とを送信する代わりに入力された文字列と怒り以外の状態(例えば、喜びの感情、悲しみの感情又は楽しみの感情)を示す情報とをチャットサーバ100に送信する。このように構成されたチャットシステム1では、端末装置200のユーザは、様々な感情をスタッフに伝達することができる。したがって、応答部107は、様々な感情に対応付けられた応答文を端末装置200のユーザに送信することで、ユーザの感情を落ち着かせることができる。このように、ユーザの感情を落ち着かせることで、スタッフの精神的負荷を軽減することが可能となり、また問合せ対応も円滑に進行することができる。
ボタン314又はボタン315の態様は、図5に示される態様とは異なる態様で構成されてもよい。態様は、例えば、形状、色、配置等の表示部203に表示されるならばどのような態様であってもよい。ボタン314又はボタン315の形状は、例えば、多角形、雲形、星形、雷型、ハート形又は丸型のようにどのような形状であってもよいし、時間の経過に応じて形状が変化してもよい。ボタン314又はボタン315の色は、例えば、赤色、青色、黄色又は緑色のようにどのような色であってもよいし、複数色で構成されてもよいし、時間の経過に応じて色が変化してもよい。ボタン314又はボタン315の配置は、例えば、ボタン314は画面の左端、ボタン315は画面の右端等のように、どのような場所に配置されてもよい。ボタン314又はボタン315の態様は、感情を絵柄で表現したアイコンで構成されてもよい。
チャットシステム1は、怒り情報を受付けた場合、怒り情報と共に送信された文字列を含む吹出(例えば、図6の吹出318)又は端末装置200が振動するように構成されてもよい。このように構成されたチャットシステム1では、スタッフに対して、端末装置200のユーザの怒り状態をより的確に伝達することができる。
チャットシステム1は、怒り情報と共に送信された文字列を含む吹出(例えば、図5の吹出304)の形状を、チャットサーバ100から送信された応答文の形状とは異なる形状で表示してもよい。チャットシステム1は、例えば、吹出の輪郭を鋸歯状で構成してもよいし、雲形で構成してもよいし、多角形で構成してもよいし、どのような形状で構成してもよい。このように構成されたチャットシステム1では、文字と吹き出しの形状とを通じて、端末装置200のユーザの怒り状態をより的確に伝達することができる。
チャットシステム1は、冷静情報と共に送信された文字列を含む吹出(例えば、図5の吹出308)の形状を、チャットサーバ100から送信された応答文の形状とは異なる形状で表示してもよい。チャットシステム1は、例えば、吹出の輪郭を鋸歯状で構成してもよいし、雲形で構成してもよいし、多角形で構成してもよいし、どのような形状で構成してもよい。このように構成されたチャットシステム1では、文字と吹き出しの形状とを通じて、端末装置200のユーザが冷静な状態であることをより的確に伝達することができる。
チャットシステム1では、応答部107は、所定の条件を満たした場合、位置情報をユーザ側からサーバ側に切り替えるように構成されてもよい。所定の条件とは、例えば、端末装置200のユーザから新しい問合せを受け付けた場合であってもよいし、スタッフによって所定の文字列が入力された場合であってもよい。所定の文字列とは、例えば、“ありがとうございました。”等の問合せ対応終了を意味する文字列であってもよい。所定の文字列は、予め定められた文字列であればどのような文字列であってもよい。
チャット部205は、入力部202から受け付けた文字列に基づいて、感情情報を生成するように構成されてもよい。チャット部205は、例えば、文字列に“!”が含まれる場合、感情情報として怒り情報を生成してもよい。チャット部205は、例えば、文字列に“!”が含まれない場合、感情情報として冷静情報を生成してもよい。
上記の変形例は、第1の実施形態を例として説明したが、第1の実施形態に限定されない。上記の変形例は、第2の実施形態に適用されてもよい。
上述した実施形態におけるチャットサーバ100をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
本発明の一態様は、サーバと端末装置とを備えるチャットシステムであって、前記端末装置は、感情毎に対応付けられた態様で表示される操作領域画像と、前記操作領域画像から入力された感情に対応付けられた感情情報を生成し、前記サーバに送信する感情情報生成部と、を備え、前記サーバは、前記感情情報に応じて、前記感情の有無を示す複数の状態のうち、少なくとも1つの状態を決定する感情決定部と、前記感情を有する状態に決定された場合、前記状態に対応付けられた応答文と前記応答文が前記サーバの操作者によって入力された文字列でないことを示す応答画像とを前記端末装置に送信する応答部と、を備え、前記応答部は、前記サーバの操作者によって入力された文字列を前記端末装置に送信し、前記端末装置は、前記応答文及び前記応答画像と前記感情に対応付けられた画像と前記端末装置のユーザから受け付けた質問を表す文字列と前記サーバの操作者によって入力された文字列とのうち1つ以上を表示する画面情報を生成する画面生成部をさらに備え、前記応答部は、所定の感情を有することを示す感情情報を受信した場合、前記質問を表す文字列が表示される表示位置に前記応答文が表示されることを示す位置情報と前記応答文と前記応答画像とを送信し、所定の感情を有することを示す感情情報を受信していない場合、前記サーバの操作者によって入力された文字列が表示される表示位置に前記応答文が表示されることを示す位置情報と前記応答文と前記応答画像とを送信し、前記画面生成部は、前記質問を表す文字列が表示される領域に前記応答文と前記応答画像とを表示する前記画面情報又は前記サーバの操作者によって入力された文字列が表示される領域に前記応答文と前記応答画像とを表示する前記画面情報を前記位置情報に応じて生成する、チャットシステムである。