以下、図面を参照して本開示の技術を実施するための実施形態の一例を説明する。
なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
図1は、本開示の実施形態に係る制御システムの概略構成を示す図である。
制御システムは、ユーザ端末10、トークルームサーバ20、本開示の処理部としてのチャットボットサーバ30及び情報処理装置40を含む。ユーザ端末10、トークルームサーバ20及びチャットボットサーバ30(制御装置)は、インターネット50により相互に接続されている。
ユーザ端末10は、ユーザが使用する端末であって、デスクトップ型コンピュータ、ノートパソコン、タブレット又はスマートフォン等のいかなる端末であっても良い。図1においては、ユーザAがユーザ端末10Aを、ユーザBがユーザ端末10Bを、ユーザCがユーザ端末10Cを、ユーザDがユーザ端末10Dを使用しているものとする。ユーザ端末10A~10Dを総称して、ユーザ端末10と呼ぶ。
トークルームサーバ20は、トークルームを提供する。トークルームは、ユーザと後述するチャットボットとが共に参加して、チャットとしてメッセージ及び画像等のデータ(以下、メッセージ情報という)を共有できる仮想空間である。ここで、チャットとは、コンピュータネットワーク上でリアルタイムに複数の構成員が情報を入力して会話を交わすことである。ここで構成員とは、実在する人物と関連付けられたユーザと、特定の規則に従って動作するソフトウェアロボットの両方を含む。また、チャットボットとは、トークルーム上でユーザから投稿された情報に基づいて特定処理の実行がなされるよう制御するソフトウェアロボットである。
ユーザは、ユーザ端末10を通じて、トークルーム内において、メッセージ情報を投稿したり、または発話したりすることが可能である。トークルーム内では、ユーザ同士で、メッセージ情報を共有し、さらに、チャットボットがユーザのメッセージ情報に応答して、返答したりすることが可能である。また、ユーザが、トークルーム内において、チャットボットに対して、情報処理装置40に特定処理を実行させるための指示を与えることも可能である。チャットボットは、例えば、自然言語処理により、メッセージ情報に含まれる指示を抽出し、情報処理装置40に特定処理を実行させるように制御する。なお、トークルームには、ユーザとチャットボットが1対1で参加したり、複数のユーザとチャットボットとが参加したりすることが可能である。トークルームは開設された数だけ複数存在しうる。
チャットボットサーバ30は、チャットボットを管理するサーバである。チャットボットは、上述の通り、トークルームに参加して、ユーザのメッセージ情報に応答したり、メッセージ情報に含まれる指示に従い情報処理装置40に特定処理を実行させたりする。
例えば、チャットボットは、参加しているトークルームにおいて、情報処理装置40に特定処理を実行させるための指示に関するメッセージ情報が投稿されると、トークルームに参加しているユーザに関連付けて登録されている情報処理装置40に、特定処理を実行させるように制御する。なお、情報処理装置40は、いかなる情報処理を行なう装置であっても良い。ここで、情報処理とは、例えば、文字データ又は画像データ等から印刷を実行する処理、情報処理装置40が備える設備を用いてデータを生成又は加工等する処理、情報処理装置40と他の機器との間でデータを授受する処理等を含む。
以下の説明では、情報処理装置40が画像形成装置であり、特定処理を実行させるための指示が印刷を実行させるための指示である場合を一例として説明する。また、以下、画像形成装置に参照番号40を付して説明する。なお、印刷を実行させるための指示には、画像形成装置40に対する直接的な印刷の指示だけでなく、印刷ジョブを生成するために必要な情報、例えば、印刷対象の画像データ又は印刷の仕様等をトークルームにおいて提供することも含まれる。すなわち、チャットボットは、参加しているトークルームにおいて、画像形成装置40に実行させる印刷に関係する情報が投稿されると、投稿された情報により印刷に関係する処理を進めるように制御する。印刷を実行させるための指示は、特定処理に関係する一連の情報の提供の一例であり、チャットボットは、印刷に関係する一連の情報の各々の投稿により、画像形成装置40に印刷を実行させるための各々の制御を行う。
図8は、特定処理に関係する一連の情報の提供の一例として、印刷に関係する情報の投稿についてのプロセス推移の一例を示す図である。図8に示す一連の情報の提供は、印刷を実行させるための指示、すなわち情報の投稿に対応する。
具体的には、まず、ユーザがトークルームに印刷指示を示すメッセージ情報を投稿し(プロセスP01)、その応答としてチャットボットがファイル投稿を要求することを示すメッセージ情報を投稿する(プロセスP02)。次に、ユーザは、ファイル投稿の要求に対する応答として、印刷対象のファイルを示すメッセージ情報を投稿し(プロセスP03)、チャットボットはファイル投稿の応答として、投稿されたファイルをどのように印刷するのかを示す印刷設定を要求するメッセージ情報を投稿する(プロセスP04)。そして、ユーザは、印刷設定を示す情報を投稿し(プロセスP05)、その応答として、チャットボットは印刷対象のファイルを投稿された印刷設定で印刷開始されるように画像形成装置40に情報を出力する(プロセスP06)。なお、図8に示す例では、印刷プロセスとして印刷指示を示すメッセージ情報を投稿によるプロセスP01を起点とした一例を示すが、ユーザにより印刷対象のファイルを示すメッセージ情報を投稿するプロセスP03を起点としてもよい。この場合、プロセスP03の投稿によって、プロセスP01及びプロセスP02が実行されたものと見なして処理を進めることが可能になる。
画像形成装置40は、印刷ジョブに基づいて用紙等の記録媒体に画像を形成する装置であり、プリンタ又は複合機等のいかなる装置であっても良い。図1の制御システムの例においては、画像形成装置40A及び画像形成装置40Bが、チャットボットサーバ30により管理されている。画像形成装置40A及び画像形成装置40Bを総称して、画像形成装置40と呼ぶ。図示の例では、チャットボットサーバ30に画像形成装置40が接続されているが、画像形成装置40は、インターネット50を経由して、チャットボットサーバ30に接続されても良い。
次に、トークルームサーバ20及びチャットボットサーバ30のハードウェア構成について説明する。
図2は、トークルームサーバのハードウェア構成を示すブロック図である。
図2に示すように、トークルームサーバ20は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23、ストレージ24、入力部25、表示部26及び通信インタフェース27の各構成を有する。各構成は、バス29を介して相互に通信可能に接続されている。
CPU21は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU21は、ROM22又はストレージ24からプログラムを読み出し、RAM23を作業領域としてプログラムを実行する。CPU21は、ROM22又はストレージ24に記録されているプログラムにしたがって、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM22又はストレージ24には、トークルームを提供するトークルーム提供プログラムが格納されている。
ROM22は、各種プログラム及び各種データを格納する。RAM23は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ24は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
入力部25は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。表示部26は、たとえば、液晶ディスプレイであり、各種の情報を表示する。表示部26は、タッチパネル方式を採用して、入力部25として機能しても良い。通信インタフェース27は、インターネット50を介して、他の機器と通信するためのインタフェースであり、たとえば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
図3は、チャットボットサーバのハードウェア構成を示すブロック図である。
図3に示すように、チャットボットサーバ30は、CPU31、ROM32、RAM33、ストレージ34、入力部35、表示部36及び通信インタフェース37の各構成を有する。各構成は、バス39を介して相互に通信可能に接続されている。チャットボットサーバ30の各構成は、図2のトークルームサーバ20の各構成と同様の機能を有する。
次に、トークルームサーバ20及びチャットボットサーバ30の機能構成について説明する。
図4は、トークルームサーバの機能構成の例を示すブロック図である。
図4に示すように、トークルームサーバ20は、機能構成として、提供部201を有する。機能構成は、CPU21がROM22又はストレージ24に記憶されたトークルーム提供プログラムを読み出して、RAM23に展開して実行することにより実現される。
提供部201は、複数のユーザが参加し、メッセージを投稿可能なトークルームを提供する。トークルームサーバ20は、ユーザとチャットボットとが一対一で参加するトークルーム、及び、複数のユーザとチャットボットとが参加するトークルーム等を提供する。トークルームは、ユーザからの開設要求に従い、複数開設されうる。また、例えば、あるユーザがトークルームサーバ20にアクセスしてトークルームに開設要求を行い、特定のトークルームを開設した場合、開設者であるユーザは、他のユーザを開設したトークルームに招待し、参加させる事ができる。或いは、トークルームに参加中のユーザであれば、トークルームに参加していない他のユーザをトークルームへ招待して、新たに参加させる事ができる。
図5は、チャットボットサーバの機能構成の例を示すブロック図である。図6は、登録部に登録されるユーザと画像形成装置との対応関係を示すテーブルの一例である。図7は、登録部に登録される、トークルームとユーザと画像形成装置との対応関係を示すテーブルの一例ある。
図5に示すように、チャットボットサーバ30は、機能構成として、登録部301及び実行制御部302を有する。各機能構成は、CPU31がROM32又はストレージ34に記憶された制御プログラムを読み出して、RAM33に展開して実行することにより実現される。
登録部301は、例えば、図6に示すように、ユーザと画像形成装置とを関連付けて登録する。図6に示す例では、更に、各ユーザに、印刷を指示する際の基本的な印刷設定も関連付けることが可能である。また、登録部301は、例えば、図7に示すように、トークルームと画像形成装置とを関連付けて登録する。図7に示す例では、更に、ユーザ特性が関連付けられている。ユーザ特性は、参加ユーザと、トークルームに参加中のユーザが他のユーザと情報を共有することを許容するか否かを示す許容設定情報とを関連付けた情報である。トークルームに参加中のユーザはユーザグループとすることができ、許容設定情報で許容することが示される場合、トークルームに参加中のユーザを許容条件とすることが可能である。
図6に示すテーブルは、ユーザとチャットボットとが一対一でトークルームに参加する場合、すなわち、ユーザが主に使用する画像形成装置に命令する場合の設定を登録するために設けられる。図6に示すテーブルは、予めユーザの各々によって登録される。一方、図7に示すテーブルは、複数のユーザがトークルームに参加する場合、すなわち、トークルームが共有される場合に設けられる。図7に示すテーブルでは、トークルームに参加中のユーザがトークルーム毎に対応付けられ、また、当該トークルーム内のユーザ毎にユーザ特性として画像形成装置が対応付けられている。トークルームへのユーザの参加に起因して、図6に示すテーブルにおいて当該ユーザに関連付けられている画像形成装置40をユーザ特性として、トークルームに関連付けて登録することにより、図7に示すテーブルが形成される。
実行制御部302は、チャットボットとして、トークルームに参加する。そして、実行制御部302は、トークルームにおいて、画像形成装置(情報処理装置)40への印刷に関するメッセージ及び画像等の情報がユーザにより投稿された場合、トークルームに参加しているユーザに関連付けられているユーザ特性の基づいて、印刷を実行させるように制御する。
次に、チャットボットサーバ30の作用について説明する。なお、ここでは、印刷を実行させるために、図8に示す印刷指示プロセスに従って一連の情報の提供、すなわち印刷を実行させるための指示としてメッセージ情報が投稿されるものとする。
図9は、チャットボットサーバによる制御処理の流れを示すフローチャートである。CPU31がROM32又はストレージ34から制御プログラムを読み出して、RAM33に展開して実行することにより、制御処理が行なわれる。図11から図13は、トークルーム内の投稿の様子を示す図である。
CPU31は、実行制御部302として、ユーザによりトークルームにメッセージ情報が投稿がされたか否か判断する(ステップS100)。トークルームに投稿がない場合(ステップS100で否定判断)、CPU31は、投稿があるまで待機する。トークルームにメッセージ情報が投稿された場合(ステップS100で肯定判断)、CPU31は、投稿されたメッセージ情報が印刷指示に関するメッセージか否か判断する(ステップS102)。ここで、CPU31は、投稿されたメッセージ情報を、例えば自然文解析し、「印刷」、または、印刷設定に関する用語が含まれる場合に、印刷指示に関するメッセージ情報と判断する。
投稿されたメッセージ情報が印刷指示に関係しない場合(ステップS102で否定判断)、CPU31は、投稿されたメッセージ情報に合った応答メッセージ情報を、トークルームに投稿する(ステップS104)。例えば、ユーザによって天気を尋ねるメッセージがメッセージ情報として投稿された場合、CPU31は、チャットボットとして、インターネットから天気の情報を取得し、天気を回答するメッセージを応答メッセージ情報としてトークルームに投稿する。これにより、ユーザとチャットボットの会話がトークルーム内で成立する。
投稿されたメッセージ情報が印刷指示に関する場合(ステップS102で肯定判断)、CPU31は、印刷対象データであるファイルの投稿を要求することを示すメッセージ情報を投稿する(ステップS106)。ここで、CPU31は、印刷指示したユーザに予め定められている許容設定情報に基づいて、印刷指示したユーザのみに対してファイルの投稿を要求するメッセージ情報、又は他のユーザとの情報共有を許容することを示す許容表示情報を含めたメッセージ情報を投稿する。すなわち、CPU31は、ユーザからの応答を期待するメッセージ情報の投稿時に、該当ユーザに予め定められた許容設定情報に基づいて、当該応答を該当ユーザのみに要求するか、又は他のユーザを含めて要求するかの何れか一方の要求を選択的に実行する。当該処理は、CPU31が投稿するメッセージ情報について、複数ユーザによる投稿を許容して印刷プロセスを進めることを含む処理であり、以下、許容プロセス処理と呼ぶ。
例えば、トークルームにユーザAにより印刷指示を示すメッセージ情報M100(例えば図11)が投稿された場合、CPU31は、図7に示すテーブルを参照して許容設定情報「オン」を取得し、許容設定情報に応じたメッセージ情報を投稿する許容プロセス処理を実行する。
図10は、許容プロセス処理の流れを示すフローチャートである。
CPU31は、図7に示すテーブルを参照し、印刷を指示したユーザに予め定められている許容設定情報を取得する(ステップS200)。この許容設定情報は、他のユーザが印刷指示ユーザの印刷プロセスに介入することを許容するか否かを示す情報であり、許容する場合には「オン」、許容しない場合には「オフ」が設定される。取得された許容設定情報がオンの場合(ステップS202で肯定判断)、指示ボタンB01を含めてメッセージ情報を投稿する(ステップS204)。例えば、印刷指示ユーザに許容設定情報がオンに設定されている場合、トークルームには、図11に示すように、許容表示情報を示す指示ボタンB01を含めたメッセージ情報M103が投稿される。指示ボタンB01は、トークルームに参加中のユーザが押圧可能に構成されて表示されたボタンであり、指示ボタンB01には押圧により処理される機能(ここでは、「ファイルを選択する」)が表示される。図11に示す例では、ユーザによる押圧の様子を示す指示図形G01も表示されている。また、図11に示す例では、メッセージ情報M103の応答として、ユーザBにより指示ボタンB01が押圧され、ボタン押下によりユーザBが投稿することを示すメッセージ情報M104と、画像を示すメッセージ情報M105の投稿が示されている。
一方、許容設定情報がオフの場合(ステップS202で否定判断)、CPU31は、指示ボタンB01を含めずメッセージ情報のみを投稿する(ステップS206)。例えば、印刷指示ユーザに許容設定情報がオフに設定されている場合、トークルームには、図12に示すように、指示ボタンB01が含められていないメッセージ情報M101が投稿される。図11に示す例では、メッセージ情報M101の応答として、ユーザAにより画像を示すメッセージ情報M102の投稿が示されている。
なお、例えば、図11に示す例で、ユーザAにより印刷指示を示すメッセージ情報M100は、ユーザ端末10のキーボード入力で投稿してもよく、ユーザ端末10またはトークルームに予め準備されたメッセージ情報M100を投稿する投稿ボタンの押圧により投稿してもよい。また、例えば、図11に示す例で、ユーザBによる指示ボタンB01の押下により投稿する、画像を示すメッセージ情報M105は、ユーザBによる指示ボタンB01の押下後に、さらに表示されたファイル投稿の種類及び場所等の指示ボタンの押下によりファイル投稿を選択させて投稿させるようにしてもよい。さらに、指示ボタンB01の押下後にさらに表示させる指示ボタンは、トークルームに予め準備されている指示ボタンを用いることができる。
以上のように、ユーザに予め設定された許容設定情報に応じて、指示ボタンB01が表示されたメッセージ情報103が投稿されると、印刷プロセスはユーザA及び他のユーザで共有の状態となり、何れか1ユーザが指示ボタンB01のを経由して写真又は画像を投稿可能になる。一方、指示ボタンB01が非表示のメッセージ情報101が投稿されると、印刷プロセスはユーザAのみの状態となり、ユーザAのみが写真又は画像を投稿可能になる。
次に、CPU31は、ステップS106に対する応答として、ユーザによりトークルームにメッセージ情報が投稿がされたか否か判断する(ステップS108)。ここで投稿されるメッセージ情報は、印刷対象のデータを含むファイルを示すメッセージ情報である。トークルームに投稿がない場合(ステップS108で否定判断)、CPU31は、投稿があるまで待機する。トークルームにメッセージ情報が投稿された場合(ステップS108で肯定判断)、CPU31は、投稿されたメッセージ情報に対応する処理を実行する(ステップS110)。当該処理は、印刷設定を要求するメッセージ情報を投稿する処理である。
CPU31は、印刷設定を要求するメッセージ情報に加えて、1又は複数の印刷設定の中から何れかの印刷設定を選択可能に情報提供することができる。例えば、トークルームに、図13に示すように、印刷設定を要求するメッセージ情報M106を投稿した後に、1印刷設定を選択可能なメッセージ情報M107を投稿する。図13に示す例では、メッセージ情報M107は、各々異なる印刷設定の中から1印刷設定を選択可能に表示する、所謂カルーセル機能によって、複数の印刷設定を選択可能にした場合を示している。メッセージ情報M107Aは、投稿された画像を初期設定の印刷設定で表示し、下方に初期設定の印刷設定を用いて印刷することを示す「そのまま印刷」ボタンB02を表示する。メッセージ情報M107Bは、投稿された画像を白黒画像で表示し、下方に白黒画像として印刷することを示す「白黒で印刷」ボタンB03を表示する。メッセージ情報M107Cは、投稿された画像を鮮鋭度を向上させて表示し、下方に鮮鋭度を向上させて印刷することを示す「鮮やかに印刷」ボタンB03を表示する。
図13に示す例では、ユーザによる押圧の様子を示す指示図形G02も表示されている。また、図13に示す例では、メッセージ情報M106の応答として、ユーザBにより指示ボタンB03が押圧された場合に、ボタン押下によりユーザBが投稿することを示すメッセージ情報M108が示されている。
次に、CPU31は、ステップS110に対する応答として、ユーザによりトークルームにメッセージ情報が投稿がされたか否か判断する(ステップS112)。ここで投稿されるメッセージ情報は、ユーザにより指定された印刷設定を示すメッセージ情報である。トークルームに投稿がない場合(ステップS112で否定判断)、CPU31は、投稿があるまで待機する。トークルームにメッセージ情報が投稿された場合(ステップS112で肯定判断)、CPU31は、投稿されたメッセージ情報に対応する処理を実行する(ステップS114)。当該処理は、印刷設定に応じて印刷を開始することを示すメッセージ情報を投稿する処理である。
以上、本実施形態に係る制御システムについて説明してきたが、本発明は、上記実施形態に限定されない。種々の改変又は改良が可能である。以下、改変又は改良例の一例について、変形例として説明する。
(変形例1)
上記実施形態では、トークルームに参加するユーザに対して予め許容設定情報が関連付けられている場合について説明した。しかし、許容設定情報は、トークルーム内のメッセージ情報に基づいて、動的に設定してもよい。
変形例1では、チャットボットサーバ30のCPU31は、チャットボットとして、ユーザがトークルームに参加した際、ユーザにより投稿されたメッセージ情報から、当該ユーザの許容設定情報を設定すればよい。すなわち、チャットボットサーバ30は、ユーザの各々から投稿されたメッセージ情報から、トークルーム内の他のユーザの共用にするか否かをオン又はオフの何れかの情報に許容設定情報を設定する設定処理を実行する。
図14は、チャットボットサーバにより実行される設定処理の流れを示すフローチャートである。CPU31がROM32又はストレージ34から設定プログラムを読み出して、RAM33に展開して実行する。図14に示す設定処理は、ユーザからメッセージ情報が投稿されることにより実行される。
CPU31は、ユーザによりトークルームにメッセージ情報が投稿がされた場合、投稿されたメッセージ情報の内容が、他ユーザの介入を許容してトークルーム内の他のユーザと情報を共用することを示す共用許容メッセージか否かを判断する(ステップS300)。例えば、CPU31は、投稿されたメッセージ情報を、例えば自然文解析し、「共有印刷」及び「共用印刷」など、トークルーム内の他のユーザと情報を共用することを示す用語が含まれる場合に、共用許容メッセージと判断する。投稿されたメッセージ情報が共用許容メッセージである場合(ステップS300で肯定判断)、CPU31は、設定許容情報をオンに設定する(ステップS302)。投稿されたメッセージ情報の内容が他ユーザの介入を許容する内容を含まない場合(ステップS300で否定判断)、CPU31は、投稿されたメッセージ情報の内容が他ユーザの介入を許容しない内容を含む個人許容メッセージか否か判断する(ステップS304)。例えば、CPU31は、投稿されたメッセージ情報を、例えば自然文解析し、「個人印刷」及び「単独印刷」など、トークルーム内の他のユーザと情報を共用せずに個人で実行することを示す用語が含まれる場合に、個人許容メッセージ情報と判断する。投稿されたメッセージ情報が個人許容メッセージである場合(ステップS304で肯定判断)、CPU31は、設定許容情報をオフに設定する(ステップS306)。
一方、投稿されたメッセージ情報の内容は、共用許容メッセージ及び個人許容メッセージの何れでもない場合(ステップS300、S304の各々で否定判断)、投稿されたメッセージ情報は、許容設定情報の設定に無関係の他のメッセージ情報であると推定し、そのまま本処理ルーチンを終了する。
なお、図14に示す設定処理で設定された許容設定情報は、当該印刷プロセス中のみ一時的な設定でもよく、図7に示すテーブルの許容設定情報を書き換えてもよい。
図15は、変形例1に係るトークルーム内の投稿の様子を示す更に他の例を示す図である。図15(A)及び図15(B)は、ユーザにより印刷プロセスを指示する時点に、他のユーザの介入の許容又は非許容を宣言する場合の一例を示す。図15(A)は、印刷プロセスに他のユーザの介入を許容しない非共用の場合を示し、図15(B)は、印刷プロセスに他のユーザの介入を許容する共用の場合を示している。図15(C)は、印刷プロセスの途中に、他のユーザの介入を許容して共用する場合を示している。
図15(A)に示すように、ユーザAにより「個人印刷したい」というメッセージ情報M200が投稿されると、CPU31は、個人許容メッセージであると判断し、ユーザAにのみの要求を示すメッセージ情報M201を投稿する。また、図15(B)に示すように、ユーザAにより「共有印刷したい」というメッセージ情報M204が投稿されると、CPU31は、共用許容メッセージであると判断し、指示ボタンB05を含めたメッセージ情報M206を投稿する。指示ボタンB05は、トークルームに参加中のユーザが押圧可能に構成されて表示されたボタンであり、他のユーザの介入を許容したことが現れている。
また、図15(C)に示すように、印刷プロセス実行中である、メッセージ情報M210に応答したメッセージ情報M212の投稿後に、ユーザAにより「Bさんを参加させたい」というメッセージ情報M214が投稿されると、CPU31は、共用許容メッセージであると判断し、指示ボタンB06を含めたメッセージ情報M216を投稿する。
(変形例2)
次に変形例2を説明する。
上記実施形態では、印刷プロセスに他のユーザの介入を許容する場合、指示ボタンを伴うメッセージ情報を投稿し、指示ボタンを押下した場合に、他のユーザからのメッセージ情報を受け付けた。しかし、本開示は、指示ボタンの押下に限定されるものではなく、トークルーム内のメッセージ情報に基づいて、指示ボタンが押下されたものとみなしてもよい。
変形例2では、チャットボットサーバ30のCPU31が、指示ボタンを含めてメッセージ情報を投稿した場合、指示ボタンの押圧を経由した際のメッセージ情報と、投稿されたメッセージ情報から、対象情報を取得すればよい。すなわち、チャットボットサーバ30は、指示ボタンを含めて投稿したメッセージ情報に対する応答として取得する対象情報を、指示ボタンの押圧を経由したメッセージ情報、又は投稿されたメッセージ情報から、取得する取得処理を実行する。
図16は、チャットボットサーバにより実行される取得処理の流れを示すフローチャートである。CPU31がROM32又はストレージ34から設定プログラムを読み出して、RAM33に展開して実行する。図16に示す取得処理は、指示ボタンを含めてメッセージ情報を投稿した後に実行される。
CPU31は、指示ボタンを含めてメッセージ情報を投稿した場合、その応答として、指示ボタンの押下を経由して投稿されたメッセージ情報か否かを判断する(ステップS310)。投稿されたメッセージ情報が指示ボタンの押下を経由した場合(ステップS310で肯定判断)、CPU31は、指示ボタンの押下を経由して投稿されたメッセージ情報を対象情報として取得する(ステップS312)。投稿されたメッセージ情報が指示ボタンの押下を経由せず直接投稿されたメッセージ情報である場合(ステップS310で否定判断)、CPU31は、投稿されたメッセージ情報の内容が該当する応答に対応するメッセージ情報であるか否か判断する(ステップS314)。例えば、該当する応答が写真や画像などのファイル投稿である場合、CPU31は、投稿されたメッセージ情報が、ファイル投稿であるか否かを判断する。投稿されたメッセージ情報の内容が該当する応答に対応するメッセージ情報である場合(ステップS344で肯定判断)、CPU31は、投稿されたメッセージ情報を対象情報として取得する(ステップS316)。
一方、投稿されたメッセージ情報の内容が、該当する応答に対応しない場合(ステップS314で否定判断)、投稿されたメッセージ情報は、別の印刷プロセスのメッセージ情報の可能性が高いため、別処理を行った後(ステップS318)、本処理ルーチンを終了する。
図17は、変形例2に係るトークルーム内の投稿の様子を示す図である。
例えば、CPU31は、トークルームに、図17に示すように、印刷設定を要求するメッセージ情報M106を投稿した後に、1印刷設定を選択可能なメッセージ情報M107を投稿する。
図17に示す例では、メッセージ情報M106の応答として、メッセージ情報M107に含まれる指示ボタンB02,B03,B04の何れかの指示ボタンがユーザにより押圧可能であるが、ユーザは指示ボタンを押圧することなく、ユーザAにより印刷設定の指示を示すメッセージ情報M109が投稿された場合が示されている。よって、メッセージ情報M107に含まれる指示ボタンの押下で取得する情報に代えて、投稿されたメッセージ情報M220の内容から、指示ボタンが押下されたものとみなし、メッセージ情報M106の応答を示す対象情報を取得することができる。
投稿されたメッセージ情報M220の内容から、指示ボタンが押下されたものとみなして、対象情報を取得することは、指示ボタンの押下で取得する情報に、更なる情報を追加することが可能になる。例えば、図18に示すように、メッセージ情報M106の応答として、ユーザBにより指示ボタンB03が押圧され、ユーザBにより印刷設定を示すメッセージ情報M108が投稿された後に、ユーザAにより、更なる印刷設定を示すメッセージ情報M109が投稿されている。
(変形例3)
次に変形例3を説明する。
上記実施形態では、印刷プロセスに他のユーザの介入を許容する際に指示ボタンを伴うメッセージ情報を投稿する場合について説明した。しかし、印刷プロセスに他のユーザの介入を許容するタイミングは、指示ボタンをユーザが押圧するタイミングでもよい。すなわち、印刷プロセスに他のユーザの介入を許容することを、ユーザに確認するようにしてもよい。
変形例3では、チャットボットサーバ30のCPU31が、他のユーザにより投稿されたメッセージ情報について、印刷プロセスへの介入を許容するかを、確認させ、確認結果に応じて、印刷プロセスに介入させるべくメッセージ情報を取得すればよい。すなわち、チャットボットサーバ30は、指示ボタンの押圧を経由して投稿したメッセージ情報に対して、許容又は非許容をユーザに確認させる確認処理を実行する。
図19は、チャットボットサーバにより実行される確認処理の流れを示すフローチャートである。CPU31がROM32又はストレージ34から設定プログラムを読み出して、RAM33に展開して実行する。図19に示す確認処理は、指示ボタンを含めてメッセージ情報を投稿した後に実行される。なお、変形例3では、CPU31が、印刷指示したユーザAに対するメッセージ情報に、指示ボタンを含めて投稿する場合を説明する。また、ユーザAの許容設定情報がオフである場合を説明する。さらに、指示ボタンは、参加ユーザの各々が押圧可能であるものとする。
CPU31は、指示ボタンを含めてメッセージ情報を投稿した場合、その応答として、ユーザA以外の他のユーザによる指示ボタンの押下により投稿されたメッセージ情報か否かを判断する(ステップS322)。ユーザAによりメッセージ情報が投稿された場合(ステップS322で否定判断)、メッセージ情報の投稿を許容する。ユーザA以外の他のユーザによりメッセージ情報が投稿された場合(ステップS322で肯定判断)、ユーザAに対して投稿を許容することを問い合わせるメッセージ情報を投稿する(ステップS324)。CPU31は、問い合わせの応答として、ユーザAからメッセージ情報が投稿を許容する内容か否かを判断する(ステップS323)。投稿を許容する内容のメッセージ情報がユーザAより投稿された場合(ステップS326で肯定判断)、CPU31は、投稿されたメッセージ情報を許容する(ステップS328)。投稿を許容しない内容のメッセージ情報がユーザAより投稿された場合(ステップS326で否定判断)、CPU31は、投稿されたメッセージ情報を許容しない(ステップS330)。
図20は、変形例3に係るトークルーム内の投稿の様子を示す図である。
例えば、CPU31は、トークルームに、図20に示すように、写真か画像を要求するメッセージ情報M103を投稿した後に、1印刷設定を選択可能なメッセージ情報M107を投稿する。
例えば、トークルームには、図20に示すように、指示ボタンB01を含めたメッセージ情報M103が投稿される。指示ボタンB01は、トークルームに参加中のユーザが押圧可能に構成されて表示された指示ボタンである。また、図20に示すように、ユーザA以外のユーザBによる押圧の様子を示す指示図形G01も表示されている。図20に示すように、メッセージ情報M103の応答として、ユーザBにより指示ボタンB01が押圧され、ボタン押下によりユーザBが投稿することを示すメッセージ情報M230と、画像を示すメッセージ情報M232の投稿が示されている。この段階では、画像を示すメッセージ情報M232の投稿は、許容又は非許容の何れでもなく不定である。
CPU31は、投稿されたメッセージ情報M230とM232について、ユーザAに対して許容するかを問い合わせるメッセージ情報M234を投稿する。CPU31は、メッセージ情報M234の応答としてユーザAが投稿したメッセージ情報M236の内容から、ユーザBにより投稿されたメッセージ情報M230とM232を許容することを決定する。
なお、CPU31は、ステップS328で投稿を許容するとした場合、許容設定情報をオンに設定するようにし、ステップS330で投稿を許容しないとした場合、許容設定情報をオフに設定するようにしてもよい。
上記実施形態では、トークルームを提供する制御システムに本開示の技術を適用した場合を説明したが、トークルームに限定されるものではない。例えば、本開示の技術は、予め定めた実現機能を実行するシステムに適用してもよい。当該システムの一例には、物品等の予約システム及び物品等を配送する配送システム等のように対象物に対して処理を施すシステムが挙げられる。
また、上記実施形態では、トークルームサーバ20及びチャットボットサーバ30が別の装置である場合を例示した。しかし、トークルームサーバ20及びチャットボットサーバ30が一つの装置により実現されても良い。
上記の処理は、専用のハードウェア回路によっても実現することもできる。この場合には、1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
また、チャットボットサーバ30を動作させるプログラムは、USB(Universal Serial Bus)メモリ、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)等のコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、メモリ又はストレージ等に転送され記憶される。また、このプログラムは、たとえば、単独のアプリケーションソフトとして提供されてもよいし、チャットボットサーバ30の一機能としてその各装置のソフトウェアに組み込んでもよい。
以上、本開示の実施形態を説明したが、本開示の技術的範囲は上記実施形態に記載の範囲には限定されない。要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、当該変更または改良を加えた形態も開示の技術の技術的範囲に含まれる。