(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-11
(45)【発行日】2024-04-19
(54)【発明の名称】音声操作システム及び音声操作方法
(51)【国際特許分類】
G10L 13/00 20060101AFI20240412BHJP
G10L 15/00 20130101ALI20240412BHJP
G10L 15/22 20060101ALI20240412BHJP
【FI】
G10L13/00 100Z
G10L15/00 200Z
G10L15/22 300Z
(21)【出願番号】P 2022199645
(22)【出願日】2022-12-14
(62)【分割の表示】P 2018187436の分割
【原出願日】2018-10-02
【審査請求日】2022-12-14
(73)【特許権者】
【識別番号】000005049
【氏名又は名称】シャープ株式会社
(74)【代理人】
【識別番号】100112335
【氏名又は名称】藤本 英介
(74)【代理人】
【識別番号】100101144
【氏名又は名称】神田 正義
(74)【代理人】
【識別番号】100101694
【氏名又は名称】宮尾 明茂
(74)【代理人】
【識別番号】100124774
【氏名又は名称】馬場 信幸
(72)【発明者】
【氏名】近藤 克佳
【審査官】山下 剛史
(56)【参考文献】
【文献】特開2007-58432(JP,A)
【文献】特開2003-316564(JP,A)
【文献】特開2008-64885(JP,A)
【文献】特開2018-120203(JP,A)
【文献】特開2015-148648(JP,A)
【文献】特開2008-230174(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-15/34
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
操作対象装置と、音声入出力装置とが、サーバ装置を介して接続可能な音声操作システムであって、
前記操作対象装置の操作に関するユーザからの操作音声を
前記音声入出力装置から受信する
受信部と、
前記操作音声に対する応答音声を
前記音声入出力装置から出力する
出力部と、
前記操作対象装置の状態に基づく装置情報を
前記サーバ装置が前記操作対象装置から取得
可能な処理部と、
を備え、
前記
受信部が、前記ユーザからの第1操作音声を受信したとき、
前記サーバ装置に前記第1操作音声に対応する第1のインテントを送信し、併せて、前記
出力部は、前記第1操作音声に対する応答として第1応答音声を出力し、
前記処理部は、前記第1のインテントを受信したときに前記操作対象装置の前記装置情報を取得し、
前記
受信部が、前記ユーザからの前記第1操作音声を受信した後に、前記ユーザからの第2操作音声を受信したとき、
前記サーバ装置に前記第2操作音声に対応する第2のインテントを送信し、
前記処理部は、既に取得した前記装置情報に基づいて、応答音声データを生成して前記音声入出力装置に送信し、
前記
出力部は、前記第2操作音声に対する応答として
前記応答音声データに基づいて第2応答音声を出力する、
音声操作システム。
【請求項2】
前記操作対象装置は、ジョブを実行可能な画像形成装置であって、
前記
出力部は、前記第1操作音声が、前記ジョブを実行する内容の操作音声であるときは、実行するジョブの設定に関する第1応答音声を出力する請求項1に記載の音声操作システム。
【請求項3】
前記ジョブがコピージョブの場合、用紙の枚数、用紙サイズ、カラーモードの設定のうち少なくとも1つに基づく音声が第1応答音声に含まれている請求項2に記載の音声操作システム。
【請求項4】
前記
処理部は、前記装置情報として、前記用紙に関する状態に関する情報を取得する請求項3に記載の音声操作システム。
【請求項5】
前記操作対象装置は、ジョブを実行可能な画像形成装置であって、
前記
処理部は、前記装置情報に基づいて、前記ジョブを実行することができないときに、
ジョブを実行できない旨を示す応答音声データを生成する請求項1に記載の音声操作システム。
【請求項6】
前記
受信部が、前記操作対象装置を操作する意図を示す第3操作音声を受信したとき、前記
出力部は、前記第1操作音声の入力を促す第3応答音声を出力する請求項1に記載の音声操作システム。
【請求項7】
操作対象装置と、音声入出力装置とが、サーバ装置を介して接続可能な音声操作システムにおける音声操作方法であって、
前記操作対象装置の操作に関するユーザからの操作音声を前記音声入出力装置から受信する受信ステップと、
前記操作音声に対する応答音声を前記音声入出力装置から出力する出力ステップと、
前記操作対象装置の状態に基づく装置情報を前記サーバ装置が前記操作対象装置から取得可能な処理ステップと、
を備え、
前記受信ステップが、前記ユーザからの第1操作音声を受信したとき、前記サーバ装置に前記第1操作音声に対応する第1のインテントを送信し、併せて、前記出力ステップは、前記第1操作音声に対する応答として第1応答音声を出力し、
前記処理ステップは、前記第1のインテントを受信したときに前記操作対象装置の前記装置情報を取得し、
前記受信ステップが、前記ユーザからの前記第1操作音声を受信した後に、前記ユーザからの第2操作音声を受信したとき、前記サーバ装置に前記第2操作音声に対応する第2のインテントを送信し、
前記処理ステップは、既に取得した前記装置情報に基づいて、応答音声データを生成して前記音声入出力装置に送信し、
前記出力ステップは、前記第2操作音声に対する応答として前記応答音声データに基づいて第2応答音声を出力する、
音声操作方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声操作システム等に関する。
【背景技術】
【0002】
従来、画像形成装置等の装置を音声によって操作したり、稼働状況に応じて音声の入出力を変化させたりする技術が提案されている。
【0003】
例えば、操作部のボタン等を押し乍らコマンドを使用する場合の音声を登録し、次回同じコマンドを使用する時には、音声のみで操作できるようにする画像処理装置が提案されている(例えば、特許文献1参照)。また、稼動状況に応じて音声入出力ユニットからの出力音量を上げたり、音声入力を禁止したり、音声データのサンプリングレートを上げたり、音声入出力中は画像形成装置の稼動を停止するなど、音声入出力のタイミングと、画像形成装置の動作状況とを関連付けて制御する画像処理装置が提案されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2000-29585
【文献】特開2005-219460
【発明の概要】
【発明が解決しようとする課題】
【0005】
また、近年では、音声コマンドデバイスにより、ボタンやスイッチなどを使うことなく、音声により装置の操作が可能となっている。そこで、音声コマンドデバイスに対して入力された音声を装置が所定の処理を実行するためのコマンドに置き換え、装置側から、ポーリングによってコマンドを取得し、装置が所定の処理を実行することが考えられる。
【0006】
ここで、画像形成装置といった装置は、紙詰まり、用紙切れ、トナー切れといった状態(エラー)となることがある。しかし、音声コマンドデバイスや、音声コマンドデバイスを動作させるためのサーバは、装置の状態を直接検出することができない。そのため、装置の状態や能力、オプションの状態を考慮した音声応答ができないという問題がある。
【0007】
また、装置の状態を音声コマンドデバイスから出力するために、装置が所定の処理を実行したときに、又は、所定の処理が実行できなかったときに、音声コマンドデバイスを動作させるためのサーバに、実行結果とともに装置の状態を通知することが考えられる。このようにすることで、音声コマンドデバイスを動作させるためのサーバは、通知された状態に基づき、応答として、音声コマンドデバイスに、装置の状態を音声で出力させることが可能である。しかし、装置の状態を音声として出力するためには、装置は、入力された音声に基づく処理を実行しなければならない。その結果、音声コマンドデバイスによる音声応答が遅くなるという問題がある。ユーザは、装置に所定の処理を実行させるためのコマンドを、音声コマンドデバイスに音声によって入力しても、入力に対する応答が、音声コマンドデバイスからすぐに返されないことに対して、違和感を覚えることとなる。
【0008】
上述した課題に鑑み、本発明は、ユーザからコマンドを受信したときに、装置の状態を適切に出力することが可能な、システムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決するために、本発明のシステムは、
装置と、第1のサーバと、前記装置と前記第1のサーバとに接続可能な第2のサーバとを備えたシステムであって、
前記第1のサーバは、
ユーザからの音声を受信する音声受信部と、
前記音声に基づくコマンドを、前記第2のサーバに送信するコマンド送信部と、
前記第2のサーバから応答信号を受信した場合に、応答信号に基づく出力を行う出力部と、
を備え、
前記第2のサーバは、
前記第1のサーバから、第1のコマンドを受信したら、前記第1のサーバに応答信号を送信し、前記装置の状態を取得するコマンド処理部と、
前記第1のサーバから、第2のコマンドを受信したら、前記取得した装置の状態に基づいた応答信号を、前記第1のサーバに送信する状態送信部と、
を備えることを特徴とする。
【0010】
本発明の処理装置は、
装置と、コマンドを受信可能なサーバとに接続可能な処理装置であって、
前記サーバからコマンドを受信するコマンド取得部と、
前記サーバから、第1のコマンドを受信したら、前記サーバに応答信号を送信し、前記装置の状態を取得するコマンド処理部と、
前記サーバから、第2のコマンドを受信したら、前記取得した装置の状態に基づいた応答信号を、前記サーバに送信する状態送信部と、
を備えることを特徴とする。
【発明の効果】
【0011】
本発明のシステムによれば、サーバがユーザからコマンドを受信したときに、サーバに接続された装置の状態を適切に取得し、ユーザに対して出力することが可能となる。
【図面の簡単な説明】
【0012】
【
図1】第1実施形態におけるシステムの全体構成を説明するための図である。
【
図2】第1実施形態における処理の概要を示す図である。
【
図4】第1実施形態における処理と、従来例による処理との比較を示す図である。
【
図5】第1実施形態における音声入出力装置の機能構成を説明するための図である。
【
図6】第1実施形態における画像形成装置の機能構成を説明するための図である。
【
図7】第1実施形態における音声データ認識サーバの機能構成を説明するための図である。
【
図8】第1実施形態における対話サーバの機能構成を説明するための図である。
【
図10】第1実施形態におけるシーケンス図である。
【
図11】第1実施形態におけるシーケンス図である。
【
図12】第2実施形態におけるシーケンス図である。
【
図13】第2実施形態におけるシーケンス図である。
【
図14】第3実施形態におけるシーケンス図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態について、図面を参照して説明する。なお、本実施形態では、一例として、ユーザの音声に基づいて処理を実行する処理装置を画像形成装置とする、システムについて説明する。
【0014】
[1.第1実施形態]
[1.1 全体構成]
まず、第1実施形態の全体構成について説明する。
図1(a)は、音声入出力装置10と、画像形成装置20と、音声データ認識サーバ30(第1のサーバ)と、対話サーバ40(第2のサーバ)とによって構成される処理システム1を示した図である。音声入出力装置10と、画像形成装置20と、音声データ認識サーバ30と、対話サーバ40とは、ネットワークNWで接続されている。ネットワークNWとしては、例えば、インターネット等の外部ネットワークが想定されるが、LAN(Local Area Network)や、LANの代わりに他の通信可能な手段(例えば、RS-232C等のシリアルインターフェイス)によって接続されてもよい。
【0015】
音声入出力装置10は、ユーザから入力された音声を音声データとして音声データ認識サーバ30へ送信し、音声データ認識サーバ30から送信される音声データを音声として出力する装置である。画像形成装置20は、ユーザの音声に基づいて、所定の処理を実行する装置である。
【0016】
音声データ認識サーバ30は、音声入出力装置10から受信した音声データからインテントを生成し、対話サーバ40へ送信するサーバである。本実施形態におけるインテントとは、音声データとして表現された文章の意図(アクション)を表したデータである。インテントは、音声データを音声認識することで得られる文章に基づいて生成する。例えば、「MFPでコピーして」や、「この原稿を複写して」という音声データから、利用者が「コピー」をしたいという意図を有することを判定し、インテントとして、「コピー」といったデータを生成する。文章からインテントを生成する方法としては、文章に特定の語句(例えば、「コピー」)や、特定の語句の類義語(例えば、「コピー」の類義語としての「複写」)が含まれるか否かといったことや、文章の形式に基づいて生成する方法が考えられる。また、文章に含まれる情報(例えば、キーワードや、キーワードの類義語)を抽出したり、公知の自然言語処理技術を利用したり、機械学習を用いて生成する方法が考えられる。
【0017】
このように、音声データをインテントで表現することで、ユーザから入力された音声の表現の揺れに対応することが可能となる。例えば、画像形成装置20でコピーしたいことを示す発言として、「MFPでコピーして」「MFPでコピーしたい」「MFPにコピーさせたい」「MFPでこの原稿を複写して」といった表現が考えられる。これらの表現は、インテントとしては、いずれも「コピー」で表される。
【0018】
また、音声データ認識サーバ30は、音声データとして表現された文章の意図に応じたインテントを生成する。例えば、利用者によって、コピーに関する発言がされている最中に、「使い方を教えて」といった、処理システム1の使用方法に関して知りたいことを示す発言がされる場合がある。このような場合は、音声データ認識サーバ30は、使用方法を所望していることを示すインテント(例えば、「ヘルプ」)を生成し、対話サーバ40へ送信する。このようにすることで、対話サーバ40は、音声データ認識サーバ30から受信したインテントの種類に基づいて、実行する処理を変える(分岐させる)ことが可能となる。
【0019】
なお、インテントは、テキストデータであってもよいし、JSON(JavaScript Object Notation)形式や、XML(Extensible Markup Language)形式のテキストデータであってもよいし、バイナリデータであってもよい。すなわち、音声データに基づく意図を示すことができる形式であれば、どのような形式であってもよい。
【0020】
対話サーバ40は、音声データ認識サーバ30から受信したインテントに基づき、コマンドを生成するサーバである。ここで、本実施形態におけるコマンドとは、画像形成装置20によって受信されるデータをいう。コマンドは特定の機能やオプションの設定を示す文字列や数字などのコードであってもよいし、バイナリデータであってもよい。すなわち、コマンドは、画像形成装置20が、画像形成装置20において実行する処理が特定可能な形式であれば、どのような形式であってもよい。
【0021】
また、対話サーバ40は、音声データ認識サーバ30からインテントを受信したら、インテントに基づく応答を行うために、応答のためのデータを含む応答信号を音声データ認識サーバ30へ送信する。このように、ユーザによって入力された音声に対応する応答を行うことにより、ユーザとの対話を実現する。
【0022】
画像形成装置20は、対話サーバ40から1又は複数のコマンドを受信し、ジョブを実行する。本実施形態におけるジョブとは、画像形成装置20が実行する処理の単位をいう。例えば、画像形成装置20は、コピー機能を使用するというコマンドと、デフォルトの設定を用いるというコマンドから、デフォルトの設定でコピー処理を行うというジョブを実行する。
【0023】
図1(b)は、処理システム1に含まれる装置の設置場所と、装置間のデータの送受信先の関係を示した図である。処理システム1に含まれる装置の設置場所については、
図1(b)に示すように、ユーザがいる場所に、音声入出力装置10と、画像形成装置20とが設置されていればよい。音声データ認識サーバ30や、対話サーバ40は、インターネット経由で利用できる環境、いわゆる、クラウド環境に設置されていてもよいし、ユーザがいる場所に設置されていてもよい。なお、本実施形態では、音声データ認識サーバ30及び対話サーバ40は、クラウド環境に設置されていることとして説明する。
【0024】
また、装置間のデータの送受信先の関係については、音声入出力装置10から音声データ認識サーバ30へ音声データを送信し、音声データ認識サーバ30は音声データに基づくインテントを生成し、対話サーバ40へ送信する。対話サーバ40は、インテントに基づくコマンドを生成し、コマンドキューに記憶する。
【0025】
画像形成装置20は、コマンドキューに記憶されたコマンドを、ポーリングによって取得する。具体的には、画像形成装置20は、対話サーバ40に対して、定期的にコマンド要求を送信する。コマンド要求を受信した対話サーバ40は、コマンド要求を送信した画像形成装置20に対して、コマンドを送信する。そして、コマンドを受信した画像形成装置20は、コマンドに基づくジョブが実行可能であればジョブを実行する。なお、画像形成装置20がコマンドを取得する方法としては、上述した方法以外の方法であってもよい。例えば、ロングポーリングや、ソケット通信によるクラウド(例えば、対話サーバ40)からのプッシュ送信であってもよい。
【0026】
また、画像形成装置20は、コマンドの取得に対して、応答として、画像形成装置20の状態(例えば、用紙切れや、紙詰まりといったエラー状態や画像形成装置20の能力を示す能力情報・画像形成装置20のオプションの状態を示すオプション情報といったステータス)を示した状態データを、対話サーバ40に対して送信する。状態データは、文字列や数字の組み合わせによって示されるコードであってもよいし、状態を示す文字情報(例えば、「用紙切れです」)であってもよいし、状態の情報を含んだバイナリデータであってもよい。また、状態データは、所定の状態となった時刻や、所定の状態となってからの経過時間や、所定の状態の原因となったジョブの情報といった付加的な情報を、状態データに含めてもよい。また、紙詰まりとトナー切れとが発生しているといったように、画像形成装置20が複数の状態が複合する場合には、複数の状態を示す情報を状態データとしてもよい。また能力情報としては、例えばカラー印刷の可否など後から変更できない機能の情報を含み、オプション情報としては、例えばステープル機能の有無など後付けが可能な機能の情報を含んでもよい。
【0027】
そして、対話サーバ40は、画像形成装置20から状態データを受信したら、受信した状態データを状態データ記憶領域に記憶する。このように、対話サーバ40は、1回目のインテント(第1のコマンド)に基づくコマンドを生成したら、画像形成装置20から送信される状態データを受信(取得)する。そして、2回目のインテント(第2のコマンド)を受信したら、対話サーバ40は、画像形成装置20の状態データに基づき、応答信号として、状態データに基づく応答を示すデータを音声データ認識サーバ30に送信する。このようにすることで、対話サーバ40は、1回目のインテントを受信したタイミングで、画像形成装置20から状態データを取得することができる。したがって、2回目のインテントを受信したタイミングで、状態データに基づき、画像形成装置20の状態に応じた応答が可能となる。なお、2回目以降のインテントを受信したタイミングにおいても、すでに画像形成装置20の状態データが状態データ記憶領域に記憶されている状態であるため、画像形成装置20の状態に応じた応答が可能となる。したがって、本実施形態では、2回目以降のインテントを受信した場合であっても、2回目のインテント(第2のコマンド)を受信した場合であるとする。
【0028】
なお、画像形成装置20は、対話サーバ40からのコマンドの受信のタイミングに状態データを対話サーバ40へ送信しない構成としてもよい。例えば、対話サーバ40の処理の状況に関わらず、画像形成装置20は、対話サーバ40に対して、状態データを送信(プッシュ)してもよい。また、対話サーバ40が、画像形成装置20に対して、状態データを取得する要求を送信し、対話サーバ40から、状態データを受信してもよい。
【0029】
[1.2 処理の概要]
図2を参照して、本実施形態における処理の概要を説明する。
図2は、ユーザU1が、画像形成装置20(MFP(Multifunction Peripheral))でコピーを指示する場合における処理を示した図である。なお、画像形成装置20は、用紙切れの状態であるとして説明する。
【0030】
T1:Say "Copy"
ユーザU1が「MFPでコピーして」と発言することにより、音声入出力装置10に対して、画像形成装置20においてコピーの実行に対応するコマンドを含む音声で入力する。
T2:Voice to cloud "Copy"
音声入出力装置10は、ユーザU1の「MFPでコピーして」の音声を音声データに変換して、クラウド環境にある音声データ認識サーバ30へ送信する。
T3:Voice to intent
音声データ認識サーバ30は、音声データに基づいてインテントを生成する。すなわち、ユーザU1によるコマンドを含む音声を、コマンドを表現した形式として、インテントという形式で表現する。そして、音声データ認識サーバ30は、生成したインテントを対話サーバ40へ送信する。例えば、「MFPでコピーして」という音声データについて、「コピー」というインテントを生成する。
【0031】
つづいて、音声データ認識サーバ30からインテントを受信した対話サーバ40は、以下のT4a~T6aと、T4b~T6bの処理を並行して実行する。
はじめに、T4a~T6aの処理について説明する。
T4a:Respond with utterance
インテントを受信した対話サーバ40は、発言に対する応答として、デフォルトの設定でコピーを行うかを問い合わせる応答テキストデータを生成して、音声データ認識サーバ30へ送信する。すなわち対話サーバ40は、応答テキストデータを応答信号として、音声データ認識サーバ30に送信する。
T5a:Respond with voice "Copy with default setting?"
音声データ認識サーバ30は、対話サーバ40から受信した応答テキストデータに基づき、音声データ(「設定はデフォルト?」とユーザに問い合わせる音声を出力するための音声データ)を生成し、音声入出力装置10に送信する。
T6a:Say "Copy with default setting?"
音声入出力装置10は、対話サーバ40から受信した音声データを音声出力する。この結果、音声入出力装置10からは、「設定はデフォルト?」という音声が出力される。
【0032】
次に、T4b~T6bの処理について説明する。
T4b:Intent to command
対話サーバ40は、インテントからコマンドを生成する。生成したコマンドは、コマンドを記憶する領域であるコマンドキューに記憶される。例えば、「コピー」というインテントから、「コピー」のコマンドを生成する。
T5b:Polling to get the command to execute "Copy"
画像形成装置20は、ポーリングによって、対話サーバ40のコマンドキューからコマンドを受信する。
T6b:Respond with MFP Status
画像形成装置20は、コマンドに基づくジョブが実行可能であればジョブを実行し、実行可能でない場合はジョブを実行しない。そして、画像形成装置20は、コマンドの受信の応答として、ジョブの実行結果データと、画像形成装置20が用紙切れの状態を示す状態データとを対話サーバ40へ送信する。対話サーバ40は、受信した状態データを、状態データ記憶領域に記憶する。
【0033】
つづいて、ユーザU1が、音声入出力装置10による「設定はデフォルト?」という音声出力に対して、ユーザU1が発言をしたときの処理の概要について説明する。
T7:Say "Yes"
ユーザU1が「はい」と発言する。
T8:Voice to cloud "Yes"
音声入出力装置10は、ユーザU1の「はい」の音声を音声データに変換して、クラウド環境にある音声データ認識サーバ30へ送信する。
T9:Voice to intent
音声データ認識サーバ30は、音声データに基づいてインテントを生成し、対話サーバ40へ送信する。例えば、ユーザU1の「はい」という音声データに対して、肯定の回答を示す「肯定」インテントを生成する。
T10:Respond with utterance
インテントを受信した対話サーバ40は、状態データ記憶領域に記憶されている状態データを読み出し、発言に対する応答として、画像形成装置20が用紙切れであることを示す応答テキストデータを生成して、音声データ認識サーバ30へ送信する。すなわち、対話サーバ40は、画像形成装置20の状態に関する情報(状態データ)に基づく応答テキストデータを応答信号として、音声データ認識サーバ30に送信する。なおこのとき、対話サーバ40は、1回目のインテントを受信したときと同様に、応答テキストデータの生成と並行して、コマンドを生成してもよい。例えば、対話サーバ40は、「設定はデフォルト?」という問い合わせに対して、「肯定」インテントを受信した場合は、「設定はデフォルト」といったコマンドを生成してもよい。
T11:Respond with voice "Paper is out"
音声データ認識サーバ30は、対話サーバ40から受信した応答テキストデータに基づき、音声データ(「用紙切れです」と音声出力するための音声データ)を生成し、応答を行う。
T12:Say "Paper is out"
音声入出力装置10は、対話サーバ40から受信した音声データを音声出力する。この結果、音声入出力装置10からは、「用紙切れです」という音声が出力される。
【0034】
本実施形態では、対話サーバ40が、音声データ認識サーバ30から1回目のインテント(第1のコマンド、上述の例では「コピー」)を受信したとき(T3)に、応答テキストデータの生成(T4a)及びコマンドの生成(T4b)をする。対話サーバ40が生成したコマンドを受信した画像形成装置20は、状態データを対話サーバ40へ送信する。対話サーバ40が、音声データ認識サーバ30から2回目のインテント(第2のコマンド、上述の例では「肯定」)を受信したとき(T9)に、既に対話サーバ40から送信された状態データに基づく応答テキストデータを生成することができる(T10)。すなわち、対話サーバ40は画像形成装置20の状態を問い合わせたり、取得したりするといった処理を実行することなく、画像形成装置20の状態に関する応答が可能となる。したがって、ユーザU1の1回目の発言である「MFPでコピーして」に対する応答である「設定はデフォルト?」を音声入出力装置10が出力している間に、対話サーバ40は、画像形成装置20の状態が取得できる。したがって、ユーザU1の2回目の発言である「はい」に対する応答として、「用紙切れです」と応答することが可能となる。
【0035】
図3は、従来の場合(従来例)の処理の概要を示した図である。ここで、従来の場合の処理におけるT4~T6は、
図2のT4a~T6aと同じである。また、従来の場合の処理におけるT1~T9は、
図2と同様なので説明を省略し、T10~T15の処理について説明する。
T10:Intent to command
対話サーバ40は、音声データ認識サーバ30から受信したインテントに基づき、コマンドを生成し、コマンドキューに記憶する。
T11:Polling to get the command to execute "Copy"
画像形成装置20は、対話サーバ40のコマンドキューからポーリングによってコマンドを取得する。
T12:Respond with MFP Status
画像形成装置20は、コマンドの受信の応答として、画像形成装置20が用紙切れの状態を示す状態データとを対話サーバ40へ送信する。対話サーバ40は、受信した状態データを、状態データ記憶領域に記憶する。
T13:Respond with utterance
対話サーバ40は、発言に対する応答として、画像形成装置20が用紙切れであることを示す応答テキストデータを生成して、音声データ認識サーバ30へ送信する。
T14:Respond with voice "Paper is out"
音声データ認識サーバ30は、対話サーバ40から受信した応答テキストデータに基づき、音声データ(「用紙切れです」と音声出力するための音声データ)を生成し、応答を行う。
T15:Say "Paper is out"
音声入出力装置10は、対話サーバ40から受信した音声データを音声出力する。この結果、音声入出力装置10からは、「用紙切れです」という音声が出力される。
【0036】
このように、従来の場合は、ユーザが音声入出力装置10に対して「はい」と発言したあと、応答が返されるまでの処理として、画像形成装置20からのポーリングが処理に含まれるため、レスポンスが遅くなる。
【0037】
図4は、従来の場合と、本実施形態の場合とでの処理を、時系列に沿って並べて示したものである。なお、
図4に付した符号は、
図2及び
図3と対応する。
【0038】
ここで、ユーザが「MFPでコピーして」と発言するのに2秒かかり、音声入出力装置10が音声データをクラウド環境に送信するのに1秒かかり、音声入出力装置10が応答の音声データをクラウド環境から受信するのに1秒かかり、音声入出力装置10が応答として「設定はデフォルト?」と音声出力するのに2秒かかり、ユーザが「はい」と発言するのに1秒かかり、音声入出力装置10が再度音声データをクラウド環境へ送信するのに1秒かかることとする。また、画像形成装置20にコマンドが送信され、画像形成装置20から実行結果データや状態データが受信されるのに2秒かかるとする。また、再度の応答の音声データがクラウド環境から受信されるのに1秒かかるとする。
【0039】
従来の場合は、ユーザが「はい」と発言してから、音声データのクラウド環境への送信、画像形成装置20からの状態データの受信、再度の応答の音声データのクラウド環境からの受信の処理が行われる。したがって、ユーザが「はい」と発言してから、音声入出力装置10が応答するまでの空白時間が4秒あることとなる。
【0040】
一方で、本実施形態では、「MFPでコピーして」という音声データがクラウド環境に送信されたあと、音声入出力装置10が応答の音声データをクラウド環境から受信する処理と並行して、画像形成装置20から状態データを受信される処理が非同期に実行される。このため、ユーザが「はい」と発言したら、音声データのクラウド環境への送信と、画像形成装置20から受信した状態データに基づく再度の応答の音声データのクラウド環境からの受信の処理とが行われる。したがって、ユーザが「はい」と発言してから、音声入出力装置10が応答するまでの空白時間は2秒となる。
【0041】
このように、従来の場合と比べ、本実施形態の場合は、対話サーバ40の状態を応答する場合における空白時間が短縮することが可能となり、レスポンスが早く、ユーザビリティの良い応答が可能となる。
【0042】
[1.3 機能構成]
[1.3.1 音声入出力装置]
音声入出力装置10の機能構成について、
図5を参照して説明する。
図5に示すように、音声入出力装置10は、制御部100と、音声入力部110と、音声出力部120と、通信部130と、記憶部140とを備えて構成されている。
【0043】
制御部100は、音声入出力装置10の全体を制御するための機能部である。制御部100は、各種プログラムを読み出して実行することにより各種機能を実現しており、例えば、1又は複数の演算装置(CPU(Central Processing Unit))等により構成されている。
【0044】
音声入力部110は、音声入力装置(例えば、マイク)から入力された音声を音声データに変換して制御部100へ出力する機能部である。また、音声出力部120は、音声データを音声信号に変換し、音声出力装置(例えば、スピーカー)によって音声を出力する機能部である。
【0045】
通信部130は、音声入出力装置10が外部機器と通信を行うための機能部である。例えば、通信部130は、無線LANで利用されるNIC(Network Interface Card)や、LTE(Long Term Evolution)/LTE-A(LTE-Advanced)/LAA(License-Assisted Access using LTE)/5G回線に接続可能な通信モジュールにより構成される。
【0046】
記憶部140は、音声入出力装置10の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部140は、例えば、半導体メモリであるSSD(Solid State Drive)や、HDD(Hard Disk Drive)等により構成される。また、記憶部140には、音声入力部110から出力される音声データを記憶する領域である音声データ記憶領域142が確保される。
【0047】
[1.3.2 画像形成装置]
画像形成装置20の機能構成について、
図6を参照して説明する。
図6に示すように、画像形成装置20は、制御部200と、画像入力部210と、画像形成部220と、操作入力部230と、表示部240と、通信部250と、記憶部260とを備えて構成されている。
【0048】
制御部200は、画像形成装置20の全体を制御するための機能部である。制御部200は、各種プログラムを読み出して実行することにより各種機能を実現しており、例えば、1又は複数の演算装置(CPU)等により構成されている。
【0049】
画像入力部210は、画像形成装置20に入力される画像データを読み取るための機能部である。画像入力部210は、原稿の画像を読み取るスキャナと接続され、スキャナから出力される画像データを読み取る。また、画像入力部210は、通信部250を介して他の端末からの画像データの入力(受信)を受け付けたり、他にもUSBメモリや、SDカード等の記憶媒体から原稿データを受け付けたりしてもよい。
【0050】
画像形成部220は、画像データに基づく出力データを記録媒体(例えば記録用紙)に形成するための機能部である。画像形成部220は、例えば電子写真方式を利用したレーザプリンタ等により構成されている。
【0051】
操作入力部230は、ユーザによる指示を受け付けるための機能部であり、各種キースイッチや、接触による入力を検出する装置等により構成されている。また、表示部240は、ユーザに各種情報を報知するための機能部であり、例えばLCD(Liquid Crystal Display)等により構成されている。なお、画像形成装置20は、操作入力部230と、表示部240とが一体に形成されているタッチパネルを備えてもよい。この場合において、タッチパネルの入力を検出する方式は、例えば、抵抗膜方式、赤外線方式、電磁誘導方式、静電容量方式といった、一般的な検出方式であればよい。
【0052】
通信部250は、画像形成装置20が外部機器と通信を行うための機能部である。例えば、通信部250は、無線LANで利用されるNICや、LTE/LTE-A/LAA/5G回線に接続可能な通信モジュールにより構成される。
【0053】
記憶部260は、画像形成装置20の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部260は、例えば、半導体メモリであるSSDや、HDD等により構成される。また、記憶部260には、画像形成装置20の状態を示す状態データを記憶する領域である状態データ記憶領域262が確保される。状態データは、画像形成装置20の状態が変化するときに(例えば、紙詰まりの状態となったとき)、制御部200によって生成され、状態データ記憶領域262に記憶される。
【0054】
[1.3.3 音声データ認識サーバ]
音声データ認識サーバ30の機能構成について、
図7を参照して説明する。
図7に示すように、音声データ認識サーバ30は、制御部300と、通信部310と、記憶部320とを備えて構成されている。
【0055】
制御部300は、音声データ認識サーバ30の全体を制御するための機能部である。制御部300は、各種プログラムを読み出して実行することにより各種機能を実現しており、例えば、1又は複数の演算装置(CPU)等により構成されている。
【0056】
通信部310は、音声データ認識サーバ30が外部機器と通信を行うための機能部である。例えば、通信部310は、無線LANで利用されるNICや、LTE/LTE-A/LAA/5G回線に接続可能な通信モジュールにより構成される。
【0057】
記憶部320は、音声データ認識サーバ30の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部320は、例えば、半導体メモリであるSSDや、HDD等により構成される。また、記憶部320には、音声入出力装置10から受信した音声データを記憶する領域である音声データ記憶領域322と、対話サーバ40とのデータの送受信を行う連携アプリ324が記憶される。
【0058】
ここで、制御部300は、記憶部320に記憶されたソフトウェア(プログラム)を実行することにより、音声データ認識部302、インテント生成部304、音声データ生成部306として機能する。また、制御部300は、連携アプリ324を実行することにより、連携部308として機能する。
【0059】
音声データ認識部302は、音声データを認識し、文字情報として制御部300に出力する機能部である。音声データを認識する方法は、周知の音声認識技術を用いればよい。なお、音声データ認識部302が出力する文字情報を「音声認識データ」という。
【0060】
インテント生成部304は、音声認識データに基づきインテントを生成し、制御部300に出力する機能部である。音声認識データからインテントを生成する方法は、例えば、あらかじめユーザの発言のパターンを記憶し、発言のパターンと音声認識データと比較することにより生成する。例えば、インテント生成部304は、画像形成装置20が実行すべきジョブを指定するパターンとして「<ジョブ>して」というパターンを記憶する。音声認識データが「コピーして」であれば、ジョブを抽出するためのパターンと比較することで、パターンの<ジョブ>には、発言のうち「コピー」が対応することを特定することができる。このようにして、インテント生成部304は、「コピーして」という音声認識データから、コピーを行うことを示すインテントを生成することができる。なお、パターンとして、他にも「<ジョブ>したい」「<ジョブ>させたい」といったパターンを記憶することにより、ユーザの発言の揺れに対応することができる。
【0061】
また、ジョブの設定に関するパターンとして、「<枚数>だけコピーしたい」、「<用紙サイズ>の用紙にコピーしたい」、「<カラーモード>でコピーしたい」といったパターンを記憶して、設定に関するインテントが生成されてもよい。また、「はい」や「いいえ」といった二者択一の質問に対する答えのパターンを記憶して、ユーザの選択に関するインテントが生成されてもよい。
【0062】
なお、インテントを生成する方法としては、音声データ認識部302から出力される文字情報に所定のキーワードが含まれるか否かを判定することにより生成してもよい。また、文字情報を構文解析して、所定の情報を抽出し、インテントを生成してもよいし、機械学習を用いて生成してもよい。
【0063】
音声データ生成部306は、対話サーバ40から受信する応答テキストデータに基づき、ユーザの発言に対する応答として出力する音声データを生成する機能部である。応答を示すデータは、例えば、応答として出力する音声を文字で表した文字情報である。文字情報から音声データを生成する方法は、周知の音声合成技術を用いればよい。
【0064】
連携部308は、インテントを対話サーバ40に送信したり、対話サーバ40から応答テキストデータを受信したりすることで、音声データ認識サーバ30と対話サーバ40とを連携させる機能部である。
【0065】
[1.3.4 対話サーバ]
対話サーバ40の機能構成について、
図8を参照して説明する。
図8に示すように、対話サーバ40は、制御部400と、通信部410と、記憶部420とを備えて構成されている。
【0066】
制御部400は、対話サーバ40の全体を制御するための機能部である。制御部400は、各種プログラムを読み出して実行することにより各種機能を実現しており、例えば、1又は複数の演算装置(CPU)等により構成されている。
【0067】
通信部410は、対話サーバ40が外部機器と通信を行うための機能部である。例えば、通信部410は、無線LANで利用されるNICや、LTE/LTE-A/LAA/5G回線に接続可能な通信モジュールにより構成される。
【0068】
記憶部420は、対話サーバ40の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部420は、例えば、半導体メモリであるSSDや、HDD等により構成される。また、記憶部420には、画像形成装置20から受信した状態データを記憶する領域である状態データ記憶領域422と、後述するコマンド生成部402によって生成されるコマンドを記憶するコマンドキュー424が確保される。
【0069】
ここで、制御部400は、記憶部420に記憶されたソフトウェア(プログラム)を実行することにより、コマンド生成部402及び応答テキスト生成部404として機能する。
【0070】
コマンド生成部402は、インテントに基づいて、コマンドを生成し、コマンドキュー424に出力する機能部である。コマンドの生成は、例えば、キーワードとコマンドとの対応を示すデータをあらかじめ記憶し、インテントにキーワードが含まれる場合は、抽出したキーワードに対応するコマンドを生成すればよい。
【0071】
応答テキスト生成部404は、インテントや、状態データ記憶領域422に記憶されている状態データに基づいて、応答の内容を示す文字情報である応答テキストデータを生成する機能部である。例えば、画像形成装置20が実行すべきジョブを指定するインテントに対して、「設定はデフォルト?」、「コピーする用紙の枚数は?」、「拡縮率は?」といった応答テキストデータを生成する。また、状態データ記憶領域422に状態データが記憶されている場合は、「紙詰まりです」、「用紙切れです」といったように、状態データに基づく応答テキストデータを生成する。画像形成装置20が所定のジョブを実行する場合は、「コピーを行っています」といった応答テキストデータを生成する。なお、ユーザが、「使い方を教えて」といったような、使い方の説明要求を示すインテントを受信した場合は、処理システム1の使い方に関する応答テキストデータを生成してもよい。
【0072】
[1.4 処理の流れ]
つづいて、図を参照して、処理の流れを説明する。なお、
図9と、
図10は、状態データ記憶領域422に状態データが記憶されていない場合における処理であり、主に、ユーザの1回目の発言に対する処理である。
図11は、状態データ記憶領域422に状態データが記憶されている場合の処理であり、主に、ユーザの2回目以降の発言に対する処理である。
【0073】
はじめに、
図9を参照して、音声入出力装置10の音声入力部110は、ユーザが入力した音声を、音声データとして、音声データ記憶領域142に記憶する(S102)。そして、音声入出力装置10は、音声データ記憶領域142に記憶された音声データを、通信部130を介して、音声データ認識サーバ30へ送信する(S104)。
【0074】
音声データ認識サーバ30の制御部300は、通信部310を介して音声入出力装置10から受信した音声データを、音声データ記憶領域322に記憶する(S106)。つづいて、制御部300は、音声データを音声データ認識部302に入力することで、音声データ認識部302を介して音声データを認識する(S108)。また、制御部300は、音声データ認識部302によって生成される認識結果データをインテント生成部304に入力することで、インテント生成部304を介してインテントを生成する(S110)。そして、連携部308は、インテント生成部304によって生成されるインテントを、通信部310を介して対話サーバ40へ送信する(S112)。
【0075】
つづいて、
図10を参照して、対話サーバ40の制御部400は、インテントを応答テキスト生成部404に入力することで、応答テキスト生成部404を介して、応答テキストデータを生成する(S122)。制御部400は、応答テキスト生成部404によって生成された応答テキストデータを、通信部410を介して、音声データ認識サーバ30へ送信する(S124)。音声データ認識サーバ30の連携部308は、応答テキストデータを音声データ生成部306に入力することで、応答用の音声データ(応答音声データ)を生成する(S126)。そして、連携部308は、音声データ生成部306によって生成された応答音声データを、通信部310を介して音声入出力装置10へ送信する(S128)。音声入出力装置10の音声出力部120は、応答音声データを音声として出力する(S130)。
【0076】
また、対話サーバ40の制御部400は、インテントをコマンド生成部402に入力することで、コマンド生成部402を介して、コマンドを生成する(S132)。制御部400は、コマンド生成部402によって生成されたコマンドを、コマンドキュー424に記憶する(S134)。
【0077】
一方で、画像形成装置20は、コマンドキュー424に記憶されたコマンドを取得するために、定期的にポーリングを行う。なお、ポーリングは、制御部200が、通信部250を介して、コマンド要求を対話サーバ40に送信することによって行う(S136)。制御部400は、コマンド要求を受信したら、コマンドキュー424に記憶されているコマンドを、通信部410を介して、画像形成装置20へ送信する(S138)。
【0078】
制御部200は、対話サーバ40から受信したコマンドについて、コマンドに基づくジョブが実行可能であれば、ジョブを実行する。そして、制御部200は、実行結果データとともに、状態データ記憶領域262に記憶されている状態データを、通信部250を介して、対話サーバ40へ送信する(S140)。対話サーバ40の制御部400は、画像形成装置20から受信した状態データを、状態データ記憶領域422に記憶する(S142)。
【0079】
ここで、S122と、S132とは、インテントの受信を契機として、非同期に実行する。このようにすることで、S122~S130の処理と、S132~S142の処理とが、並行して実行される。このようにすることで、ユーザに対する応答を行いながら、対話サーバ40が画像形成装置20の状態データを取得することが可能となる。
【0080】
つづいて、
図11を参照して、音声入出力装置10の音声入力部110は、ユーザが入力した音声を、音声データとして、音声データ記憶領域142に記憶する(S162)。そして、音声データ記憶領域142に記憶された音声データを、通信部130を介して、音声データ認識サーバ30へ送信する(S164)。音声データ認識サーバ30は、音声入出力装置10から受信した音声データを音声データ記憶領域322に記憶する(S166)。そして、音声データ認識部302による音声データの認識と、インテント生成部304による認識結果に基づくインテントの生成を行う(S168→S170)。また、連携部308は、インテントを、対話サーバ40へ送信する(S172)。
【0081】
対話サーバ40の制御部400は、インテントを受信したら、状態データ記憶領域422に記憶されている状態データを読み出す(S174)。そして、制御部400は、応答テキスト生成部404を介して、状態データに基づく応答テキストデータを生成する(S176)。制御部400は、応答テキストデータを、通信部410を介して、音声データ認識サーバ30へ送信する(S178)。
【0082】
連携部308は、応答テキストデータを音声データ生成部306に入力することで、応答用の音声データである応答音声データを生成する(S180)。また、連携部308は、応答音声データを、通信部310を介して、音声入出力装置10へ送信する(S182)。音声入出力装置10の音声出力部120は、応答音声データを音声として出力する(S184)。
【0083】
なお、音声データ認識サーバ30から2回目のインテントを受信し、応答テキスト生成部404が状態データに基づく応答テキストデータを生成する場合であっても、コマンド生成部402は、インテントに基づくコマンドを生成し、コマンドキュー424に記憶する。このようにすることで、2回目のインテントを受信した場合であっても、コマンド生成部402は、受信したインテントに基づき、コマンドを生成することが可能となる。また、生成されたコマンドは、画像形成装置20によって取得される。画像形成装置20はジョブの実行に必要なコマンドが取得できた時点で、ジョブを実行する。また、画像形成装置20は、対話サーバ40からコマンドを受信した場合には、状態データを送信する。したがって、対話サーバ40は、画像形成装置20の状態データを更新することができ、適切な応答テキストデータを生成することが可能となる。
【0084】
なお、ユーザの音声に基づいて所定の処理を実行する処理装置が画像形成装置20であることとして説明したが、処理装置は画像形成装置以外であってもよい。すなわち、処理装置は、ユーザとの対話によって所定の処理を実行し、所定の状態を有する装置であれば、本実施形態を適用することが可能である。例えば、処理装置が、デジタルサイネージのための表示装置とした場合、表示装置に表示されるコンテンツを音声によって制御し、コンテンツの状態(例えば表示を所望するコンテンツの有無)を音声によって出力してもよい。また、処理装置として、遠隔会議を行うための端末装置とした場合、端末装置に接続されているカメラの接続状態を、音声によって出力してもよい。
【0085】
本発明によれば、第2のサーバは、第1のサーバから送信された第1のコマンドを受信したときに、第1のサーバに応答信号を送信し、並行して装置の状態を取得する。そして、第2のサーバは、第1のサーバから送信された第2のコマンドを受信したときに、既に取得している装置の状態に基づく応答信号を第1のサーバに送信する。そして、第1のサーバによって、応答信号に基づく出力がされる。このため、ユーザから、1回目の音声に対する応答に基づく2回目の音声を受信したときに、1回目の音声を受信した際に第2のサーバによって取得された装置の状態を送信することができる。ユーザが音声コマンドデバイスを使用する場合は、2回目の音声を入力したときに、音声コマンドデバイスからあらかじめ取得済みの装置の状態が速やかに出力される。このようにして、レスポンスが早く、ユーザビリティのよい応答が可能となる。また、ユーザは、応答がすぐに返されないことに対して違和感を覚えるといったことを避けることができる。
【0086】
[2.第2実施形態]
つづいて第2実施形態について説明する。第2実施形態は第1実施形態と異なり、ユーザの発言が、コピー等の具体的な処理に対応するコマンドに関する発言でなくても、画像形成装置20を操作する意図を示す発言である場合に、画像形成装置20が状態データを対話サーバ40に送信する実施形態である。本実施形態は、第1実施形態の
図9と
図10とを、
図12と
図13とに置き換えたものである。なお、同一の機能部及び処理には同一の符号を付し、説明については省略する。
【0087】
図を参照して、処理の流れを説明する。はじめに、
図12を参照して、音声データ認識サーバ30は、音声入出力装置10から受信した音声データに基づきインテントを生成し、インテントを対話サーバ40へ送信する(S102~S112)。
【0088】
なお、ここでは、ユーザは、画像形成装置20を操作する意図を示す発言をすることとして説明する。また、インテント生成部304は、画像形成装置20を操作する意図を示すインテントを生成する。そして、連携部308は、アプリの起動を意図するインテントを対話サーバ40へ送信する。画像形成装置20を操作する意図を示す発言は、例えば、「MFPを使いたい」「MFPを呼出し」「MFPを起動して」「MFPを開いて」等が考えられる。すなわち、画像形成装置20を操作(使用)する意図を示す内容の発言ではあるものの、具体的にどのような処理を実行したいかが示されていない発言である。
【0089】
つづいて、制御部400は、音声データ認識サーバ30から受信したインテントが、どの種類のインテントであるかを判定する(S202)。インテントの種類が、画像形成装置20を操作する意図を示すインテントである場合は、コマンド生成部402は、画像形成装置20に対して、画像形成装置20の状態の送信を要求するコマンドである「状態の送信」といったコマンドを生成する(S204)。また、制御部400は、コマンド生成部402によって生成されたコマンドを、コマンドキュー424に記憶する(S206)。なお、S202においてインテントの種類を判定した結果、インテントが具体的な処理の実行を示すインテント(例えば、「コピー」)である場合は、第1実施形態に示すように、コマンド生成部402は、具体的な処理に対応するコマンドを生成すればよい。
【0090】
また、応答テキスト生成部404は、応答テキストデータを生成する(S208)。この時点では、ユーザが、画像形成装置20に対してどのような操作を行うかが明確になっていないため、応答テキストデータとして、ユーザに操作に関する発言を促すテキストデータを生成すればよい。例えば、応答テキスト生成部404は、「どのような処理をしたいですか?」といった応答テキストデータを生成する。
【0091】
制御部400は、通信部410を介して、応答テキストデータを音声データ認識サーバ30に送信する(S210)。音声データ認識サーバ30の連携部308は、音声データ生成部306を介して、応答テキストデータに基づく応答音声データを生成し、音声入出力装置10へ送信する(S212→S214)。音声入出力装置10の音声出力部120は、応答音声データを音声として出力する(S216)。
【0092】
なお、第1実施形態と同様に、制御部400は、コマンドの生成(S204)と、応答テキストの生成(S208)とは、非同期に実行してもよい。
【0093】
つづいて、
図13を参照して、画像形成装置20は、コマンドキュー424に記憶されたコマンドを取得するために、定期的にコマンド要求を対話サーバ40に送信することで、コマンドの取得のためのポーリングを行う(S136)。制御部400は、コマンド要求を受信したら、コマンドキュー424に記憶されているコマンドを、通信部410を介して、画像形成装置20へ送信する(S138)。
【0094】
画像形成装置20の制御部200は、対話サーバ40からコマンドを受信したら、どのコマンドを受信したかを判定する(S218)。そして、受信したコマンドが「状態の送信」である場合は、制御部200は、状態データ記憶領域262に記憶されている状態データを、通信部250を介して、対話サーバ40へ送信する(S140)。対話サーバ40は、画像形成装置20から受信した状態データを、状態データ記憶領域422に記憶する(S142)。なお、この時点で、対話サーバ40には、画像形成装置20の状態データが記憶されているため、さらにユーザによる発言がされた場合は、
図11に示したS162~S184の処理を実行すればよい。なお、受信したコマンドが「状態の送信」ではない場合は、第1実施形態と同様に、制御部200は、対話サーバ40から受信したコマンドについて、コマンドに基づくジョブが実行可能であれば、ジョブを実行する。そして、制御部200は、実行結果データとともに、状態データ記憶領域262に記憶されている状態データを、通信部250を介して、対話サーバ40へ送信する。
【0095】
このようにすることで、音声入出力装置10による音声出力(例えば、「どのような処理をしたいですか?」)に対するユーザの応答(例えば、「コピーがしたい」)がされたとき、対話サーバ40は、画像形成装置20の状態に基づく応答をすることが可能となる。
【0096】
本実施形態によれば、1回目の対話によって特定のコマンドが生成されない場合であっても、2回目の対話において、画像形成装置20の状態を応答として返すことが可能となる。
【0097】
[3.第3実施形態]
つづいて第3実施形態について説明する。第3実施形態は第1実施形態と異なり、生成したコマンドが、状態データと関係するか否か、すなわち、画像形成装置20の状態が、コマンドに基づくジョブが実行可能か否かによって、応答を変える実施形態である。本実施形態は、第1実施形態の
図11を、
図14に置き換えたものである。なお、同一の機能部及び処理には同一の符号を付し、説明については省略する。
【0098】
図を参照して、処理の流れを説明する。なお、すでに、状態データ記憶領域422には、状態データが記憶されていることとする。
図14を参照して、コマンド生成部402は、音声データ認識サーバ30からインテントを受信したら、インテントに基づきコマンドを生成する(S362)。そして、制御部400は、状態データ記憶領域422に記憶されている状態データと生成されたコマンドとを比較し、状態データがコマンドと関係するか否かを判定する(S364)。本実施形態において、状態データがコマンドと関係する場合とは、画像形成装置20の状態(例えば、エラー状態)が、コマンド生成部402によって生成されたコマンドに基づくジョブの実行に影響を与える場合をいう。すなわち、状態データがコマンドと関係する場合は、画像形成装置20が、画像形成装置20の状態により、コマンドに基づくジョブが実行可能でない場合をいう。例えば、画像形成装置20が用紙切れの場合、コピーコマンドに基づくコピージョブの実施ができない。したがって、画像形成装置20が用紙切れという状態は、コピーコマンドに関係する。一方で、スキャンコマンドに基づくスキャンジョブは、用紙切れであっても実行可能であるため、画像形成装置20が用紙切れという状態は、スキャンコマンドには関係しない。
【0099】
状態データがコマンドと関係する場合は、応答テキスト生成部404は、状態データに基づく応答テキストデータを生成する(S366)。また、制御部400は、応答テキストデータを音声データ認識サーバ30に送信する(S368)。
【0100】
また、状態データがコマンドと関係しない場合は、応答テキスト生成部404は、ユーザに発言を促す応答テキストデータを生成したり、画像形成装置20がジョブを実行していることを示す応答テキストデータを生成したりする(S370)。また、制御部400は、応答テキストデータを音声データ認識サーバ30に送信する(S372)。
【0101】
このようにして、画像形成装置20の状態がコマンドに関係するか否かによって、応答テキストデータ(応答信号)を変えることが可能である。また、制御部400は、状態データ記憶領域422に記憶されている状態データに基づき、画像形成装置20の状態が、S362で生成したコマンドと関係する場合は、生成されたコマンドを画像形成装置20へ送信しないようにしてもよい。例えば、制御部400は、画像形成装置20からコマンド要求を受信したときに、コマンドキュー424に記憶されているコマンドのうち、画像形成装置20の状態に関係しないコマンドだけを送信する。なお、制御部400は、コマンドキュー424に記憶されているコマンドから、画像形成装置20の状態に関係するコマンドを削除してもよい。また、制御部400は、コマンド生成部402によってコマンドが生成されたとき、生成されたコマンドが画像形成装置20の状態に関係するか否かを判定してもよい。制御部400は、コマンド生成部402によって生成されたコマンドが、画像形成装置20の状態と関係する場合は、その生成されたコマンドをコマンドキュー424に記憶しないようにしてもよい。このように、制御部400が、画像形成装置20の状態に応じて、画像形成装置20にコマンドを送信するか否かを切り替えることにより、画像形成装置20が実行できないコマンドを送信してしまうことを防ぐことができる。なお、コマンド生成部402によって生成されたコマンドが、画像形成装置20の状態と関係しない場合は、制御部400は、コマンド生成部402によって生成されたコマンドをコマンドキュー424に記憶する。コマンドキュー424に記憶されたコマンドは、画像形成装置20によって取得される。したがって、画像形成装置20は、画像形成装置20の状態に関係しないコマンドに限って取得することが可能となる。
【0102】
また、さらに状態データ(画像形成装置の状態、能力、またはオプション情報)に基づいて、ジョブのパラメータが実行不可能と判断された場合には、その旨を示す応答テキストデータを生成して音声データ認識サーバ30に送信するとともに、実行不可能なパラメータに関する表示情報を、画像形成装置20に送信する。制御部200は、表示情報に基づく表示(例えば、カラーコピーができません、ステープル印刷機能を備えていませんといった警告表示)を、表示部240に表示させてもよい。
【0103】
連携部308は、応答テキストデータに基づき、音声データ生成部306を介して音声データを生成し、音声入出力装置10へ送信する(S374)。音声入出力装置10の音声出力部120は、応答音声データを音声として出力する(S376)。
【0104】
例えば、画像形成装置20が用紙切れの場合は、コピーに関するコマンドが生成された場合に対しては「用紙がありません」と応答する。しかし、実行するジョブがスキャンに関するジョブであれば、スキャンのジョブを実行することができる。
【0105】
また、B5サイズの用紙が用紙切れである場合であって、コピーに関するコマンドが生成されたとしても、A4の用紙にコピーする場合はコピーのジョブを実行し、B5の用紙にコピーする場合は「用紙がありません」と応答する。
【0106】
また、さらに画像形成装置20がカラー印刷能力やステープル印刷オプションを備えない場合において、カラーコピーやステープル印刷指示を含んだコマンドが生成された場合に対しては、「カラーコピーはできません」「ステープル印刷機能を備えていません」と音声で応答するとともに、画像形成装置20の表示部に警告表示を行う。しかし、実行するジョブのコマンドがカラーコピーやステープル印刷指示を含まない場合には、ジョブを実行できる。
【0107】
本実施形態によれば、画像形成装置20の状態と、コマンドとを比較することにより、画像形成装置20の状態が、コマンドに関係する場合に、画像形成装置20の状態を応答することができる。そして、コマンドに基づくジョブが実行できる場合はそのままジョブを実行することができる。このように、本実施形態では、柔軟に画像形成装置20の状態を応答したり、画像形成装置20においてジョブを実行したりすることができる。
【0108】
[4.変形例]
本発明は上述した各実施の形態に限定されるものではなく、種々の変更が可能である。すなわち、本発明の要旨を逸脱しない範囲内において適宜変更した技術的手段を組み合わせて得られる実施の形態についても本発明の技術的範囲に含まれる。
【0109】
また、上述した実施形態は、説明の都合上、それぞれ別に説明している部分があるが、技術的に可能な範囲で組み合わせて実行してもよいことは勿論である。例えば、第1実施形態と、第2実施形態と、第3実施形態とを組み合わせてもよい。この場合、1回目のユーザの発言が、特定のコマンドと対応しない場合であっても、2回目の発言がされたときに、画像形成装置の状態を応答することが可能となる。また、画像形成装置の状態が、コマンドと関係しなければ、画像形成装置はジョブを実行することが可能となる。
【0110】
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、CPU等を制御するプログラム(コンピュータを機能させるプログラム)である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置(例えば、RAM)に蓄積され、その後、各種ROM(Read Only Memory)やHDD等の記憶装置に格納され、必要に応じてCPUによって読み出し、修正・書き込みが行なわれる。
【0111】
ここで、プログラムを格納する記録媒体としては、半導体媒体(例えば、ROMや、不揮発性のメモリカード等)、光記録媒体・光磁気記録媒体(例えば、DVD(Digital Versatile Disc)、MO(Magneto Optical Disc)、MD(Mini Disc)、CD(Compact Disc)、BD(Blu-ray Disc)(登録商標)等)、磁気記録媒体(例えば、磁気テープ、フレキシブルディスク等)等の何れであってもよい。また、ロードしたプログラムを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することにより、本発明の機能が実現される場合もある。
【0112】
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本発明に含まれるのは勿論である。
【符号の説明】
【0113】
1 システム
10 音声入出力装置
100 制御部
110 音声入力部
120 音声出力部
130 通信部
140 記憶部
142 音声データ記憶領域
20 画像形成装置
200 制御部
210 画像入力部
220 画像形成部
230 操作入力部
240 表示部
250 通信部
260 記憶部
262 状態データ記憶領域
30 音声データ認識サーバ
300 制御部
302 音声データ認識部
304 インテント生成部
306 音声データ生成部
308 連携部
310 通信部
320 記憶部
322 音声データ記憶領域
324 連携アプリ
40 対話サーバ
400 制御部
402 コマンド生成部
404 応答テキスト生成部
410 通信部
420 記憶部
422 状態データ記憶領域
424 コマンドキュー