(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-30
(45)【発行日】2022-06-07
(54)【発明の名称】メッセージ提供装置、プログラム、及び表示制御方法
(51)【国際特許分類】
H04L 51/02 20220101AFI20220531BHJP
G06F 3/12 20060101ALI20220531BHJP
【FI】
H04L51/02
G06F3/12 304
G06F3/12 307
G06F3/12 336
G06F3/12 359
G06F3/12 388
(21)【出願番号】P 2018051875
(22)【出願日】2018-03-20
【審査請求日】2021-02-26
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】特許業務法人YKI国際特許事務所
(72)【発明者】
【氏名】張 ショウセイ
(72)【発明者】
【氏名】宮田 茂郎
(72)【発明者】
【氏名】三觜 裕之
(72)【発明者】
【氏名】三島 悠
(72)【発明者】
【氏名】及川 史織
(72)【発明者】
【氏名】杉本 英明
【審査官】佐々木 洋
(56)【参考文献】
【文献】国際公開第2016/175483(WO,A1)
【文献】米国特許出願公開第2015/0172505(US,A1)
【文献】特開2016-091456(JP,A)
【文献】国際公開第2017/222616(WO,A1)
【文献】特開2013-131196(JP,A)
【文献】特表2019-518292(JP,A)
【文献】米国特許出願公開第2017/0195486(US,A1)
【文献】中国特許出願公開第107756395(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 51/02
G06F 3/12
(57)【特許請求の範囲】
【請求項1】
ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させる入室手段と、
ユーザからのメッセージに応じて前記ソフトウェアロボットアプリケーションにより特定処理を実行する実行手段と、
前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させる退出手段と、
退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させる手段と、
を備えるメッセージサービス提供装置。
【請求項2】
前記退出手段は、退出させる場合に、前記ソフトウェアロボット
アプリケーションを再度、入室させるための情報を前記ユーザに通知する
請求項1に記載のメッセージ提供装置。
【請求項3】
前記退出手段は、退出させた後も、前記ユーザの前記ソフトウェアロボット
アプリケーションに対する利用権限又は動作に関する設定情報を維持する
請求項1に記載のメッセージ提供装置。
【請求項4】
前記退出手段が前記ソフトウェアロボット
アプリケーションを退出させた後に、前記ユーザからのメッセージまたはスタンプを記憶する記憶手段
を備える請求項1に記載のメッセージ提供装置。
【請求項5】
前記入室手段が前記ソフトウェアロボット
アプリケーションを入室させてから退出させるまでの間における前記ユーザからのメッセージまたはスタンプを記憶し、前記退出手段が前記ソフトウェアロボット
アプリケーションを退出させた後は、前記ユーザからの、退出タイミングに対して一定時間以内の相対的に新しいメッセージまたはスタンプを記憶し、一定時間以外の相対的に古いメッセージまたはスタンプを記憶しない記憶手段
を備える請求項1に記載のメッセージ提供装置。
【請求項6】
前記ソフトウェアロボット
アプリケーションは、メッセージまたはスタンプを受け付けて特定処理を実行する第1ソフトウェアロボット
アプリケーションと、前記メッセージまたは前記スタンプを受け付けても前記特定処理を実行しない第2ソフトウェアロボット
アプリケーションを備え、入室状態では前記第1ソフトウェアロボット
アプリケーションが動作し、退出状態では前記第2ソフトウェアロボット
アプリケーションが動作する
請求項1に記載のメッセージ提供装置。
【請求項7】
前記特定処理は、印刷処理である
請求項1~6のいずれかに記載のメッセージ提供装置。
【請求項8】
コンピュータに、
ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させるステップと、
ユーザからのメッセージに応じて前記ソフトウェアロボットアプリケーションにより特定処理を実行するステップと、
前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させるステップと、
退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させるステップと、
を実行させるプログラム。
【請求項9】
ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させるステップと、
前記ユーザからのメッセージまたはスタンプを受け付けるステップと、
受け付けた前記メッセージまたは前記スタンプに応じて特定処理を実行するステップと、
前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させるステップと、
退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させるステップと、
を備える表示制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メッセージ提供装置、プログラム、及び表示制御方法に関する。
【背景技術】
【0002】
特許文献1には、ユーザからの動作指示の結果を報告するメッセージを、そのメッセージの宛て先を明示して通知するメッセージ通知装置が記載されている。動作指示検出部は、メッセージから動作指示を検出するとともに、該メッセージを書き込んだメンバを指示者として特定し、報告メッセージ表示部は、該動作指示に従って動作した結果についてのメッセージを、該指示者を宛て先として明記した状態で家族伝言板に表視させる。
【0003】
チャットやSNS(ソーシャルネットワーキングサービス)等の、ユーザ間でメッセージをやり取りするメッセージサービスでは、このメッセージサービス上で動作する、音声や文字を介した、人間との対話をシミュレーションする目的で設計された(擬人化)ソフトウェアロボットプログラム(以下、これを「チャットボット」という)が提案されている。チャットボットは、ユーザから入力されたメッセージから特定の単語や語句を検出し、それに合う予め用意された応答を出力するように動作する。チャットボットとしては、企業や店鋪などの、広告用または商業用に割り当てられたメッセンジャーサービスアカウントが運用するものもあり、ユーザは自然なメッセージのやり取りを通じてチャットボットと会話を楽しむことができる。また、2人のユーザ間でのメッセージのやり取りだけでなく、3人以上のユーザでグループを形成し、グループ内でのメッセージのやり取りもでき(グループチャット)、複数人で会話を楽しみながら、チャットボットに対して種々のサービスを実行させることができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ある1人のユーザがソフトウェアロボットプログラムとメッセージをやり取りする場合はともかく、複数のユーザとソフトウェアロボットプログラムがグループを形成してメッセージのやり取りを行う場合には、複数のユーザ間のメッセージのやり取りにチャットボットが自動応答し、ユーザの意に沿わずにサービスを提供してしまうのは好ましくない。
【0006】
本発明は、複数のユーザとソフトウェアロボットを含むグループにおいて、ユーザにより特定のサービスの実行指示がなされた後も、複数のユーザ間のメッセージのやり取りにソフトウェアロボットプログラムが自動応答し続けることによる利便性低下を抑制する
ことを目的とする。
【課題を解決するための手段】
【0007】
請求項1に記載の発明は、ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させる入室手段と、ユーザからのメッセージに応じて前記ソフトウェアロボットアプリケーションにより特定処理を実行する実行手段と、前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させる退出手段と、退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させる手段と、を備えるメッセージサービス提供装置である。
【0014】
請求項2に記載の発明は、前記退出手段は、退出させる場合に、前記ソフトウェアロボットアプリケーションを再度、入室させるための情報を前記ユーザに通知する請求項1に記載のメッセージ提供装置である。
【0015】
請求項3に記載の発明は、前記退出手段は、退出させた後も、前記ユーザの前記ソフトウェアロボットアプリケーションに対する利用権限又は動作に関する設定情報を維持する請求項1に記載のメッセージ提供装置である。
【0016】
請求項4に記載の発明は、前記退出手段が前記ソフトウェアロボットアプリケーションを退出させた後に、前記ユーザからのメッセージまたはスタンプを記憶する記憶手段を備える請求項1に記載のメッセージ提供装置である。
【0017】
請求項5に記載の発明は、前記入室手段が前記ソフトウェアロボットアプリケーションを入室させてから退出させるまでの間における前記ユーザからのメッセージまたはスタンプを記憶し、前記退出手段が前記ソフトウェアロボットアプリケーションを退出させた後は、前記ユーザからの、退出タイミングに対して一定時間以内の相対的に新しいメッセージまたはスタンプを記憶し、一定時間以外の相対的に古いメッセージまたはスタンプを記憶しない記憶手段を備える請求項1に記載のメッセージ提供装置である。
【0018】
請求項6に記載の発明は、前記ソフトウェアロボットアプリケーションは、メッセージまたはスタンプを受け付けて特定処理を実行する第1ソフトウェアロボットアプリケーションと、前記メッセージまたは前記スタンプを受け付けても前記特定処理を実行しない第2ソフトウェアロボットアプリケーションを備え、入室状態では前記第1ソフトウェアロボットアプリケーションが動作し、退出状態では前記第2ソフトウェアロボットアプリケーションが動作する請求項1に記載のメッセージ提供装置である。
【0019】
請求項7に記載の発明は、前記特定処理は、印刷処理である請求項1~6のいずれかに記載のメッセージ提供装置である。
【0020】
請求項8に記載の発明は、コンピュータに、ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させるステップと、ユーザからのメッセージに応じて前記ソフトウェアロボットアプリケーションにより特定処理を実行するステップと、前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させるステップと、退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させるステップと、を実行させるプログラムである。
【0021】
請求項9に記載の発明は、ユーザ間でメッセージをやり取りするメッセージサービスに、ユーザとメッセージをやり取りするソフトウェアロボットアプリケーションを入室させるステップと、前記ユーザからのメッセージまたはスタンプを受け付けるステップと、受け付けた前記メッセージまたは前記スタンプに応じて特定処理を実行するステップと、前記特定処理を実行した後に前記ソフトウェアロボットアプリケーションを前記メッセージサービスから退出させる旨を画面に表示させ、一定時間内に前記ユーザからの第1の特定メッセージまたは特定スタンプを受け付けない場合に、退出させた旨を画面に表示させるステップと、退出させた後に、前記ユーザからの、前記第1の特定メッセージまたは前記特定スタンプと異なる第2の特定メッセージまたは特定スタンプを受け付けた場合に、入室させた旨を画面に表示させるステップとを備える表示制御方法である。
【発明の効果】
【0022】
請求項1~9に記載の発明によれば、複数のユーザとソフトウェアロボットを含むグループにおいて、ユーザにより特定処理の実行指示がなされた後も、複数のユーザ間のメッセージのやり取りにソフトウェアロボットプログラムが自動応答し続けることによる利便性の低下が抑制される。
【0028】
請求項2に記載の発明によれば、さらに、退出させる場合に、ソフトウェアロボットアプリケーションを再度、入室させるための情報がユーザに通知される。
【0029】
請求項3に記載の発明によれば、さらに、ユーザのソフトウェアロボットアプリケーションに対する利用権限または動作に関する設定情報が維持される。
【0030】
請求項4に記載の発明によれば、さらに、退出後における、ユーザからのメッセージまたはスタンプが記憶される。
【0031】
請求項5に記載の発明によれば、さらに、ソフトウェアロボットアプリケーションを入室させてから退出させるまでの間におけるユーザからのメッセージまたはスタンプが記憶され、前記ソフトウェアロボットアプリケーションを退出させた後は、ユーザからの、退出タイミングに対して一定時間以内の相対的に新しいメッセージまたはスタンプが記憶され、一定時間以外の相対的に古いメッセージまたはスタンプが記憶されない。
【図面の簡単な説明】
【0032】
【
図6】実施形態1のユーザ端末画面説明図(その1)である。
【
図7】実施形態1のユーザ端末画面説明図(その2)である。
【
図8】実施形態1のユーザ端末画面説明図(その3)である。
【
図9】実施形態2のユーザ端末画面説明図(その1)である。
【
図10】実施形態2のユーザ端末画面説明図(その2)である。
【
図12】実施形態3のユーザ端末画面説明図である。
【
図13】実施形態4のユーザ端末画面説明図である。
【発明を実施するための形態】
【0033】
以下、図面に基づき本発明の実施形態について、チャットボットとして、ユーザからのメッセージに応じて特定処理としてプリントサービスを提供するチャットボットを例にとり説明する。
【0034】
<実施形態1>
図1は、実施形態におけるメッセージサービスシステムの全体構成図を示す。メッセージサービスシステムは、ユーザ端末A(10A)~ユーザ端末C(10C)、チャットサービスサーバ14、ボットサーバA(16A)~ボットサーバB(16B)、及びプリンタA(18A)~プリンタB(18B)を備える。
【0035】
ユーザ端末A(10A)~ユーザ端末C(10C)は、メッセージサービスのユーザが利用する端末であり、スマートフォンやタブレット端末、PC(パーソナルコンピュータ)等の情報端末である。図では、ユーザ端末A(10A)、ユーザ端末B(10B)、ユーザ端末C(10C)の3台を示しているが、その数は任意である。ユーザは、ユーザ端末A(10A)~ユーザ端末C(10C)を操作してクラウド12上のチャットサービスサーバ14にアクセスし、他のユーザやチャットボットとメッセージをやり取りする。以下では、ユーザAがユーザ端末Aを操作し、ユーザBがユーザ端末Bを操作し、ユーザCがユーザ端末Cを操作するものとする。ユーザ端末A(10A)~ユーザ端末C(10C)とチャットサービスサーバ14は、有線あるいは無線の通信ネットワークでデータ送受信可能に接続される。通信ネットワークの一例はインターネット等の公衆回線であるが、専用回線でもよい。
【0036】
チャットサービスサーバ14は、クラウド12上に配置されたクラウドサーバであり、チャットサービスを提供するサーバである。チャットサービスサーバ14は、1又は複数のサーバコンピュータで構成される。チャットサービスサーバ14は、ユーザ端末A~ユーザ端末Cに対するメッセージの送受信処理、及びメッセージ送受信の表示画面表示等、メッセージのやり取りに関する処理全般を実行する。チャットサービスサーバ14は、2人のユーザ間のメッセージのやり取りを処理する他に、3人以上のユーザでグループを形成し、グループ内でのメッセージのやり取りを処理することができる(グループチャット)。さらに、チャットサービスサーバ14は、ボットサーバA(16A)、ボットサーバB(16B)と協働し、ボットサーバ16A,16Bにより提供されるチャットボットに対するメッセージのやり取りを処理する。ユーザとチャットボットとのメッセージのやり取りには、1人のユーザとチャットボットとのメッセージのやり取り、及び複数のユーザとチャットボットとのメッセージのやり取りが含まれる。
【0037】
ボットサーバA(16A)、ボットサーバB(16B)は、本実施形態におけるメッセージ提供装置として機能する。ボットサーバA(16A)、ボットサーバB(16B)は、ユーザとの間でメッセージをやり取りするチャットボットのソフトウェアロボットプログラムがインストールされ、当該プログラムを実行する。これらのボットサーバA(16A)、ボットサーバB(16B)は、企業や店鋪などの、広告用または商業用に割り当てられたメッセンジャーサービスアカウントがそれぞれ運用するものであってもよい。ボットサーバA(16A)及びボットサーバB(16B)は、チャットサービスサーバ14と特定API(Application Programming Interface:アプリケーションプログラミングインタフェース)を介して協働し、ユーザとのメッセージをやり取りし、ユーザからのメッセージに自動応答してメッセージを返信する。特定APIは、チャットサービスサーバ14を利用するためのAPIである。APIの形式は任意であるが、例えばJSON(Javascript Object Notation:ジャバスクリプト オブジェクト ノーテイション)形式のAPIとし、規定のフォーマットのJSONデータをチャットサービスサーバ14の特定URLに対してPOSTやGETで送信し、結果がJSON形式のデータとして返ってくる。
【0038】
ボットサーバA(16A)、ボットサーバB(16B)は、ユーザからのメッセージに動作指示が含まれている場合に、当該動作指示に応じて特定処理としての特定サービス内容を実行する。本実施形態において、ボットサーバA(16A)は、ユーザからのメッセージにプリント指示が含まれている場合に、このプリント指示に応じてプリンタA(18A)あるいはプリンタB(18B)を動作させてプリント処理する「プリントボット」として機能する。他方、ボットサーバ16Bは、ユーザからの動作指示に応じて任意のサービスを提供し得る。図では、ボットサーバA(16A)、ボットサーバB(18B)の2台を示しているが、その数は任意である。また、1台のボットサーバで複数のチャットボットを構成してもよく、複数台のボットサーバで1つのチャットボットを構成してもよい。
【0039】
チャットボット(あるいはプリンタボット)としてのボットサーバAは、予めユーザ毎に登録された、ソフトウェアロボットプログラムの動作に関する設定情報に従ってプリンタAあるいはプリンタBを駆動してプリント処理を実行する。これらの設定情報は、プリンタAあるいはプリンタBを動作させるための動作条件ということもできる。ユーザAはユーザ端末Aを操作してプリンタAを動作させるための設定情報を入力して登録し、ユーザBはユーザ端末Bを操作してプリンタBを動作させるための設定情報を入力して登録する。
【0040】
プリンタA(18A)、プリンタB(18B)は、ボットサーバAからの指令により画像のプリント処理を実行する。
【0041】
図2は、ボットサーバA(16A)の機能ブロック図である。ボットサーバAは、機能ブロックとして、通信部160、メッセージ受付部161、内容解析部162、動作制御部163、応答メッセージ作成部164、ユーザ情報記憶部165、設定情報記憶部166、メッセージ記憶部167、及びAPIゲートウェイ168を備える。
【0042】
通信部160は、チャットサービスサーバ14及びプリンタA、Bと通信する。通信部160は、APIゲートウェイ168を介してチャットサービスサーバ14と通信し、メッセージを交換する。通信部160は、APIゲートウェイ168を介してチャットサービスサーバ14から受信したメッセージ、すなわちユーザ端末A~ユーザ端末Cからのメッセージをメッセージ受付部161に出力する。また、通信部160は、応答メッセージ作成部164で作成された応答メッセージをAPIゲートウェイ168を介してチャットサービスサーバ14に送信(つまりユーザ端末A~ユーザ端末Cに送信)する。さらに、通信部160は、動作制御部163からの指令に従い、プリンタA,プリンタBにプリント指令を出力してプリンタA,Bを駆動する。
【0043】
メッセージ受付部161は、受付手段として機能し、通信部160からのメッセージを受け付け、内容解析部162に出力する。メッセージには、設定情報の登録に関するメッセージが含まれる。メッセージ受付部161は、受け付けたメッセージをメッセージ記憶部167に順次記憶する。
【0044】
内容解析部162は、受け付けたメッセージの内容を解析して動作制御部163に出力する。具体的には、受け付けたメッセージに含まれるユーザ識別子(ユーザID)を認識するとともに、メッセージに含まれるテキスト部分を抽出してその構文解析を実行する。構文解析の方法は任意であり、例えば、入力メッセージを形態素単位に分解した後、名詞や形容詞、動詞、疑問代名詞をキーワードとして抽出する。内容解析部162は、メッセージのテキスト部分に動作指示が含まれている場合に、その動作指示の内容を解析して動作制御部163に出力する。本実施形態における動作指示には、プリンタA、Bに対するプリント指示や、プリンタA,Bの設定情報についての指示が含まれる。
【0045】
動作制御部163は、制御手段として機能し、内容解析部162で得られた解析結果に基づき、プリンタA,Bの動作に関する設定情報を設定情報記憶部166に登録する。また、動作制御部163は、ユーザからのメッセージに応答してプリンタA,Bにプリント指令を出力する。また、動作制御部163は、チャットボットの動作モードを制御する。具体的には、デフォルト状態ではプリントサービスを実行する動作モードとし、プリントサービスを実行後は、プリントサービスを実行しない動作モードに移行させる。
【0046】
応答メッセージ作成部164は、内容解析部162における解析結果に応じて応答メッセージを作成し、通信部160を介してチャットサービスサーバ14に送信する。
【0047】
ユーザ情報記憶部165は、チャットサービスサーバ14を利用するユーザの情報、特に、ボットサーバAで実現されるチャットボットを利用するユーザの情報をユーザ情報テーブルとして記憶する。チャットボットは、チャットサービスサーバ14で実現されるチャットサービス上で特定のアカウントが割り当てられており、このアカウントを指定してユーザが特定操作を行って利用可能あるいは利用権限を有する状態とする(以下、これを「友達登録」という)ことでチャットボットの利用が確定される。ユーザ情報は、例えばユーザIDである。各ユーザの権限についての情報を記憶してもよい。
【0048】
設定情報記憶部166は、ボットサーバAで実現されるチャットボットを利用するユーザ毎の設定情報をテーブルとして記憶する。設定情報の項目は、例えば使用するプリンタの識別情報、カラーモード、用紙サイズ、部数等であるがこれに限定されない。後に説明するように、設定情報は、ボットサーバAが提供するサービスの内容に応じて決定され得る。プリントサービスの場合には、プリントに関する情報であり、検索サービスの場合には、検索条件に関する情報である。設定情報は、サービスの内容を規定する情報であり、複数の項目を含み得る。
【0049】
メッセージ記憶部167は、メッセージ受付部161で受け付けたユーザからのメッセージを履歴として記憶する。
【0050】
図3は、ボットサーバAの構成ブロック図を示す。ボットサーバAは、1又は複数のサーバコンピュータから構成され、1又は複数のCPU16b、ROM16c、RAM16d、通信インタフェース(I/F)16e、入出力I/F16f、及び記憶装置16gを備える。
【0051】
1又は複数のCPU16bは、ROM16cあるいは記憶装置16gに記憶されたボットアプリを読み出し、RAM16dをワーキングメモリとして用いることでチャットボットの機能を実現する。すなわち、ユーザからのメッセージに自動応答し、ユーザからのメッセージに動作指示が含まれている場合に当該動作指示に応じてプリンタA,Bを駆動する。CPU16bは、ボットアプリを実行することで、
図2におけるメッセージ受付部161、内容解析部162、動作制御部163、応答メッセージ作成部164、及びAPIゲートウェイ168を実現する。
【0052】
通信I/F16eは、チャットサービスサーバ14とのメッセージのやり取りを行うとともに、プリンタA,Bに対してプリント指令を出力する。
【0053】
入出力I/F16fは、キーボードマウス等の入力装置、表示装置等の出力装置とデータを送受信する。
【0054】
記憶装置16gは、HDD(Hard Disk Drive:ハードディスクドライブ)やSSD(Solid State Drive:ソリッドステートドライブ)等の不揮発性メモリで構成され、ボットアプリを記憶する他に、ユーザ情報テーブル、設定情報テーブル、及びメッセージ管理テーブルを記憶する。記憶装置16gは、
図2におけるユーザ情報記憶部165、設定情報記憶部166、及びメッセージ記憶部167を実現する。
【0055】
なお、本実施形態では、チャットボットを実現するためのソフトウェアロボットプログラムをCPUにより実行しているが、チャットボットの一部をプログラムの実行による処理ではなく、ハードウェア処理により実現してもよい。ハードウェア処理は、例えばASICやFPGA(フィールドプログラマブルゲートアレイ)などの回路を用いて行ってもよい。
【0056】
次に、ユーザA及びユーザBを例にとり、設定情報の登録について説明する。
【0057】
図4は、ユーザA及びユーザBによる設定登録処理を模式的に示す。
【0058】
ユーザA及びユーザBは、チャットサービス上で特定のアカウントが割り当てられたチャットボットに対して友達登録を行うと、ボットサーバA(16A)は、ユーザA及びユーザBにそれぞれユーザ識別子(ユーザID)を割り当てるとともに、プリンタA及びプリンタBについても一意に特定するためのプリンタ識別子(プリンタID)を割り当てる。ユーザIDは、ユーザA及びユーザBのチャットサービス上のアカウントをそのまま援用してもよい。
【0059】
次に、ユーザAは、チャットサービスサーバ14を経由してボットサーバA(16A)に対してメッセージを送信し、プリンタAまたはプリンタBを特定した上で、設定情報を登録させる。例えば、ユーザAは、プリンタAを特定した上で、設定情報として
カラーモード:カラー
用紙サイズ:A4
部数:1部
を指定するメッセージを送信する。ボットサーバAは、これらのメッセージを受信すると、そのメッセージ内容を解析し、設定情報として解釈するとユーザAとプリンタAとを対応付けた上で上記の設定情報を設定情報テーブルに記録する。
【0060】
ユーザBについても同様であり、チャットサービスサーバ14を経由してボットサーバA(16A)に対してメッセージを送信し、プリンタAまたはプリンタBを特定した上で、設定情報を登録させる。例えば、ユーザBは、プリンタBを特定した上で、設定情報として
カラーモード:白黒
用紙サイズ:レター(letter)
部数:2部
を指定するメッセージを送信する。ボットサーバAは、これらのメッセージを受信すると、そのメッセージ内容を解析し、設定情報として解釈するとユーザBとプリンタBとを対応付けた上で上記の設定情報を設定情報テーブルに記録する。
【0061】
図5は、設定情報記憶部166に記憶される設定情報テーブルの一例を示す。ユーザ毎に、プリンタ、色(カラーモード)、サイズ(用紙サイズ)、コピー数(部数)が対応付けて記録される。より詳しくは、ユーザの識別情報毎に、プリンタの識別情報、色(カラーモード)、サイズ(用紙サイズ)、コピー数(部数)が対応付けて記録される。
【0062】
このように、ユーザAあるいはユーザBは、チャットボットを友達登録することでプリンタ及び設定情報を登録させ、チャットボットに「プリント」等のメッセージを送信することで所望のプリンタ及び所望の印刷条件でプリントサービスを実行させることができる。
【0063】
他方で、ユーザAとユーザBが同一グループを形成してグループチャットを行っている場合において、ユーザAが友達登録しているチャットボットをそのグループチャットに入室(参加)させるときがある。ユーザA及びユーザBは、チャットを楽しみながら適宜、チャットボットにプリント指示を行い、プリントサービスを実行させることができるが、プリントサービスを実行した後もチャットボットがグループチャットに参加していると、ユーザAとユーザBとの間のチャットにチャットボットが自動応答し、ユーザAまたはユーザBの意に沿わずにプリントサービスを実行してしまう場合がある。
【0064】
そこで、本実施形態では、チャットボットがグループチャットに入室している状態でプリントサービスを実行した後は、グループチャットから自動的に退出することで、ユーザAまたはユーザBの意に沿わない不要なプリントサービスの実行を抑制する。チャットボットが退出した場合、メッセージ受付部161はユーザからのメッセージを受け付けることはなく、従ってメッセージ内容を解析してプリントサービスを提供することもない。さらに、メッセージ記憶部167にメッセージを記憶することもない。
【0065】
図6は、ユーザAのみがチャットボットとメッセージをやり取りする場合のユーザ端末Aの表示部に表示される画面例を示す。ユーザ端末Aの画面には、チャットサービスサーバ14によりユーザAを示す表象図形(アイコン)100、及びチャットボットを示すアイコン104が表示される。そして、ユーザA、及びチャットボットのメッセージ200が上から下に時系列で表示される。
【0066】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0067】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0068】
チャットボットは、プリントサービスを実行後も、そのままグループチャットに参加しているものとする。
【0069】
その後、ユーザAは、ユーザ端末Aを操作して、
「あの写真いいね」
とのメッセージを送信する。このメッセージは、グループチャットに参加している全てのユーザ(チャットボットを含む)に送信される。そして、このメッセージを視認したユーザBが、ユーザ端末Bを操作して、
「見たよ、確かにいいね」
とのメッセージを送信する。このメッセージも、グループチャットに参加している全てのユーザ(チャットボットを含む)に送信される。そして、このメッセージを視認したユーザAが、
「そういえば、あのときの写真もプリントしようか」
等とメッセージを送信する。このメッセージも、グループチャットに参加している全てのユーザ(チャットボットを含む)に送信されるため、チャットボットがこのメッセージに含まれる「プリント」とのキーワードを抽出し、
「プリントしますか?」
とのメッセージを作成して自動応答し得る。ユーザAとしては、ユーザBに対するメッセージであり、かつ、プリントする意思がないにもかかわらず、チャットボットが自動応答してプリントサービスを実行しようとするのは好ましくない。
【0070】
そこで、本実施形態では、チャットボットは、プリントサービスを実行した場合には、自動的に退出することで、ユーザからのメッセージに対する不要な応答を抑制する。
【0071】
図7は、本実施形態におけるユーザ端末Aの表示部に表示される画面例を示す。
【0072】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0073】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、プリンタA又はプリンタBからの完了通知を確認した上で、
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0074】
そして、チャットボットは、プリントサービス実行直後にグループチャットから退出する。退出した状態では、メッセージ受付部161、内容解析部162、動作制御部163、及び応答メッセージ作成部164は動作を停止する。なお、退出状態において、メッセージ受付部161、内容解析部162、動作制御部163は動作状態を維持し、動作制御部163がプリンタA,Bの駆動を停止するとともに、応答メッセージ作成部164を非動作状態に制御してもよい。従って、本実施形態におけるチャットボットの「入室」状態とは、ユーザからのメッセージに応答し得る状態、より具体的にはメッセージ受付部161、内容解析部162、動作制御部163、及び応答メッセージ作成部164が動作状態にあることを意味し、「退出」状態とは、ユーザからのメッセージに応答しない状態、より具体的には少なくとも動作制御部163及び応答メッセージ作成部164が動作状態にないことを意味する。
【0075】
その後、ユーザAは、ユーザ端末Aを操作して、
「あの写真いいね」
とのメッセージを送信する。このメッセージは、グループチャットに参加している全てのユーザに送信される。そして、このメッセージを視認したユーザBが、ユーザ端末Bを操作して、
「見たよ、確かにいいね」
とのメッセージを送信する。このメッセージも、グループチャットに参加している全てのユーザに送信される。そして、このメッセージを視認したユーザAが、
「そういえば、あのときの写真もプリントしようか」
等とメッセージを送信する。このメッセージも、グループチャットに参加している全てのユーザに送信されるが、チャットボットは既に退出して非動作状態となっているので、このメッセージに含まれる「プリント」とのキーワードを抽出し、
「プリントしますか?」
とのメッセージを作成して自動応答することはない。図において、×印は、このような自動応答メッセージが送信されないことを示す。
【0076】
ユーザAからのメッセージを視認したユーザBは、
「そうだね、プリントしよう」
等のメッセージを送信し、ユーザA及びユーザB間での円滑なチャットが維持され得る。
【0077】
図7では、チャットボットは、プリントサービス実行直後に退出しているが、退出に際して退出した旨のメッセージを送信してもよい。
【0078】
【0079】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、プリンタAまたはプリンタBからの完了通知を確認した上で
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0080】
そして、チャットボットは、プリントサービス実行直後にグループチャットから退出し、第1動作モードから第2動作モードに移行するが、この際に、
「チャットボット退出しました」
とのメッセージ202を作成して送信する。
【0081】
このメッセージを視認したユーザA及びユーザBは、チャットボットが退出したことを認識し得る。
【0082】
また、
図7及び
図8では、チャットボットは、プリントサービス実行直後に退出しているが、プリントサービス実行後の一定時間を退出待機期間として設け、この一定時間内にユーザからの特定のメッセージがない場合に退出してもよい。
【0083】
【0084】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0085】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、プリンタAまたはプリンタBからの完了通知を確認した上で
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0086】
そして、チャットボットは、プリントサービス実行後に
「他になければ退出します」
とのメッセージを作成して応答することで退出予定を通知し、一定時間の待機状態に移行する。一定時間は例えば3分間等と設定し得るが、これに限定されない。
【0087】
一定時間内にユーザからの特定メッセージがない場合、一定時間経過後にチャットボットは退出し、
「チャットボット退出しました」
とのメッセージ202を送信する。
【0088】
他方、
図10は、一定時間内にユーザから特定メッセージが送信される場合の画面例を示す。
【0089】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0090】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了してプリンタAまたはプリンタBからの完了通知を確認すると、
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0091】
そして、チャットボットは、プリントサービス実行後に
「他になければ退出します」
とのメッセージ204を作成して応答することで退出予定を通知し、一定時間の待機状態に移行する。
【0092】
このメッセージを視認したユーザAは、一定時間内に
「@チャットボット 待って!」
とのメッセージ206を送信する。ここで、「@チャットボット」は、グループチャットにおいて特定のメンバ(ここではチャットボット)に向けたメッセージであることを示す。
【0093】
このメッセージ206を受信したチャットボットは、メッセージ内容を解析し、特定メッセージに一致するとして退出待機状態を解除し、
「はい」
とのメッセージを作成して応答する。
【0094】
なお、ユーザからの特定メッセージではなく、特定スタンプが一定時間内に送信された場合にも、チャットボットは退出待機状態を解除して入室状態を維持し得る。
【0095】
図11は、チャットボットの処理フローチャートを示す。
【0096】
グループチャットの参加メンバ、例えばユーザAからの招待操作に応じ、チャットボットは当該グループチャットに入室(参加)する(S101)。入室状態では、メッセージ受付部161でメッセージを受け付けてメッセージ記憶部167に順次記憶するとともに、内容解析部162でメッセージ内容を解析し、動作制御部163に出力する。動作制御部163は、メッセージ内容がプリント指示であればプリンタA,Bを駆動してプリントサービスを実行する。また、応答メッセージ作成部164は、ユーザからのメッセージに応じた内容のメッセージを作成して送信する。なお、グループチャットに入室(参加)するにあたり、ユーザA及びユーザBはチャットボットを友達登録してその利用権限を有するものとする。
【0097】
グループチャットに参加すると、チャットボットは、ユーザからのメッセージを受信し、プリント指示であるか否か、つまりプリントすべき画像データとしての原稿が含まれているか否かを判定する(S102)。
【0098】
原稿を受信した場合(S102でYES)、チャットボットは、プリント指示に応答してプリントサービスを実行する(S103)。そして、
「他になければ退出します」
とのメッセージを送信することで退出予定を通知し(S104)、一定時間の待機状態に移行する。一定時間は、例えば3分間である。
【0099】
そして、一定時間内に原稿または特定メッセージを受信したか否かを判定する(S105)。原稿または特定メッセージを受信することなく一定時間が経過すると(S105でNO)、チャットボットは自動的にグループチャットから退出する。
【0100】
他方、一定時間内に原稿を受信した場合には、待機状態を解除して入室状態をそのまま維持し、S103の処理に移行して当該原稿のプリントサービスを実行する。また、一定時間内の特定メッセージ、例えば
「@チャットボット 待って!」
とのメッセージを受信した場合にも、待機状態を解除して入室状態をそのまま維持し、S102の処理に移行して原稿を受信したか否かを判定する。
【0101】
<実施形態3>
実施形態1あるいは実施形態2において、チャットボットがグループチャットから退出する際に、退出する旨のメッセージを送信するだけでなく、退出後に再度チャットボットを入室(参加)させるための情報をユーザに通知してもよい。
【0102】
【0103】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0104】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0105】
そして、チャットボットは、プリントサービス実行後に
「他になければ退出します」
とのメッセージ204を作成して応答し、一定時間の待機状態に移行する。一定時間は例えば3分間等と設定し得るが、これに限定されない。
【0106】
一定時間内にユーザからの特定メッセージがない場合、一定時間経過後にチャットボットは退出し、
「退出します」
「連絡先を残しておきます」
とのメッセージ208を送信する。連絡先は、URLでもよく、チャットボットのアカウント名や連絡先をまとめて記載したデータでもよい。チャットサービスにおいて、文書や写真等を参加メンバで共有するためのツール(ノート)は公知であり、チャットボットは、例えば当該共有ツールに自己のアカウント名や連絡先を残してもよい。
【0107】
自己の連絡先を通知した後、チャットボットは、
「チャットボット退出しました」
とのメッセージ202を送信する。
【0108】
<実施形態4>
実施形態1~3では、チャットボットは、プリントサービスを実行した直後、あるいは一定時間経過後にグループチャットから退出しているが、ユーザが再びチャットボットを利用したいと欲する場合には、当該チャットボットをもう一度グループチャットに招待して参加させる必要があるので手間となる。
【0109】
そこで、本実施形態では、チャットボットとして、プリントサービスを実行する第1チャットボットと、プリントサービスを実行しない第2チャットボットを用意し、第1チャットボットがプリントサービスを実行した直後、あるいは一定時間経過後に自動的に退出した後も第2チャットボットはそのまま参加し続ける。プリントサービスを実行しない第2チャットボットは、ユーザからのメッセージを受信してメッセージ記憶部167に順次記憶するとともにメッセージ内容を解析するチャットボットとして機能し、必要な場合に第1チャットボットをグループチャットに招待して参加させる機能を有する。第1チャットボット及び第2チャットボットとも、ボットサーバAで実現される。第1チャットボット及び第2チャットボットは、互いに異なるプログラムモジュールである。グループチャットの参加メンバ、例えばユーザAからの招待操作に応じ、第1チャットボットが当該グループチャットに入室(参加)すると、第2チャットボットも第1チャットボットとともに参加する。但し、第2チャットボットは、第1チャットボットが参加して動作状態にあるときには、メッセージの受け付けや解析、プリンタA,Bの駆動、及び応答メッセージの作成及び送信は行わない。
【0110】
図13は、本実施形態におけるユーザ端末Aの表示部に表示される画面例である。
【0111】
ユーザAは、ユーザ端末Aを操作して、
「プリント」
とのメッセージをチャットボットに送信する。また、このメッセージとともにプリントすべき画像データを添付する。メッセージに代えて、単に画像データのみを送信してもよい。
【0112】
このメッセージを受信したチャットボットは、メッセージの内容を解析してプリント指示と解釈し、
「プリントします」
とのメッセージを作成して自動応答し、ユーザAの設定情報に従ってプリンタAまたはプリンタBを駆動してプリントサービスを実行する。プリントが完了すると、プリンタAまたはプリンタBからの完了通知を確認した上で
「プリント完了しました」
とのメッセージを作成して自動応答する。
【0113】
そして、チャットボットは、プリントサービス実行後に
「他になければ退出します」
とのメッセージ204を作成して応答することで退出予定を通知し、一定時間の待機状態に移行する。一定時間は例えば3分間等と設定し得るが、これに限定されない。
【0114】
一定時間内にユーザからの特定メッセージがない場合、一定時間経過後に第1チャットボットは退出し、
「第1チャットボット退出しました」
とのメッセージ202を送信する。
【0115】
第1チャットボットが退出すると、これに応じて第2チャットボットが動作状態となり、ユーザからのメッセージを受け付け、その内容を解析する。そして、ユーザAから
「プリントおねがい!」
とのスタンプを受信すると、第2チャットボットは、このスタンプの内容を解析し、特定スタンプに一致するとして、予め記憶されている第1チャットボットのアカウントを用いて第1チャットボットを自動的に招待し、
「第2チャットボットが第1チャットボットを招待しました」
とのメッセージ210を送信する。また、第1チャットボットが入室(参加)状態に移行すると、
「第1チャットボット参加しました」
とのメッセージ212を送信する。
【0116】
図14は、本実施形態におけるチャットボットの処理フローチャートを示す。
【0117】
グループチャットの参加メンバ、例えばユーザAからの招待操作に応じ、第1チャットボット及び第2チャットボットは当該グループチャットに参加し、第1チャットボットは動作状態に移行する(S201)。第2チャットボットは参加しているものの、非動作状態に移行する。動作状態では、メッセージ受付部161でメッセージを受け付けてメッセージ記憶部167に順次記憶するとともに、内容解析部162でメッセージ内容を解析し、動作制御部163に出力する。動作制御部163は、メッセージ内容がプリント指示であればプリンタA,Bを駆動してプリントサービスを実行する。また、応答メッセージ作成部164は、ユーザからのメッセージに応じた内容のメッセージを作成して送信する。なお、グループチャットに参加するにあたり、ユーザA及びユーザBは第1チャットボットを友達登録してその利用権限を有するものとする。第1チャットボットを友達登録すると、自動的に第2チャットボットも友達登録され、その利用権限を有する。
【0118】
グループチャットに参加すると、第1チャットボットは、ユーザからのメッセージを受信し、プリント指示であるか否か、つまりプリントすべき画像データとしての原稿が含まれているか否かを判定する(S202)。
【0119】
原稿を受信した場合(S202でYES)、第1チャットボットは、プリント指示に応答してプリントサービスを実行する(S203)。そして、
「他になければ退出します」
とのメッセージを送信することで退出予定を通知し(S204)、一定時間の待機状態に移行する。一定時間は、例えば3分間である。
【0120】
そして、一定時間内に原稿または特定メッセージを受信したか否かを判定する(S205)。原稿または特定メッセージを受信することなく一定時間が経過すると(S205でNO)、第1チャットボットは自動的にグループチャットから退出して非動作状態に移行する。このとき、第2チャットボットは参加状態を維持し、かつ、第1チャットボットが非動作状態に移行したことを起因として非動作状態から動作状態に移行し、メッセージ受付部161でメッセージを受け付けてメッセージ記憶部167に順次記憶するとともに、内容解析部162でメッセージ内容を解析し、応答メッセージ作成部164は、ユーザからのメッセージに応じた内容のメッセージを作成して送信する。但し、第2チャットボットの動作制御部163は、プリントサービスを実行しない。
【0121】
他方、一定時間内に原稿を受信した場合には、第1チャットボットは待機状態を解除して動作状態をそのまま維持し、S203の処理に移行して当該原稿のプリントサービスを実行する。また、一定時間内の特定メッセージを受信した場合にも、待機状態を解除して動作状態をそのまま維持し、S202の処理に移行して原稿を受信したか否かを判定する。
【0122】
第1チャットボットが退出した後に、ユーザから特定メッセージまたは特定スタンプ、例えば
「プリントおねがい!」
とのスタンプを受信すると、動作状態にある第2チャットボットはこのスタンプの内容を解析し、特定スタンプに一致するとして予め記憶された第1チャットボットのアカウントを用いてグループチャットに自動的に招待、つまりユーザからの明示的な指示なしに招待し、第1チャットボットを非動作状態から再び動作状態に移行させる。
【0123】
このように、第1チャットボットとともに第2チャットボットを参加させ、第1チャットボットが退出した後に第2チャットボットにより第1チャットボットを自動的に招待させる構成とすることで、手動で第1チャットボットを再参加させる手間が省かれる。第2チャットボットは、プリントサービスを実行する機能を有さず、第1チャットボットのバックグラウンドで動作するソフトウェアロボットプログラムといえる。
【0124】
なお、第2チャットボットは、第1チャットボットが退出した後に動作状態に移行してユーザからのメッセージを受け付けてメッセージ記憶部167に履歴として順次記憶するから、第1チャットボットが再入室(再参加)して第1動作モードに移行した後に、第2チャットボットが受け付けた期間におけるメッセージや画像データを遡ってプリントすることが可能である。
【0125】
また、第2チャットボットは、第1チャットボットが退出した後に動作状態に移行してユーザからのメッセージを受け付けてメッセージ記憶部167に履歴として順次記憶するが、セキュリティ確保あるいはプライバシー保護の観点から、全てのメッセージを記憶するのではなく、特定のメッセージのみ、例えば退出タイミングから一定時間以内の相対的に新しいメッセージや画像データのみを記憶してもよく、第1チャットボットが再参加して動作状態に移行した後も、相対的に新しいメッセージや画像データのみをプリントし得るように構成してもよい。退出タイミングから一定時間以上の相対的に古いメッセージや画像データを記憶しないことで、セキュリティ確保あるいはプライバシー保護が図られる。退出タイミングから一定時間以内の相対的に新しいメッセージとして、最も新しいメッセージ1通のみとしてもよい。
【0126】
以上、本発明の実施形態について説明したが、本発明はこれらの実施形態に限定されるものではなく、種々の変形が可能である。以下、変形例について説明する。
【0127】
<変形例1>
実施形態1において、チャットボットは、プリントサービスを実行後にグループチャットから退出しているが、退出後もユーザ情報記憶部165に記憶された友達登録の情報をそのまま維持してもよい。これにより、チャットボットがグループチャットに再参加した後に、再度、友達登録の操作を行う手間が省かれる。同様に、チャットボットは、退出後も設定情報記憶部166に記憶されたユーザ毎の設定情報をそのまま維持してもよい。これにより、チャットボットがグループチャットに再参加した後に、再度、設定情報を登録する手間が省かれる。
【0128】
<変形例2>
実施形態では、チャットボットとして、ユーザからのメッセージに応じてプリントサービスを提供するチャットボットを例にとり説明しているが、これ以外にもチャットボットは任意のサービスを提供し得る。これらのサービスを例示すると以下の通りである。
・音楽、ニュース記事、宿泊施設、書籍、料理レシピ等の検索サービス
・チケット予約サービス
・フリーマーケットへの出品/検索/取引連絡サービス
・他言語への翻訳サービス
【0129】
図15は、翻訳サービスを実行する場合のシステム構成図を示す。
図1と異なり、プリンタA(18A)、プリンタB(18B)に代えて、翻訳エンジンA(19A)、翻訳エンジン(19B)が備えられる。翻訳エンジンAは、日本語を英語に翻訳するソフトウェアロボットプログラムであり、翻訳エンジンBは、日本語を中国語に翻訳するソフトウェアロボットプログラムである。
【0130】
ユーザAが、翻訳エンジンAを選択し、英訳に続いて元の日本語を表示するようなフォーマットを設定情報として設定して登録する。これにより、ユーザAがチャットボットに対して
「今日は空いていますか?」
とのメッセージを送信すると、チャットボットは、翻訳エンジンAを駆動して
「Are you free today?」
「今日は空いていますか?」
とのメッセージを自動応答する。
【0131】
チャットボットは、翻訳サービスを実行後、グループチャットから退出する。
【符号の説明】
【0132】
10A ユーザ端末A、10B ユーザ端末B、10C ユーザ端末C、12 クラウド、14 チャットサービスサーバ、16A ボットサーバA、16B ボットサーバB、18A プリンタA、18B プリンタB。