(57)【要約】【課題】操作を指示する音声入力機器と、制御対象となる機器とを、１：１で関連付けて管理可能とする。【解決手段】仮コード発行部が、音声入出力装置を介してセットアップ要求を取得した際に、仮コードを発行し、仮コード処理部が、発行された仮コードと音声入出力装置を特定するための特定情報とを関連づけて記憶部に記憶する。また、フィードバック制御部は、発行された仮コードの音声出力を得るための音声フィードバック情報を、音声入出力装置に送信する。また、関連付け処理部が、音声出力された仮コードを、音声入出力装置で音声操作する操作対象機器に入力することで、操作対象機器から送信される仮コード及び操作対象機器を特定するための機器特定情報を取得する。そして、操作対象機器から取得した仮コードが記憶制御部に記憶されていた際に、音声入出力装置の特定情報と、操作対象機器の機器特定情報とを関連付けて記憶部に記憶する。【選択図】図３６
2020087386.tif 000002
【特許請求の範囲】
【請求項１】
音声入出力装置を介してセットアップ要求を取得した際に、仮コードを発行する仮コード発行部と、
発行された前記仮コードと前記音声入出力装置を特定するための特定情報とを関連づけて記憶部に記憶する仮コード処理部と、
発行された前記仮コードの音声出力を得るための音声フィードバック情報を、前記音声入出力装置に送信するフィードバック制御部と、
前記音声出力された前記仮コードを、前記音声入出力装置で音声操作する操作対象機器に入力することで、前記操作対象機器から送信される前記仮コード及び前記操作対象機器を特定するための機器特定情報を取得し、前記操作対象機器から取得した前記仮コードが前記記憶部に記憶されていた際に、前記音声入出力装置の前記特定情報と、前記操作対象機器の前記機器特定情報とを関連付けて前記記憶部に記憶する関連付け処理部と
を有する情報処理装置。
【請求項２】
音声入出力装置を介して音声が取得された際に、前記記憶部を参照することで、前記音声入出力装置の前記特定情報に関連付けされている前記機器特定情報に対応する前記操作対象機器を検出する検出部と、
検出された前記操作対象機器に対して、前記音声入出力装置を介して取得された音声に対応する処理の実行指示を行う実行指示部と、をさらに有すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記仮コード処理部及び前記関連付け処理部は、ユーザのアカウント情報を、前記仮コード及び前記音声入出力装置の特定情報に関連付けして前記記憶部に記憶し、
前記関連付け処理部は、前記操作対象機器から取得したユーザのアカウント情報及び前記仮コードが前記記憶部に記憶されていた際に、前記ユーザのアカウント情報、前記音声入出力装置の前記特定情報及び前記操作対象機器の前記機器特定情報を関連付けて前記記憶部に記憶すること
と特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記フィードバック制御部は、前記音声入出力装置と前記操作対象機器との関連付けが行われていない場合、前記音声入出力装置に対して、セットアップを促す音声出力を得るための音声フィードバック情報を、前記音声入出力装置に送信すること
を特徴とする請求項１から請求項３のうち、いずれか一項に記載の情報処理装置。
【請求項５】
音声入力を行うための音声入出力装置と、
前記音声入出力装置からの音声入力により操作される操作対象機器と、
請求項１から請求項４のうち、いずれか一項に記載の情報処理装置と
を有する情報処理システム。
【請求項６】
仮コード発行部が、音声入出力装置を介してセットアップ要求を取得した際に、仮コードを発行する仮コード発行ステップと、
仮コード処理部が、発行された前記仮コードと前記音声入出力装置を特定するための特定情報とを関連づけて記憶部に記憶する仮コード処理ステップと、
フィードバック制御部が、発行された前記仮コードの音声出力を得るための音声フィードバック情報を、前記音声入出力装置に送信するフィードバック制御ステップと、
関連付け処理部が、前記音声出力された前記仮コードを、前記音声入出力装置で音声操作する操作対象機器に入力することで、前記操作対象機器から送信される前記仮コード及び前記操作対象機器を特定するための機器特定情報を取得し、前記操作対象機器から取得した前記仮コードが前記記憶部に記憶されていた際に、前記音声入出力装置の前記特定情報と、前記操作対象機器の前記機器特定情報とを関連付けて前記記憶部に記憶する関連付け処理ステップと
を有する情報処理方法。
【請求項７】
コンピュータを、
音声入出力装置を介してセットアップ要求を取得した際に、仮コードを発行する仮コード発行部と、
発行された前記仮コードと前記音声入出力装置を特定するための特定情報とを関連づけて記憶部に記憶する仮コード処理部と、
発行された前記仮コードの音声出力を得るための音声フィードバック情報を、前記音声入出力装置に送信するフィードバック制御部と、
前記音声出力された前記仮コードを、前記音声入出力装置で音声操作する操作対象機器に入力することで、前記操作対象機器から送信される前記仮コード及び前記操作対象機器を特定するための機器特定情報を取得し、前記操作対象機器から取得した前記仮コードが前記記憶部に記憶されていた際に、前記音声入出力装置の前記特定情報と、前記操作対象機器の前記機器特定情報とを関連付けて前記記憶部に記憶する関連付け処理部として機能させること
を特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
今日において、音声により機器操作を行うＡＩ音声アシスタント（ＡＩ：Artificial  Intelligence）が知られている。また、音声によって操作可能なスマート家電も知られており、音声操作の分野は今後も更なる成長が見込まれている。
【０００３】
また、特許文献１（特表２０１８−５２４６４５号公報）には、スマートデバイスでログインしているアカウントと、制御対象となる機器のアカウント情報を関連付けすることで、スマートデバイスから制御対象となる機器を特定する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の技術の場合、１つのアカウントによって複数台のスマートスピーカを管理するという状況が発生する。その場合、複数台のスマートスピーカから１台の特定の機器を制御することとなり、スマートスピーカと制御対象となる機器を１：１で関連付けることが困難となる問題を生ずる。
【０００５】
本発明は、上述の課題に鑑みてなされたものであり、操作を指示する音声入力機器と、制御対象となる機器とを、１：１で関連付けて管理可能な情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムの提供を目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、音声入出力装置を介してセットアップ要求を取得した際に、仮コードを発行する仮コード発行部と、発行された仮コードと音声入出力装置を特定するための特定情報とを関連づけて記憶部に記憶する仮コード処理部と、発行された仮コードの音声出力を得るための音声フィードバック情報を、音声入出力装置に送信するフィードバック制御部と、音声出力された仮コードを、音声入出力装置で音声操作する操作対象機器に入力することで、操作対象機器から送信される仮コード及び操作対象機器を特定するための機器特定情報を取得し、操作対象機器から取得した仮コードが記憶制御部に記憶されていた際に、音声入出力装置の特定情報と、操作対象機器の機器特定情報とを関連付けて記憶部に記憶する関連付け処理部とを有する。
【発明の効果】
【０００７】
本発明によれば、操作を指示する音声入力機器と、操作対象機器とを、１：１で関連付けて管理することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施の形態の音声操作システムのシステム構成図である。
【図２】図２は、第１の実施の形態の音声操作システムに設けられているＭＦＰのハードウェア構成図である。
【図３】図３は、第１の実施の形態の音声操作システムに設けられている携帯端末のハードウェア構成図である。
【図４】図４は、第１の実施の形態の音声操作システムに設けられている音声認識サーバ装置のハードウェア構成図である。
【図５】図５は、第１の実施の形態の音声操作システムに設けられているＡＩアシスタントサーバ装置のハードウェア構成図である。
【図６】図６は、第１の実施の形態の音声操作システムに設けられている携帯端末の機能ブロック図である。
【図７】図７は、第１の実施の形態の音声操作システムに設けられている音声認識サーバ装置の機能ブロック図である。
【図８】図８は、第１の実施の形態の音声操作システムに設けられているＡＩアシスタントサーバ装置の機能ブロック図である。
【図９】図９は、第１の実施の形態の音声操作システムにおける音声操作の全体的な動作の流れを示すシーケンス図である。
【図１０】図１０は、第１の実施の形態の音声操作システムにおいて、ユーザの入力音声の解釈に用いられるエンティティ情報の一例を示す図である。
【図１１】図１１は、第１の実施の形態の音声操作システムにおいて、発話フレーズに基づいて登録されるエンティティ情報を示す図である。
【図１２】図１２は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作の流れを示す図である。
【図１３】図１３は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作の前半の流れを示すシーケンス図である。
【図１４】図１４は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作の後半の流れを示すシーケンス図である。
【図１５】図１５は、第１の実施の形態の音声操作システムの、エラー発生時における対話式の入力操作の流れを示す図である。
【図１６】図１６は、第１の実施の形態の音声操作システムにおける、エラー発生時の対話式の入力操作の流れを示すシーケンス図である。
【図１７】図１７は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、ＭＦＰの機器能力に応じたスキャンを実行させる動作の前半の流れを示すシーケンス図である。
【図１８】図１８は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、ＭＦＰの機器能力に応じたスキャンを実行させる動作の後半の流れを示すシーケンス図である。
【図１９】図１９は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、アドレス帳から指定したユーザに対してスキャンした画像を送信する動作の前半の流れを示すシーケンス図である。
【図２０】図２０は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、アドレス帳から指定したユーザに対してスキャンした画像を送信する動作の後半の流れを示すシーケンス図である。
【図２１】図２１は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、メモリから指定したファイルを印刷する動作の前半の流れを示すシーケンス図である。
【図２２】図２２は、第１の実施の形態の音声操作システムにおいて、対話式の入力操作により、メモリから指定したファイルを印刷する動作の後半の流れを示すシーケンス図である。
【図２３】図２３は、第２の実施の形態の音声操作システムのシステム構成図である。
【図２４】図２４は、スマートスピーカのＣＰＵが操作音声処理プログラムを実行することで実現される各機能を示す図である。
【図２５】図２５は、第２の実施の形態の音声操作システムにおける音声入力操作の全体的な動作を説明するための図である。
【図２６】図２６は、音声アシスタントプログラムの起動動作の流れを示すシーケンス図である。
【図２７】図２７は、コピー機能を指示した際の動作の流れを示すシーケンス図である。
【図２８】図２８は、部数設定動作の流れを示すシーケンス図である。
【図２９】図２９は、ＭＦＰに対するジョブの実行指示動作の流れを示すシーケンス図である。
【図３０】図３０は、このようなジョブの実行動作及びエラー発生時の対話動作の流れを示すシーケンス図である。
【図３１】図３１は、ユーザから指示されたジョブに必要な機器能力を、ＭＦＰが有しているか否かの判定を行うまでの動作の流れを示すシーケンス図である。
【図３２】図３２は、ＭＦＰの機器能力で、ジョブの実行が可能である場合、及び、ジョブの実行が困難である場合の動作の流れを示すシーケンス図である。
【図３３】図３３は、ユーザにより指定されたファイルを検索するまでの動作を示すシーケンス図である。
【図３４】図３４は、ユーザにより指定されたファイルを印刷するまでの動作を示すシーケンス図である。
【図３５】図３５は、第３の実施の形態の音声操作システムのシステム構成図である。
【図３６】図３６は、第３の実施の形態の音声操作システムの、より具体的なシステム構成図である。
【図３７】図３７は、第３の実施の形態の音声操作システムのアカウントリンキング動作の流れを示すシーケンス図である。
【図３８】図３８は、第３の実施の形態の音声操作システムにおける、スマートスピーカとＭＦＰとの関連付け動作の前半の流れを示すシーケンス図である。
【図３９】図３９は、第３の実施の形態の音声操作システムにおける、スマートスピーカとＭＦＰとの関連付け動作の後半の流れを示すシーケンス図である。
【発明を実施するための形態】
【０００９】
以下、情報処理システム、情報処理装置、情報処理方法及び情報処理プログラムの適用例となる音声操作システムの説明をする。
【００１０】
（第１の実施の形態）
（システム構成）
図１は、第１の実施の形態の音声操作システムのシステム構成図である。この図１に示すように、第１の実施の形態の音声操作システムは、外部装置の一例である複合機（ＭＦＰ：Multifunction  Peripheral）１、スマートホン又はタブレット端末等の携帯端末２（情報処理装置の一例）、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４を、例えばＬＡＮ（Local  Area  Network）等の所定のネットワーク５を介して相互に接続することで形成されている。ただし、外部装置は複合機には限定されず、電子黒板やプロジェクタなどのオフィス機器を含む、種々の電子機器であっても良い。
【００１１】
携帯端末２は、ＭＦＰ１を音声操作するための、ユーザからの音声入力を受け付ける。また、受け付けた操作を、ユーザへ音声でフィードバックする。また、携帯端末２は、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４の間のデータ通信（後述するテキストデータの通信）を中継する。音声認識サーバ装置３は、携帯端末２から受信した音声データを分析し、テキストデータに変換する。なお、音声認識サーバ装置３は、第１サーバ装置に相当する。ＡＩアシスタントサーバ装置４は、テキストデータを分析し、事前登録されているユーザの意図（ＭＦＰ１のジョブ実行命令）に変換して携帯端末２に送信する。
【００１２】
なお、ＡＩアシスタントサーバ装置４は、第２サーバ装置に相当する。ＭＦＰ１は、携帯端末２から送信されるジョブ実行命令を実行する。なお、携帯端末２とＭＦＰ１との通信は、無線通信であっても有線通信であっても良い。つまり、携帯端末２は、ＭＦＰ１に固定的に接続される操作端末であっても良い。
【００１３】
また、この例では、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４の、２つのサーバ装置が設けられていることとしたが、各サーバ装置３、４を物理的に一つのサーバ装置としてもよい。または、各サーバ装置３、４を、さらに複数のサーバ装置で実現してもよい。
【００１４】
（ＭＦＰのハードウェア構成）
ＭＦＰ１は、例えばプリンタ機能及びスキャナ機能等の複数の機能を備えている。すなわち、ＭＦＰ１は、図２に示すように、コントローラ７、通信部１５、操作部１６、スキャナエンジン１７及びプリンタエンジン１８を有している。
【００１５】
コントローラ７は、ＣＰＵ１０、ＡＳＩＣ（Application  Specific  Integrated  Circuit）１１、メモリ１２、ＨＤＤ（Hard  Disk  Drive）１３及びタイマ１４を有する。ＣＰＵ１０〜タイマ１４は、それぞれバスラインを介して通信可能なように相互に接続されている。
【００１６】
通信部１５は、ネットワーク５に接続されており、後述するように、例えばスキャン指示又は印刷指示等の、携帯端末２を用いて音声入力されたジョブ実行命令を取得する。
【００１７】
操作部１６は、液晶表示部（ＬＣＤ：Liquid  Crystal  Display）とタッチセンサとが一体的に形成された、いわゆるタッチパネルとなっている。操作者は、操作部１６を用いて所望の動作の実行命令を行う場合、操作部１６に表示された操作ボタン（ソフトウェアキー）を接触操作することで、所望の動作を指定する。
【００１８】
スキャナエンジン１７は、スキャナユニットを制御して、光学的に原稿の読み取りを行う。プリンタエンジン１８は、画像書き込みユニットを制御して、例えば転写紙等に画像を印刷する。ＣＰＵ１０は、画像形成装置を統括的に制御する。ＡＳＩＣ１１は、いわゆる大規模集積回路（ＬＳＩ：Large-Scale  Integration）となっており、スキャナエンジン１７及びプリンタエンジン１８で処理する画像に必要な各種の画像処理等を行う。携帯端末装置２から取得したジョブ実行命令を実行する手段であるスキャナエンジン１７及びプリンタエンジン１８は、機能部に相当する。
【００１９】
メモリ１２は、ＣＰＵ１０が実行する各種アプリケーション及びアプリケーションを実行する際に用いられる種々のデータが記憶されている。ＨＤＤ１３は、画像データ、各種のプログラム、フォントデータ、及び、各種のファイル等を記憶する。なお、ＨＤＤ１３の代わり又はＨＤＤ１３と共に、ＳＳＤ（Solid  State  Drive）を設けてもよい。
【００２０】
（携帯端末のハードウェア構成）
携帯端末２は、図３に示すようにＣＰＵ２１、ＲＡＭ２２、ＲＯＭ２３、インタフェース部（Ｉ／Ｆ部）２４及び通信部２５を、バスライン２６を介して相互に接続して形成されている。ＲＡＭ２２には、電子メール、スキャンした画像等の宛先となるユーザの電子メールアドレス等が記憶されたアドレス帳が記憶されている。また、ＲＡＭ２２には、印刷を行う画像データであるファイル等が記憶されている。
【００２１】
ＲＯＭ２３には、操作音声処理プログラムが記憶されている。ＣＰＵ２１は、この操作音声処理プログラムを実行することで、ＭＦＰ１の音声入力操作を可能とする。
【００２２】
Ｉ／Ｆ部２４には、タッチパネル２７、スピーカ部２８及びマイクロホン部２９が接続されている。マイクロホン部２９は、通話音声の他、ＭＦＰ１に対するジョブの実行命令の入力音声を集音（取得）する。入力音声は、通信部２５を介して音声認識サーバ装置３に送信され、テキストデータに変換される。
【００２３】
（音声認識サーバ装置のハードウェア構成）
音声認識サーバ装置３は、図４に示すように、ＣＰＵ３１、ＲＡＭ３２、ＲＯＭ３３、ＨＤＤ（Hard  Disk  Drive）３４、インタフェース部（Ｉ／Ｆ部）３５及び通信部３６を、バスライン３７を介して相互に接続して形成されている。Ｉ／Ｆ部３５には、表示部３８及び操作部３９が接続されている。ＨＤＤ３４には、音声データをテキストデータに変換するための操作音声変換プログラムが記憶されている。ＣＰＵ３１は、操作音声変換プログラムを実行することで、携帯端末２から送信された音声データをテキストデータに変換して、携帯端末２に返信する。
【００２４】
（ＡＩアシスタントサーバ装置のハードウェア構成）
ＡＩアシスタントサーバ装置４は、図５に示すように、ＣＰＵ４１、ＲＡＭ４２、ＲＯＭ４３、ＨＤＤ４４、インタフェース部（Ｉ／Ｆ部）４５及び通信部４６を、バスライン４７を介して相互に接続して形成されている。Ｉ／Ｆ部４５には、表示部４８及び操作部４９が接続されている。ＨＤＤ４４には、ユーザから指示されたジョブを解釈するための操作解釈プログラムが記憶されている。ＣＰＵ４１は、この操作解釈プログラムを実行することで、音声認識サーバ装置３で生成（変換）されたテキストデータから、ユーザから指示されたジョブを解釈する。この解釈結果は、携帯端末２に送信される。携帯端末は、解釈結果をジョブ命令に変換してＭＦＰ１に供給する。これにより、携帯端末２を介して入力した音声により、ＭＦＰ１を操作できる。
【００２５】
（携帯端末の機能）
次に、携帯端末２のＣＰＵ２１は、ＲＯＭ２３に記憶されている操作音声処理プログラムを実行することで、図６に示すように取得部５１、通信制御部５２、フィードバック部５５、処理能力取得部５６、実行判定部５７及び検索部５８として機能する。
【００２６】
取得部５１は、取得部及び第１取得部の一例であり、マイクロホン部２９を介して集音された、ＭＦＰ１を音声操作するためのユーザの指示音声を取得する。通信制御部５２は、出力部、第１出力部、第２出力部、第３出力部、第２取得部及び第３取得部の一例であり、携帯端末２とＭＦＰ１との間、携帯端末２と音声認識サーバ装置３との間、及び、携帯端末２とＡＩアシスタントサーバ装置４との間の通信をそれぞれ制御する。解釈結果変換部５３は、変換部の一例であり、ＡＩアシスタントサーバ装置４でユーザの指示音声のテキストデータの解釈結果を、ＭＦＰ１に対するジョブの実行命令に変換する。実行指示部５４は、ジョブの実行命令をＭＦＰ１に送信して、ジョブの実行を指示する。
【００２７】
フィードバック部５５は、修正部の一例であり、対話型の音声入力操作を実現すべく、例えば不足するデータを補う入力を促す音声をフィードバックし、又は、入力を確認する音声のフィードバック等を行う。処理能力取得部５６は、処理能力検出部の一例であり、ＭＦＰ１から、例えば処理可能な最大画素数等の処理能力を取得する。実行判定部５７は、ＭＦＰ１の能力と、ユーザから指定されたジョブとを比較することで、ユーザから指定されたジョブをＭＦＰ１で実行可能か否か判定する。検索部５８は、印刷情報検出部及びアドレス検出部の一例であり、ユーザから音声指示された宛先又はファイル等をＲＡＭ２２等のメモリから検索する。
【００２８】
なお、この例では、取得部５１〜検索部５８をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、取得部５１〜検索部５８が実現する機能は、操作音声処理プログラム単体で実現しても良いし、他のプログラムに処理の一部を実行させる、又は他のプログラムを用いて間接的に処理を実行させても良い。例えば、ＭＦＰ１の処理能力などの情報の取得は他のプログラムが実行し、処理能力取得部５６は他のプログラムが取得した情報を取得することで、間接的にＭＦＰ１が有する情報を取得することができる。
【００２９】
（音声認識サーバ装置の機能）
次に、音声認識サーバ装置３のＣＰＵ３１は、ＨＤＤ３４に記憶されている操作音声変換プログラムを実行することで、図７に示すように取得部６１、テキスト変換部６２及び通信制御部６３として機能する。取得部６１は、携帯端末２から送信される、ユーザにより入力された音声データを取得する。テキスト変換部６２は、音声認識部の一例であり、ユーザにより入力された音声データをテキストデータに変換する。通信制御部６３は、ユーザにより入力された音声データの受信、及び、携帯端末２に対するテキストデータの送信等を行うように、通信部３６を通信制御する。
【００３０】
なお、この例では、取得部６１〜通信制御部６３をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、取得部６１〜通信制御部６３が実現する機能は、操作音声変換プログラム単体で実現しても良いし、他のプログラムに処理の一部を実行させる、又は他のプログラムを用いて間接的に処理を実行させても良い。
【００３１】
（ＡＩアシスタントサーバ装置の機能）
次に、ＡＩアシスタントサーバ装置４のＣＰＵ４１は、ＨＤＤ４４に記憶されている操作解釈プログラムを実行することで、図８に示すように取得部７１、解釈部７２及び通信制御部７３として機能する。取得部７１は、携帯端末２から送信される、ユーザにより入力された音声データのテキストデータを取得する。解釈部７２は、抽出部の一例であり、テキストデータに基づいて、ユーザからの操作指示を解釈する。通信制御部７３は、ユーザの携帯端末２に対する解釈結果の送信、及び、ユーザにより入力された音声データのテキストデータの受信等を行うように通信部４６を通信制御する。
【００３２】
なお、この例では、取得部７１〜通信制御部７３をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、取得部７１〜通信制御部７３が実現する機能は、操作解釈プログラム単体で実現しても良いし、他のプログラムに処理の一部を実行させる、又は他のプログラムを用いて間接的に処理を実行させても良い。
【００３３】
また、操作音声処理プログラム、操作音声変換プログラム及び操作解釈プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）、ブルーレイディスク（登録商標）、半導体メモリなどのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、インターネット等のネットワーク経由でインストールするかたちで提供してもよいし、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【００３４】
（音声入力操作の全体的な動作）
図９に、第１の実施の形態の音声操作システムにおける音声入力操作の全体的な動作を説明する。この図９の例は、ＭＦＰ１の両面コピー機能を、携帯端末２を介して音声入力操作する例である。この場合、ユーザは、携帯端末の操作音声処理プログラムを起動し、例えば「両面でコピー」と発声する。このユーザの音声は、携帯端末２のマイクロホン部２９で集音され、取得部５１により取得される（ステップＳ１）。携帯端末２の通信制御部５２は、この「両面でコピー」との音声データを音声認識サーバ装置３に送信し、テキスト変換要求を行うように通信部２５を制御する（ステップＳ２）。
【００３５】
音声認識サーバ装置３のテキスト変換部６２は、「両面でコピー」との音声データをテキストデータに変換処理する。そして、通信制御部６３は、変換処理されたテキストデータを、携帯端末２に送信するように通信部３６を制御する（ステップＳ３）。携帯端末２の通信制御部５２は、「両面でコピー」とのテキストデータを、ＡＩアシスタントサーバ装置４に送信する（ステップＳ４）。
【００３６】
この例の場合、ＡＩアシスタントサーバ装置４の解釈部７２は、ＭＦＰ１に実行を要求する動作は「コピーである（Action:Copy_Execcute）」と解釈し、「印刷面は両面である（印刷面＝両面）」と解釈する（ステップＳ５）。このように、解釈部７２は、テキストデータに基づいて、ユーザから指定されたジョブの種別（アクション）及び内容（パラメータ）を示す解釈結果を生成する。この解釈結果は、ＡＩアシスタントサーバ装置４の通信制御部６３により、通信部４６を介して携帯端末２に送信される（ステップＳ６）。
【００３７】
携帯端末２の解釈結果変換部５３は、ＡＩアシスタントサーバ装置４から受信した解釈結果を、ＭＦＰ１のジョブ命令に変換処理する（ステップＳ７）。以下の表１に、解釈結果と、解釈結果から変換処理されたジョブ命令の一例を示す。なお、解釈結果変換部５３は、解釈結果をジョブ命令に変換するために、表１に相当する情報を携帯端末装置２の記憶部に記憶し、参照できる構成としても良い。
【００３８】
【表１】
2020087386.tif 000003
【００３９】
この表１の例の場合、「ＣＯＰＹ＿ＥＸＥＣＵＴＥ」、「ＳＣＡＮ＿ＥＸＥＣＵＴＥ」、「ＰＲＩＮＴ＿ＥＸＥＣＵＴＥ」及び「ＦＡＸ＿ＥＸＥＣＵＴＥ」が、アクション（Ａｃｔｉｏｎ）の一例として示されている。また、「印刷面」及び「部数」等がパラメータ（Ｐａｒａｍｅｔｅｒ）の一例として示されている。なお、パラメータとしては、ジョブの設定値として指定可能な全てのパラメータが含まれる。
【００４０】
携帯端末２の解釈結果変換部５３は、「ＣＯＰＹ＿ＥＸＥＣＵＴＥ」の解釈結果を、「コピージョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部５３は、「ＳＣＡＮ＿ＥＸＥＣＵＴＥ」の解釈結果を、「スキャンジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部５３は、「ＰＲＩＮＴ＿ＥＸＥＣＵＴＥ」の解釈結果を、「印刷ジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部５３は、「ＦＡＸ＿ＥＸＥＣＵＴＥ」の解釈結果を、「ＦＡＸジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。
【００４１】
また、携帯端末２の解釈結果変換部５３は、解釈結果に「印刷面」のパラメータが含まれている場合、「印刷面の設定値の変更」を行うＭＦＰ１のジョブ命令を形成する。同様に、解釈結果変換部５３は、解釈結果に「部数」のパラメータが含まれている場合、「部数の設定値の変更」を行うＭＦＰ１のジョブ命令を形成する。
【００４２】
すなわち、携帯端末２の解釈結果変換部５３は、解釈結果の「Ａｃｔｉｏｎ」に含まれる情報で、ＭＦＰ１に実行させるジョブの種類を判断し、「Ｐａｒａｍｅｔｅｒ」に含まれる値を、ジョブの設定値と判断して、解釈結果をジョブ命令に変換処理する。
【００４３】
携帯端末２の通信制御部５２は、このようにして形成されたジョブ命令を、ＭＦＰ１に送信するように通信部２５を制御する（ステップＳ８）。この例の場合、「コピージョブ実行（印刷面＝両面）」のジョブ命令がＭＦＰ１に送信される。これにより、ＭＦＰ１で両面印刷が実行される。
【００４４】
（ＡＩアシスタントサーバ装置における解釈動作の詳細）
ＡＩアシスタントサーバ装置４のＨＤＤ４４のＡＩ記憶部４０には、ユーザが音声入力により指示しているジョブを解釈するためＡＩアシスタントサービス情報が記憶されている。このＡＩアシスタントサービス情報は、エンティティ（Ｅｎｔｉｔｙ）情報、アクション（Ａｃｔｉｏｎ）情報及びインテント（Ｉｎｔｅｎｔ）情報を含んで構成されている。エンティティ情報は、ジョブのパラメータと自然言語を関連付ける情報である。１つのパラメータに複数の類義語が登録可能となっている。アクション情報は、ジョブの種類を示す情報である。インテント情報は、ユーザの発話フレーズ（自然言語）とエンティティ情報、及び、ユーザの発話フレーズ（自然言語）とアクション情報を、それぞれ関連付ける情報である。インテント情報により、パラメータの発話順序又はニュアンスが多少変わっても、正しい解釈が可能となっている。また、インテント情報により、入力された内容に基づいてレスポンスのテキスト（解釈結果）を生成可能となっている。
【００４５】
図１０に、エンティティ情報の一例を示す。この図１０は、印刷色（Ｐｒｉｎｔ  Ｃｏｌｏｒ）に対応するエンティティ情報である。この図１０において、「Ｐｒｉｎｔ  Ｃｏｌｏｒ」の文字は、エンティティ名を示している。また、図１０において、左の列の「ａｕｔｏ＿ｃｏｌｏｒ」、「ｍｏｎｏｃｈｒｏｍｅ」、「ｃｏｌｏｒ」・・・等の文字は、パラメータ名を示している。また、図１０において、右の列の「ａｕｔｏ＿ｃｏｌｏｒ」、「ｍｏｎｏｃｈｒｏｍｅ，ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」、「ｃｏｌｏｒ，ｆｕｌｌ  ｃｏｌｏｒ」・・・等の文字は、類義語を示している。
【００４６】
この図１０からわかるように、エンティティ情報としては、パラメータ及び類義語が関連付けられて記憶されている。パラメータと共に、類義語を登録することで、例えばモノクロでのコピーを指示する場合に、「Please  copy  by  black  and  white」と発話しても、「Please  copy  by  monochrome」と発話しても、パラメータの設定を可能とすることができる。
【００４７】
図１１（ａ）は、ユーザの発話フレーズの例、図１１（ｂ）は、アクション名、図１１（ｃ）は、エンティティ情報を示している。この図１１（ａ）〜図１１（ｃ）に示すように、ＡＩアシスタントサーバ装置４が備える表示部４８に表示される画面上において、操作部４９を操作することで、ユーザの発話をドラッグする。または、ネットワークを介してＡＩアシスタントサーバ装置４にアクセスした装置の表示部に表示される画面上において、この装置の操作部を操作することで、ユーザの発話をドラッグする。
【００４８】
これにより、関連付け対象となるエンティティ情報を選択できるようになっている。また、選択したエンティティ情報でバリュー（ＶＡＬＵＥ）を設定すると、応答で入るパラメータが変更される。例えば、「Ｐｌｅａｓｅ  ｃｏｐｙ  ｂｙ  ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」と発話した場合、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ」とすると、戻り値として「ｐｒｉｎｔＣｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ」が返る。これに対して、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ．ｏｒｉｇｉｎａｌ」とすると、戻り値として「ｐｒｉｎｔＣｏｌｏｒ＝ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」が返る。ここで、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ．ｏｒｉｇｉｎａｌ」とすると、ユーザの発話内容がそのまま応答のパラメータとして返すことができる。
【００４９】
（対話型動作）
次に、第１の実施の形態の音声操作システムでは、ユーザからの入力内容に基づいて、システムが応答する対話型システムを実現している。第１の実施の形態の音声操作システムでは、対話に必要な定型文を応答する以外に、ＭＦＰ１の操作特有の応答として、「入力不足フィードバック」及び「入力確認フィードバック」の、２種類の応答を行うことで、対話型ＭＦＰ操作システムを実現している。
【００５０】
「入力不足フィードバック」は、ジョブを実行するために必要な情報が揃っていない場合に出力される応答である。ユーザの入力結果を聞き取れなかった場合、又は、必須パラメータが不足している場合に出力される。つまり、必須パラメータ以外のパラメータについては、指示されていない場合であっても入力不足フィードバックを行う必要はない。また、パラメータ以外にも、コピー機能又はスキャン機能等のうち、利用する機能を確認する処理を含んでも良い。
【００５１】
例えば、携帯端末装置２が通信接続中の外部装置の種類に応じて、ユーザに確認する機能、及びパラメータを変更しても良い。この場合、処理能力取得部５６が外部装置との通信が確立した後の所定のタイミングで外部装置の種類や機能を示す情報を取得し、取得した情報に基づいてユーザに確認する機能及びパラメータを例えばフィードバック部５５が決定してもよい。例えば、外部装置の種類がＭＦＰ１である場合には、コピー、プリント、スキャン、ＦＡＸなどのＭＰＦ１が有する機能をユーザに確認でき、更に、コピー、プリント、スキャン、ＦＡＸのうちＭＦＰ１が有している機能についてのみ、いずれの機能を使用するかをユーザに確認しても良い。
【００５２】
「入力確認フィードバック」は、ジョブを実行するために必要な情報が揃った場合に出力される応答である。つまり、入力確認フィードバックは、全ての必須パラメータについて指示された場合に行われる。また、入力確認フィードバックは、現在の設定値でジョブを実行するか、又は、設定値を変更するかの選択をユーザに促すために行う。なお、現在の設定値でジョブを実行するか否かを確認するために、ユーザにより指示された全てのパラメータ（必須パラメータか必須パラメータ以外のパラメータかに関わらず）を音声出力することで、ユーザに確認することができる。
【００５３】
このような各フィードバックを含めた、システムとユーザの対話型操作の例が図１２である。この図１２の例は、モノクロ画像を両面で２部のコピーを行うようにＭＦＰ１を操作する例である。また、この例の場合、部数（＝２部）が必須パラメータとなっている。なお、必須パラメータは部数に限定されず、モノクロ、カラー、又は、用紙サイズ等、複数のパラメータを含めても良い。
【００５４】
なお、パラメータのうち、いずれのパラメータが必須パラメータであるかは、ＡＩアシスタントサーバ装置４が有する記憶部に予め記憶しておくことがでる。また、ユーザが操作部４９を操作によって、又はネットワークを介してＡＩアシスタントサーバ装置４に対してアクセスすることで、いずれのパラメータが必須パラメータであるかは適宜変更することができても良い。
【００５５】
図１２の例は、斜線で示す発話がユーザの発話であり、斜線の無い発話がシステムの発話である。まず、システムが、「コピーしますか？スキャンしますか？」との音声出力を行うと、ユーザは、「コピー」と発音してコピー機能の利用を指示する。システム側では、ユーザから指定された「コピー」の設定値の入力を求めるべく、「設定値を入力してください」との音声出力を行う。
【００５６】
これに対して、ユーザは、「モノクロ」と発話したとする。この例の場合、上述のようにコピー部数が必須のパラメータとなっている。このため、システム側では、「部数を指定してください」とのように、コピー部数の入力を求める。これが「入力不足フィードバック」の例である。このような「入力不足フィードバック」に対して、ユーザは、「２部」等のように、コピー部数を指定する。これにより、入力不足が解消するため、システム側は、「モノクロ、２部でコピーします。よろしいですか？」との応答を行い、コピー開始の指示を促す。これが、ジョブを実行するために必要な情報が揃った場合に出力される「入力確認フィードバック」である。
【００５７】
なお、システム側は、「設定値を入力してください」との音声出力に対して、ユーザから「モノクロ、２部で」との応答があった場合、ジョブを実行するために必要な情報が揃っているため、上述の「モノクロ、２部でコピーします。よろしいですか？」との「入力確認フィードバック」を行う。
【００５８】
次に、片面コピーから両面コピーにコピー形態を変更する場合、ユーザは、「両面に変更して」との音声入力を行う。この場合、ジョブを実行するために必要な情報は揃っているため、システム側は、「モノクロ、２部、両面でコピーします。よろしいですか？」との「入力確認フィードバック」を行う。
【００５９】
そして、「モノクロ、２部でコピーします。よろしいですか？」又は「モノクロ、２部、両面でコピーします。よろしいですか？」との「入力確認フィードバック」に対して、ユーザが「はい」と応答すると、システム側は、「ジョブを実行します」との応答を行い、ユーザから指示されたジョブを実行する。
【００６０】
（対話型動作の流れ）
図１３及び図１４は、このような対話型動作の流れを示すシーケンス図である。図１３のシーケンス図は、対話型動作の前半の動作の流れを示しており、図１４のシーケンス図は、対話型動作の後半の動作の流れを示している。
【００６１】
まず、ユーザにより携帯端末２の操作音声処理プログラムが起動操作されると（ステップＳ１１）、フィードバック部５５は、「コピーしますか？スキャンしますか？」との音声フィードバックを行う（ステップＳ１２）。ユーザが、「コピー」と発音すると（ステップＳ１３）、携帯端末２の通信制御部５２は、音声認識サーバ装置３に対して、「コピー」との音声データを送信し、テキスト変換要求を行う（ステップＳ１４）。音声認識サーバ装置３のテキスト変換部６２は、「コピー」との音声データをテキストデータに変換処理し、携帯端末２に送信する（ステップＳ１５）。
【００６２】
携帯端末２の取得部５１は、このテキストデータを取得する。また、携帯端末２の通信制御部５２は、取得したテキストデータをＡＩアシスタントサーバ装置４に送信する（ステップＳ１６）。ＡＩアシスタントサーバ装置４の解釈部７２は、図１０及び図１１を用いて説明したように、受信したテキストデータで示されるユーザの発話フレーズに基づいて、アクション及びパラメータを解釈する。この例の場合、ユーザは、「コピー」としか発音していないため、コピー部数等が不明となる（入力不足）。
【００６３】
このため、解釈部７２は、「Ｃｏｐｙ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」としたアクションに、「設定値を入力してください」とのレスポンス（Ｒｅｓｐｏｎｓｅ）を付加した解釈結果を形成する（ステップＳ１７）。ＡＩアシスタントサーバ装置４の通信制御部７３、この解釈結果を携帯端末２に送信する（ステップＳ１８）。携帯端末２のフィードバック部５５は、スピーカ部２９を介して「設定値を入力してください」との音声出力を行うと共に、タッチパネル２７に対して「設定値を入力してください」とのテキスト表示を行う（ステップＳ１９：入力不足フィードバック）。
【００６４】
次に、入力不足フィードバックがあったため、ユーザは、例えば「両面で」と発話する（ステップＳ２０）。携帯端末２の通信制御部５２は、音声認識サーバ装置３に対して、「両面で」との音声データを送信し、テキスト変換要求を行う（ステップＳ２１）。音声認識サーバ装置３のテキスト変換部６２は、「両面で」との音声データをテキストデータに変換処理し、携帯端末２に送信する（ステップＳ２２）。
【００６５】
携帯端末２の取得部５１は、このテキストデータを取得する。また、携帯端末２の通信制御部５２は、取得したテキストデータをＡＩアシスタントサーバ装置４に送信する（ステップＳ２３）。ＡＩアシスタントサーバ装置４の解釈部７２は、受信したテキストデータで示されるユーザの発話フレーズに基づいて、アクション及びパラメータを解釈する。この例の場合、ユーザは、「コピー」及び「両面で」としか発音していないため、コピー部数等が不明となる（必須パラメータ不足）。
【００６６】
複数のパラメータのうち、いずれのパラメータが必須パラメータであるかは、ＡＩアシストサーバ装置４の記憶部に予め記憶しておくことができる。この場合、解釈部７２は、記憶部に記憶された必須パラメータの情報に基づいて、携帯端末装置２から取得したパラメータが全ての必須パラメータの設定を行っているか否かを判断し、必須パラメータについて設定が行われていない場合は、必須パラメータの設定を行うように、携帯端末装置２を介してユーザへ促すことができる。
【００６７】
このため、解釈部７２は、「Ｃｏｐｙ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」としたアクションと、「印刷面＝両面」とのパラメータに、「何部印刷しますか？」とのレスポンス（Ｒｅｓｐｏｎｓｅ）を付加した解釈結果を形成する（ステップＳ２４）。ＡＩアシスタントサーバ装置４の通信制御部７３、この解釈結果を携帯端末２に送信する（ステップＳ２５）。携帯端末２のフィードバック部５５は、スピーカ部２９を介して「何部印刷しますか？」との音声出力を行うと共に、タッチパネル２７に対して「何部印刷しますか？」とのテキスト表示を行う（ステップＳ２６：入力不足フィードバック）。
【００６８】
次に、再度、入力不足フィードバックがあったため、ユーザは、例えば「２部」と発話する（ステップＳ２７）。携帯端末２の通信制御部５２は、音声認識サーバ装置３に対して、「２部」との音声データを送信し、テキスト変換要求を行う（ステップＳ２８）。音声認識サーバ装置３のテキスト変換部６２は、「２部」との音声データをテキストデータに変換処理し、携帯端末２に送信する（ステップＳ２９）。
【００６９】
携帯端末２の取得部５１は、このテキストデータを取得する。また、携帯端末２の通信制御部５２は、取得したテキストデータをＡＩアシスタントサーバ装置４に送信する（ステップＳ３０）。ＡＩアシスタントサーバ装置４の解釈部７２は、受信したテキストデータで示されるユーザの発話フレーズに基づいて、アクション及びパラメータを解釈する。この例の場合、ユーザが「２部」との音声データを送信することで、コピーのジョブに対する必須パラメータ不足が解消する。このため、解釈部７２は、「Ｃｏｐｙ＿Ｃｏｎｆｉｒｍ」としたアクションに、「印刷面＝両面」及び「部数＝２部」とのパラメータを付加した解釈結果を形成する（ステップＳ３１）。ＡＩアシスタントサーバ装置４の通信制御部７３、この解釈結果を携帯端末２に送信する（ステップＳ３２）。
【００７０】
携帯端末２のフィードバック部５５は、必須パラメータ不足が解消し、コピーを開始する準備が整ったため、例えば「両面で２部コピーします。よろしいですか？」とのフィードバックのテキストを、解釈結果に含まれるＲｅｓｐｏｎｓｅに基づいて生成する（ステップＳ３３）。ここで、テキストの生成は、携帯端末２の記憶部に記憶されたテキストデータの中から全て、又は一部を読み出し、組み合わせることで生成してもよい。
【００７１】
なお、フィードバック部５５は、ステップＳ３３に限らず、ＡＩアシスタントサーバ装置４から解釈結果を取得した場合であれば、他のステップでも同様にフィードバックのテキストを生成しても良いが、フィードバックするテキスト情報が解釈結果のレスポンスに含まれている場合は、フィードバックのテキストを生成する必要はない。次に、上述の入力確認フィードバックを行う（ステップＳ３４）。この入力確認フィードバックに対して、ユーザは、設定値の変更又はコピーの開始を指示する音声入力を行う。
【００７２】
図１４のシーケンス図のステップＳ３５〜ステップＳ４２が、設定値の変更を音声指示した場合の動作の流れを示すシーケンス図である。この図１４において、ユーザが設定値を変更する発話を行うと（ステップＳ３５）、音声認識サーバ装置３のテキスト変換部６２が、変更された設定値のテキストデータに生成し、携帯端末２を介してＡＩアシスタントサーバ装置４に送信する（ステップＳ３６〜ステップＳ３８）。ＡＩアシスタントサーバ装置４は、受信したテキストデータで示されるユーザの発話フレーズに基づいて、変更された設定値を示す解釈結果を生成し（ステップＳ３９）、携帯端末２に送信する（ステップＳ４０）。
【００７３】
携帯端末２のフィードバック部５５は、解釈結果に含まれるＲｅｓｐｏｎｓｅに基づいてフィードバックのテキストを生成し（ステップＳ４１）、例えば「○○設定でコピーします。よろしいですか？」等の、上述の入力確認フィードバックを行うことで、変更された設定値でコピーを開始してよいか否かの確認を行う（ステップＳ４２）。
【００７４】
図１４のシーケンス図のステップＳ４３〜ステップＳ５０が、コピーの開始を指示した際の各部の動作の流れである。すなわち、上述の入力確認フィードバックにより、ユーザが「はい」と応答すると（ステップＳ４３）、テキスト化され、携帯端末２を介してＡＩアシスタントサーバ装置４に送信される（ステップＳ４４〜ステップＳ４６）。ＡＩアシスタントサーバ装置４は、受信したテキストデータに基づいてコピー開始指示を認識すると、「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」としたアクションに、「印刷面＝両面」及び「部数＝２部」とのパラメータを付加した解釈結果を形成し、これを携帯端末２に送信する（ステップＳ４７〜ステップＳ４８）。
【００７５】
携帯端末２の解釈結果変換部５３は、解釈結果をＭＦＰ１のジョブ命令に変換処理し（ステップＳ４９）、ＭＦＰ１に送信する（ステップＳ５０）。これにより、音声入力操作により、ＭＦＰ１をコピー制御することができる。
【００７６】
（ＡＩアシスタントサーバ装置４からフィードバックされる情報の例）
以下の表２に、ＡＩアシスタントサーバ装置４から携帯端末２にフィードバックされる解釈結果の一例を示す。
【００７７】
【表２】
2020087386.tif 000004
【００７８】
この表２に示すように、例えばジョブの設定値の入力促すための「Ｃｏｐｙ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、ジョブの設定値の確認を促すための「Ｃｏｐｙ＿Ｃｏｎｆｉｒｍ」、ジョブの実行開始を伝えるための「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」等のアクションが、解釈結果に含められて携帯端末２にフィードバックされる。
【００７９】
フィードバック部５５は、解釈結果に含まれるアクション、パラメータ、レスポンスに応じて、ユーザに対するフィードバックを判断することができる。フィードバック部５５は、フィードバックする内容を決定するために、表２に相当する情報を携帯端末装置２の記憶部に記憶し、参照できる構成としても良い。なお、表２では、コピーの場合を例に説明したが、プリント、スキャン、ＦＡＸも表２と同様にアクションとして、ジョブの設定値の入力促すための「Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、ジョブの設定値の確認を促すための「Ｃｏｎｆｉｒｍ」が用いられても良い。
【００８０】
また、例えば両面又は片面等の印刷面の設定値、又は、コピー部数等のパラメータが、解釈結果に含められて携帯端末２にフィードバックされる。さらに、必須パラメータが不足している場合、不足するパラメータの入力を促すメッセージが、レスポンスとして解釈結果に含められて携帯端末２にフィードバックされる。
【００８１】
（ジョブの実行動作及びエラー発生時の対話）
次に、図１５は、例えば「ジョブを実行します。よろしいですか？」等の、上述の入力確認フィードバックにより、ユーザが「はい」と応答することで、ジョブが実行され、又は、エラーが発生した場合の対話の一例を示す。
【００８２】
まず、「ジョブを実行します。よろしいですか？」等の、上述の入力確認フィードバックにより、ユーザが「はい」と応答することで、ＭＦＰ１においてジョブが実行される。何事もなくジョブが完了すれば、例えば「ジョブが完了しました。原稿の取り忘れに注意してください。」等の完了メッセージ（音声及びテキスト）が、携帯端末２を介して出力される。
【００８３】
これに対して、例えば用紙不足のエラーが発生した場合、携帯端末２を介して「用紙がありません。用紙を補充して継続するか、ジョブをキャンセルしてください」等のジョブの確認フィードバックが行われる。この確認フィードバックに対して、ユーザがＭＦＰ１に用紙を補充し、「継続」との発話により応答した場合、ＭＦＰ１に対してジョブの継続が指示され、ＭＦＰ１においてジョブが再開される。これに対して、確認フィードバックにより、ユーザが「キャンセル」との発話することで、ジョブのキャンセルを指示した場合、ＭＦＰ１に対してジョブのキャンセルが通知され、エラー発生以降のジョブがキャンセルされる。そして、携帯端末２を介して、例えば「ジョブをキャンセルしました」等の音声及びテキストを出力する確認フィードバックが行われる。
【００８４】
（ジョブの実行動作及びエラー発生時の対話動作の流れ）
図１６は、このようなジョブの実行動作及びエラー発生時の対話動作の流れを示すシーケンス図である。ＭＦＰ１は、指示されたジョブを実行することで、正常にジョブが完了した旨の実行結果、又は、エラーが発生したことを示す実行結果を携帯端末２に送信する（ステップＳ５１）。正常にジョブが完了した旨の実行結果を受信した場合、携帯端末２のフィードバック部５５は、例えば「ジョブが完了しました」等の音声メッセージを出力する（ステップＳ５２）。これに対して、エラーが発生した旨の実行結果を受信した場合、携帯端末２のフィードバック部５５は、例えば「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」等の、ジョブの継続の是非を問う音声メッセージを出力する（ステップＳ５３）。
【００８５】
図１６のステップＳ５４〜ステップＳ６１が、ユーザが、継続を指定した場合の各部の動作の流れである。すなわち、「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」との問い合わせに対し、ユーザがエラーの発生要因を除去したうえで、「継続」と応答した場合（ステップＳ５４）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ５５〜ステップＳ５７）。
【００８６】
ＡＩアシスタントサーバ装置４は、アクションを「Ｃｏｐｙ＿Ｊｏｂ＿Ｃｏｎｔｉｎｕｅ」とし、レスポンスを「ジョブを継続します」とした解釈結果を生成し、これを携帯端末２に送信する（ステップＳ５８〜ステップＳ５９）。携帯端末２の実行指示部５４は、ＭＦＰ１に対してジョブの継続を指示する（ステップＳ６０）。また、携帯端末２のフィードバック部５５は、「ジョブを継続します」との入力確認フィードバックを行う（ステップＳ６１）。
【００８７】
これに対して、図１６のステップＳ６２〜ステップＳ６９が、ユーザが、ジョブのキャンセルを指定した場合の各部の動作の流れである。すなわち、「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」との問い合わせに対し、ユーザが、「キャンセル」と応答した場合（ステップＳ６２）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ６３〜ステップＳ６５）。
【００８８】
ＡＩアシスタントサーバ装置４は、アクションを「Ｃｏｐｙ＿Ｊｏｂ＿Ｃａｎｃｅｌ」とし、レスポンスを「ジョブをキャンセルします」とした解釈結果を生成し、これを携帯端末２に送信する（ステップＳ６６〜ステップＳ６７）。携帯端末２の実行指示部５４は、ＭＦＰ１に対してジョブのキャンセルを指示する（ステップＳ６８）。また、携帯端末２のフィードバック部５５は、「ジョブをキャンセルします」との入力確認フィードバックを行う（ステップＳ６９）。
【００８９】
（対話によるＭＦＰの機器能力に応じたパラメータの調整動作）
次に、第１の実施の形態の音声操作システムは、ＭＦＰ１の機器能力に対応したジョブの実行を、対話型操作により実現している。図１７は、ユーザから指示されたジョブに必要な機器能力を、ＭＦＰ１が有しているか否かの判定を行うまでの動作の流れを示すシーケンス図である。図１８は、ＭＦＰ１の機器能力で、ジョブの実行が可能である場合、及び、ジョブの実行が困難である場合の動作の流れを示すシーケンス図である。
【００９０】
まず、図１７のシーケンス図において、携帯端末２の携帯音声処理プログラムを起動すると（ステップＳ７１）、処理能力取得部５６が、ＭＦＰ１に対して、例えば処理可能な解像度の問い合わせを行う（Ｃａｐａｂｉｌｉｔｙの取得：ステップＳ７２）。この問い合わせに対して、ＭＦＰ１は、「２００ｄｐｉ〜６００ｄｐｉ」等のように、処理可能な解像度を携帯端末２に回答する（ステップＳ７３）。これにより、携帯端末２において、ＭＦＰ１の処理可能な解像度が認識される。
【００９１】
なお、処理能力取得部５６は携帯端末装置２とＭＦＰ１との通信が確立した後の所定のタイミングで、予め処理能力の情報を取得しておいても良い。また、処理能力の取得は他のプログラムが実行し、処理能力取得部５６は他のプログラムが取得した情報を取得することで、間接的にＭＦＰ１が有する情報を取得しても良い。
【００９２】
次に、携帯端末２のフィードバック部５５は、例えば「コピーしますか？スキャンしますか？」等のジョブの指示を促す音声フィードバックを行う（ステップＳ７４）。ユーザが「スキャン」と発話すると（ステップＳ７５）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ７６〜ステップＳ７８）。スキャンの指示だけでは、必須パラメータが不足しているため、解釈部７２は、アクションを「Ｓｃａｎ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、レスポンスを「設定値を入力してください」とした解釈結果を携帯端末２に送信する（ステップＳ７９〜ステップＳ８０）。これにより、携帯端末２のフィードバック部５５は、「設定値を入力してください」との入力不足フィードバックを行う（ステップＳ８１）。
【００９３】
次に、このような入力不足フィードバックに対して、ユーザが「１０００ｄｐｉで田中さん宛て」と発話すると、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ８２〜ステップＳ８５）。ＡＩアシスタントサーバ装置４の解釈部７２は、アクションを「Ｓｃａｎ＿Ｃｏｎｆｉｒｍ」、パラメータを「解像度＝１０００ｄｐｉ、宛先＝田中」とした解釈結果を携帯端末２に送信する（ステップＳ８６〜ステップＳ８７）。携帯端末２の実行判定部５７は、解釈結果に含まれるパラメータに基づいて、ユーザにより指定されたジョブは、ＭＦＰ１で実行可能か否かを判定する（ステップＳ８８）。
【００９４】
ＭＦＰ１が、１０００ｄｐｉの解像度で画像処理が可能であれば、図１８のステップＳ８９に示すように、携帯端末２のフィードバック部５５が、「１０００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」との入力確認フィードバックを行う。
【００９５】
この入力確認フィードバックに対してユーザが「はい」と応答すると（ステップＳ９１）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ９２〜ステップＳ９４）。ＡＩアシスタントサーバ装置４は、アクションを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とし、「解像度＝１０００、宛先＝田中」とした解釈結果を携帯端末２に送信する（ステップＳ９５〜ステップＳ９６）。
【００９６】
携帯端末２の解釈結果変換部５３は、解釈結果をジョブ命令に変換する（ステップＳ９７）。携帯端末２の通信制御部５２は、ジョブ命令をＭＦＰ１に送信する（ステップＳ９８）。
【００９７】
これに対して、６００ｄｐｉがＭＦＰ１の処理能力の限界である場合、ユーザから指定された１０００ｄｐｉの画像処理は、ＭＦＰ１では困難となる。この場合、携帯端末２は、ステップＳ９０において、「１０００ｄｐｉは指定できません。６００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」との確認フィードバックを行う。
【００９８】
なお、実行判定部５７は、ＭＦＰ１の処理能力の範囲内で、ユーザが指示した機能又は処理能力値に最も近い機能又は値を選択することができる。例えば、ＭＦＰ１の処理可能な解像度が２００−６００ｄｐｉの範囲である場合、ユーザが指示した１０００ｄｐｉに最も近い６００ｄｐｉが選択される。そして、実行判定部５７が選択した能力又は値を、フィードバック部が確認フィードバックとして出力する。
【００９９】
このような確認フィードバックに対してユーザが「はい」と発話すると（ステップＳ９１）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ９２〜ステップＳ９４）。ＡＩアシスタントサーバ装置４は、アクションを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とし、「解像度＝６００、宛先＝田中」とした解釈結果を携帯端末２に送信する（ステップＳ９５〜ステップＳ９６）。
【０１００】
携帯端末２の解釈結果変換部５３は、解釈結果をジョブ命令に変換する（ステップＳ９７）。携帯端末２の通信制御部５２は、ジョブ命令をＭＦＰ１に送信する（ステップＳ９８）。これにより、音声入力操作により、処理能力内でジョブが実行されるように、ＭＦＰ１を操作できる。
【０１０１】
（携帯端末のアドレス帳から検索した送信先にスキャン画像を送信する動作）
次に、携帯端末２のアドレス帳から検索した送信先にスキャン画像を送信する動作を説明する。図１９のシーケンス図が前半の動作の流れを、図２０のシーケンス図が後半の動作の流れを示している。
【０１０２】
まず、図１９のシーケンス図において、携帯端末２の携帯音声処理プログラムを起動すると（ステップＳ１０１）、フィードバック部５５が、例えば「コピーしますか？スキャンしますか？」等のジョブの指示を促す音声フィードバックを行う（ステップＳ１０２）。ユーザが「スキャン」と発話すると（ステップＳ１０３）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１０４〜ステップＳ１０６）。スキャンの指示だけでは、必須パラメータが不足しているため、解釈部７２は、アクションを「Ｓｃａｎ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、レスポンスを「設定値を入力してください」とした解釈結果を携帯端末２に送信する（ステップＳ１０７〜ステップＳ１０８）。これにより、携帯端末２のフィードバック部５５は、「設定値を入力してください」との入力不足フィードバックを行う（ステップＳ１０９）。
【０１０３】
次に、このような入力不足フィードバックに対して、ユーザが「田中さん宛て」と発話すると（ステップＳ１１０）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１１１〜ステップＳ１１３）。ＡＩアシスタントサーバ装置４の解釈部７２は、アクションを「Ｓｃａｎ＿Ｃｏｎｆｉｒｍ」、パラメータを「宛先＝田中」とした解釈結果を携帯端末２に送信する（ステップＳ１１４〜ステップＳ１１５）。携帯端末２の検索部５８は、解釈結果に含まれるパラメータに基づいてＲＡＭ２２に記憶されているアドレス帳の記憶領域から、田中さんの電子メールアドレスを検索する（ステップＳ１１６）。
【０１０４】
なお、検索する対象はＲＡＭ２２に限らず携帯端末装置とネットワークを介して接続されたサーバであっても良いし、ＭＦＰ１に対して該当する電子メールアドレスが存在するか否かを問い合わせても良い。
【０１０５】
アドレス帳の記憶領域に、田中さんが一人だけ記録されている場合、図２０のステップＳ１１７において、携帯端末２の通信制御部５２は、アドレス帳の記憶領域に記憶されている田中さんの電子メールアドレスを送信先に設定した電子メールを作成する。この電子メールには、スキャン画像が添付されて送信される。これにより、田中さん宛てにスキャン画像が送信される。
【０１０６】
アドレス帳の記憶領域に、田中さんが複数人記録されている場合、つまり、宛先を識別する情報である「田中」を含む宛先が複数存在する場合、携帯端末２のフィードバック部５５は、「田中さんが複数登録されています。送信先を選択してください」との入力不足フィードバックを行う（ステップＳ１１８）。そして、携帯端末２の検索部５８は、アドレス帳の記憶領域から検索した複数の田中さんの氏名及び電子メールアドレス等を、タッチパネル２７に一覧表示する（ステップＳ１１９）。
【０１０７】
ユーザは、この一覧の中から所望の田中さんを選択する。携帯端末２の通信制御部５２は、ユーザにより選択された田中さんの電子メールアドレスを送信先に設定した電子メールを作成する。この電子メールには、スキャン画像が添付されて送信される。これにより、ユーザが希望する宛先に相当する田中さん宛てにスキャン画像が送信される。
【０１０８】
アドレス帳の記憶領域に、田中さんが記録されていない場合、携帯端末２のフィードバック部５５は、「田中さんが登録されていません。宛先を指定してください」との入力不足フィードバックを行う（ステップＳ１２０）。そして、携帯端末２の検索部５８は、アドレス帳の記憶領域から検索した各ユーザの田中さんの氏名及び電子メールアドレス等を、例えば五十音順に、タッチパネル２７に一覧表示する（ステップＳ１２１）。
【０１０９】
また、タッチパネル２７にキーボードを表示させることで、ユーザに宛先となる電子メールアドレスを手動で入力させることで、氏名及び電子メールアドレスを取得することができる。なお、取得した氏名及び電子メールアドレスをアドレス帳に登録しても良い。
【０１１０】
ユーザは、この一覧の中から所望の宛先を選択する。携帯端末２の通信制御部５２は、ユーザにより選択された宛先の電子メールアドレスを作成する。この電子メールには、スキャン画像が添付されて送信される。これにより、ユーザが希望する宛先にスキャン画像が送信される。
【０１１１】
すなわち、スキャン画像の送信先とする田中さん又は他のユーザが選択されると、携帯端末２のフィードバック部５５は、例えば「スキャンして田中○○さん宛てに送信します。よろしいでしょうか」との確認フィードバックを行う（ステップＳ１２２）。
【０１１２】
この確認フィードバックに対して、ユーザが「はい」と応答すると（ステップＳ１２３）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１２４〜ステップＳ１２６）。ＡＩアシスタントサーバ装置４は、アクションを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とし、「解像度＝６００、宛先＝田中」とした解釈結果を携帯端末２に送信する（ステップＳ１２７〜ステップＳ１２８）。
【０１１３】
携帯端末２の解釈結果変換部５３は、解釈結果をジョブ命令に変換する（ステップＳ１２９）。携帯端末２の通信制御部５２は、宛先となる氏名及び電子メールアドレスなどの宛先情報と共に、ジョブ命令をＭＦＰ１に送信する（ステップＳ１３０）。これにより、ユーザが希望する宛先にスキャン画像が添付された電子メールが送信される。
【０１１４】
（携帯端末のメモリから印刷対象を検索して印刷する動作）
次に、携帯端末２のＲＡＭ２２等のメモリから検索したファイルを印刷する動作を説明する。図２１のシーケンス図が前半の動作の流れを、図２２のシーケンス図が後半の動作の流れを示している。
【０１１５】
まず、図２１のシーケンス図において、携帯端末２の携帯音声処理プログラムを起動すると（ステップＳ１４１）、フィードバック部５５が、例えば「コピーしますか？スキャンしますか？プリントしますか？」等のジョブの指示を促す音声フィードバックを行う（ステップＳ１４２）。ユーザが「プリント」と発話すると（ステップＳ１４３）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１４４〜ステップＳ１４６）。「プリント」との指示だけでは、必須パラメータが不足しているため、解釈部７２は、アクションを「Ｐｒｉｎｔ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、レスポンスを「設定値を入力してください」とした解釈結果を携帯端末２に送信する（ステップＳ１４７〜ステップＳ１４８）。これにより、携帯端末２のフィードバック部５５は、「設定値を入力してください」との入力不足フィードバックを行う（ステップＳ１４９）。
【０１１６】
次に、このような入力不足フィードバックに対して、ユーザが「ファイルＡをプリント」と発話すると（ステップＳ１５０）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１５１〜ステップＳ１５３）。ＡＩアシスタントサーバ装置４の解釈部７２は、アクションを「Ｐｒｉｎｔ＿Ｃｏｎｆｉｒｍ」、パラメータを「印刷対象＝ファイルＡ」とした解釈結果を携帯端末２に送信する（ステップＳ１５４〜ステップＳ１５５）。携帯端末２の検索部５８は、解釈結果に含まれるパラメータに基づいてＲＡＭ２２等のメモリからファイルＡを検索する（ステップＳ１５６）。
【０１１７】
なお、検索する対象はＲＡＭ２２に限らず携帯端末装置とネットワークを介して接続されたサーバであっても良いし、ＭＦＰ１に対して該当する電子メールアドレスが存在するか否かを問い合わせても良い。
【０１１８】
メモリに、一つだけファイルＡが記録されている場合、図２２のステップＳ１５７において、携帯端末２の通信制御部５２は、このファイルＡを印刷データとして設定する。このファイルＡの印刷データは、ＭＦＰ１に送信され印刷される。
【０１１９】
メモリに２つ以上のファイルＡが存在する場合、携帯端末２のフィードバック部５５は、「複数のファイルＡが登録されています。印刷するファイルを選択してください」との入力不足フィードバックを行う（ステップＳ１５８）。そして、携帯端末２の検索部５８は、メモリから検索した、ファイル名に「ファイルＡ」を含むファイル一覧をタッチパネル２７に一覧表示する（ステップＳ１５９）。ユーザは、この一覧の中から所望のファイルＡを選択する。携帯端末２の通信制御部５２は、後述するように、ユーザにより選択されたファイルＡをＭＦＰ１に送信し印刷要求を行う。
【０１２０】
メモリにファイルＡが記録されていない場合、携帯端末２のフィードバック部５５は、「メモリ内にファイルＡが登録されていません。印刷するファイルを指定してください」との入力不足フィードバックを行う（ステップＳ１６０）。そして、携帯端末２の検索部５８は、メモリから検索した各ファイルを、タッチパネル２７に一覧表示する（ステップＳ１６１）。ユーザは、この一覧の中から所望のファイルを選択する。携帯端末２の通信制御部５２は、ユーザにより選択されたファイルをＭＦＰ１に送信し印刷要求を行う。
【０１２１】
すなわち、印刷を希望するファイルＡ又は他のファイルが選択されると、携帯端末２のフィードバック部５５は、例えば「ファイルＡの印刷を開始します。よろしいでしょうか」との確認フィードバックを行う（ステップＳ１６２）。
【０１２２】
この確認フィードバックに対して、ユーザが「はい」と応答すると（ステップＳ１６３）、テキスト化されてＡＩアシスタントサーバ装置４に送信される（ステップＳ１６４〜ステップＳ１６６）。ＡＩアシスタントサーバ装置４は、アクションを「Ｐｒｉｎｔ＿Ｅｘｅｃｕｔｅ」とし、「印刷対象＝ファイルＡ」とした解釈結果を携帯端末２に送信する（ステップＳ１６７〜ステップＳ１６８）。
【０１２３】
携帯端末２の解釈結果変換部５３は、解釈結果をジョブ命令に変換する（ステップＳ１６９）。携帯端末２の通信制御部５２は、ジョブ命令を、ユーザより選択されたファイルと共にＭＦＰ１に送信する（ステップＳ１７０）。これにより、ＭＦＰ１において、ユーザが希望するファイルが印刷される。
【０１２４】
（第１の実施の形態の効果）
以上の説明から明らかなように、第１の実施の形態の音声操作システムは、携帯端末２に、プラットフォームアプリケーションプログラムとなる操作音声処理プログラムをインストールし、このアプリがＭＦＰ１、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４の間の通信を中継する。ユーザが携帯端末２に設けられているマイクロホン部２９に向かって発話すると、ユーザの発話内容を分析し、ユーザから指示された動作を行うようにＭＦＰ１を操作する（音声入力操作）。
【０１２５】
これにより、複雑な操作を音声で命令することで、タッチパネル２７等のＧＵＩ（Graphical  User  Interface）による操作を不要とすることができるため、操作に慣れているユーザであっても、さらに迅速かつ簡単な入力操作を可能とすることができる。また、高齢者又は操作に不慣れなユーザであっても、対話による操作サポートにより、例えば複雑なネットワーク設定、高度なジョブの設定又は新規アプリの導入等の、ユーザが希望する操作を迅速かつ簡単に実行可能とすることができる。
【０１２６】
また、ユーザが発話した内容のテキストに基づいて、ユーザの意図を解析しているため、ユーザの発話に基づいた処理内容をＡＩアシスタントサーバ装置４側が判断できる。
【０１２７】
（第２の実施の形態）
次に、第２の実施の形態の音声操作システムの説明をする。
【０１２８】
（システム構成）
図２３は、第２の実施の形態の音声操作システムのシステム構成図である。この図２３に示すように、第２の実施の形態の音声操作システムは、１以上の複合機（ＭＦＰ）１、１以上のスマートスピーカ１００（又は、スマートホン、タブレット端末等でもよい）、１以上の音声認識サーバ装置３、及び、１以上のＡＩアシスタントサーバ装置４を有している。ＭＦＰ１、スマートスピーカ１００、音声認識サーバ装置３、及び、ＡＩアシスタントサーバ装置４は、例えばＬＡＮ等のネットワーク５を介して相互に接続されている。これにより、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４でクラウドサービスの提供が可能となっている。
【０１２９】
なお、外部装置としては、ＭＦＰ１の他、例えば電子黒板又はプロジェクタ装置等の他の電子機器を設けてもよい。
【０１３０】
ＡＩアシスタントサーバ装置４は、管理データベース（管理ＤＢ）１０１及び紐づけ用データベース１０２を有している。管理ＤＢ１０１には、テキストデータ、画像データ、音声データ等、ＡＩアシスタントサーバ装置４がクラウドサービスとして提供するコンテンツ（データ）を記憶するデータベースである。また、紐づけ用ＤＢ１０２には、例えば各スマートスピーカ１００を特定する各デバイスＩＤと、各スマートスピーカ１００に関連付けられたＭＦＰ１の機器ＩＤとが関連付けられて記憶されている。すなわち、紐づけ用ＤＢには、各スマートスピーカ１００で音声操作可能なＭＦＰ１が特定できるように、各スマートスピーカ１００のデバイスＩＤとＭＦＰ１の機器ＩＤとが関連付けられて記憶されている
【０１３１】
なお、管理ＤＢ１０１及び紐づけ用ＤＢ１０２としては、クラウドサービスがネットワーク５上に有するＨＤＤ等の記憶部を用いることができる。この他、管理ＤＢ１０１及び紐づけ用ＤＢ１０２のうち、一方又は両方を、ネットワーク５を介してクラウドサービスでアクセス可能な別のサーバ装置に記憶してもよい。
【０１３２】
スマートスピーカ１００は、ＭＦＰ１を音声操作するための、ユーザからの音声入力を受け付ける。なお、スマートスピーカ１００は、受け付けた操作を、ユーザへ音声でフィードバック可能となっている。また、スマートスピーカ１００は、クラウドサービスを提供する音声認識サーバ装置３及びＡＩアシスタントサーバ装置４の間での、例えば音声データ、テキストデータ、画像データ等のデータ通信を行う。音声認識サーバ装置３は、スマートスピーカ１００から受信した音声データを分析し、テキストデータへ変換する。また、テキストデータと事前登録されている辞書情報とに基づいてユーザの意図を解釈し、解釈結果をＡＩアシスタントサーバ装置４に送信する。
【０１３３】
ＡＩアシスタントサーバ装置４は、音声認識サーバ装置３から受信した解釈結果を、ＭＦＰ１で解釈可能な形式であるジョブ実行命令に変換してＭＦＰ１に送信する。ＭＦＰ１は、このようなクラウドサービスから送信されるジョブ実行命令を実行する。
【０１３４】
（ＭＦＰのハードウェア構成）
ＭＦＰ１は、例えばプリンタ機能及びスキャナ機能等の複数の画像処理機能を備えている。すなわち、ＭＦＰ１は、図２を用いて説明したように、コントローラ７、通信部１５、操作部１６、スキャナエンジン１７及びプリンタエンジン１８を有している。
【０１３５】
コントローラ７は、ＣＰＵ１０、ＡＳＩＣ１１、メモリ１２、ＨＤＤ（Hard  Disk  Drive）１３及びタイマ１４を有する。ＣＰＵ１０〜タイマ１４は、それぞれバスラインを介して通信可能なように相互に接続されている。
【０１３６】
通信部１５は、ネットワーク５に接続されており、後述するように、例えばスキャン指示又は印刷指示等の、携帯端末２を用いて音声入力されたジョブ実行命令を取得する。
【０１３７】
操作部１６は、液晶表示部（ＬＣＤ）とタッチセンサとが一体的に形成された、いわゆるタッチパネルとなっている。操作者は、操作部１６を用いて所望の動作の実行命令を行う場合、操作部１６に表示された操作ボタン（ソフトウェアキー）を接触操作することで、所望の動作を指定する。
【０１３８】
スキャナエンジン１７は、スキャナユニットを制御して、光学的に原稿の読み取りを行う。プリンタエンジン１８は、画像書き込みユニットを制御して、例えば転写紙等に画像を印刷する。ＣＰＵ１０は、画像形成装置を統括的に制御する。ＡＳＩＣ１１は、いわゆる大規模集積回路（ＬＳＩ：Large-Scale  Integration）となっており、スキャナエンジン１７及びプリンタエンジン１８で処理する画像に必要な各種の画像処理等を行う。携帯端末装置２から取得したジョブ実行命令を実行する手段であるスキャナエンジン１７及びプリンタエンジン１８は、機能部に相当する。
【０１３９】
メモリ１２は、ＣＰＵ１０が実行する各種アプリケーション及びアプリケーションを実行する際に用いられる種々のデータが記憶されている。ＨＤＤ１３は、画像データ、各種のプログラム、フォントデータ、及び、各種のファイル等を記憶する。なお、ＨＤＤ１３の代わり又はＨＤＤ１３と共に、ＳＳＤ（Solid  State  Drive）を設けてもよい。
【０１４０】
（端末のハードウェア構成）
スマートスピーカ１００は、図３に示した携帯端末２と同様に、ＣＰＵ２１、ＲＡＭ２２、ＲＯＭ２３、インタフェース部（Ｉ／Ｆ部）２４及び通信部２５を、バスライン２６を介して相互に接続して形成されている。
【０１４１】
ＲＯＭ２３には、操作音声処理プログラムが記憶されている。ＣＰＵ２１は、この操作音声処理プログラムを実行することで、マイクロホン部２９から音声情報を取得してクラウドサービスへ送信する。また、ＣＰＵ２１は、クラウドサービスから取得したデータ（音声データ、テキストデータ、画像データ等）をタッチパネル２７に表示制御し、又は、スピーカ部２８を介して音声出力制御する。
【０１４２】
Ｉ／Ｆ部２４には、タッチパネル２７、スピーカ部２８及びマイクロホン部２９が接続されている。マイクロホン部２９は、通話音声の他、ＭＦＰ１に対するジョブの実行命令となるユーザからの入力音声を集音（取得）する。入力音声は、通信部２５を介してクラウドサービスに送信される。
【０１４３】
（クラウドサービスのハードウェア構成）
クラウドサービスを構成する音声認識サーバ装置３及びＡＩアシスタントサーバ装置４は、図４に示すように、ＣＰＵ３１、ＲＡＭ３２、ＲＯＭ３３、ＨＤＤ３４、インタフェース部（Ｉ／Ｆ部）３５及び通信部３６を、バスライン３７を介して相互に接続して形成されている。
【０１４４】
Ｉ／Ｆ部３５には、表示部３８及び操作部３９が接続されている。ＨＤＤ３４には、音声データをテキストデータに変換し、更にテキストデータを予め定義された辞書情報と一致するか否かを判断してマッチした場合にはテキストデータをユーザの意図を示すインテント及びジョブ条件などの変数を示すパラメータに変換するための操作音声変換プログラムが記憶されている。また、ＨＤＤ３４には、辞書情報を保持する音声アシスタントプログラム、インテントとパラメータに基づいてＭＦＰが解釈可能な形式であるジョブ実行指示に変換した上で登録されたＭＦＰへ送信する管理プログラムが記憶されている。
【０１４５】
ＣＰＵ３１は、これらのプログラムを実行する。なお、操作音声変換プログラム、音声アシスタントプログラム及び管理プログラムは、１つのサーバ装置で実行されても良いし、それぞれ異なるサーバ装置で実行されても良い。さらに、複数のサーバ装置が連携することで、これらのプログラムを実行しても良い。
【０１４６】
（各プログラムに基づく各機能）
図２４は、スマートスピーカ１００のＣＰＵ２１が操作音声処理プログラムを実行することで実現される各機能を示す図である。また、図２４は、音声認識サーバ装置３のＣＰＵ３１が操作音声変換プログラム及び音声アシスタントプログラムを実行することで実現される各機能を示す図である。さらに、図２４は、ＡＩアシスタントサーバ装置４のＣＰＵ３１が、管理プログラムを実行することで実現される各機能を示す図である。
【０１４７】
（操作音声処理プログラムの機能）
スマートスピーカ１００のＣＰＵ２１は、ＲＯＭ２３等の記憶部に記憶されている操作音声処理プログラムを実行することで、取得部１５１、通信制御部１５２及びフィードバック部１５３として機能する。
【０１４８】
取得部５１は、マイクロホン部２９を介して集音された、ＭＦＰ１を音声操作するためのユーザの指示音声を取得する。なお、取得部１５１は、タッチパネル又は物理スイッチなどを介してユーザの操作及び指示を取得しても良い。通信制御部１５２は、スマートスピーカ１００とクラウドサービスとの間の通信を制御する。通信制御部１５２は、取得部１５１が取得した情報をクラウドサービスへ送信すると共に、クラウドサービスからテキストデータ、画像データ、音声データを取得する。また、通信制御部１５２は、取得部１５１で取得された情報を、クラウドサービスへ送信する場合、スマートスピーカ１００を特定するデバイスＩＤを送信する。
【０１４９】
フィードバック部１５３は、対話型の音声入力操作を実現すべく、例えば不足するデータを補うための入力操作を促す音声をフィードバックし、又は、入力操作の確認となる音声をフィードバックする。なお、フィードバック部１５３は、タッチパネル２７のディスプレイ表示により、フィードバックとなるテキスト又は画像をユーザに提供してもよい。
【０１５０】
なお、この例では、取得部１５１〜フィードバック部１５３は、ソフトウェアで実現されることとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、取得部１５１〜フィードバック部１５３は、操作音声処理プログラム単体で実現しても良いし、他のプログラムに処理の一部を実行させ、又は他のプログラムを用いて間接的に処理を実行させても良い。
【０１５１】
（操作音声処理プログラムの機能）
次に、音声認識サーバ装置３のＣＰＵ３１は、ＨＤＤ３４に記憶されている操作音声変換プログラムを実行することで、取得部１５５、テキスト変換部１５６、解析部１５７及び出力部１５８として機能する。取得部１５５は、スマートスピーカ１００から送信される、ユーザにより入力された音声データを取得する。また、取得部１５５は、スマートスピーカ１００のタッチパネル、ボタン又はスイッチ等のユーザ操作を取得しても良い。
【０１５２】
テキスト変換部１５６は、ユーザにより入力された音声データをテキストデータに変換する。解釈部１５７は、テキストデータに基づいて、ユーザからの指示を解釈する。具体的には、解釈部１５７は、音声アシスタントプログラムから提供された辞書情報に基づいて、テキストデータに含まれる単語などが辞書情報にマッチしているか否かを確認する。そして、マッチしている場合には、ユーザの意図を示すインテントとジョブ条件などの変数を示すパラメータに変換する。解釈部１５７は、インテント及びパラメータを管理プログラムに対して送信するが、このとき、音声データを取得するスマートスピーカ１００を特定するための、スマートスピーカ１００のデバイスＩＤも共に送信する。出力部１５８は、スマートスピーカ１００に対するテキストデータ、音声データ、画像データなどのデータの送信等を行うように、通信部３６を通信制御する。
【０１５３】
なお、この例では、取得部１５５〜出力部１５８をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、取得部１５５〜出力部１５８の各機能は、操作音声変換プログラム単体で実現しても良いし、他のプログラムに処理の一部を実行させてもよいし、又は他のプログラムを用いて間接的に実行させても良い。例えば、操作音声変換プログラムの解釈部１５７の機能の一部又は全てを音声アシスタントプログラムに実行させても良い。この場合、例えばテキストデータに含まれる単語などが辞書情報にマッチしているか否かの確認、マッチしている場合にユーザの意図を示すインテントとジョブ条件などの変数を示すパラメータへの変換は、音声アシスタントアプリに実行させ、解釈部１５７はインテント及びパラメータを音声アシスタントプログラムから取得するものとしても良い。
【０１５４】
（音声アシスタントプログラムの機能）
次に、音声認識サーバ装置３のＣＰＵ３１は、ＨＤＤ３４に記憶されている音声アシスタントプログラムを実行することで、提供部１５９として機能する。提供部１５９は、ＨＤＤ３４に記憶されている、テキストデータ、インテント及びパラメータの関係を予め定義した辞書情報を管理し、操作音声変換プログラムに対して提供する。また、テキストデータに基づいて、ユーザからの操作指示を解釈しても良い。具体的には、操作音声変換プログラムからテキストデータを取得し、テキストデータに含まれる単語などが辞書情報にマッチしているか否かを確認して、マッチしている場合にはテキストデータをインテントとパラメータに変換する。その後、インテント及びパラメータを操作音声変換プログラムに対して提供する。
【０１５５】
なお、この例では、提供部１５９をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよいこと等は、上述の他のプログラムと同様である。
【０１５６】
（管理プログラムの機能）
ＡＩアシスタントサーバ装置４のＣＰＵ３１は、ＨＤＤ３４に記憶されている管理プログラムを実行することで、取得部１６０、解釈結果変換部１６１、実行指示部１６２、機器情報取得部１６３、実行判定部１６４、通知部１６５、管理部１６６及び検索部１６７として機能する。
【０１５７】
取得部１６０は、音声認識サーバ装置３から送信されるインテント、パラメータ及びスマートスピーカ１００のデバイスＩＤ等を取得する。解釈結果変換部１６１は、操作音声変換プログラムで変換されたインテント及びパラメータなどの解釈結果を、ＭＦＰ１が解釈可能なジョブの実行命令に変換する。実行指示部１６２は、ジョブの実行命令をＭＦＰ１に送信して、ジョブの実行を指示する。
【０１５８】
なお、実行指示部１６２は、紐づけ用ＤＢ１０２を参照し、スマートスピーカ１００に関連付けられているＭＦＰ１に対してジョブ実行命令を送信する。つまり、実行指示部１６２は、インテント及びパラメータと共にユーザが使用したスマートスピーカ１００を特定するデバイスＩＤを取得し、取得したデバイスＩＤに関連付けられているＭＦＰ１を紐づけ用ＤＢ１０２から検索し、検索したＭＦＰ１に対してジョブ実行命令を送信する。
【０１５９】
機器情報取得部１６３は、ＭＦＰ１から、ＭＦＰ１の例えば処理可能な最大画素数等の処理能力を示す機器情報を取得する。なお、機器情報取得部１６３は、ＭＦＰ１等の複数の外部装置から取得した機器情報を、各外部装置を特定するデバイスＩＤ等の特定情報と関連付けてＨＤＤ等の記憶部に記憶して管理する。
【０１６０】
また、機器情報取得部１６３は、ＭＦＰ１との通信接続が確立されているか否かを示す接続状態、ＭＰＦ１の電源のＯＮ／ＯＦＦ又はスリープモード等の電力状態、エラーの有無とエラーの種類、用紙及びトナー等の消耗品の残余状況、ユーザのログイン状態、ログインユーザに使用が許可された機能を示す権限情報、などを含む機器状態を取得する。
【０１６１】
実行判定部５７は、機器情報で示されるＭＦＰ１の処理能力と、ユーザから指定されたジョブ（即ち、操作音声変換プログラムで生成されたインテント及びパラメータ）とを比較することで、ユーザから指定されたジョブをＭＦＰ１で実行可能か否かを判定する。ユーザから指定されたジョブ実行が実行可能と判断した場合、ＭＦＰに対してジョブ実行命令を送信する。また、実行不可能と判断した場合、操作音声変換プログラムを介してスマートスピーカ１００に対してエラーメッセージ等のレスポンス情報をフィードバックする。
【０１６２】
通知部１６５は、ユーザのジョブ実行指示への応答としてテキストデータ、音声データ、画像データなどを操作音声変換プログラムへ通知する。また、ジョブの実行するためのジョブ条件を示すパラメータが不足している場合には、操作音声変換プログラムを介して端末対してフィードバックを行うことでユーザにパラメータの入力を促す。ここで、不足しているパラメータを確認するために必要な情報として、パラメータ情報を送信しても良いし、ユーザにパラメータの指定を促すために必要な情報としてテキストデータ、音声データ、画像データを送信しても良い。
【０１６３】
管理部１６６は、ＭＦＰ１、スマートスピーカ１００又はネットワークを介してクラウドサービスに接続したクライアントデバイスに入力された情報及び指示に基づいて、スマートスピーカ１００のデバイスＩＤとＭＦＰ１の機器ＩＤとを関連付けて紐づけ用ＤＢ１０２に登録する。なお、紐づけ用ＤＢ１０２は、スマートスピーカ１００のデバイスＩＤとＭＦＰの機器ＩＤとを関連付けた情報を、例えば管理テーブル等に保持している。
【０１６４】
なお、この例では、取得部１６０〜検索部１６７をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよいこと等は、上述の他のプログラムと同様である。
【０１６５】
また、上述の操作音声処理プログラム、操作音声変換プログラム、音声アシスタントプログラム及び管理プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）、ブルーレイディスク（登録商標）、半導体メモリなどのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、インターネット等のネットワーク経由でインストールするかたちで提供してもよいし、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【０１６６】
（音声入力操作の全体的な動作）
図２５は、第２の実施の形態の音声操作システムにおける音声入力操作の全体的な動作を説明するための図である。この図２５の例は、ＭＦＰ１の両面コピー機能を、スマートスピーカ１００を介して音声入力操作する例である。この場合、ユーザは、スマートスピーカ１００の操作音声処理プログラムを起動し、例えば「両面でコピー」と発声する（ステップＳ１８１）。このユーザの音声は、スマートスピーカ１００のマイクロホン部２９で集音され、取得部１５１により取得される。なお、操作音声処理プログラムは、スマートスピーカ１００の起動と同時に起動しても良いし、スマートスピーカ１００に対して所定の操作又は所定の音声が行われた際に起動しても良い。
【０１６７】
スマートスピーカ１００の通信制御部１５２は、この「両面でコピー」との音声データをクラウドサービスの音声認識サーバ装置３に送信する（ステップＳ１８２）。このとき、通信制御部１５２は、スマートスピーカ１００を特定するための、スマートスピーカ１００のデバイスＩＤを音声認識サーバ装置３に送信する。音声認識サーバ装置３の操作音声変換プログラムによるテキスト変換部１５６は、「両面でコピー」との音声データをテキストデータに変換処理する（ステップＳ１８３）。
【０１６８】
解釈部１５７は、音声アシスタントプログラムから取得した辞書情報に基づいて（ステップＳ１８４、ステップＳ１８５）、テキストデータに含まれる単語などが辞書情報にマッチしているか否かを確認する（ステップＳ１８６）。そして、マッチしている場合には、ユーザから指示された操作を示すインテントとジョブ条件などの変数を示すパラメータに変換し、音声データを取得するスマートスピーカ１００を特定するためのデバイスＩＤと共にＡＩアシスタントサーバ装置４に送信する（ステップＳ１８７）。
【０１６９】
具体的には、この例の場合、解釈部１５７は、ＭＦＰ１に実行を要求する動作は「コピーである（インテント:Copy_Execcute）」と解釈し、「印刷面は両面である（印刷面＝両面）」と解釈する（ステップＳ１８６）。このように、解釈部１５７は、テキストデータに基づいて、ユーザから指定されたジョブの種別（インテント）及び内容（パラメータ）を示す解釈結果を生成する。この解釈結果は、管理プログラムに送信される（ステップＳ１８７）。このとき、解釈部１５７は、解釈結果と対応させて音声データの送信元となるスマートスピーカ１００を特定するデバイスＩＤをＡＩアシスタントサーバ装置４に送信しても良い。
【０１７０】
ＡＩアシスタントサーバ装置４の管理プログラムの解釈結果変換部１６１は、スマートスピーカ１００から取得した解釈結果を、ＭＦＰ１のジョブ命令に変換処理する（ステップＳ１８８）。この解釈結果、及び、解釈結果から変換処理されたジョブ命令の一例は、上述の表１を用いて説明したとおりである。なお、解釈結果変換部１６１は、解釈結果をジョブ命令に変換するために、表１に相当する情報をＡＩアシスタントサーバ装置４のＨＤＤ３４等の記憶部に記憶し、参照できる構成としても良い。
【０１７１】
上述の表１の例の場合、「ＣＯＰＹ＿ＥＸＥＣＵＴＥ」、「ＳＣＡＮ＿ＥＸＥＣＵＴＥ」、「ＰＲＩＮＴ＿ＥＸＥＣＵＴＥ」及び「ＦＡＸ＿ＥＸＥＣＵＴＥ」が、インテント（Ｉｎｔｅｎｔ）の一例である。また、「印刷面」及び「部数」等がパラメータ（Ｐａｒａｍｅｔｅｒ）の一例である。なお、パラメータとしては、ジョブの設定値として指定可能な全てのパラメータが含まれる。
【０１７２】
ＡＩアシスタントサーバ装置４の解釈結果変換部１６１は、「ＣＯＰＹ＿ＥＸＥＣＵＴＥ」の解釈結果を、「コピージョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部１６１は、「ＳＣＡＮ＿ＥＸＥＣＵＴＥ」の解釈結果を、「スキャンジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部１６１は、「ＰＲＩＮＴ＿ＥＸＥＣＵＴＥ」の解釈結果を、「印刷ジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。同様に、解釈結果変換部１６１は、「ＦＡＸ＿ＥＸＥＣＵＴＥ」の解釈結果を、「ＦＡＸジョブの実行」との、ＭＦＰ１のジョブ命令に変換処理する。
【０１７３】
なお、以上の説明は、ＭＦＰ１で実行される基本的なジョブの例であるが、クラウドサービスで解釈可能なジョブは、このような基本的なジョブに限定されない。例えば、通信対象に対して機器情報を収集させてクラウドサービスへ送信させるジョブ、通信対象が有する記憶部に記憶された所定の情報を通信対象の表示部に表示させるジョブ等も指示可能である。
【０１７４】
また、解釈結果変換部１６１は、解釈結果に「印刷面」のパラメータが含まれている場合、「印刷面の設定値の変更」を行うＭＦＰ１のジョブ命令を形成する。同様に、解釈結果変換部１６１は、解釈結果に「部数」のパラメータが含まれている場合、「部数の設定値の変更」を行うＭＦＰ１のジョブ命令を形成する。
【０１７５】
すなわち、解釈結果変換部１６１は、解釈結果の「Ｉｎｔｅｎｔ」に含まれる情報で、ユーザの意図、例えばＭＦＰ１に実行させるジョブの種類を判断し、「Ｐａｒａｍｅｔｅｒ」に含まれる値を、ジョブの設定値と判断して、解釈結果をジョブ命令に変換処理する。
【０１７６】
ＡＩアシスタントサーバ装置４の解釈結果変換部１６１は、このようにして形成されたジョブ命令を、通信部３６を介してＭＦＰ１に送信する（ステップＳ１８９）。この例の場合、「コピージョブ実行（印刷面＝両面）」のジョブ命令がＭＦＰ１に送信される。なお、通信制御部５２は、管理部によって特定されたＭＦＰに対してジョブ命令を送信する。つまり、音声データの送信元の端末を特定するバイスＩＤと紐づいたＩＤで特定されるＭＦＰに対してジョブの実行を指示することができる。これにより、ＭＦＰ１で両面印刷が実行される。
【０１７７】
（クラウドサービス装置における解釈動作の詳細）
音声認識サーバ装置３のＨＤＤ３４には、辞書情報が記憶されている。操作音声変換プログラムは、この辞書情報に基づいてインテント及びパラメータを生成する。より具体的には、操作音声変換プログラムは、音声データから変換したテキストデータに含まれる単語などが辞書情報とマッチするか否かを判断し、マッチする場合は辞書情報に定義されているインテント及びパラメータを含む解釈結果を生成する。
【０１７８】
辞書情報は、インテント及びパラメータを生成することができればどのような形態であっても良い。一例として、この例の場合、辞書情報は、エンティティ（Ｅｎｔｉｔｙ）情報、インテント（Ｉｎｔｅｎｔ）情報及び関連付け情報を含んで構成されている。エンティティ情報は、ジョブのパラメータと自然言語を関連付ける情報である。１つのパラメータに複数の類義語が登録可能となっている。インテント情報は、ジョブの種類を示す情報である。関連付け情報は、ユーザの発話フレーズ（自然言語）とエンティティ情報、及び、ユーザの発話フレーズ（自然言語）とインテント情報を、それぞれ関連付ける情報である。関連付け情報により、パラメータの発話順序又はニュアンスが多少変わっても、正しい解釈が可能となっている。また、関連付け情報により、入力された内容に基づいてレスポンスのテキスト（解釈結果）を生成しても良い。
【０１７９】
上述の図１０は、エンティティ情報の一例を示している。この図１０の例は、印刷色（Ｐｒｉｎｔ  Ｃｏｌｏｒ）に対応するエンティティ情報である。この図１０において、「Ｐｒｉｎｔ  Ｃｏｌｏｒ」の文字は、エンティティ名を示している。また、図１０において、左の列の「ａｕｔｏ＿ｃｏｌｏｒ」、「ｍｏｎｏｃｈｒｏｍｅ」、「ｃｏｌｏｒ」・・・等の文字は、パラメータ名を示している。また、図１０において、右の列の「ａｕｔｏ＿ｃｏｌｏｒ」、「ｍｏｎｏｃｈｒｏｍｅ，ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」、「ｃｏｌｏｒ，ｆｕｌｌ  ｃｏｌｏｒ」・・・等の文字は、類義語を示している。
【０１８０】
この図１０からわかるように、エンティティ情報としては、パラメータ及び類義語が関連付けられて記憶されている。パラメータと共に、類義語を登録することで、例えばモノクロでのコピーを指示する場合に、「Please  copy  by  black  and  white」と発話しても、「Please  copy  by  monochrome」と発話しても、パラメータの設定を可能とすることができる。
【０１８１】
図１１（ａ）は、ユーザの発話フレーズの例、図１１（ｂ）は、インテント名、図１１（ｃ）は、エンティティ情報を示している。この図１１（ａ）〜図１１（ｃ）に示すように、クラウドサービス４が備える表示部３８に表示される画面上において、操作部３９を操作することで、ユーザの発話をドラッグする。または、ネットワークを介してクラウドサービスにアクセスした装置の表示部に表示される画面上において、この装置の操作部を操作することで、ユーザの発話をドラッグする。
【０１８２】
これにより、関連付け対象となるエンティティ情報を選択できるようになっている。また、選択したエンティティ情報でバリュー（ＶＡＬＵＥ）を設定すると、応答で入るパラメータが変更される。例えば、「Ｐｌｅａｓｅ  ｃｏｐｙ  ｂｙ  ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」と発話した場合、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ」とすると、戻り値として「ｐｒｉｎｔＣｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ」が返る。これに対して、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ．ｏｒｉｇｉｎａｌ」とすると、戻り値として「ｐｒｉｎｔＣｏｌｏｒ＝ｂｌａｃｋ  ａｎｄ  ｗｈｉｔｅ」が返る。ここで、バリューを「ＳｐｒｉｎｔＣｏｌｏｒ．ｏｒｉｇｉｎａｌ」とすると、ユーザの発話内容をそのまま応答のパラメータとして返すことができる。
【０１８３】
（対話型動作）
次に、実施の形態の音声操作システムでは、ユーザからの入力内容に基づいて、システムが応答する対話型システムを実現している。実施の形態の音声操作システムでは、対話に必要な定型文を応答する以外に、ＭＦＰ１の操作特有の応答として、「入力不足フィードバック」及び「入力確認フィードバック」の、２種類の応答を行うことで、対話によるＭＦＰ操作を可能とする対話型ＭＦＰ操作システムを実現している。
【０１８４】
「入力不足フィードバック」は、ジョブを実行するために必要な情報が揃っていない場合に出力される応答である。ユーザの入力結果を聞き取れなかった場合、又は、必須パラメータが不足している場合に出力される。つまり、必須パラメータ以外のパラメータについては、指示されていない場合であっても入力不足フィードバックを行う必要はない。また、パラメータ以外にも、コピー機能又はスキャン機能等のうち、利用する機能を確認する処理を含んでも良い。
【０１８５】
例えば、クラウドサービス装置が通信接続中の外部装置の種類に応じて、ユーザに確認する機能、及びパラメータを変更しても良い。この場合、機器情報取得部１６３が外部装置との通信が確立した後の所定のタイミングで外部装置の種類及び機能を示す情報を取得し、取得した情報に基づいてユーザに確認する機能及びパラメータを例えばフィードバック部１５３が決定してもよい。
【０１８６】
例えば、外部装置の種類がＭＦＰ１である場合、コピー、プリント、スキャン、ＦＡＸなどのＭＰＦ１が有する機能をユーザに確認でき、更に、コピー、プリント、スキャン、ＦＡＸのうちＭＦＰ１が有している機能についてのみ、いずれの機能を使用するかをユーザに確認しても良い。また、ユーザから指定された設定条件に応じて必須パラメータを変更しても良い。つまり、ユーザが指定した印刷条件が変倍印刷の場合は印刷する用紙サイズを必須パラメータとして、両面印刷の場合は原稿が片面か両面かを示す設定を必須パラメータとして、週刊誌綴じ印刷の場合は仕上がりサイズ及び１ページに含めるページ数などの設定を必須パラメータとして設定する。
【０１８７】
「入力確認フィードバック」は、ジョブを実行するために必要な情報が揃った場合に出力される応答である。つまり、入力確認フィードバックは、全ての必須パラメータについて指示された場合に行われる。また、入力確認フィードバックは、現在の設定値でジョブを実行するか、又は、設定値を変更するかの選択をユーザに促すために行う。なお、現在の設定値でジョブを実行するか否かを確認するために、ユーザにより指示された全てのパラメータ（必須パラメータか必須パラメータ以外のパラメータかに関わらず）を音声出力することで、ユーザに確認することができる。
【０１８８】
（両面で２部のコピーを行うようにＭＦＰを対話型操作する例）
図２６〜図３４は、このような対話型動作の流れを示すシーケンス図である。
【０１８９】
（音声アシスタントプログラムの起動動作の流れ）
まず、図２６のシーケンス図は、音声アシスタントプログラムの起動動作の流れを示している。この図２６において、まず、ユーザは、スマートスピーカ１００の操作音声処理プログラムを起動操作した後、例えば音声入力によって音声アシスタントプログラムの起動を指示する。一例ではあるが、ユーザが音声アシスタントプログラムを起動するための起動ワードを発話することで、音声認識サーバ装置３の音声アシスタントプログラムを起動させることができる（ステップＳ１９１）。
【０１９０】
スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して起動ワードの音声データを送信する（ステップＳ１９２）。音声認識サーバ装置３のテキスト変換部１５６は、起動ワードの音声データをテキストデータに変換する（ステップＳ１９３）。また、音声認識サーバ装置３の解釈部１５７は、音声アシスタントプログラムから提供される辞書情報（ＨＤＤ３４に記憶されている辞書情報）に基づいて（ステップＳ１９４、ステップＳ１９５）、起動ワードのテキストデータを、インテント及びパラメータに変換し（テキスト解釈）（ステップＳ１９６）、スマートスピーカ１００のデバイスＩＤと共にＡＩアシスタントサーバ装置４に送信する（ステップＳ１９７）。
【０１９１】
ＡＩアシスタントサーバ装置４の実行判定部１６４は、インテント及びパラメータに基づいて、ジョブ実行に必要な条件が全て揃っているか否かを判断する（ステップＳ１９８〜ステップＳ２０２）。例えば、実行判定部１６４は、必須パラメータを満たしているか否かを判断し（ステップＳ２０２）、必須パラメータを満たしていない場合には、音声認識サーバ装置３の操作音声変換プログラムを介して、スマートスピーカ１００にレスポンス情報を送信する（ステップＳ２０３、ステップＳ２０４）。
【０１９２】
レスポンス情報には、例えばテキストデータ、音声データ、画像データ等が含まれる。ここでは、一例として、「コピーしますか？スキャンしますか？」のテキストデータをスマートスピーカ１００に送信する。なお、ユーザに対してジョブの種類又はジョブの設定条件の入力を促すメッセージであれば内容はこれに限定されない。また、スマートスピーカ１００でテキストデータを音声データに変換できない場合、音声データの情報形態で送信しても良い。更に、ユーザに対するフィードバックは、音声出力だけでなく、タッチパネル２７にテキスト又は画像を表示することで行っても良い。これにより、スマートスピーカ１００のフィードバック部１５３は、「コピーしますか？スキャンしますか？」との音声フィードバックを行う（ステップＳ２０５）。
【０１９３】
なお、音声認識サーバ装置３の音声アシスタントプログラムの起動を指示する際に、ジョブの種類及び設定条件を指定していた場合、上述のステップは省略しても良い。また、ＡＩアシスタントサーバ装置４の実行判定部１６４は、レスポンス情報の送信に先立ち、取得したスマートスピーカ１００のデバイスＩＤに対応するＭＦＰ１を紐づけ用ＤＢ１０２から検索しても良い。
【０１９４】
このとき、スマートスピーカ１００のデバイスＩＤと紐づくＭＦＰ１が紐づけ用ＤＢ１０２に記憶されていない場合、実行判定部１６４は、スマートスピーカ１００が通信対象と紐づけられていないことをユーザに通知する。例えば、実行判定部１６４は、「このデバイスは機器と紐づけられていません」とのレスポンスを含むレスポンス情報を形成する。ここで、実行判定部１６４は、デバイスと通信対象を紐づけする方法をレスポンスに含めても良い。なお、紐づけ用ＤＢ１０２からのＭＦＰ１の検索及びレスポンス情報の形成は、スマートスピーカ１００のデバイスＩＤを取得した他の任意のタイミングで行っても良い。
【０１９５】
また、実行判定部１６４は、レスポンス情報の送信に先立ち、通信対象の機器状態を確認しても良い。実行判定部１６４は、機器情報取得部１６３によって機器情報を取得することで、又は、機器情報取得部１６３が予め取得した機器情報を参照することで、通信対象と通信可能か否か、及び、通信対象が使用可能か否かを判断する。このとき、スマートスピーカ１００のデバイスＩＤと紐づくＭＦＰ１との接続が確立していない場合、又はＭＦＰが起動中などで使用できない場合、実行判定部１６４は、ユーザに対して通知を行う。
【０１９６】
例えば、実行判定部１６４は、「機器がオフラインです」又は「機器が準備中です」とのレスポンスを含むレスポンス情報を形成する。ここで、実行判定部１６４は、対策方法をレスポンスに含めても良い。なお、機器状態の確認は、音声認識サーバ装置３の操作音声変換プログラムからインテント及びパラメータ、デバイスＩＤを取得した他の任意のタイミングで行っても良い。
【０１９７】
また、実行判定部１６４は、レスポンス情報の送信に先立ち、通信対象にユーザから指定された機能を実行するアプリケーションの状態を確認しても良い。実行判定部１６４は、機器情報取得部１６３によって機器情報を取得することで又は機器情報取得部１６３が予め取得した機器情報を参照することで、アプリケーションがインストールされているか否か、アプリケーションが実行可能な状態であるか否かを判断する。
【０１９８】
例えば、実行が指示されたコピー機能に関するアプリケーションがスマートスピーカ１００のデバイスＩＤと紐づくＭＦＰ１にインストールされていない場合、又はコピー機能に関するアプリケーションが起動中などで使用できない場合、実行判定部１６４はユーザに対して通知を行う。例えば、実行判定部１６４は、「アプリケーションがインストールされていません」又は「アプリケーションは現在利用できません」とのレスポンスを含むレスポンス情報を形成する。ここで、実行判定部１６４は、対策方法をレスポンスに含めても良い。
【０１９９】
なお、アプリケーションの状態の確認は、操作音声変換プログラムからインテント及びパラメータ、デバイスＩＤを取得した他の任意のタイミングで行っても良い。また、実行判定部１６４は、レスポンス情報の送信に先立ち、機器情報取得部によって機器情報を取得することで又は機器情報取得部が予め取得した機器情報を読み出することで機器情報を取得しても良い。取得した機器情報は、例えばユーザが指示したジョブ種類及びジョブ条件が通信対象で実行可能か否かを判断する際に利用される。
【０２００】
（音声アシスタントプログラムの起動動作の流れ）
次に、図２７のシーケンス図は、コピー機能を指示した際の動作の流れを示す図である。上述のステップＳ２０５において、「コピーしますか？スキャンしますか？」との音声フィードバックに対して、ユーザが、「コピー」と発音した場合（ステップＳ２１１）、又は音声アシスタントプログラムの起動指示の際に「コピー」と発話していた場合、スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して、「コピー」との音声データを送信する。（ステップＳ２１２）。音声認識サーバ装置３の操作音声変換プログラムのテキスト変換部１５６は、「コピー」との音声データをテキストデータに変換処理する（ステップＳ２１３）。
【０２０１】
音声認識サーバ装置３の解釈部１５７は、図１０及び図１１を用いて説明したように、テキストデータで示されるユーザの発話フレーズを解釈し（ステップＳ２１４〜ステップＳ２１６）、解釈結果となるインテント及びパラメータを、スマートスピーカ１００のデバイスＩＤと共に、ＡＩアシスタントサーバ装置４に送信する。ここでは、「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」としたインテントを解釈結果として生成し、管理プログラムへ送信する（ステップＳ２１７）。
【０２０２】
次に、この例の場合、ユーザは、「コピー」としか発音していないため、コピー部数及び片面又は両面等のコピー形態等の不明となる（入力不足）。このため、ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４は、必須パラメータを満たしていないと判断する（ステップＳ２１８）。これにより、ＡＩアシスタントサーバ装置４は、スマートスピーカ１００に対して、不足しているパラメータの問い合わせを行う（ステップＳ２１９、ステップＳ２２０）。
【０２０３】
具体的には、ＡＩアシスタントサーバ装置４の実行判定部１６４は、例えば「設定値を入力してください」とのレスポンス情報（Ｒｅｓｐｏｎｓｅ）を形成する。ＡＩアシスタントサーバ装置４の管理プログラムの通知部１６５は、このレスポンス情報を、音声認識サーバ装置３の音声変換プログラムを介してスマートスピーカ１００に送信する（ステップＳ２２０）。スマートスピーカ１００のフィードバック部１５３は、スマートスピーカ１００を介して「設定値を入力してください」との音声出力を行うと共に、タッチパネル２７に対して「設定値を入力してください」とのテキスト表示を行う（ステップＳ２２１：入力不足フィードバック）。ただし、音声出力又はタッチパネルのテキスト表示の一方を省略しても良い。
【０２０４】
また、ＡＩアシスタントサーバ装置４の管理プログラムの通知部１６５は、操作音声変換プログラムに対してレスポンス情報を送信するとき、セッションが継続していることを示す状態情報を送信しても良い。状態情報は、セッションの状況を示す情報であり、例えば、ＭＦＰ１等の外部装置に対するジョブ実行命令の送信がまだ行われておらず、ユーザによるジョブの設定処理が継続中である場合には、セッションが継続していることを示す状態情報が送信される。また、外部装置に対するジョブ実行命令の送信が完了した場合には、セッションが終了したことを示す状態情報が送信される。
【０２０５】
ただし、状態情報はこれに限定されず、より詳細にセッションの状況を示す情報形態としてもよい。音声認識サーバ装置３の操作音声変換プログラムの解釈部１５７は、状態情報に応じて、セッションを継続するか終了するかを判断する。つまり、操作音声変換プログラムの解釈部１５７は、セッションが継続中である場合には、ユーザが複数回の発話に分けてジョブ設定条件を指定した場合であっても、一つのジョブに属するものであると判断し、セッションが終了した場合には、ユーザの発話に含まれるジョブ設定条件は新規のジョブに属するものであると判断することができる。これにより、音声認識サーバ装置３の操作音声変換プログラムは、ジョブの種類及びジョブ設定条件の指示が複数回の発話に跨るような場合であったとしても、同一のジョブに属するものか、別の新規なジョブに属するものかを判断することができる。
【０２０６】
なお、音声認識サーバ装置３の操作音声変換プログラムは、スマートスピーカ１００から信号を受信しない状況が所定時間以上継続した場合は、セッション終了と判断しても良い。音声認識サーバ装置３がセッションを管理する場合であっても、通信対象（ＭＦＰ１）は、セッションに関わらずジョブ実行を行っても良い。この場合、通信対象のＭＦＰ１は、ジョブ実行命令を取得すると、現在、ＭＦＰ１が保持しているジョブ条件に対して、取得したジョブ実行命令に含まれるジョブ条件を上書きして設定する。このとき、通信対象で保持するジョブ条件を全て削除又はデフォルト条件に戻して、ジョブ実行命令に含まれるジョブ条件を設定しても良い。
【０２０７】
また、通信対象で保持するジョブ条件と矛盾するジョブ条件についてはジョブ実行命令に含まれるジョブ条件を優先して上書き設定し、矛盾しないジョブ条件は通信対象が予め保持していたジョブ条件を維持しても良い。なお、通信対象は、ジョブを実行した場合はジョブ実行命令に含まれるジョブ条件を削除して、通信対象に予め登録されたデフォルト状態にすることができる。
【０２０８】
次に、入力不足フィードバックがあったため、ユーザは、例えば「両面で」とのコピー形態を指示する発話を行う（ステップＳ２２２）。スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して、「両面で」との音声データを送信し、テキスト変換要求を行う（ステップＳ２２３）。音声認識サーバ装置３の操作音声変換プログラムのテキスト変換部１５６は、「両面で」との音声データをテキストデータに変換処理する（ステップＳ２２４）。
【０２０９】
音声認識サーバ装置３の解釈部１５７は、テキストデータで示されるユーザの発話フレーズを解釈し（ステップＳ２２５〜ステップＳ２２７）、解釈結果となるインテント及びパラメータを、スマートスピーカ１００のデバイスＩＤと共に、ＡＩアシスタントサーバ装置４に送信する（ステップＳ２２８）。
【０２１０】
この例においては、「印刷面＝両面」としたパラメータを解釈結果として生成する。これによって解釈部１５７は、前回の発話に含まれるインテント及びパラメータと合わせて、「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」としたインテント、及び「印刷面＝両面」としたパラメータを含む解釈結果をＡＩアシスタントサーバ装置４に送信する。
【０２１１】
次に、この例の場合、ユーザは、「コピー」及び「両面で」としか発音していないため、コピー部数等が不明となる（再度の必須パラメータ不足）。なお、以上の説明は、音声認識サーバ装置３の操作音声変換プログラムが、前回の発話の解釈結果と今回の発話の解釈結果とを統合してインテント及びパラメータを生成する場合について説明したが、これに限定されない。即ち、ＡＩアシスタントサーバ装置４の管理プログラムは、前回の発話の解釈結果を記憶しておき、管理プログラムによって前回の発話の解釈結果と今回の発話の解釈結果とを統合してインテント及びパラメータを生成しても良い。この場合、音声認識サーバ装置３の解釈部１５７は、今回の発話によって新たに取得した、「印刷面＝両面」としたパラメータのみをＡＩアシスタントサーバ装置４の管理プログラムへ送信しても良い。
【０２１２】
複数のパラメータのうち、いずれのパラメータが必須パラメータであるかは、ＡＩアシスタントサーバ装置４のＨＤＤ２４等の記憶部に予め記憶しておくことができる。この場合、ＡＩアシスタントサーバ装置４の実行判定部１６４は、記憶部に記憶された必須パラメータの情報に基づいて、スマートスピーカ１００から取得したパラメータにより、全ての必須パラメータの設定が完了しているか否かを判断し、必須パラメータの設定が完了していない場合は、必須パラメータの設定を行うように、スマートスピーカ１００を介してユーザへ促すことができる。
【０２１３】
このため、ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４は、「何部印刷しますか？」とのレスポンス情報（Ｒｅｓｐｏｎｓｅ）を形成する（ステップＳ２２９）。ＡＩアシスタントサーバ装置４の通知部１６５は、このレスポンス情報を、音声認識サーバ装置３の操作音声変換プログラムを介してスマートスピーカ１００に送信する（ステップＳ２３０、ステップＳ２３１）。スマートスピーカ１００のフィードバック部１５３は、スピーカ部２８を介して「何部印刷しますか？」との音声出力を行うと共に、タッチパネル２７に対して「何部印刷しますか？」とのテキスト表示を行う（ステップＳ２３２：入力不足フィードバック）。
【０２１４】
（部数設定動作）
次に、図２８は、部数設定動作の流れを示すシーケンス図である。図２７のシーケンス図のステップＳ２３２において、スマートスピーカ１００を介して「何部印刷しますか？」との、再度、入力不足フィードバックがあったため、ユーザは、例えば「２部」と発話する（ステップＳ２４１）。スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して、「２部」との音声データを送信し、テキスト変換要求を行う（ステップＳ２４２）。音声認識サーバ装置３の操作音声変換プログラムのテキスト変換部１５６は、「２部」との音声データをテキストデータに変換する（ステップＳ２４３）。
【０２１５】
操作音声変換プログラムの解釈部７２は、テキストデータで示されるユーザの発話フレーズを辞書情報に基づいて解釈する（ステップＳ２４４〜ステップＳ２４６）。この例では、解釈部７２は、「部数＝２部」としたパラメータを解釈結果として生成する。解釈部７２は、以前の発話に含まれるインテント及びパラメータと合わせて、「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」としたインテント、及び「印刷面＝両面、部数＝２部」としたパラメータを含む解釈結果をＡＩアシスタントサーバ装置４へ送信する（ステップＳ２４７）。
【０２１６】
ＡＩアシスタントサーバ装置４の実行判定部１６４は、「印刷面＝両面、部数＝２部」としたパラメータを受信することで、ステップＳ２４８の必須パラメータ充足判断において、コピーのジョブに対する必須パラメータ不足が解消したものと判断する。このため、実行判定部１６４は、「両面で２部コピーします。よろしいですか？」とのレスポンス情報を形成する。このレスポンス情報は、通知部１６５及び音声認識サーバ装置３を介してスマートスピーカ１００に送信される（ステップＳ２４９、ステップＳ２５０）。
【０２１７】
スマートスピーカ１００のフィードバック部５５は、レスポンス情報に含まれるＲｅｓｐｏｎｓｅに基づいて、必須パラメータ不足が解消し、コピーを開始する準備が整ったことを示す、例えば「両面で２部コピーします。よろしいですか？」との入力確認フィードバックの音声及びテキストを出力する（ステップＳ２５１）。
【０２１８】
ここで、レスポンス情報に含まれるテキストデータ及び音声データを出力することに代えて、レスポンス情報に含まれる情報に基づいてスマートスピーカ１００の記憶部に記憶されたテキストデータに基づいて生成したテキストデータを出力（音声出力又は表示）してもよい。この入力確認フィードバックに対して、ユーザは、設定値の変更の指示、又はコピーの開始指示を行う。
【０２１９】
（設定値の変更動作）
設定値の変更指示を行う場合、ユーザは、スマートスピーカ１００に対して変更する設定値の音声入力を行う（ステップＳ２５２）。例えば、印刷部数を２部から３部に変更する場合、ユーザは「３部」と音声入力を行う。また、印刷面を両面から片面に変更する場合、ユーザは、「片面」との音声入力を行う。この音声入力に基づいて、ＡＩアシスタントサーバ装置４で必須パラメータの充足判断が行われ、レスポンス情報に基づいて、スマートスピーカ１００から例えば「（変更された内容）でコピーします。よろしいですか？」との入力確認フィードバックが行われる（ステップＳ２５３〜ステップＳ２６２）。
【０２２０】
このような設定値の変更動作（ステップＳ２５２〜ステップＳ２６２）は、ユーザが入力確認フィードバックされた設定値を許容する音声入力（テキスト入力、ボタン入力等でもよい）が行われるまで、繰り返し行われる。すなわち、このような設定値の変更動作は、ユーザが入力確認フィードバックされた設定値を許容する、「はい」との音声入力が行われるまで、繰り返し行われる。
【０２２１】
（ＭＦＰに対するジョブの実行指示動作）
次に、図２９は、ＭＦＰ１に対するジョブの実行指示動作の流れを示すシーケンス図である。上述の入力確認フィードバックにより、ユーザが「はい」との応答の音声入力を行うと（ステップＳ２７１）、音声認識サーバ装置３の操作音声変換プログラムでテキスト化される（ステップＳ２７２）。音声認識サーバ装置３の操作音声変換プログラムの解釈部１５７は、テキストデータに基づいてコピー開始指示を認識すると、「Ｃｏｐｙ＿Ｅｘｅｃｕｔｅ」としたインテントに、「印刷面＝両面」及び「部数＝２部」とのパラメータを付加した解釈結果を形成し、これを管理プログラムに送信する（ステップＳ２７４〜ステップＳ２７７）。
【０２２２】
ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４によって解釈結果が必須パラメータを満たしていると判断された場合（ステップＳ２７８）、解釈結果変換部１６１は、解釈結果をＭＦＰ１のジョブ命令に変換処理し（ステップＳ２７９）する。そして、実行指示部１６２が、変換処理した実行指示情報をＭＦＰ１に送信する（ステップＳ２８０）。これにより、ＭＦＰ１のコピー、スキャン等の機能、１部、２部等の実行部数、及び、片面、両面等の実行形態等を音声入力により設定して、ＭＦＰ１の動作を制御することができる。
【０２２３】
ＭＦＰ１に対してジョブの実行を指示すると、ＡＩアシスタントサーバ装置４の実行指示部１６２は、ＭＦＰ１に対してジョブの実行を指示した旨の情報、及び、現在のジョブの実行状態（ＭＦＰ１の現在の状態）を含むレスポンス情報を形成する。ＡＩアシスタントサーバ装置４の通知部１６５は、このレスポンス情報を、音声認識サーバ装置３を介してスマートスピーカ１００に送信する（ステップＳ２８１、２８２）。スマートスピーカ１００のフィードバック部１５３は、レスポンス情報からジョブの実行を指示した旨の情報を検出すると、例えば「（指示されたジョブを）スタートします」等の音声フィードバック及びテキストフィードバックを行う（ステップＳ２８３）。これにより、ユーザは、ＭＦＰ１において、指示したジョブの実行が開始されたことを認識することができる。 
【０２２４】
なお、ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４によって解釈結果が必須パラメータを満たしていると判断された場合（ステップＳ２７８）、スマートスピーカ１００に対するフィードバック動作は省略しても良い。
【０２２５】
（ＡＩアシスタントサーバ装置からフィードバックされる情報の例）
次に、上述の説明では、スマートスピーカ１００のフィードバック部１５３はレスポンス情報に含まれるテキストデータ及び音声データを出力することとして説明した。しかし、フィードバック部１５３は、スマートスピーカ１００の記憶部に記憶されているテキストデータに基づいて、レスポンス情報に対応するテキストデータを形成し、フィードバック出力（音声出力及びテキスト出力）を行ってもよい。
【０２２６】
具体的には、表２を用いて上述したように、例えばジョブの設定値の入力促すための「Ｃｏｐｙ＿Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、ジョブの設定値の確認を促すための「Ｃｏｐｙ＿Ｃｏｎｆｉｒｍ」等のインテントが、レスポンス情報に含められて、ＡＩアシスタントサーバ装置４からスマートスピーカ１００にフィードバックされる。
【０２２７】
フィードバック部１５３は、レスポンス情報に含まれるインテント、パラメータ、レスポンスに応じて、ユーザに対するフィードバックを判断する。フィードバック部１５３は、フィードバックする内容を決定するために、表２に相当する情報をスマートスピーカ１００の記憶部に記憶し、参照できる構成としても良い。
【０２２８】
なお、表２では、コピーの場合を例に説明したが、プリント、スキャン、ＦＡＸも表２と同様にアクションとして、ジョブの設定値の入力促すための「Ｐａｒａｍｅｔｅｒ＿Ｓｅｔｔｉｎｇ」、ジョブの設定値の確認を促すための「Ｃｏｎｆｉｒｍ」が用いられても良い。レスポンス情報には、インテント及びパラメータ又はレスポンスの少なくとも一方が含まれていれば良い。
【０２２９】
また、例えば両面又は片面等の印刷面の設定値、又は、コピー部数等のパラメータが、レスポンス情報に含められて端末２にフィードバックされる。さらに、必須パラメータが不足している場合、不足するパラメータの入力を促すメッセージが、レスポンスとして信号に含められてスマートスピーカ１００にフィードバックされる。
【０２３０】
（ＭＦＰでエラーが発生した場合の動作）
次に、ＭＦＰ１でジョブが実行され、又は、エラーが発生した場合の動作を説明する。ＭＦＰ１がジョブを実行することで、何事もなくジョブが完了すれば、例えば「ジョブが完了しました。原稿の取り忘れに注意してください。」等の完了メッセージ（音声及びテキスト）が、スマートスピーカ１００を介して出力される。
【０２３１】
これに対して、例えば用紙不足のエラーが発生した場合、ＡＩアシスタントサーバ装置４は、スマートスピーカ１００に対して、例えば「用紙がありません。用紙を補充して継続するか、ジョブをキャンセルしてください」等のジョブの確認フィードバックを行う。この確認フィードバックに対して、ユーザがＭＦＰ１に用紙を補充し、「継続」との発話により応答した場合、音声認識サーバ装置３の実行指示部１６２により、ＭＦＰ１に対してジョブの継続が指示され、ＭＦＰ１でジョブが再開される。
【０２３２】
これに対して、確認フィードバックにより、ユーザが「キャンセル」との発話することで、ジョブのキャンセルが指示された場合、ＡＩアシスタントサーバ装置４の実行指示部１６２は、ＭＦＰ１に対してジョブのキャンセルを指示し、ＭＦＰ１において、エラー発生以降のジョブの実行がキャンセルされる。この場合、スマートスピーカ１００を介して、例えば「ジョブをキャンセルしました」等の音声及びテキストを出力する確認フィードバックが行われる。
【０２３３】
図３０は、このようなジョブの実行動作及びエラー発生時の対話動作の流れを示すシーケンス図である。スマートスピーカ１００は、ＭＦＰ１から通知されたジョブ実行結果を（ステップＳ３５０）、ＡＩアシスタントサーバ装置４を介して取得すると（ステップＳ３５１）、ユーザに対して正常にジョブが完了した旨のフィードバック（ステップＳ３５２）、又は、エラーが発生したことを示すフィードバックを行う（ステップＳ３５３）。
【０２３４】
正常にジョブが完了した旨の実行結果を受信した場合、スマートスピーカ１００のフィードバック部１５３は、例えば「ジョブが完了しました」等の音声メッセージを出力する（ステップＳ３５２）。これに対して、エラーが発生した旨の実行結果を受信した場合、スマートスピーカ１００のフィードバック部１５３は、例えば「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」等の、ジョブの継続の是非を問う音声メッセージを出力する（ステップＳ３５３）。
【０２３５】
具体的には、ＭＦＰ１は、ジョブが完了すると、完了通知をＡＩアシスタントサーバ装置４の管理プログラムに対して送信する。また、ＭＦＰ１は、エラーが発生した場合には、エラー内容等のエラーに関するエラー情報をＡＩアシスタントサーバ装置４へ送信する。また、ＡＩアシスタントサーバ装置４の管理プログラムは、ＭＦＰ１から取得した情報に対応して、例えば「ジョブが完了しました」又は「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」等の応答情報を含むレスポンス情報を形成し、音声認識サーバ装置３を介してスマートスピーカ１００へ送信する。
【０２３６】
図３０のステップＳ３５４〜ステップＳ３６１は、ユーザが、継続を指定した場合の各部の動作の流れである。すなわち、「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」との問い合わせに対し、ユーザがエラーの発生要因を除去したうえで、「継続」と応答した場合（ステップＳ３５４）、上述のように「継続」の音声が、スマートスピーカ１００の操作音声変換プログラムによりテキスト化され、解釈される（ステップＳ３５５、ステップＳ３５６）。
【０２３７】
スマートスピーカ１００操作音声変換プログラムは、インテントを「Ｃｏｐｙ＿Ｊｏｂ＿Ｃｏｎｔｉｎｕｅ」とした解釈結果を生成して、ＡＩアシスタントサーバ装置４の管理プログラムへ送信する（ステップＳ３５７）。ＡＩアシスタントサーバ装置４の管理プログラムの通知部１６５は、「ジョブを継続します」としたレスポンス情報を生成し（ステップＳ３５８）、音声認識サーバ装置３を介してスマートスピーカ１００に送信する（ステップＳ３５９）。さらに、ＡＩアシスタントサーバ装置４の管理プログラムの実行指示部１６２は、ＭＦＰ１に対してジョブの継続を指示する（ステップＳ３６１）。また、スマートスピーカ１００のフィードバック部１５３は、「ジョブを継続します」との入力確認フィードバックを行う（ステップＳ３６０）。
【０２３８】
これに対して、図３０のステップＳ３６２〜ステップＳ３６８は、ユーザが、ジョブのキャンセルを指定した場合の各部の動作の流れである。すなわち、「エラーが発生しました。ジョブを継続しますか、キャンセルしますか？」との問い合わせに対し、ユーザが、「キャンセル」と応答すると（ステップＳ３６２）、この「キャンセル」の音声データが音声認識サーバ装置３に送信される（ステップＳ３６３）。音声認識サーバ装置３の操作音声変換プログラムの解釈部１５７は、この音声データをテキスト化して解釈する（ステップＳ３６４）。
【０２３９】
解釈部１５７は、インテントを「Ｃｏｐｙ＿Ｊｏｂ＿Ｃａｎｃｅｌ」とした解釈結果を生成して、ＡＩアシスタントサーバ装置４の管理プログラムへ送信する（ステップＳ３６５）。ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４は、「ジョブをキャンセルします」とのレスポンス情報を生成する。通知部１６５は、このレスポンス情報をスマートスピーカ１００に送信する（ステップＳ３６６）。これにより、スマートスピーカ１００のフィードバック部１５３は、「ジョブをキャンセルします」との入力確認フィードバックを行う（ステップＳ３６８）。また、ＡＩアシスタントサーバ装置４の管理プログラムの実行指示部５４は、ＭＦＰ１に対してジョブのキャンセルを指示する（ステップＳ３６７）。
【０２４０】
（ＭＦＰの機器能力に応じたパラメータの調整動作）
次に、ＭＦＰ１の機器能力に対応したジョブの実行を、対話型操作により実現する例を、図３１及び図３２のシーケンス図を用いて説明する。図３１は、ユーザから指示されたジョブに必要な機器能力を、ＭＦＰ１が有しているか否かの判定を行うまでの動作の流れを示すシーケンス図である。図３２は、ＭＦＰ１の機器能力で、ジョブの実行が可能である場合、及び、ジョブの実行が困難である場合の動作の流れを示すシーケンス図である。
【０２４１】
まず、図３１のシーケンス図において、ユーザより「起動」が指示されると（ステップＳ３７１）、ＡＩアシスタントサーバ装置４の管理プログラムの機器情報取得部１６３が、ＭＦＰ１に対して、例えば処理可能な解像度の問い合わせを行う（Ｃａｐａｂｉｌｉｔｙの取得：ステップＳ３７２）。この問い合わせに対して、ＭＦＰ１は、例えば「２００ｄｐｉ〜６００ｄｐｉ」等のように、処理可能な解像度をＡＩアシスタントサーバ装置４に回答する（ステップＳ３７３）。ＡＩアシスタントサーバ装置４は、ＭＦＰ１の処理可能な解像度を示す情報をスマートスピーカ１００に送信する。これにより、スマートスピーカ１００において、ＭＦＰ１の処理可能な解像度が認識される。
【０２４２】
なお、ＡＩアシスタントサーバ装置４の機器情報取得部１６３は、ＭＦＰ１との通信回線が確立した後の所定のタイミングで、ＭＦＰ１から処理能力の情報を取得しても良い。また、紐づけ用ＤＢ１０２の管理テーブルにスマートスピーカ１００とＭＦＰ１とを関連付けて登録する際に、ＭＦＰ１の処理能力の情報を取得して登録してもよい。また、ＡＩアシスタントサーバ装置４の機器情報取得部１６３が、ＭＦＰ１から定期的に処理能力の情報を取得してもよい。また、機器情報取得部１６３は、音声認識サーバ装置３がスマートスピーカ１００から音声アシスタントプログラムの起動を受け付けたタイミング、又は、スマートスピーカ１００からジョブの実行指示を受け付けたタイミングで、ＭＦＰ１から処理能力の情報を取得しても良い。
【０２４３】
取得した処理能力の情報は、ＡＩアシスタントサーバ装置４のＨＤＤ４４等の記憶部に記憶してもよいし、紐づけ用ＤＢ１０２の管理テーブルに、ＭＦＰ１と紐づけて記憶してもよい。また、処理能力の情報の取得は、他のプログラムが実行し、機器情報取得部１６３は、他のプログラムが取得した情報を取得することで、間接的にＭＦＰ１が有する情報を取得しても良い。また、機器情報取得部１６３が、ＭＦＰ１から取得する情報は、処理能力の情報に限定されず、例えばＭＦＰにインストールされたアプリケーションの種類及びバージョン、印刷速度、処理可能なファイル形式、フィニッシャを含むオプション機器の接続状況など、ＭＦＰ１で実行可能なジョブの種類又はジョブの設定条件に関する情報を取得してもよい。
【０２４４】
次に、ユーザによりスマートスピーカ１００の操作音声処理プログラムが起動操作された後、例えば音声入力で「起動」を指示すると、スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して、この「起動」の音声データを送信する。これにより、「起動」の音声データがテキスト変換されて解釈され、解釈結果がＡＩアシスタントサーバ装置４に通知される。ＡＩアシスタントサーバ装置４の実行判定部１６４は、必須パラメータを満たしているか否かを判断する。
【０２４５】
この時点では、ジョブの種類も指定されておらず、必須パラメータを満たしていない状態であるため、ＡＩアシスタントサーバ装置４は、スマートスピーカ１００に対して、「コピーしますか？スキャンしますか？」等のジョブの種類の入力を促すレスポンス情報を送信する。これのより、スマートスピーカ１００のフィードバック部１５３は、例えば「コピーしますか？スキャンしますか？」等のジョブの指示を促す音声フィードバックを行う（ステップＳ３７４）。
【０２４６】
次に、ユーザが「スキャン」と発話すると（ステップＳ３７５）、音声認識サーバ装置３の操作音声変換プログラムによりテキスト化され解釈される（ステップＳ３７６、ステップＳ３７７）。また、音声認識サーバ装置３の解釈部３７７は、インテントを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とした解釈結果を生成し、ＡＩアシスタントサーバ装置４の管理プログラムへ送信する（ステップＳ３７８）。
【０２４７】
ＡＩアシスタントサーバ装置４の実行判定部１６４は、受信した解釈結果に基づいて必須パラメータの充足判断を行うが（ステップＳ３７９）、スキャンの指示だけでは、必須パラメータが不足している。このため、実行判定部１６４は、「設定値を入力してください」とのレスポンス情報を形成し、これをスマートスピーカ１００に送信する（ステップＳ３８０）。スマートスピーカ１００のフィードバック部１５３は、このレスポンス情報に基づいて、「設定値を入力してください」との入力不足フィードバックを行う（ステップＳ３８１）。
【０２４８】
次に、このような入力不足フィードバックに対して、ユーザが「１０００ｄｐｉで田中さん宛て」と発話すると（ステップＳ３８２）、この音声データは、音声認識サーバ装置３によりテキスト化され解釈される（ステップＳ３８３、ステップＳ３８４）。解釈部１５７は、インテントを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」、パラメータを「解像度＝１０００ｄｐｉ、宛先＝田中」とした解釈結果を形成し、ＡＩアシスタントサーバ装置４の管理プログラムに送信する（ステップＳ３８５）。
【０２４９】
ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部５７は、解釈結果に含まれるパラメータ、及び、機器情報取得部１６１により予め取得されているＭＦＰ１の処理能力を示す情報を参照することで、通信対象にユーザから指定された設定でジョブの実行が可能か否かを判定する（ステップＳ３８６）。そして、実行判定部１６４は、判定結果に対応するレスポンス情報を形成し、通知部１６５がスマートスピーカ１００に通知する（ステップＳ３８７）。これにより、スマートスピーカ１００を介して、判定結果に対応したフィードバックが行われる（ステップＳ３８８）。
【０２５０】
具体的には、図３２のシーケンス図において、ＭＦＰ１が、１０００ｄｐｉの解像度の処理能力を有していれば、実行判定部１６４は、「１０００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」とのレスポンス情報を形成する。そして、通知部１６５が、このレスポンス情報をスマートスピーカ１００へ送信する。これにより、スマートスピーカ１００フィードバック部１５３により、「１０００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」との入力確認フィードバックが行われる（ステップＳ３８９）。
【０２５１】
この入力確認フィードバックに対してユーザが「はい」と応答すると（ステップＳ３９１）、音声認識サーバ装置３の解釈部１５７は、この音声データをテキスト化して解釈し（ステップＳ３９２、ステップＳ３９３）する。そして、解釈部１５７は、インテントを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とし、パラメータを「解像度＝１０００、宛先＝田中」とした解釈結果を、ＡＩアシスタントサーバ装置４の管理プログラムに送信する（ステップＳ３９４）。
【０２５２】
ＡＩアシスタントサーバ装置４の管理プログラムの解釈結果変換部１６１は、解釈結果をジョブ命令に変換する（ステップＳ３９５）。そして、管理プログラムの実行指示部１６２が、「１０００ｄｐｉでスキャンした画像を田中さん宛てに送信する」とのジョブ命令をＭＦＰ１に送信する（ステップＳ３９６）。これにより、指定したジョブがＭＦＰ１で実行される。ＡＩアシスタントサーバ装置４の実行判定部１６４は、指示されたジョブの実行が開始されたことを示す「スタートします」とのレスポンス情報を形成し、通知部１６５が、このレスポンス情報をスマートスピーカ１００に送信する（ステップＳ３９７）。スマートスピーカ１００のフィードバック部１５３は、ユーザに対して、「スタートします」との入力確認フィードバックを行う。
【０２５３】
これに対して、６００ｄｐｉがＭＦＰ１の処理能力の限界である場合、ユーザから指定された１０００ｄｐｉの画像処理は、ＭＦＰ１では実行困難となる。ＡＩアシスタントサーバ装置４の実行判定部１６４は、機器情報取得部１６１により予め取得されているＭＦＰ１の処理能力を示す情報に基づいて、ＭＦＰ１ではユーザから指定された画像処理は困難であることを判定する。この場合、実行判定部１６４は、「１０００ｄｐｉは指定できません。６００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」とのレスポンス情報を形成する。通知部１６５は、このレスポンス情報を、スマートスピーカ１００に送信する。これにより、スマートスピーカ１００からユーザに対して、「１０００ｄｐｉは指定できません。６００ｄｐｉでスキャンし、田中さん宛てに送信します。よろしいですか？」との確認フィードバックが行われる。
【０２５４】
さらに具体的に説明すると、ＡＩアシスタントサーバ装置４の実行判定部１６４は、ＭＦＰ１の処理能力の範囲内で、ユーザが指示した機能又は処理能力値に最も近い機能又は値を選択する。例えば、ＭＦＰ１の処理可能な解像度が２００−６００ｄｐｉの範囲である場合、実行判定部１６４は、ユーザが指示した１０００ｄｐｉに最も近い６００ｄｐｉを選択する。そして、実行判定部５７が選択した能力又は値を、スマートスピーカ１００のフィードバック部１５３が、確認フィードバックとして出力する。
【０２５５】
つまり、実行判定部１６４は、ユーザの指示の解釈結果に含まれるインテント及びパラメータで示されるジョブの実行が困難と判断した場合、ＭＦＰ１の処理能力を示す情報に基づいて、ＭＦＰ１が実行可能な設定条件を選択する。そして、選択した設定条件に基づいてレスポンス情報を生成する。
【０２５６】
なお、ＡＩアシスタントサーバ装置４の管理プログラムは、音声認識サーバ装置３の操作音声変換プログラムの解釈部１５７から解釈結果に加えて、音声入力元であるスマートスピーカ１００を特定するデバイスＩＤ（音声入力元デバイスＩＤ）を取得している。このため、実行判定部１６４は、紐づけ用ＤＢ１０２を参照し、音声入力元デバイスＩＤに関連付けされているＭＦＰ１を特定し、特定したＭＦＰの処理能力を参照することで、ジョブ実行の可否を判断してもよい。また、ＭＦＰ１が備えていない機能の実行を、ユーザが指示した場合、実行判定部１６４は、ジョブを実行できないことを示すレスポンス情報をスマートスピーカ１００に送信しても良い。なお、実行判定部１６４は、選択した設定条件に関する情報を、音声認識サーバ装置３の操作音声変換プログラムに送信しても良い。
【０２５７】
このような確認フィードバックに対してユーザが「はい」と発話すると（ステップＳ３９１）、音声認識サーバ装置３のテキスト変換部１５６によりテキスト化され解釈される（ステップＳ３９２、ステップＳ３９３）。音声認識サーバ装置３の解釈部１５７は、テキストデータに基づいて、インテントを「Ｓｃａｎ＿Ｅｘｅｃｕｔｅ」とし、パラメータを「解像度＝６００、宛先＝田中」とした解釈結果を形成し、ＡＩアシスタントサーバ装置４の管理プログラムに送信する（ステップＳ３９４）。
【０２５８】
ＡＩアシスタントサーバ装置４の管理プログラムの解釈結果変換部１６１は、解釈結果をＭＦＰ１のジョブの実行指示に変換する（ステップＳ３９５）。ＡＩアシスタントサーバ装置４の管理プログラムの実行指示部１６２は、ジョブの実行指示をＭＦＰ１に送信する（ステップＳ３９６〜ステップＳ３９８）。これにより、ユーザの指示がＭＦＰ１の処理能力以上の指示で実行困難な場合でも、自動的に指示の内容をＭＦＰ１の処理能力で実行可能な指示に変更して、ユーザの指示となるジョブを実行することができる。
【０２５９】
ここで、ＭＦＰ１では、ＭＦＰ１内のＨＤＤ１３などの記憶部に保存されたアドレス帳を参照することで、「田中」に該当する宛先情報を検索する。宛先情報とは、メールアドレスやＦＡＸ番号などの情報である。「田中」に該当する宛先情報がアドレス帳に存在する場合、その宛先に対してＭＦＰ１でスキャンした画像データを送信する。
【０２６０】
なお、ＭＦＰ１の操作部１６に宛先情報を表示し、宛先に誤りがないかの確認をユーザに促し、ユーザがＯＫボタンを操作した場合に、宛先に対してスキャンした画像データを送信してもよい。また、「田中」に該当する宛先がアドレス帳に複数存在する場合は、該当する全ての宛先情報を、ＭＦＰ１の操作部１６に表示して、ユーザに選択させてもよい。
【０２６１】
（印刷対象を検索して印刷する動作）
次に、図３３及び図３４のシーケンス図を用いて、ユーザにより指定されたファイルを印刷する動作を説明する。図３３は、ユーザにより指定されたファイルを検索するまでの動作を示すシーケンス図である。また、図３４は、ユーザにより指定されたファイルを印刷するまでの動作を示すシーケンス図である。
【０２６２】
まず、図３３において、ユーザは、スマートスピーカ１００の操作音声処理プログラムが起動操作された後、例えば音声入力によって音声アシスタントプログラムの起動を指示する。これにより、スマートスピーカ１００の通信制御部１５２は、音声認識サーバ装置３に対して、「起動」との音声データを送信する（ステップＳ４４１）。音声認識サーバ装置３のテキスト変換部１５６は、「起動」の音声データをテキストデータに変換し、インテント及びパラメータに変換してＡＩアシスタントサーバ装置４の管理プログラムへ送信する。
【０２６３】
ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４は、必須パラメータを満たしているか否かを判断する。この「起動」の音声が入力された時点では、例えばジョブの種類等の必須パラメータが満たされていないため、実行判定部１６４は、「コピーしますか？スキャンしますか？プリントしますか？」との、ジョブの指示を促すレスポンス情報を形成する。通知部１６５は、このレスポンス情報をスマートスピーカ１００に送信する。これにより、スマートスピーカ１００のフィードバック部１５３により、「コピーしますか？スキャンしますか？プリントしますか？プリントしますか？」とのジョブの指示を促す音声フィードバックが行われる（ステップＳ４４２）。
【０２６４】
次に、ユーザが「プリント」と発話すると（ステップＳ４４３）、この音声が音声認識サーバ装置３の操作音声変換プログラムのテキスト変換部１５６によりテキスト化され、解釈部１５７により解釈される（ステップＳ４４４、ステップＳ４４５）。この場合、解釈部１５７は、インテントを「Ｐｒｉｎｔ＿Ｅｘｅｃｕｔｅ」とした解釈結果を形成し、ＡＩアシスタントサーバ装置４の管理プログラムへ送信する（ステップＳ４４６）。
【０２６５】
ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部は、受信した解釈結果に基づいて必須パラメータの充足判断を行う（ステップＳ４４７）。この場合、「プリント」との指示だけでは必須パラメータが不足しているため、実行判定部１６４は、「設定値を入力してください」としたレスポンス情報を形成し、通知部１６５を介してスマートスピーカ１００に送信する（ステップＳ４４８）。スマートスピーカ１００のフィードバック部１５３は、このレスポンス情報に基づいて、「設定値を入力してください」との入力不足フィードバックを行う（ステップＳ４４９）。
【０２６６】
次に、このような入力不足フィードバックに対して、ユーザが「ファイルＡをプリント」と発話すると（ステップＳ４５０）、この音声データが音声認識サーバ装置３に送信される（ステップＳ４５１）。音声認識サーバ装置３は、この音声データをテキスト化して解釈し（ステップＳ４５２）、インテントを「Ｐｒｉｎｔ＿Ｅｘｅｔｕｔｅ」、パラメータを「印刷対象＝ファイルＡ」とした解釈結果を形成し、ＡＩアシスタントサーバ装置４に送信する（ステップＳ４５３）。
【０２６７】
ＡＩアシスタントサーバ装置４の管理プログラムの検索部１６７は、解釈結果に含まれるパラメータに基づいて、管理ＤＢ１０１からファイルＡを検索する（ステップＳ４５４）。
【０２６８】
なお、検索する対象は管理ＤＢ１０１に限らず、音声認識サーバ装置３又はＡＩアシスタントサーバ装置４のクラウドサービス装置とネットワークを介して接続されたデータベースであっても良い。また、検索部１６７は、パラメータに含まれる文字列を含むファイル名を検索するだけでなく、パラメータに含まれる文字列をファイルデータ中に含むファイルを検索しても良い。また、検索部１６７は、ファイルの作成日時及びファイル作成者等のファイルの属性に基づいて検索を行っても良い。
【０２６９】
（一つだけファイルＡが記録されている場合）
このような検索を行うことで、管理ＤＢ１０１に、一つだけファイルＡが記録されている場合、図３４のシーケンス図において、ＡＩアシスタントサーバ装置４の検索部１６７は、ファイルＡを印刷データとして設定する（ステップＳ４５５）。そして、ＡＩアシスタントサーバ装置４の実行指示部１６２が、ファイルＡの印刷データをＭＦＰ１に送信し（ステップＳ４５６）、印刷を指示する（ステップＳ４５７）。これにより、ＭＦＰ１において、ファイルＡの印刷データの印刷が実行される。
【０２７０】
（２つ以上のファイルＡが存在する場合）
これに対して、管理ＤＢ１０１から２つ以上のファイルＡが検索された場合、即ち検索部１６７が検索した結果として複数のファイル検索された場合、ＡＩアシスタントサーバ装置４の実行判定部１６４は、「複数のファイルＡが登録されています  印刷するファイルを選択してください」のレスポンス情報を形成する。通知部１６５は、このレスポンス情報をスマートスピーカ１００へ送信する（ステップＳ４５８）。このとき、それぞれのファイルを特定するための情報として、ファイルの作成日時、作成者、サムネイル画像等をレスポンス情報に含めても良い。
【０２７１】
スマートスピーカ１００のフィードバック部１５３は、レスポンス情報に基づいて、検索された各ファイルの一覧をタッチパネル２７に表示する（ステップＳ４５９）。また、フィードバック部１５３は、「複数のファイルＡが登録されています。印刷するファイルを選択してください」との入力不足フィードバックを行う（ステップＳ４６０）。
【０２７２】
なお、ファイルの一覧を表示する際に、検索された各ファイルから所望のファイルの選択を容易化するために、ファイルの作成日時及び作成者を音声フィードバックしても良いし、タッチパネル２７に表示しても良い。また、ファイル一覧としてサムネイル画像を表示してユーザに選択を促しても良い。
【０２７３】
また、ファイルＡを選択する場合、ファイルの作成日時又は作成者等のファイルに関する情報を発話することで、ファイルを選択しても良いし、タッチパネル２７に表示されたファイル一覧から所望のファイルをタッチ操作で選択しても良い。
【０２７４】
（ファイルＡが記録されていない場合）
次に、管理ＤＢ１０１に、ユーザから指定されたファイルＡが記録されていない場合（検索部１６７がファイルＡを検索できない場合）、ＡＩアシスタントサーバ装置４の実行判定部１６４は、「メモリ内にファイルＡが登録されていません」とのレスポンス情報を生成する。また、実行判定部１６４は、管理ＤＢ１０１に記憶されているファイルの一覧情報を、管理ＤＢ１０１から取得し、レスポンス情報に含める。通知部１６５は、このようなレスポンス情報を、スマートスピーカ１００に送信する（ステップＳ４６１）。
【０２７５】
スマートスピーカ１００のフィードバック部１５３は、このレスポンス情報に基づいて、「ファイルＡが登録されていません  印刷するファイルを指定してください」とのフィードバックを行う（ステップＳ４６２）。また、これと共に、フィードバック部１５３は、レスポンス情報に付加されたファイルの一覧情報に基づいて、管理ＤＢ１０１に記憶されているファイルの一覧をタッチパネル２７に表示する（ステップＳ４６３）。ユーザは、このファイルの一覧に基づいて、印刷を行うファイルを選択して、再度指定することとなる。
【０２７６】
（選択されたファイルの印刷動作）
次に、管理ＤＢ１０１に１つだけファイルＡが存在する場合において、ユーザからファイルＡの印刷が指示された場合、実行判定部１６４は、「ファイルＡの印刷を開始します。よろしいでしょうか」のレスポンス情報を生成して、スマートスピーカ１００へ送信する（ステップＳ４６４）。スマートスピーカ１００のフィードバック部１５３は、例えば「ファイルＡの印刷を開始します。よろしいでしょうか」との確認フィードバックを行う（ステップＳ４６５）。
【０２７７】
この確認フィードバックに対して、ユーザが「はい」と応答すると（ステップＳ４６６）、この応答音声データがスマートスピーカ１００から音声認識サーバ装置３に送信される（ステップＳ４６７）。音声認識サーバ装置３のテキスト変換部１５６は、音声データをテキスト化し、解釈部１５７はテキスト化された音声データの解釈を行う（ステップＳ４６８）。解釈部１５７は、インテントを「Ｐｒｉｎｔ＿Ｅｘｅｃｕｔｅ」とし、パラメータを「印刷対象＝ファイルＡ、ファイル特定情報Ｘ」とした解釈結果を形成し、ＡＩアシスタントサーバ装置４の管理プログラムに送信する（ステップＳ４６９）。なお、ファイル特定情報Ｘとは、管理ＤＢ１０１に２つ以上のファイルＡが存在した場合に、ユーザが選択したファイルＡを特定するために付加される情報であり、例えばファイルの作成日時又は作成者等の情報である。
【０２７８】
ＡＩアシスタントサーバ装置４の管理プログラムの実行判定部１６４は、解釈結果に基づいて、必須パラメータの充足判断を行う（ステップＳ４７０）。この場合、必須パラメータは揃っているため、解釈結果変換部１６１は、解釈結果をＭＦＰ１のジョブ命令に変換する（ステップＳ４７１）。実行指示部１６２は、ユーザより選択されたファイルＡをＭＦＰ１に送信し、印刷の実行指示を行う（ステップＳ４７２）。これにより、ＭＦＰ１において、ユーザが希望するファイルＡの印刷が実行される。ＭＦＰ１に対して印刷の実行指示が行われると、ＡＩアシスタントサーバ装置４の通知部は、印刷が開始されたことを示す「スタートします」とのレスポンス情報をスマートスピーカ１００に送信する（ステップＳ４７３）。これにより、スマートスピーカ１００のフィードバック部１５３により、「スタートします」とのフィードバックが行われ、ユーザに対して印刷が開始されたことが通知される（ステップＳ４７４）。
【０２７９】
なお、上述の説明では、印刷対象をＡＩアシスタントサーバ装置４の検索部１６７が検索し、検索したファイルをＭＦＰ１へ送信する場合を例に説明した。しかし、例えばＭＦＰ１に対しては「印刷対象＝ファイルＡ」としたジョブ命令を送信し、ＭＦＰ１側でファイルＡを、ＨＤＤ１３又は管理ＤＢ１０１等から検索して印刷を実行しても良い。また、検索したファイルが２つ以上存在する場合、ＭＦＰ１の表示部上にファイル一覧を表示させ、ユーザに選択させてもよい。
【０２８０】
（第２の実施の形態の効果）
以上の説明から明らかなように、第２の実施の形態の音声操作システムは、スマートスピーカ１００に、プラットフォームアプリケーションプログラムとなる操作音声処理プログラムをインストールし、このアプリがクラウドサービス装置との通信を行う。ユーザがスマートスピーカ１００に設けられているマイクロホン部２９に向かって発話すると、クラウドサービス装置がユーザの発話内容を分析し、ユーザから指示された動作を行うようにＭＦＰ１を操作する（音声入力操作）。
【０２８１】
これにより、複雑な操作を音声で命令することができ、タッチパネル２７等のＧＵＩ（Graphical  User  Interface）による操作を不要とすることができる。このため、操作に慣れているユーザであっても、さらに迅速かつ簡単な入力操作を可能とすることができる。また、高齢者又は操作に不慣れなユーザであっても、対話による操作サポートにより、例えば複雑なネットワーク設定、高度なジョブの設定又は新規アプリの導入等の、ユーザが希望する操作を迅速かつ簡単に実行可能とすることができる。
【０２８２】
また、ユーザが発話した内容のテキストに基づいて、ユーザの意図を解析しているため、ユーザの発話に基づいた処理内容をＡＩアシスタントサーバ装置４側で判断して処理することができる。
【０２８３】
（第３の実施の形態）
次に、第３の実施の形態の音声操作システムの説明をする。この第３の実施の形態は、上述の紐づけ用ＤＢ１０２に対してスマートスピーカ１００とＭＦＰ１とを関連付けて登録する動作の、より具体的な説明となっている。まず、図３５は、第３の実施の形態の音声操作システムのシステム構成図である。この図３５に示すように、第３の実施の形態の音声操作システムは、ＭＦＰ１、音声認識サーバ装置３、ＡＩアシスタントサーバ装置４、スマートスピーカ１００、管理ＤＢ１０１、紐づけ用ＤＢ１０２、及び、音声操作ＡＰＩ５００を有している。
【０２８４】
紐づけ用ＤＢ１０２は、本コード紐づけ用ＤＢ及び仮コード紐づけ用ＤＢを有している。また、ＭＦＰ１には、スマートスピーカ１００との関連付けの際に動作する通信制御プログラム及び処理実行プログラムがインストールされている。
【０２８５】
図３６は、このような第３の実施の形態の音声操作システムの、より具体的なシステム構成図である。この図３６は、一例として、第３の実施の形態の音声操作システムの一部を、アマゾンウェブサービス（登録商標）のクラウドサービスを用いて形成した例である。なお、この図３６は、あくまでも一例であり、他のクラウドサービス等を用いて、第３の実施の形態の音声操作システムを構成してもよい。
【０２８６】
この図３６において、音声認識サーバ装置３の音声アシスタントプログラムは、ＭＦＰ１及びスマートスピーカ１００を提供しているメーカのスキルプログラムに相当する。また、音声認識サーバ装置３の操作音声変換プログラムは、サービスプログラムに相当する。また、ＡＩアシスタントサーバ装置４は、アマゾンウェブサービス（登録商標）のクラウド上でアプリケーションを実行するプラットフォームである「ラムダ（Ｌａｍｂｄａ）」で実現される。また、紐づけ用ＤＢ１０２は、アマゾンウェブサービス（登録商標）のクラウド上のデータベースである「ダイナモＤＢ（Ｄｙｎａｍｏ  ＤＢ）」で実現される。
【０２８７】
また、音声操作ＡＰＩ５００は、アマゾンウェブサービス（登録商標）のＩｏＴ（Internet  of  Things）で実現される。このアマゾンウェブサービス（登録商標）のＩｏＴにより、インターネットに接続されたスマートスピーカ１００及びＭＦＰ１と、アマゾンウェブサービス（登録商標）とのセキュアな双方向通信が可能となる。
【０２８８】
また、このアマゾンウェブサービス（登録商標）は、アマゾンウェブサービス（登録商標）と、アマゾンウェブサービス（登録商標）で実行されているアプリケーションをリアルタイムでモニタリングするクラウドウォッチ（CloudWatch）５０１を有している。また、このアマゾンウェブサービス（登録商標）は、モバイルアプリケーション又はウェブアプリケーションにユーザのサインアップと認証機能を追加可能として管理するコグニート（Ｃｏｇｎｉｔｏ）５０２を有している。
【０２８９】
（スマートスピーカとＭＦＰとの関連付け動作の概要）
次に、図３６を用いてスマートスピーカとＭＦＰとの関連付け動作の概要を説明する。まず、ユーザがスマートスピーカ１００に向かって「セットアップして」と発話すると、この音声データが音声認識サーバ装置３に送信される。音声認識サーバ装置３のサービスプログラム（操作音声変換プログラム）は、音声データをテキスト化して解釈し、インテント、スロット、及びスマートスピーカ１００のデバイスＩＤを、アマゾンウェブサービス（登録商標）のプラットフォームであるラムダ（Ｌａｍｂｄａ：ＡＩアシスタントサーバ装置４）に送信する。
【０２９０】
ラムダは、スマートスピーカ１００のデバイスＩＤに基づいて、ダイナモＤＢ（紐づけ用ＤＢ１０２）に問い合わせを行う。スマートスピーカ１００のデバイスＩＤが、ダイナモＤＢ（紐づけ用ＤＢ１０２）に未登録の場合、ラムダは、ＭＦＰ１に入力するための仮コード（乱数）を生成する。そして、ラムダは、生成した仮コード、ユーザのアカウント情報及びスマートスピーカ１００のデバイスＩＤを関連付け、有効期限情報を付加してダイナモＤＢ（紐づけ用ＤＢ１０２の仮コード紐づけ用ＤＢ）に記憶する。
【０２９１】
次に、ラムダは、上述の管理プログラムの通知部１６５により、例えば「ＭＦＰの設定ツールに仮コードを入力してください」との音声フィードバック用のデータを生成し、音声認識サーバ装置３を介してスマートスピーカ１００に送信する。これにより、スマートスピーカ１００を介して、「ＭＦＰの設定ツールに仮コードを入力してください」との音声フィードバックが行われる。ユーザは、この音声フィードバックが行われると、ＭＦＰ１に対して、ユーザのアカウント情報、及び、フィードバックされた仮コードを入力する。
【０２９２】
ＭＦＰ１は、ユーザから入力されたアカウント情報及び仮コードに、ＭＦＰ１の機器ＩＤを付して、アマゾンウェブサービス（登録商標）のＩｏＴ（音声操作ＡＰＩ５００）に送信し、ＭＦＰ情報の登録要求を行う。アマゾンウェブサービス（登録商標）のＩｏＴは、ＭＦＰ情報の登録要求を受信すると、ダイナモＤＢ（紐づけ用ＤＢ１０２の仮コード紐づけ用ＤＢ）に関連付けされて記憶されているユーザのアカウント情報、仮コード及びスマートスピーカ１００のデバイスＩＤを取得する。
【０２９３】
アマゾンウェブサービス（登録商標）のＩｏＴ（音声操作ＡＰＩ５００）は、ＭＦＰ１から受信した「ユーザのアカウント情報及びユーザにより入力された仮コード」と、ダイナモＤＢ（紐づけ用ＤＢ１０２の仮コード紐づけ用ＤＢ）から取得した「ユーザのアカウント情報及び仮コード」とを比較する。そして、両者が一致した場合に、ダイナモＤＢ（紐づけ用ＤＢ１０２の本コード紐づけ用ＤＢ）に、ユーザのアカウント情報、ユーザが使用しているスマートスピーカ１００のデバイスＩＤ及びスマートスピーカ１００で操作するＭＦＰ１の機器ＩＤを関連付けて記憶させる。これにより、ユーザが使用しているスマートスピーカ１００と、スマートスピーカ１００で音声操作するＭＦＰ１とを、１：１に関連付けて管理可能とすることができる。
【０２９４】
次に、このような関連付け動作を、図３５のシステム構成図、及び、図３７〜図３９のシーケンス図を用いて、さらに詳細に説明する。
【０２９５】
（アカウントリンキング動作）
図３７は、アカウントリンキング動作を説明するためのシーケンス図である。この図３７に示すアカウントリンキングを行うことで、例えばＭＦＰ１等の通信対象機器のログインに必要なアカウントをクラウドサービス（音声認識サーバ装置３、ＡＩアシスタントサーバ装置４）が提供するサービスと関連付けることができる。なお、この図３７に示すアカウントリンキングは、アカウントリンキングを行わない場合には省略しても良い。
【０２９６】
この図３７のシーケンス図において、まず、ユーザは、パーソナルコンピュータ装置（ユーザＰＣ５１０）又は携帯端末装置等にインストールされている操作音声処理プログラムを起動して、音声認識サーバ装置３の音声アシスタントプログラム（スキルプログラム）を有効化する操作を行う（ステップＳ５０１〜ステップＳ５０３）。これにより、音声認識サーバ装置３の音声アシスタントプログラムが有効化される。
【０２９７】
次に、音声認識サーバ装置３のＣＰＵ３１は、有効化された音声アシスタントプログラムに基づいて、音声操作ＡＰＩ５００からアカウントリンキング用ログイン画面を取得する（ステップＳ５０４、ステップＳ５０５）。音声操作ＡＰＩ５００は、図３６に示したように、音声操作機能に関するサーバ側のＡＰＩ群である。操作音声変換プログラムに対するアカウントリンキング機能の提供、及び、スマートスピーカ１００とＭＦＰ１を関連付けるためのＡＰＩを提供している。
【０２９８】
なお、ＭＦＰ１等の通信対象機器のメーカ等が提供するサービスを利用するために、ユーザは予めアカウントを有しているものとする。このアカウントは、ユーザを特定するためのユーザ識別ＩＤとパスワードとが関連付けされた情報であり、メーカ等のサービス提供元のサーバ装置で管理される。
【０２９９】
次に、取得されたアカウントリンキング用ログイン画面は、音声操作ＡＰＩ５００から音声認識サーバ装置３の音声アシスタントプログラムを介して、ユーザＰＣ５１０の表示部に表示される。ユーザは、ユーザＰＣ５１０に表示されたアカウントリンキング用ログイン画面に、ユーザ識別ＩＤ及びパスワードを入力操作し（ステップＳ５０６）、音声変換プログラム登録ボタンを操作する（ステップＳ５０７）。これにより、ユーザＰＣ５１０から音声認識サーバ装置３に対してユーザ識別ＩＤ及びパスワードが送信される（ステップＳ５０８）。
【０３００】
音声認識サーバ装置３は、音声アシスタントプログラムがアクセス可能なＨＤＤ３４等の記憶部に、入力されたユーザ識別ＩＤ及びパスワードを記憶する。音声認識サーバ装置３及びＡＩアシスタントサーバ装置４であるクラウドサービス装置は、クラウドサービス装置で提供しているサービスのアカウントと、メーカ等が提供しているサービスのアカウントとを関連付けて管理することができる。このため、音声認識サーバ装置３でユーザ識別ＩＤ及びパスワードを記憶することで、音声認識サーバ装置３は、音声アシスタントプログラムを介して、メーカ等で提供されるサービスの利用が可能となる。
【０３０１】
次に、音声認識サーバ装置３は、ユーザ識別ＩＤ及びパスワードを音声操作ＡＰＩ５００に送信する（ステップＳ５０９）。音声操作ＡＰＩ５００は、ユーザ識別ＩＤに基づいてアカウントリンキングを行い、例えばユーザ識別ＩＤをハッシュ化したアクセストークンを、結果画面と共に、音声認識サーバ装置３を介してユーザＰＣ５１０に返信する（ステップＳ５１０、ステップＳ５１１）。
【０３０２】
なお、このようなアカウントリンキングは実行しない場合に、セキュリティを確保するために、ユーザ識別ＩＤを入力してアクセストークンを取得する構成としても良い。この場合、スキルを有効化すると、音声操作ＡＰＩ５００からユーザ識別ＩＤを入力する画面がユーザＰＣ５１０に送信されて表示される。入力されたユーザ識別ＩＤは、音声操作ＡＰＩ５００に送信され、アクセストークンに変換され、ユーザＰＣ５１０へ送信される。このとき、ユーザ識別ＩＤは、メーカなどが提供するサービスのアカウントのＩＤではなく、任意の文字列である。
【０３０３】
（スマートスピーカとＭＦＰとの関連付け動作の前半の流れ）
次に、図３８のシーケンス図を用いて、スマートスピーカ１００とＭＦＰ１との関連付け動作の前半の流れを説明する。まず、ユーザはスマートスピーカ１００に対してセットアップ要求を行う（ステップＳ６０１）。ユーザは、音声アシスタントプログラムに応じた呼び出し名を発話する。この発話による音声データは、スマートスピーカ１００から音声認識サーバ装置３に送信される（ステップＳ６０２）。音声認識サーバ装置３のＣＰＵ３１は、音声アシスタントプログラム（図３６のスキルプログラム）で提供されている辞書情報を参照し、音声データを解釈する（ステップＳ６０３、ステップＳ６０４）。これにより、音声認識サーバ装置３のＣＰＵ３１は、操作音声変換プログラムに基づいて、どの音声アシスタントプログラムに対する要求であるのかを判断することができる。
【０３０４】
次に、音声認識サーバ装置３のＣＰＵ３１は、操作音声変換プログラムを介して、音声操作ＡＰＩ５００に対してアクセストークンを送信することで、アクセストークンを更新する（ステップＳ６０５、ステップＳ６０６）。つまり、アクセストークンの期限が切れていた場合、音声操作ＡＰＩ５００は、受信したアクセストークンと同じ値のアクセストークンを生成して返信する。
【０３０５】
次に、音声認識サーバ装置３のＣＰＵ３１は、操作音声変換プログラムに基づいて、インテント（ｉｎｔｅｎｔ）、パラメータ（ｓｌｏｔ）、音声信号の入力元であるスマートスピーカ１００のデバイスＩＤ及びユーザ情報を、ＡＩアシスタントサーバ装置４の管理プログラムに送信する（ステップＳ６０７）。
【０３０６】
なお、インテントはセットアップ要求であることを示す情報であり、セットアップ要求の場合、パラメータは含まれなくても良い。また、ユーザ情報は、スマートスピーカ１００の使用者を特定するためのユーザＩＤ、及び上述のように取得したアクセストークンを含む。
【０３０７】
また、アクセストークンが存在しない場合、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、管理プログラムに基づいて、例えば「確認できません。アカウントリンキングの設定を確認してください」とのフィードバック音声を、音声認識サーバ装置３を介して、ユーザのスマートスピーカ１００に送信する（ステップＳ６０８、ステップＳ６０９）。これにより、スマートスピーカ１００から「確認できません。アカウントリンキングの設定を確認してください」との音声フィードバックが行われる（ステップＳ６１０）。
【０３０８】
次に、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、管理プログラムに基づいて、スマートスピーカ１００のデバイスＩＤ又はユーザ情報に関連付けられている、例えばＭＦＰ１等の制御対象機器が、紐づけ用ＤＢ１０２の仮コード紐づけ用ＤＢに登録済みであるか否かを確認する（ステップＳ６１１、ステップＳ６１２）。また、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、仮コード紐づけ用ＤＢから仮コードの一覧を取得する（ステップＳ６１３、ステップＳ６１４）。なお、仮コード紐づけ用ＤＢは、管理プログラムがアクセス可能な記憶部、例えばクラウドサービス装置のＨＤＤに記憶されている。ＡＩアシスタントサーバ装置４のＣＰＵ３１は、取得した仮コードの一覧中に、スマートスピーカ１００のデバイスＩＤ又はユーザ情報に関連付けられた仮コードが含まれているか否かを判断する。
【０３０９】
仮コードの一覧中に、スマートスピーカ１００のデバイスＩＤ又はユーザ情報が含まれている場合は、改めて仮コードを生成する必要はないため、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、例えば「仮コードは登録済みです  仮コードを入力してください」とのフィードバック音声を生成し、音声認識サーバ装置３を介して、ユーザのスマートスピーカ１００に送信する（ステップＳ６１５、ステップＳ６１６）。これにより、スマートスピーカ１００から「仮コードは登録済みです  仮コードを入力してください」との音声フィードバックが行われる（ステップＳ６１７）。
【０３１０】
これに対して、仮コードの一覧中に、スマートスピーカ１００のデバイスＩＤ又はユーザ情報が含まれていない場合は、仮コードを生成する必要がある。このため、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、仮コード紐づけ用ＤＢに問い合わせを行うことで、発行済みの仮コードが上限数に達しているか否かを判別する。
【０３１１】
（発行済みの仮コードが上限数に達している場合）
発行済みの仮コードが上限数に達している場合、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、例えば「仮コードを発行できません  ３０分以上おいてから再度申請してください」とのフィードバック音声を生成し、音声認識サーバ装置３を介して、ユーザのスマートスピーカ１００に送信する（ステップＳ６２６、ステップＳ６２７）。これにより、スマートスピーカ１００から「仮コードを発行できません  ３０分以上おいてから再度申請してください」との音声フィードバックが行われる（ステップＳ６２８）。
【０３１２】
この実施の形態の場合、ＡＩアシスタントサーバ装置４の管理プログラム（図３６のラムダ（Ｌａｍｂｄａ））が発行可能な仮コードの数には上限がある。ただし、仮コードは、発行から例えば３０分等の所定時間経過後に削除される。このため、少なくとも３０分後であれば、発行済み仮コードが削除されることで、新たに仮コードが発行可能になる。このため、音声フィードバックには、どのタイミングであれば仮コードの発行が可能になるのかを示す情報を含めている。なお、仮コードの発行のタイミングは、ＴＴＬの設定によって変わる。このため、管理プログラムは、ＴＴＬの設定に合わせてレスポンスメッセージを生成している。
【０３１３】
（発行済みの仮コードが上限数に達している場合）
発行済みの仮コードが上限数に達していない場合、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、仮コードを生成し（ステップＳ６１８）、生成した仮コードを、コード紐づけ用ＤＢ１０２の仮コード紐づけ用ＤＢに登録する。具体的には、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、管理プログラムに基づいて、ＩＤ種別、デバイスＩＤ、アクセストークン、仮コード、仮コード生成日時、仮コードを保持する期間を示す情報（ＴＴＬ）を仮コード紐づけ用ＤＢに送信する（ステップＳ６１９）。
【０３１４】
ＩＤ種別は、送信したＩＤ情報の種類を示す情報であり、この場合はデバイスＩＤであることを示す情報である。ＩＤ種別としては、デバイスＩＤの他にも、ユーザＩＤ、ルームＩＤ（スマートスピーカ及び対象機器が設置された部屋や建物などの場所を特定する情報）があっても良い。なお、管理プログラムは、ＩＤ種別がユーザＩＤの場合はユーザＩＤを、ＩＤ種別がルームＩＤの場合はルームＩＤを、それぞれ仮コード紐づけ用ＤＢに対して送信する。ユーザＩＤ及びルームＩＤは、例えば上述のセットアップ要求に含まれていても良いし、セットアップ要求に含まれているデバイスＩＤに関連付けされて登録されているユーザＩＤ又はルームＩＤを操作音声変換プログラムが特定しても良い。この場合、デバイスＩＤとユーザＩＤ、又はデバイスＩＤとルームＩＤに関連付けられたテーブルを、ＡＩアシスタントサーバ装置４のＨＤＤ３４等の記憶部に記憶しておく。
【０３１５】
（スマートスピーカのデバイスＩＤに関連付けされているＭＦＰが存在する場合）
次に、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、紐づけ用ＤＢ１０２を参照することで、スマートスピーカ１００のデバイスＩＤに、既に関連付けされているＭＦＰが存在するか否かを判別する。既に関連付けされているＭＦＰが存在する場合、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、例えば「このデバイスは、既にＭＦＰと関連付けされています  再設定する場合は、仮コードを入力してください」とのフィードバック音声を生成し、音声認識サーバ装置３を介して、ユーザのスマートスピーカ１００に送信する（ステップＳ６２０、ステップＳ６２１）。これにより、スマートスピーカ１００から「このデバイスは、既にＭＦＰと関連付けされています  再設定する場合は、仮コードを入力してください」との音声フィードバックが行われる（ステップＳ６２２）。
【０３１６】
（スマートスピーカのデバイスＩＤに関連付けされているＭＦＰが存在しない場合）
これに対して、既に関連付けされているＭＦＰが存在しない場合、ＡＩアシスタントサーバ装置４のＣＰＵ３１は、例えば「仮コードを入力してください」とのフィードバック音声を生成し、音声認識サーバ装置３を介して、ユーザのスマートスピーカ１００に送信する（ステップＳ６２３、ステップＳ６２４）。これにより、スマートスピーカ１００から「仮コードを入力してください」との音声フィードバックが行われる（ステップＳ６２５）、ユーザは、仮コードの入力を行うこととなる。
【０３１７】
（スマートスピーカとＭＦＰとの関連付け動作の後半の流れ）
次に、図３９のシーケンス図を用いて、スマートスピーカ１００とＭＦＰ１との関連付け動作の後半の流れを説明する。仮コードが発行されると、ユーザは、ＭＦＰ１の操作部１６を操作することで、スマートスピーカ１００を介して取得した仮コードと、ステップＳ５０６で入力したユーザ識別ＩＤ（及びパスワード）を、紐づけ画面を介して入力する（ステップＳ７０１、ステップＳ７０２）。
【０３１８】
これにより、ＭＦＰ１にインストールされた処理実行プログラム（Ｖｏｉｃｅ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）は、ユーザＩＤと仮コードを取得する。なお、ＭＦＰ１に表示される画面には、ＭＦＰ１とスマートスピーカ１００との関連付け処理の実行を指示するための「紐づけボタン」を表示し、この紐づけボタンの操作に応じて関連付け処理を実行しても良い（ステップＳ７０３）。
【０３１９】
次に、ＭＦＰ１の通信制御プログラム（ＭｕｌｔｉＤｅｖｉｃｅＨｕｂ）は、実行処理プログラムからユーザＩＤと仮コードを取得し（ステップＳ７０４）、音声操作ＡＰＩ５００に送信する（ステップＳ７０５）。なお、通信制御プログラムは、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４等のクラウドサービス装置との通信を制御するプログラムである。
【０３２０】
音声操作ＡＰＩ５００は、リージョン管理ＤＢからリージョン一覧を取得する（ステップＳ７０６、ステップＳ７０７）。リージョン管理ＤＢは、例えばＡＩアシスタントサーバ装置４等のクラウドサービス装置のＨＤＤ３４等の記憶部に設けられている。リージョン情報とは、クラウドサービス装置を構成するサーバ装置が設置されている国及び地域等、サーバ装置の所在地を示す情報である。クラウドサービス装置は、複数のサーバ装置によって構成されており、例えば操作音声変換プログラムを実行する音声認識サーバ装置３と、管理プログラムを実行するＡＩアシスタントサーバ装置４は、それぞれ異なるサーバ装置であり、各サーバ装置がそれぞれ異なる地域に設置されている場合がある。また、操作音声変換プログラムや管理プログラムなど、同一のプログラムを実行するサーバ装置を地域毎に設置している場合がある。
【０３２１】
なお、ＭＦＰ１は、複数の地域に設置されたサーバ装置のうち、いずれのサーバ装置にアクセスするのかを予め設定しておく。この設定は、ユーザが任意の地域に設定することができる。この設定は、任意のタイミングで行うことができるが、例えば、ステップＳ５０１以前に、ユーザは操作部を操作することで設定可能である。このとき、ユーザは、ＭＦＰ１における音声操作機能の有効／無効の設定と共に、リージョン情報の設定を行うことができる。ＭＦＰ１は、リージョン情報に対応する音声操作ＡＰＩ５００に対してアクセスする。
【０３２２】
次に、音声操作ＡＰＩ５００は、仮コード紐づけ用ＤＢを検索することで（ステップＳ７０８）、ユーザから入力された仮コードと一致する仮コードに対応する情報が、仮コード紐づけ用ＤＢに記憶されているか否かを確認する。記憶されている場合には、仮コード紐づけ用ＤＢからアクセストークン、デバイスＩＤ、コード生成日時を取得する（ステップＳ７０９）。
【０３２３】
ここで、クラウドサービス装置は複数の地域に設置されており、地域のクラウドサービス装置毎に仮コード紐づけ用ＤＢを記憶している。このため、ステップＳ６１９で仮コードを登録したサーバ装置の設置地域とＭＦＰ１がアクセスしたサーバ装置の設置地域（つまり、ステップＳ７０５でＭＦＰ１からアクセスを受けた音声操作ＡＰＩ５００を実行するサーバ装置の設置地域）とは異なる場合がある。この場合、ＭＦＰ１がアクセスしたサーバ装置に記憶された仮コード紐づけ用ＤＢを検索したとしても、この仮コード紐づけ用ＤＢ内には、ステップＳ６１９で登録した仮コードは、記憶されていない。そこで、音声操作ＡＰＩ５００は、まず、ＭＦＰ１がアクセスしたサーバ装置内に仮コードが存在するか否かを確認し、存在しない場合にはステップＳ７０６で取得したリージョン一覧に含まれる全てのリージョン、つまり複数地域のサーバ装置を対象として、仮コード紐づけ用ＤＢの検索を行うことができる（ステップＳ７１０、ステップＳ７１１）。
【０３２４】
（デバイスＩＤを取得でき、かつ、コードの生成日時から３０分未満の場合）
次に、デバイスＩＤを取得でき、かつ、コードの生成日時から３０分未満の場合、音声操作ＡＰＩ５００は、ＭＦＰ１から取得したＭＦＰ１の機器ＩＤ（機番）を用いて紐づけ用ＤＢ１０２を検索する。つまり、音声操作ＡＰＩ５００は、ＭＦＰ１の機器ＩＤと関連付けされて紐づけ用ＤＢ１０２に登録されているスマートスピーカ１００の有無を判断する（ステップＳ７１２、ステップＳ７１３）。
【０３２５】
（機器ＩＤと関連付けされているスマートスピーカが存在し、かつ、ＩＤ種別がデバイスＩＤの場合）
ステップＳ７１２及びステップＳ７１３の判断の結果、機器ＩＤと関連付けされているスマートスピーカ１００が存在し、かつ、ＩＤ種別がデバイスＩＤの場合、音声操作ＡＰＩ５００は、紐づけ用ＤＢ１０２に関連付けされて登録されているデバイスＩＤを削除する（ステップＳ７１４、ステップＳ７１５）。ＩＤ種別がデバイスＩＤの場合は、スマートスピーカ１００とＭＦＰは１対１で対応しているため、過去に関連付けが行われているスマートスピーカ１００が存在する場合は、関連付け情報を削除する。これにより、新たにスマートスピーカ１００とＭＦＰ１との関連付けが可能となる。
【０３２６】
一方、ＩＤ種別がユーザＩＤ又はルームＩＤの場合は、ユーザＩＤ又はルームＩＤに対して複数の対象機器が紐づけて登録される場合が考えられる。このため、ＩＤ種別がユーザＩＤ又はルームＩＤの場合は、過去の関連付け情報を削除せずに、スマートスピーカと紐づくＭＦＰ１を追加するように過去の関連付け情報を更新する。なお、ステップＳ７１６で後述するように、紐づけ用ＤＢ１０２には、機器ＩＤとスマートスピーカ１００を示す情報を紐づけて記憶しているが、スマートスピーカ１００を示す情報としては、デバイスＩＤ、ユーザＩＤ、ルームＩＤがあり得る。このため、スマートスピーカ１００を示す情報がいずれの種類であるかを示すＩＤ種別と共にＩＤを記憶しても良い。なお、ＩＤからＩＤ種別が特定できる場合にはＩＤ種別と共にＩＤを記憶しなくても良い。
【０３２７】
次に、音声操作ＡＰＩ５００は、紐づけ用ＤＢ１０２に対してＭＦＰ１の機器ＩＤとスマートスピーカ１００を示す情報とを関連付けて記憶させる（ステップＳ７１６）。ここで、スマートスピーカ１００を示す情報としては、デバイスＩＤ、ユーザＩＤ、ルームＩＤがあり得るため、音声操作ＡＰＩ５００は、スマートスピーカを示す情報の種類を示すＩＤ種別とともに紐づけ用ＤＢ１０２に記憶しても良い。また、紐づけ要求には、ＭＦＰ１がアクセスしたサーバの所在地（つまり、音声操作ＡＰＩ５００を実行するサーバの所在地）を示すリージョン情報が含まれる。
【０３２８】
これにより、複数の地域に設置されたサーバ装置の内、Ｓ６０１〜ステップＳ６２５までの処理時を実行したサーバ装置が有する紐づけ用ＤＢ１０２に対して、ステップＳ７０５でＭＦＰ１がアクセスしたサーバ装置のリージョン情報を登録することができる。
【０３２９】
なお、音声操作ＡＰＩ５００は、音声操作ＡＰＩ５００を実行するサーバ装置に対応するリージョン情報を保持しているか、リージョン情報をサーバ装置内の記憶部から取得可能である。このため、音声操作ＡＰＩ５００は、自身のサーバ装置のリージョン情報を紐づけ用ＤＢ１０２に対して送信する。ただし、これに限定されず、ステップＳ７０５においてＭＦＰ１からリージョン情報を取得して、該リージョン情報を紐づけ用ＤＢ１０２に対して送信しても良い。
【０３３０】
また、上述したようにＩＤ種別がユーザＩＤ又はルームＩＤである場合であって、既に紐づけ用ＤＢ１０２に関連付け情報が登録されている場合には、スマートスピーカ１００と関連付けるＭＦＰ１を追加するように過去の関連付け情報を更新する。
【０３３１】
次に、音声操作ＡＰＩ５００には、このような紐づけ処理が成功したか否かを示す紐づけ結果が紐づけ用ＤＢ１０２から送信される（ステップＳ７１７）。この紐づけ結果は、ＭＦＰ１に送信される（ステップＳ７１８〜７２０）。
【０３３２】
（デバイスＩＤは取得できたが、コード生成日時から３０分以上経過している場合）
次に、デバイスＩＤは取得できたが、コード生成日時から３０分以上経過している場合、タイムアウトを示す紐づけ結果が音声操作ＡＰＩ５００からＭＦＰ１に送信される（ステップＳ７２１、ステップＳ７２２）。そして、ＭＦＰ１において、エラー表示が行われる（ステップＳ７２３）。
【０３３３】
（全リージョンでデバイスＩＤが見つからなかった場合）
次に、全リージョンでデバイスＩＤが見つからなかった場合、エラーを示す紐づけ結果が音声操作ＡＰＩ５００からＭＦＰ１に送信される（ステップＳ７２４、ステップＳ７２５）。そして、ＭＦＰ１において、エラー表示が行われる（ステップＳ７２６）。
【０３３４】
（アクセストークンの検証結果がＮＧの場合）
次に、アクセストークンを検証した結果、アクセストークンに誤りがある場合（ＮＧ）を説明する。ここでは、ステップＳ７０９で仮コード紐づけ用ＤＢから取得したアクセストークン（ステップＳ５１０で生成）と、ステップＳ７０２で取得したユーザ識別ＩＤに基づいて、音声操作ＡＰＩ５００が生成したアクセストークンとを比較する。両者が一致しない場合には、アクセストークン（つまり、ステップＳ７０２で取得したユーザ識別ＩＤ）に誤りがあると判断する。音声操作ＡＰＩ５００は、ユーザ識別ＩＤをハッシュ化することでアクセストークンを生成するため、同一のユーザ識別ＩＤであれば同一のアクセストークンを生成する。このため、アクセストークンに誤りがある場合とは、ステップＳ５０６でスマートスピーカ１００に対して入力したユーザ識別ＩＤと、ステップＳ７０２でＭＦＰ１の操作部１６に対して入力したユーザ識別ＩＤとが一致しないことを意味している。この場合、ＭＦＰ１の画面上にエラー表示が行われる（ステップＳ７２７〜ステップＳ７２９）。
【０３３５】
（第３の実施の形態の効果）
以上の説明から明らかなように、第３の実施の形態の音声操作システムは、スマートスピーカ１００とＭＦＰ１とを関連付けて紐づけ用ＤＢ１０２に記憶する。そして、ユーザの発話をスマートスピーカ１００で集音した際に、紐づけ用ＤＢ１０２を参照し、スマートスピーカ１００に関連付けされているとＭＦＰ１を検索してジョブを依頼する。これにより、スマートスピーカ１００とＭＦＰ１とを１：１に関連付けした状態で管理することができる。
【０３３６】
また、ユーザのアカウント情報を、仮コード及びスマートスピーカ１００のデバイスＩＤに関連付けして仮コード紐づけ用ＤＢに記憶する。そして、ＭＦＰ１から取得したユーザのアカウント情報及び仮コードが、仮コード紐づけ用ＤＢに記憶されていた場合に、ユーザのアカウント情報、スマートスピーカ１００のデバイスＩＤ及びＭＦＰ１の機器ＩＤを関連付けて本コード紐づけ用ＤＢに記憶する。これにより、ユーザのアカウント情報に基づくユーザ認証が加わることとなり、音声操作システムのセキュリティ強化を図ることができる。
【０３３７】
最後に、上述の各実施の形態は、一例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な各実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。
【０３３８】
例えば、上述の第１の実施の形態の説明では、音声認識サーバ装置３でユーザの発話に対応するテキストデータを生成し、ＡＩアシスタントサーバ装置４でテキストデータに基づいて、ユーザの意図している操作を解釈した。しかし、携帯端末２側に、このような音声認識機能及び解釈機能を設け、携帯端末２で、ユーザの発話から意図する操作を解釈してもよい。これにより、音声認識サーバ装置３及びＡＩアシスタントサーバ装置４を不要とすることができ、システム構成を簡素化できる。
【０３３９】
このような各実施の形態及び各実施の形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０３４０】
１  複合機（ＭＦＰ）
２  携帯端末
３  音声認識サーバ装置
４  ＡＩアシスタントサーバ装置
５  ネットワーク
５１  取得部
５２  通信制御部
５３  解釈結果変換部
５４  実行指示部
５５  フィードバック部
５６  処理能力取得部
５７  実行判定部
５８  検索部
６１  取得部
６２  テキスト変換部
６３  通信制御部
７１  取得部
７２  解釈部
７３  通信制御部
１００  スマートスピーカ
１０１  管理ＤＢ
１０２  紐づけ用ＤＢ
５００  音声ＡＰＩ
【先行技術文献】
【特許文献】
【０３４１】
【特許文献１】特表２０１８−５２４６４５号公報
【図１】
2020087386.tif 000005
【図２】
2020087386.tif 000006
【図３】
2020087386.tif 000007
【図４】
2020087386.tif 000008
【図５】
2020087386.tif 000009
【図６】
2020087386.tif 000010
【図７】
2020087386.tif 000011
【図８】
2020087386.tif 000012
【図９】
2020087386.tif 000013
【図１０】
2020087386.tif 000014
【図１１】
2020087386.tif 000015
【図１２】
2020087386.tif 000016
【図１３】
2020087386.tif 000017
【図１４】
2020087386.tif 000018
【図１５】
2020087386.tif 000019
【図１６】
2020087386.tif 000020
【図１７】
2020087386.tif 000021
【図１８】
2020087386.tif 000022
【図１９】
2020087386.tif 000023
【図２０】
2020087386.tif 000024
【図２１】
2020087386.tif 000025
【図２２】
2020087386.tif 000026
【図２３】
2020087386.tif 000027
【図２４】
2020087386.tif 000028
【図２５】
2020087386.tif 000029
【図２６】
2020087386.tif 000030
【図２７】
2020087386.tif 000031
【図２８】
2020087386.tif 000032
【図２９】
2020087386.tif 000033
【図３０】
2020087386.tif 000034
【図３１】
2020087386.tif 000035
【図３２】
2020087386.tif 000036
【図３３】
2020087386.tif 000037
【図３４】
2020087386.tif 000038
【図３５】
2020087386.tif 000039
【図３６】
2020087386.tif 000040
【図３７】
2020087386.tif 000041
【図３８】
2020087386.tif 000042
【図３９】
2020087386.tif 000043