以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
[第1実施形態]
図1に、本実施形態に係る音声制御システム構成図の一例を示す。本実施形態のシステムは、例えば、音声制御デバイス1001、携帯端末1002、表示装置1003、印刷装置1004、アクセスポイント(AP)1005、サーバ1006(情報処理装置)を含んで構成される。本システムは、音声制御デバイスにより受け付けた音声により、印刷装置等を制御可能なシステムである。音声制御デバイス1001は、例えば、スマートスピーカである。携帯端末1002は、例えば、スマートフォン、ノートPC(Personal Computer)、タブレット端末、PDA(Personal Digital Assistant)等の任意の携帯端末である。なお、以下では、携帯端末1002はスマートフォンであるとして説明する。また、本実施形態では、携帯端末1002としてデスクトップタイプのPCが用いられてもよい。そのため、携帯端末を端末装置と呼ぶこともある。表示装置1003は、例えばテレビ、ディスプレイ等の表示機能を有する装置である。印刷装置1004は、例えばプリンタであるが、複写機、ファクシミリ装置、デジタルカメラ等であってもよい。また、印刷装置1004は、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機であってもよい。つまり、印刷装置1004は、印刷や表示等を行う出力装置であり、その出力形態は、印刷に限られない。なお、以下では、印刷装置1004は、印刷機能を実行する装置であれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等のプリンタである。
音声制御デバイス1001、携帯端末1002、表示装置1003、印刷装置1004は、AP1005およびインターネットを介してサーバ1006に接続可能(通信可能)である。また、音声制御デバイス1001、携帯端末1002、表示装置1003、印刷装置1004は、AP1005を介して互いに接続可能(通信可能)である。また、図1では、各装置が1台ずつ示されているが、いずれの装置についても複数台が接続されていても良い。
[音声制御デバイス1001の構成]
図2は、音声制御デバイス1001のハードウェア構成図である。音声制御デバイス1001は、スピーカ102、CPU103、ROM104、マイクロフォン105、RAM106、外部記憶装置107、通信部108、近距離無線通信部109を有する。なお、図2〜図4および図8に示すブロックは、例えば内部バスを用いて相互に接続される。また、CPUはCentral Processing Unitの、ROMはReadOnly Memoryの、RAMはRandom Access Memoryの、頭字語である。なお、これらの構成は一例であり、各装置は、図示された以外のハードウェアを含んでもよい。また、図2〜図4および図8における複数のブロックが1つのブロックにまとめられて実現されてもよいし、1つのブロックが2つ以上のブロックに分割されて実現されてもよい。すなわち、各装置は、後述するような処理を実行可能な範囲で任意の構成をとることができる。
スピーカ102は、後述する処理により音声を発する。CPU103は、システム制御部であり、音声制御デバイス1001の全体を制御する。ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みOS(Operating System)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行うために用いられる。マイクロフォン105は、音声制御デバイスの周囲の音声を受信する。ユーザが発した音声を受信すると、マイクロフォン105を経由して電子データに変換され、RAM106に記憶される。例えば、ユーザが発した音声を受信するRAM106は、バックアップ電源を必要とするSRAM(Static RAM)等で構成される。なお、RAM106は、不図示のデータバックアップ用の一次電池によってデータが保持されるため、プログラム制御変数等のデータを揮発させずに格納することができる。また、音声制御デバイス1001の設定情報や管理データ等を格納するメモリエリアもRAM106に設けられている。また、RAM106は、CPU103の主メモリ及びワークメモリとしても用いられる。外部記憶装置107は、アプリケーションソフトウェアを記憶する。
通信部108は、所定の無線通信方式に従って通信を行うための回路やアンテナを含んで構成される。例えば、通信部108は、AP1005に無線接続することができる。また、通信部108は、一時的に使用されるAPとして動作することもある。なお、AP1005は、例えば、無線LANルータ等の機器でありうる。本実施形態で使用される無線通信は、IEEE802.11規格シリーズに準拠した無線LANの無線通信方式に従って動作する能力を有してもよいし、他の無線通信方式に従って動作する能力を有してもよい。本実施形態において、IEEE 802.11規格シリーズとは、IEEE 802.11aやIEEE 802.11b等のように、IEEE 802.11に属する一連の規格を含む。
近距離無線通信部109は、音声制御デバイス1001と一定の範囲内(近距離範囲内)に存在する他の装置と近距離無線通信を実行する。なお、近距離無線通信部109は、通信部108と異なる無線通信方式によって通信を行う。本実施形態では、近距離無線通信部110は、Bluetooth(登録商標)規格に従って動作するものとする。また、本実施形態では、通信部108を用いた無線通信の通信速度は、近距離無線通信部109を用いた近距離無線通信の通信速度よりも速い。また、本実施形態では、通信部108を用いた無線通信の通信距離は、近距離無線通信部109を用いた近距離無線通信の通信距離よりも長い。なお、後述する他の装置の通信部および近距離無線通信部も同様である。
[携帯端末1002及び表示装置1003の構成]
図3は、携帯端末1002、表示装置1003のハードウェア構成図である。携帯端末1002、表示装置1003は、一例として、入力インタフェース202、CPU203、ROM204、表示部205、RAM206、外部記憶装置207、通信部208、近距離無線通信部209を有する。なお、これらのブロックは、例えば内部バスを用いて相互に接続される。
CPU203は、システム制御部であり、装置の全体を制御する。RAM206は、例えばRAM106と同様に、バックアップ電源を必要とするDRAM(Dynamic RAM)等で構成される。RAM206は、CPU203の主メモリとワークメモリとしても用いられる。ROM204は、CPU203が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。
通信部208は、上述の通信部108と同様の機能を有し、AP1005を介して他の装置と無線接続することができる。近距離無線通信部209は、近距離無線通信部109と同じ無線通信方式を用いて、近距離無線通信部109との間で近距離無線通信を行うことができる装置である。
本実施形態では、携帯端末1002と表示装置1003は別個の独立した装置として説明しているが、一体化されていても良い。つまり、例えば、携帯端末1002が表示装置1003として用いられても良い。また、携帯端末1002が音声制御デバイス1001として用いられても良い。その場合には、携帯端末1002は、例えばスピーカ102とマイクロフォン105の機能を兼ね備えた働きをする音声制御部210を有するようにしても良い。音声制御部210は、ユーザが音声で発した言語をマイクロフォンで受信し、CPU203で解析を行うことで音声を電子的な指示に変換することができる。例えば、ユーザが装置名を音声で発した場合、その音声データを受信して解析することで特定の装置のIDとして認識できる。また、RAM206に格納されている内容を人間が理解できる言語に変換してスピーカで音声として発することができる。例えば、RAM206に保持している装置のIDのリストを、人間が理解できる言語(名称など)に変換して音声で出力することができる。
[印刷装置1004の構成]
図4は、印刷装置1004のハードウェア構成図である。印刷装置1004は、一例として、プリントエンジン402、通信部403、近距離無線通信部404、ROM405、RAM406、CPU407、表示部408、音声制御部409を備える。
CPU407は、システム制御部であり、印刷装置1004の全体を制御する。RAM406は、例えばRAM106と同様に、バックアップ電源を必要とするDRAM(Dynamic RAM)等で構成される。RAM406は、CPU407の主メモリとワークメモリとしても用いられる。ROM405は、CPU407が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。
通信部403は、上述の通信部108と同様の機能を有し、AP1005を介して他の装置と無線接続することができる。近距離無線通信部404は、近距離無線通信部109と同じ無線通信方式を用いて、近距離無線通信部109との間で近距離無線通信を行うことができる装置である。
プリントエンジン402は、通信部403を介して受信した印刷ジョブに基づいて、インク等の記録剤を用いて紙等の記録媒体上に画像を形成し、印刷結果を出力する。
表示部408は、ユーザからのデータ入力や動作指示を受付けるためのインタフェースであり、物理的なキーボードやボタン、タッチパネル等で構成される操作パネルを含む。音声制御部409は、ユーザが音声で発した言語をマイクロフォンで受信し、CPU407で解析を行うことで音声を電子的な指示に変換することができる。例えば、ユーザが装置名を音声で発した場合、その音声データを受信して解析することで特定の装置のIDとして認識できる。また、RAM406に格納されている内容を人間が理解できる言語に変換してスピーカで音声として発することができる。例えば、RAM406に保持している装置のIDのリストを、人間が理解できる言語(名称など)に変換して音声で出力することができる。
[音声制御デバイス1001のセットアップ]
次に、図5を用いて、音声制御デバイス1001のセットアップについて説明する。図5は、携帯端末1002が、音声制御デバイス1001のセットアップのために表示する画面の例を示す模式図である。携帯端末1002には、予め音声制御デバイス1001用の管理アプリケーションがインストールされているものとする。
ユーザ操作により管理アプリケーションが起動されることで、画面501が携帯端末1002の表示部205に表示される。ここでユーザが画面501に記載されているメッセージに従って携帯端末1002の近距離無線通信部209(例えば、Bluetooth)を有効化する。音声制御デバイス1001が起動された場合、音声制御デバイス1001は特定の識別子を含むビーコンを発する。携帯端末1002は、管理アプリケーションを用いて音声制御デバイス1001が発するビーコンを受信した場合、画面503を表示する。画面503において「Yes」ボタンが押下された場合、携帯端末1002と音声制御デバイス1001との間で近距離無線接続が確立する。
携帯端末1002と音声制御デバイス1001との間の近距離無線接続が確立された場合、画面504が携帯端末1002の表示部205に表示される。ここで、ユーザが、画面504の「Yes」ボタンを押下した場合、音声データが携帯端末1002から音声制御デバイス1001に近距離無線接続を介して送信され、音声制御デバイス1001のスピーカ102から音声が出力される。なお、携帯端末1002が音声制御デバイス1001に近距離無線接続を介して音声での通知指示を送信することで、音声制御デバイス1001のスピーカ102から音声が出力されても良い。ここで音声制御デバイス1001から音声が出力された場合、ユーザは画面504の次に表示される「テスト完了ボタン」を押下することで、画面505が携帯端末1002の表示部205に表示される。
画面505で、ユーザは、音声制御デバイス1001を接続したいAPのSSIDとパスワードを画面505に入力し、接続ボタンを押下する。基本的には、ユーザは、画面505を使って携帯端末1002が通信部208を用いて既に無線接続しているAP1005(無線接続中のAP1005)のSSIDとパスワードを入力する。この処理により、携帯端末1002が近距離無線接続を介してSSIDとパスワードを音声制御デバイス1001に送信する。音声制御デバイス1001は、近距離無線接続を介して受信したSSIDとパスワードを使って、AP1005と無線接続を確立する。つまり、音声制御デバイス1001は、AP1005が構築するネットワークに参加する。以上の処理により、音声制御デバイス1001と携帯端末1002とがAP1005を介して(AP1005が構築するネットワークを介して)無線通信することが可能となる。
続いて、ユーザは、携帯端末1002に表示される画面506を使ってサーバ1006へログインするためのユーザIDとパスワードを入力する。なお、画面506において入力されたユーザIDとパスワードが、近距離無線接続またはAP1005を介して携帯端末1002から音声制御デバイス1001に送信される。音声制御デバイス1001は、携帯端末1002から受信したユーザIDとパスワードを使ってサーバ1006にサインインする。この際、音声制御デバイス1001は、自らのMacアドレスも送信する。これにより、音声制御デバイス1001は、サーバ1006がユーザに提供するサービスを使用することが可能となる。つまり、サーバ1006は、音声制御デバイス1001のMacアドレスとユーザIDとを関連付けて管理する。ここで音声制御デバイス1001は、サーバ1006のアクセストークンを受信しても良い。
ユーザは、画面506に続いて表示される画面507を使って音声制御デバイス1001を使って制御したいデバイスを選択する。ここでは、画面507に示すとおり、ユーザが、表示装置1003と印刷装置1004とを選択したものとする。画面507に表示される装置は、携帯端末1002が、AP1005を介してネットワーク内のデバイス(装置)を探索することで表示される。この際、デバイスの探索処理の結果として、携帯端末1002は、デバイス探索の際に各装置のMacアドレス、IPアドレスなどを取得する。そのため、画面507においてOKボタンが押下された場合、携帯端末1002は、各装置のMacアドレス、IPアドレスを音声制御デバイス1001に送信する。
なお、別の方法を用いて音声制御デバイス1001のセットアップが行われても良い。例えば、音声制御デバイス1001を起動した(またはセットアップモードを有効化した)場合、音声制御デバイス1001の通信部108がソフトウェアAPとして動作することによりセットアップが行われてもよい。具体例として、例えば、画面501において「Bluetoothを使わずに接続」502が押下された場合、携帯端末1002は、画面508を表示する。ユーザは、画面508に表示された内容に従って携帯端末1002を操作する。このユーザ操作により、携帯端末1002は、通信部208を使って、音声制御デバイス1001のソフトウェアAPとの無線接続を確立する。なお、携帯端末1002は、管理アプリケーションの指示に従って音声制御デバイス1001のソフトウェアAPとの無線接続を確立しても良い。つまり、ユーザの操作または管理アプリケーションの指示に従って、携帯端末1002の通信部208の接続先を、AP1005から音声制御デバイス1001の通信部108のソフトウェアAPに一時的に切り換える。このような制御により、携帯端末1002の通信部208と音声制御デバイス1001の通信部108間で無線接続が確立された場合、画面509が表示される。
なお、以降の処理として、携帯端末1002の通信部208と音声制御デバイス1001の通信部108間で確立された無線接続を介して、画面505に入力された情報(SSID、パスワード等)が送信される。その後、携帯端末1002と音声制御デバイス1001は、AP1005を介して無線通信をするために、携帯端末1002は接続先をAP1005に切り替える。また、音声制御デバイス1001も、ソフトウェアAPを無効化し、通信部108を使ってAP1005と無線接続する。
上述したように音声制御デバイス1001は、音声制御デバイス1001が備えるアクセスポイントを介した無線通信により携帯端末1002から、外部のアクセスポイントであるAP1005に関する情報(SSID、パスワード等)を受信可能である。さらに、音声制御デバイス1001は、近距離無線通信を介して携帯端末1002から、外部のAP1005に関する情報(SSID、パスワード等)を受信する受信処理を実行可能である。音声制御デバイス1001は、上述した2つの受信処理機能のうちいずれか一方のみの受信処理機能を備えていても良いし、両者の受信処理機能を備えていても良い。また、音声制御デバイス1001は、他の受信処理機能により、外部のアクセスポイント1005へ接続して無線通信を確立しても良い。
[サーバ1006への印刷装置1004のサインイン処理]
次に、印刷装置1004がサーバ1006にサインインするための処理について説明する。例えば、インターネットには、音声制御デバイス1001に対応するサーバ1006と、音声制御デバイス1001に対応しないサーバ1007が存在する。音声制御デバイス1001と印刷装置1004が連携するためには、印刷装置1004はサーバ1007ではなく、サーバ1006にサインインする必要がある。
そこで印刷装置1004は、音声制御デバイス連携モードを備える。この音声制御デバイス連携モードが有効化された場合、印刷装置1004は、自らが参加しているネットワークに対してデバイス探索を行い、音声制御デバイス1001を発見する。デバイス探索の結果、音声制御デバイス1001が発見されたことを通知するため、図6に示す画面601が印刷装置1004の表示部408に表示される。ユーザが、画面601において音声制御デバイス1001を選択してOKボタンを押下した場合、画面602が印刷装置1004の表示部408に表示される。なお、デバイス探索により取得される情報には、例えば、音声制御デバイス1001に対応するサーバ1006のURLが含まれる。印刷装置1004は、このURLを使用することでサーバ1006にサインインするための画面602を表示できる。そして、印刷装置1004は、画面602に入力された情報(ユーザID及びパスワード)を使ってサーバ1006にサインインすることができる。以上の処理により、印刷装置1004は、サーバ1006にサインインし、サーバ1006で管理されている画像データを扱うことが可能となる。
また、印刷装置1004がデバイス探索を行うことによりサーバ1007に対応可能な音声制御デバイスが発見された場合、印刷装置1004は、サーバ1007にサインインするための画面を表示する。
なお、印刷装置1004がサーバ1006にサインインするための処理として別の処理が実施されても良く、別の処理の一例について説明する。まず、携帯端末1002が、サーバ1006へのサインインが完了している状態とする。例えば、ユーザは、上述した画面506を使ってサーバ1006へサインインしているものとする。そして、携帯端末1002がAP1005を介して印刷装置1004を発見した場合、携帯端末1002は、印刷装置1004の識別情報と登録ボタンを表示する。例えば、画面507の印刷装置の隣に登録ボタンが表示されても良い。ここでユーザが登録ボタンを押下した場合、登録リクエストが携帯端末1002から印刷装置1004に送信される。なお、この登録リクエストにはサーバ1006の宛先情報が含まれている。
印刷装置1004は、登録リクエストを受けると印刷装置1004の表示部408にプリンタの登録処理を実行するか否かの選択画面を表示する。ここで、ユーザが登録処理の実行を選択した場合、印刷装置1004は、登録リクエストに含まれる宛先情報に従ってサーバ1006へ印刷装置1004のMacアドレスを含む登録リクエストを送信する。そして、印刷装置1004は、この登録リクエストに対するレスポンスをサーバ1006から受信する。なお、このレスポンスには印刷装置1004の登録処理に関わるURLが含まれる。つまり、このURLは、印刷装置1004の登録処理に関わる専用URLである。
印刷装置1004は、サーバ1006から受信したレスポンスを携帯端末1002へ送信する。携帯端末1002は、受信したレスポンスに含まれるURLを使って登録リクエストをサーバ1006へ送信する。この登録リクエストには、既に携帯端末1002においてサーバ1006にサインインするために入力されたユーザIDおよびパスワードも含まれる。この登録リクエストを受信したサーバ1006は、正しいユーザIDとパスワードを受信した場合、登録リクエストが成功したことを示すレスポンスを携帯端末1002へ送信する。つまり、サーバ1006は、印刷装置1004の登録処理に関わる専用URLを使って登録リクエストを受信したので、この時点で携帯端末1002にサインインしたユーザ用の印刷装置として印刷装置1004を仮登録する。そして、サーバ1006は、ユーザIDと印刷装置1004のMacアドレスとを関連付けて管理する。携帯端末1002は、登録が完了したことを示す完了情報を印刷装置1004へ送信する。印刷装置1004は、完了情報を受信した場合、印刷装置1004のMacアドレスを含む登録リクエストをサーバ1006へ送信する。サーバ1006は、印刷装置1004が仮登録状態であることを識別し、登録完了レスポンスを返す。
以上の処理により、サーバ1006は、携帯端末1002にサインインしたユーザ用の印刷装置として印刷装置1004を本登録する。印刷装置1004は、登録完了レスポンスをサーバ1006から受信した場合、登録完了を示す情報を携帯端末1002へ送信する。以上の処理により、印刷装置1004がサーバ1006で管理されている画像データを扱うことが可能となっても良い。
[印刷指示の処理フロー]
次に、図7を用いて音声制御デバイス1001を介して印刷装置1004へ印刷指示を行う処理を説明する。図7は、音声制御デバイス1001が、ユーザから発せられた音声による印刷指示によって印刷装置1004が印刷処理を実行するための処理を説明するシーケンス図である。本処理は、対応するプログラムを各装置のCPUが実行することで、対応する機能が実現される。なお、表示装置1003も既にサーバ1006にサインインしているものとする。また、後述する写真Aに対応する画像データは、サーバ1006によりユーザ用に保存されているとする。
まず、ユーザは、音声制御デバイス1001の近辺で、予め決められているキーワードであるウェイクワードを話し、続いてユーザ自身が行いたいことを話す。例えば、ユーザは、ウェイクワードに続いて「写真Aを表示して」と話す。音声制御デバイス1001は、ウェイクワードの音声を受信することで、続いて話される音声を受信する。つまり、音声制御デバイス1001は「写真Aを表示して」という音声を受信する。
音声制御デバイス1001は、音声制御デバイス1001の識別情報(例えば、Macアドレス等)と受信した音声に基づく音声データをサーバ1006へ送信する(処理701)。
サーバ1006は、音声制御デバイス1001のMacアドレスから、当該Macアドレスに関連づけられているユーザIDを特定することで、音声制御デバイス1001がサインイン済みのデバイスであることを認識する。また、上述したアクセストークンが使用されても良い。そして、サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく制御コマンドを生成し(処理702)、音声制御デバイス1001に送信する(処理703)。なお、この制御コマンドには、実行すべき処理内容として表示処理コマンドと、表示対象となる写真Aに対応する画像データの保存場所を示す情報が含まれている。
音声制御デバイス1001は、サーバ1006から受信した制御コマンドの送信対象を選択する。ここでは、ユーザからの要求として、ユーザは「写真Aを表示して」と話しているため、音声制御デバイス1001は、表示装置1003を送信先として選択する。音声制御デバイス1001は、選択された表示装置1003に制御コマンドを送信する(処理704)。なお、音声制御デバイス1001は、サーバ1006から受信した制御コマンドを処理704にて送信しているが、別のコマンドを送信しても良い。つまり、音声制御デバイス1001が、処理703において受信した制御コマンドに基づいて別のコマンドを生成し、その生成された別のコマンドを表示装置1003に送信しても良い。以降においても、音声制御デバイス1001が制御コマンドを送信する処理が記載されているが(例えば、図10の処理704等)、同様に制御コマンドに基づいて生成された別のコマンドが送信されても良い。その場合、コマンドを受けた装置は、その別のコマンドに従った処理を実行可能である。
表示装置1003は、制御コマンドに従った処理を実行する。表示装置1003は、まず制御コマンドに含まれる保存場所にアクセスし、保存場所から写真Aに対応する画像データを取得する(処理705)。そして、表示装置1003は、写真Aに対応する画像データAを表示する(処理706)。なお、表示装置1003は、制御コマンドに写真Aに対応するURLが含まれる場合、そのURLにアクセスすることで写真Aを含むWebページを表示しても良い。
表示装置1003に写真Aに対応する画像データが表示された状態で、ユーザは、音声制御デバイス1001の近辺で、ウェイクワードを話し、続いてユーザ自身が行いたいことを話す。例えば、ユーザは、ウェイクワードに続いて「表示装置1003に表示されている写真Aを印刷して」と話す。
音声制御デバイス1001は、ウェイクワードの音声を受信することで、続いて話されるワードの受付を行う。つまり、音声制御デバイス1001は「表示装置1003に表示されている写真Aを印刷して」という音声を受信することで、音声で印刷指示を受け付ける。
音声制御デバイス1001は、音声データをサーバ1006へ送信する(処理707)。なお、基本的な処理は処理701と同じである。
サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく処理を実行する。ここでは、サーバ1006は、「表示装置1003に表示されている写真Aを印刷して」という音声の音声データを受信しているため、写真Aに対応する画像データに基づいて印刷データを生成する(処理708)。
なお、ユーザからの印刷指示として、上述の「表示装置1003に表示されている写真Aを印刷して」という単純な指示の場合、印刷設定に関する情報が含まれていない。すなわち、印刷装置1004が写真Aを印刷する際の、印刷枚数、印刷サイズ、印刷向き、ページレイアウト(ページ割り付け)、両面・片面印刷等の印刷設定が指示に含まれていない。本実施形態では、音声制御デバイス1001は、音声データ解析の結果、音声データ中に印刷設定に関する情報が含まれていない場合、画像の印刷設定として、所定の印刷設定を使用する。詳細については図9を用いて後述する。
また、本実施形態では、処理708として、サーバ1006とは異なる別のサーバが印刷データを生成しても良い。例えば、印刷装置1004の製造元が、印刷データを生成するソフトウェアを備えた印刷サーバを提供する。そして、サーバ1006は、印刷サーバに印刷データの生成を依頼し、印刷サーバが印刷データを生成しても良い。
サーバ1006は、印刷データの生成が完了すると、印刷データの生成が完了したことを示す通知を印刷装置1004へ送信する(処理709)。印刷装置1004は、印刷データの生成が完了したことを示す通知を受信した場合、サーバ1006にアクセスし、印刷データを取得して(処理710)、印刷を実行する(処理711)。
印刷装置1004は、印刷処理が完了すると印刷完了通知をサーバ1006へ送信し(処理712)、サーバ1006は、印刷完了通知を音声制御デバイス1001へ送信する(処理713)。音声制御デバイス1001は、印刷完了通知を受信した場合、音声にて印刷完了を通知する(処理714)。
[サーバ1006の構成]
図8は、サーバ1006のハードウェア構成図である。サーバ1006は、CPU801、ROM802、RAM803、外部記憶装置804、通信部805を有する情報処理装置である。CPU801は、システム制御部であり、サーバ1006の全体を制御する。なお、本実施形態では、サーバ1006が1台で構成されているが、複数台の情報処理装置が連携して動作することでサーバ1006に対応するサーバシステムを構築しても良い。ROM802は、CPU801が実行する制御プログラムやデータテーブル、組み込みOS(Operating System)プログラム等の固定データを格納する。RAM106は、不図示のデータバックアップ用の一次電池によってデータが保持されるため、プログラム制御変数等のデータを揮発させずに格納することができる。外部記憶装置804は、アプリケーションソフトウェアを記憶する。なお、図7では、上述したようにサーバ1006が印刷データを生成する。そのため、サーバ1006の外部記憶装置804は、印刷装置1004が解釈可能な印刷データを生成する印刷ソフトウェアを記憶する。通信部805は、所定の無線通信方式に従って通信を行うための回路やアンテナを含んで構成される。
[音声制御デバイス1001とサーバ1006の処理の詳細]
次に、印刷指示を行う場合の音声制御デバイス1001とサーバ1006の処理について図9(A)を用いて説明する。図9(A)のフローチャートは、図7の処理707〜714に対応する。なお、音声制御デバイス1001では、CPU103がフローチャートの処理に関わるプログラムをROM104等のメモリから読みだして実行することで音声制御デバイス1001の処理が実行される。一方、サーバ1006では、CPU801がフローチャートの処理に関わるプログラムをROM802等のメモリから読みだして実行することでサーバ1006の処理が実行される。
CPU103は、音声制御デバイス1001の周辺でユーザにより発せられた言葉(音声)を入力し(S901)、入力した音声に基づいて音声データを生成する。そして、音声データが音声制御デバイス1001からサーバ1006へ送信される(S902)。
CPU801は、音声データを受信すると音声データを解析し、ユーザのリクエストを特定する。サーバ1006は、例えば「表示装置1003に表示されている写真Aを印刷して」というユーザリクエストに対応した音声データを受信し、音声データ内に印刷設定に関する情報が含まれているかを判定する(S903)。
CPU801は、音声データ内に印刷設定に関する情報が含まれている場合、音声データ内に含まれる印刷設定に関する情報を取得する(S904)。一方、音声データ内に印刷設定に関する情報が含まれていない場合、CPU801は、所定の印刷設定に関する情報を取得する(S905)。ここでは、所定の印刷設定に関する情報として、あらかじめサーバに登録されている印刷設定に関する情報(値)を取得する。
S906では、CPU801は、音声データに基づき、表示装置1003に表示されている写真Aに対応する画像データを特定し、S904若しくはS905で取得された印刷設定に関する情報を適用して、その画像データに基づく印刷データを生成する。
次に、CPU801は、印刷処理を実行するプリンタを選択する(S907)。本実施形態では、CPU801は、音声制御デバイス1001のMacアドレスに関連づいているユーザIDを特定する。そして、サーバ1006は、そのユーザIDに関連付けて管理されている印刷装置1004を特定する。以上の処理により、S907が実現される。
CPU801は、S907において選択したプリンタ(印刷装置1004)に対して印刷データの生成が完了したことを示す通知を印刷装置1004へ送信する(S908)。その後、CPU801は、印刷装置1004から印刷完了通知を受信したかを判定する(S909)。
S909において、印刷装置1004から印刷完了通知を受信した場合、CPU801は、印刷指示元である音声制御デバイス1001に印刷完了通知を送信する。CPU103は、印刷完了通知を受信した場合、音声にて印刷完了を通知する。具体的には、CPU103は、印刷完了通知を音声に変換し、スピーカ102を用いて印刷完了を音声で出力する。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。特に、ユーザの音声での指示の中に印刷設定に関する指示が含まれていない場合でも、所定の印刷設定を適用することで印刷データが生成される。
[変形例]
本実施形態では、音声データ内に印刷設定に関する情報が含まれていない場合、所定の印刷設定で印刷することをユーザに確認してもよい。具体的には、サーバ1006がS903で音声データ内に印刷設定に関する情報が含まれていないと判定した場合、サーバ1006は、所定の印刷設定で印刷することを音声制御デバイス1001に通知させるための制御コマンドを生成する。そして、サーバ1006は、制御コマンドを音声制御デバイス1001へ送信し、音声制御デバイス1001は、受信した制御コマンドに従って、所定の印刷設定で印刷する旨、ユーザに音声で通知する。例えば、「写真Aを、L判の写真用紙に、〜(中略)〜の設定で1枚、印刷します。」と音声出力する。なお、印刷データ生成のために必要な印刷設定の項目は、複数の項目からなる。よって、全てを音声出力するとユーザが所望の情報を得るまでの時間が長くなるため、音声出力の対象となる印刷設定項目は一部の代表的な設定項目のみとしてもよい。
また、「写真Aを、L判の写真用紙に、〜(中略)〜の設定で1枚、印刷しますが、よいですか?」という質問形式のように、所定の印刷設定で印刷してよいかどうかをユーザに音声で問うようにしてもよい。質問形式の場合、質問に対するユーザからの応答を受けて、印刷設定を確定又は変更するとよい。つまり、ユーザから印刷設定を承認する返答(例えば「OK」との返答)があった場合、音声制御デバイス1001は、その音声データをサーバ1006に送信し、サーバ1006は印刷設定を確定する。一方、ユーザから異なる印刷設定を指示する返答があった場合(例えば「2枚印刷して」との返答)があった場合、音声制御デバイス1001はその音声データをサーバ1006へ送信する。そしてサーバ1006は、変更指示があった部数設定の項目のみ、例えば1部から2部に変更する。なお、印刷設定の変更があった場合、サーバ1006は、音声制御デバイス1001に変更後の印刷設定を音声でユーザに通知させてもよい。
また、音声ではなく、表示により、ユーザに印刷設定を通知してもよい。つまり、サーバ1006は、制御コマンドを表示装置1003に送信し、適用する印刷設定を表示装置1003に表示させてもよい。これにより、ユーザはどのような印刷設定で印刷が行われるかを容易に把握することが可能となる。なお、表示装置1003に表示された画面上で、ユーザが印刷設定を変更可能となるように構成してもよい。具体的には、サーバ1006が印刷設定画面のデータを保持し、その印刷設定の画面データをサーバ1006から表示装置1003が取得することにより、表示装置1003は印刷設定画面を表示する。これにより、ユーザはその画面を見ながら、印刷設定を行うことが可能となる。
また、サーバ1006が印刷データを生成するために必要な印刷設定の項目は、上述したとおり複数の項目からなる。図13に印刷設定の項目を例示する。このように多くの印刷設定項目がある場合、ユーザによっては一部の設定項目のみを音声で指定する可能性がある。具体的には、「写真Aを、L判で1枚印刷して」との指示のように、代表的な設定項目のみを指示する可能性がある。そこで、本実施形態では、必要な印刷設定の項目ごとに、音声データ中に情報が含まれているかを確認し、含まれてない項目についてのみ所定の印刷設定の値を適用しても良い。図9(B)を用いて本処理のフローを説明する。
図9(B)において、S901及びS902の処理は図9(A)と同様である。CPU801は、S903において、音声データ中に印刷設定に関する情報が含まれているかを判定する際に、必要な印刷設定の項目の全てが含まれているか判定する。つまり、音声データ内に含まれる印刷設定項目と含まれない印刷設定項目を特定する。CPU801は、全ての項目が音声データ内に含まれている場合は、図9(A)同様に音声データ内の印刷設定に関する情報を取得する(S904)。一方、CPU801は、一部の印刷設定項目が音声データに含まれていない場合は、含まれていない項目(足りない項目)のみあらかじめ登録された所定の設定値を取得し、音声データに含まれている項目は音声データからその情報を取得する(S905’)。さらに、音声データ中に1つも印刷設定に関する情報が含まれていない場合は、CPU801は、全ての項目について、あらかじめ登録された所定の設定値を取得する(S905’’)。以降の処理は図9(A)と同様であるため省略する。このような処理により、ユーザが一部の印刷設定項目についてのみ指示した場合にも対応することが可能となる。
また、本実施形態のサーバ1006は、図14に示すように、所定の印刷設定として複数の印刷設定を備えていてもよい。具体的には、印刷対象のデータ種類に応じて異なる印刷設定を備えているとよい。例えば、写真と文書(Microsoft Word等の文書作成ソフトウェアで生成した文書)とでは、好ましい設定や一般的な設定は異なる。よって、サーバ1006には、データ種類毎に異なる、複数の印刷設定を登録しておく。そして、サーバ1006は、S903において、音声データ内に印刷設定に関する指示が含まれていない場合、印刷対象のデータ種類を識別する。例えばデータファイルの拡張子を基に識別することができる。この識別結果に基づき、サーバ1008のメモリ内から、識別されたデータ種類に対応する印刷設定を取得するとよい。例えば、データ種類が「写真」の場合は、「印刷設定1」が選択され、データ種類が「文書」の場合は、「印刷設定2」が選択される。
さらに、本実施形態のサーバ1006は、データ種類によらず、複数の印刷設定を備えていてもよい。例えば、ユーザにより音声で「文書Bを、ファインアート紙に印刷して」と指示されたとする。この場合、ユーザとしては印刷スピードよりも美しい刷り上がりを重視していることが想定される。しかしながら、図14において文書用の印刷設定である「印刷設定2」は、「印刷品質:標準」、「両面・片面設定:両面」、「ページレイアウト:2ページ/枚」となっている。よって、指示されていない印刷設定の項目をこのまま適用するとユーザの想定と異なる仕上がりになる可能性がある。そこで、本実施形態のサーバ1006は、1つのデータ種類に対して、少なくとも一部の項目の設定情報(設定値)が異なる複数の印刷設定を備える。特に、用紙種に応じて、印刷品質、カラー設定、両面・片面設定等が異なる複数の印刷設定を備えるようにしても良い。例えば、図14の印刷設定1、2に加えて、「文書用」の別の印刷設定として、「用紙種類:ファインアート紙」、「印刷品質:きれい」、「両面・片面設定:片面」、「ページレイアウト:1ページ/枚」と登録された「印刷設定3」を備える。このように複数の印刷設定を登録しておくことで、ユーザから「文書Bを、ファインアート紙に印刷して」と指示された場合でも、サーバ1006は、それに対応する設定値を有する「印刷設定3」を選択して取得することができる。なお、データ種類を参照せず、単に音声指示に含まれる用紙種類の情報に基づいて、用紙種類ごとに印刷設定を備えてもよい。このように、ユーザから一部の印刷設定項目のみが指示された場合でも、サーバ1006は、登録された複数の印刷設定のうち、指示に対応する設定情報を含む印刷設定を選択することができる。よって、よりユーザの意図に沿った印刷データの生成が可能となる。
また、本実施形態において、「所定の印刷設定」の登録値はユーザ指示により変更可能であっても良い。所定の印刷設定は、印刷装置1004もしくはサインインするサーバ1006に応じて決まっており、変更しない限りは初期設定としてデフォルトの印刷設定が登録されている。ユーザは、このデフォルトの印刷設定を変更したい場合、音声制御デバイス1001に音声で指示することで音声データがサーバ1006に送付され、サーバ1006内の印刷設定が変更される。また、携帯端末1002等の端末装置を介してサーバ1006内の印刷設定を変更してもよい。
また、音声制御デバイス1001が、「表示装置1003に表示されている写真Aを印刷して」という声から印刷をリクエストしたユーザ名を特定できる場合、そのユーザ名を付加して音声データを生成しても良い。この処理により、例えば、印刷装置1004は、印刷処理711の実行中または印刷履歴としてユーザ名を表示することができる。
また、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが、音声制御デバイス1001の近辺で、まずウェイクワードを話し、ユーザ自身が行いたいことを話すことにより、その内容を反映することもできる。例えば、ユーザは、ウェイクワードに続いて「もう1枚」や「追加で3部印刷」のように部数の追加指示を話す。
この部数の追加指示を受けた音声制御デバイス1001は、処理707で送信された音声データを再度送信しても良い。その際、「もう1枚」や「追加で3部印刷」に対応する音声データも合わせて送信される。サーバ1006は、この2つの音声データを受信することで、処理708と同様の印刷データ生成処理を行う。そして、サーバ1006は、部数について、新規のリクエストの音声データに基づいて設定する。この処理により、ユーザは容易に同じ画像データを使った再印刷を指示できる。さらに、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが、音声制御デバイス1001の近辺で、まずウェイクワードを話し、ユーザ自身が行いたいことを話すことにより、その内容を反映することもできる。例えば、ユーザは、ウェイクワードに続いて「もっと大きい用紙に印刷して」と話す。この指示を受けて音声制御デバイス1001は、処理707で送信された音声データを再度送信しても良い。その際、「もっと大きいサイズに印刷して」に対応する音声データも合わせて送信される。サーバ1006は、この2つの音声データを受信することで、処理708と同様の印刷データ生成処理を行う。そして、サーバ1006は、用紙サイズについて、新規のリクエストの音声データに基づいて設定する。この処理により、ユーザは、同じ画像データを異なるサイズの用紙に印刷することを容易に指示できる。なお、後述するように別の装置、例えば音声制御デバイス1001や表示装置1003が印刷データを生成する場合は、印刷データを生成する装置が、同様の処理を行っても良い。
また、音声での指示中に印刷速度に関連する指示が含まれていた場合、サーバ1006は、この指示に基づき適用する印刷設定を変更してもよい。具体的には、ユーザから「急いで印刷して」というような指示があった場合、サーバ1006は速く印刷を完了する必要があると判断し、速度優先のモードで印刷するよう設定を変更するとよい。具体的には、登録済みの印刷設定が「印刷品質」の項目が「きれい」に対応する設定値であったとしても、「標準」に対応する設定値に変更するとよい。
また、サーバ1006は、過去に受け付けた印刷指示中の設定値を解析することにより、ユーザの印刷設定に関する好みを反映するようにしてもよい。具体的には、デフォルトで登録されているページレイアウトの印刷設定が、1枚に1ページ分を割り付ける設定であったとしても、ユーザが1枚に2ページ分を割り付ける設定を過去の所定期間に所定数以上多用している場合は、これを反映するとよい。つまり、登録されているページレイアウトの項目の設定値を「1ページ/枚」に対応する設定値に変更するとよい。
また、プリンタ1004又はサーバ1006は、印刷に関する音声キーワードを保存したメモリを備えてもよい。そして、音声制御デバイス1001は、プリンタ1004又はサーバ1006からこの音声キーワードをダウンロードする。これにより、音声制御デバイス1001は、印刷指示に関するユーザの音声を正確に解釈して音声データを生成することができるため、音声制御デバイス1001は、印刷に関する用語に強くなり、よりユーザの意図に即した印刷を実行することが可能となる。
例えば、プリンタ1004のCPU407やサーバ1006のCPU801は、印刷指示に関するワードをROM405やROM802に記憶する。そして、プリンタ1004のファームウェアのバージョンアップに従って実行可能な機能や項目が増えた場合には、印刷指示に関するワードも更新するようにしても良い。例えば、プリンタ1004は、新規機能に対応するメインメニュー画面や設定画面等、ユーザインタフェース画面上で新規に用いられるワードを新たにメモリに登録する。その際に、ワードとともに、モデルとなる標準的な特徴量として、周波数やテンポ、抑揚等の音声情報も合わせて記憶するようにしても良い。
[印刷装置の設定変更を指示する場合(制御例1)]
本実施形態において、印刷装置1004の設定変更を音声制御デバイス1001、及び表示装置1003を用いて行う場合の制御例について以下に説明する。
図15は、音声制御デバイス1001が印刷装置1004の設定変更指示を受け付けた場合のシーケンス図である。まず、ユーザは、音声制御デバイス1001の近辺で、予め決められているキーワードであるウェイクワードを音声入力し、続いてユーザ自身が行いたいこと音声入力する。例えば、ユーザは、ウェイクワードに続いて「省電力設定変更」と音声入力する(処理1501)。音声制御デバイス1001は、ウェイクワードの音声を入力することで、続いて話される音声を入力する。つまり、音声制御デバイス1001は「省電力設定変更」という音声を入力する。
印刷装置1004の設定変更可能な設定として、例えば、電力モード関連の設定を行う省電力設定がある。そして省電力設定の設定項目の一例として自動電源オン機能、自動電源オフ機能などがある。自動電源オフ機能とは、印刷装置1004の電源がオンされた状態で使用されていない状態が一定時間続いた場合に、消費電力を抑えることを目的に自動で電源をオフする機能である。自動電源オン機能とは、印刷装置1004が電源オフ状態であっても例えば印刷データを受信することに応じて自動で電源をオンする機能である。また、自動電源オン機能とは、ユーザが操作パネルを操作することに応じて自動で電源をオンする機能でもある。つまり、自動電源オン機能とは、ユーザによるソフトウェアオンが指示されなくとも自動的に電源をオンするための機能である。本制御例において印刷装置1004の設定変更前の自動電源オン設定は無効の状態であるものとする。つまり、印刷装置1004が使用されていない状態が一定時間続いた場合、印刷装置1004の電源を自動的にオフにする。ここで、印刷装置1004に対してユーザが印刷データを送信したとしても自動電源オン設定が無効である場合、印刷装置1004はオフの状態が維持される。本制御例においては印刷装置1004の設定変更可能な設定項目の例として自動電源オン設定を説明するが、音声による設定変更が可能な設定項目を自動電源オン設定に限定するものではない。印刷装置1004の設定変更が可能な項目であればどのような設定項目であっても良い。
音声制御デバイス1001は、音声制御デバイス1001の識別情報(例えば、Macアドレス等)と、受信した音声に基づく音声データとをサーバ1006へ送信する(処理1502)。サーバ1006は、音声制御デバイス1001のMacアドレスから、当該Macアドレスに関連づけられているユーザIDを特定することで、音声制御デバイス1001がサインイン済みのデバイスであることを認識する。また、上述したアクセストークンが使用されても良い。そして、サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく制御コマンドを生成し(処理1503)、音声制御デバイス1001に送信する(処理1504)。なお、この制御コマンドには、実行すべき処理内容としての表示処理コマンドと、表示対象となる省電力設定に対応する表示画面データの保存場所を示す情報が含まれている。ここでは、表示画面データの保存場所は印刷装置1004である。
音声制御デバイス1001は、サーバ1006から受信した制御コマンドの送信対象を選択する。ここでは、ユーザからの要求として、ユーザは「省電力設定変更」と音声入力しており、設定状況および設定変更結果を表示するために、音声制御デバイス1001は、表示装置1003を送信先として選択する。音声制御デバイス1001は、選択された表示装置1003に制御コマンドを送信する(処理1505)。なお、音声制御デバイス1001は、サーバ1006から受信した制御コマンドを処理1505にて表示指示として送信しているが、別のコマンドを送信しても良い。つまり、音声制御デバイス1001が、処理1504において受信した制御コマンドに基づいて別のコマンドを生成し、その生成された別のコマンドを表示指示として表示装置1003に送信しても良い。以降においても、音声制御デバイス1001が制御コマンドを送信する処理が記載されているが(例えば、図16の処理1605等)、同様に制御コマンドに基づいて生成された別のコマンドが送信されても良い。その場合、その制御コマンドを受信した装置は、その受信した制御コマンドに従った処理を実行可能である。
表示装置1003は制御コマンドに従った処理を実行する。表示装置1003はまず制御コマンドに含まれる、印刷装置1004に保存されている省電力設定に対応した表示画面データ(表示データ)を取得するため表示画面要求を行う(処理1506)。印刷装置1004は表示画面要求(処理1506)に含まれる識別情報に基づいて表示画面データを取得し、表示装置1003へ表示画面データを送信する(処理1507)。表示画面データは、例えば、印刷装置1004のROM405に記憶されている。表示装置1003は、送られてきた表示画面データに基づいて画面を表示する(処理1508)。
図17は印刷装置1004の設定変更に関わる画面の一例を示す図であり、現在の印刷装置1004の自動電源オン設定が無効状態であることを示している。そのため例えば本制御例の処理1508においては省電力設定に対応する表示画面として、図17のような省電力設定画面を表示すると現在の設定が分かり易くユーザは設定変更を行いやすい。
なお、表示装置1003はウェブブラウザ機能を有し、印刷装置1004はウェブサーバを有する構成であってもよい。この場合、表示装置1003は制御コマンドに含まれる、省電力設定画面に対応したURLを指定して印刷装置1004のウェブサーバにアクセスすることで表示画面要求(処理1506)を行う。そして、印刷装置1004が備えるウェブサーバから省電力設定画面の表示画面データを取得し(処理1507)、表示装置1003がウェブブラウザを使って表示する(処理1508)構成であっても良い。
表示装置1003に省電力設定変更に対応する画面が表示された状態で、ユーザは、音声制御デバイス1001の近辺で、ウェイクワードを音声入力し、続いてユーザ自身が行いたいことを話す。例えば、ユーザは、ウェイクワードに続いて「印刷装置の自動電源オン機能を有効にして」と音声入力する。音声制御デバイス1001は、ウェイクワードの音声を受信することで、続いて話されるワードの受付を行う。つまり、音声制御デバイス1001は「印刷装置の自動電源オン機能を有効にして」という音声を入力することで、音声で設定変更を受け付ける。
音声制御デバイス1001は、音声データをサーバ1006へ送信する(処理1509)。なお、基本的な処理は処理1502と同じである。サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく制御コマンドを生成し(処理1510)、表示装置1003に送信する(処理1511)。なお、この制御コマンドには、実行すべき処理内容として、印刷装置1004の自動電源オン機能設定を有効に変更することを示す情報が含まれている。
表示装置1003は制御コマンドに従った処理を実行する。表示装置1003はまず制御コマンドに含まれる情報にもとづき、印刷装置1004の自動電源オン機能設定を有効に変更するよう、印刷装置1004に対して設定変更要求を行う(処理1512)。また、処理1510で生成される制御コマンドには上記に加えて、実行すべき処理内容として表示処理コマンドと、表示対象となる自動電源オン機能が有効設定である状態に対応する表示画面データの保存場所を示す情報が含まれていてもよい。その場合は、設定変更要求(処理1512)と併せて印刷装置1004に対し図示しない表示画面要求を行い、表示画面データを取得して表示装置1003に自動電源オン機能が有効に変わった画面を表示する構成であってもよい。それにより、設定変更が行われたことをユーザに確認させることができる。
図18は印刷装置1004の設定変更に関わる画面の一例を示す図であり、現在の印刷装置1004の自動電源オン設定が有効状態であることを示している。本実施形態においては図18のような省電力設定画面を表示すると、ユーザにとっては設定が変更されたことが分かり易い。印刷装置1004は設定変更要求(処理1512)に含まれる変更内容を示す情報に基づいて自動電源オン機能の設定を有効に変更する(処理1513)。設定変更が完了すると、印刷装置1004は、設定変更完了通知をサーバ1006へ送信し(処理1514)、サーバ1006は、設定変更完了通知を音声制御デバイス1001へ送信する(処理1515)。音声制御デバイス1001は、設定変更完了通知を受信した場合、音声にて設定変更完了を通知する(処理1516)。
なお、上述の処理により、音声指示によって、出力装置に対する設定処理を受け付け可能な画面を表示装置に表示させても良い。
[印刷装置の設定変更を指示する場合(制御例2)]
本実施形態において、印刷装置1004の設定変更を音声制御デバイス1001、及び表示装置1003を用いて行う場合の制御例について以下に説明する。
図16は、音声制御デバイス1001が印刷装置1004の設定変更指示を受け付けた場合のシーケンス図である。まず、ユーザは、音声制御デバイス1001の近辺で、予め決められているキーワードであるウェイクワードを話し、続いてユーザ自身が行いたいことを音声入力する。例えば、ユーザは、ウェイクワードに続いて「自動電源オン機能を有効にして」と音声入力する(処理1601)。音声制御デバイス1001は、ウェイクワードの音声を入力することで、続いて話される音声を入力する。つまり、音声制御デバイス1001は「自動電源オン機能を有効にして」という音声を入力する。なお本制御例において設定変更前の印刷装置1004の自動電源オン設定は無効の状態であるものとする。
音声制御デバイス1001は、音声制御デバイス1001の識別情報(例えば、Macアドレス等)と受信した音声に基づく音声データをサーバ1006へ送信する(処理1602)。サーバ1006は、音声制御デバイス1001のMacアドレスから、当該Macアドレスに関連づけられているユーザIDを特定することで、音声制御デバイス1001がサインイン済みのデバイスであることを認識する。また、上述したアクセストークンが使用されても良い。そして、サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく制御コマンドを生成し(処理1603)、音声制御デバイス1001に送信する(処理1604)。なお、この制御コマンドには、例えば、以下のコマンドおよび情報が含まれる。1つ目は、実行すべき処理内容としての設定変更コマンドである。2つ目は、設定変更内容が自動電源オン機能を有効へ変更することを示す情報である。3つ目は、表示処理コマンドである。4つ目は、表示対象となる自動電源オン機能に対応する表示画面データの保存場所を示す情報である。ここでは、表示画面データの保存場所は印刷装置1004である。そのため、自動電源オン機能に対応する表示画面データは、印刷装置1004により提供される。
音声制御デバイス1001は、サーバ1006から受信した制御コマンドの送信対象を選択する。ここでは、ユーザからの要求として、ユーザは「自動電源オン機能を有効にして」と音声入力している。そのため、サーバ1006は、設定変更と設定の確認を表示装置1003上でも行えるように表示装置1003を送信先として選択し、選択された表示装置1003に制御コマンドを送信する(処理1605)。
本制御例においては、制御コマンド送信(処理1605)の送信先を表示装置1003としているが、送信先を表示装置1003に限定するものではない。例えば、表示装置1003ではなく印刷装置1004へ直接、制御コマンドを送信する構成であってもよい。その場合は、印刷装置1004は、制御コマンドから表示装置1003と、印刷装置1004内にある表示画面データとを特定し、表示装置1003に表示画面データを送信することで表示装置1003に自動電源オン機能に対応した表示画面を表示させる。その際、例えば前述の図17を表示してもよい。
表示装置1003は処理1605で送信された制御コマンドに従った処理を実行する。表示装置1003はまず制御コマンドに含まれる、印刷装置1004に保存されている自動電源オン設定に対応した表示画面を取得するため表示画面要求を行う(処理1606)。ここで自動電源オン設定に対応した表示画面とは例えば、図17のように現在の印刷装置1004の自動電源オン設定を表現する表示画面である。印刷装置1004は表示画面要求(処理1606)に含まれる識別情報に基づいて表示画面データを取得し、表示装置1003へ表示画面データを送信する(処理1607)。表示装置1003は、送られてきた表示画面データに基づき画面を表示する(処理1608)。
なお、表示装置1003はウェブブラウザ機能を有し、印刷装置1004はウェブサーバを有する構成であってもよい。この場合、表示装置1003は制御コマンドに含まれる、自動電源オン設定に対応したURLを指定して印刷装置1004のウェブサーバにアクセスし表示画面要求(処理1606)を行う。そして、印刷装置1004が備えるウェブサーバから表示画面データを取得し(処理1607)、表示装置1003がウェブブラウザを使って表示する(処理1608)構成であっても良い。
続いて表示装置1003は処理1605で送信された制御コマンドに含まれる情報にもとづき自動電源オン機能を有効へ変更するための設定変更要求(処理1609)を印刷装置1004へ送信する。また、処理1605で送信される制御コマンドには上記に加えて、実行すべき処理内容として表示処理コマンドと、表示対象となる自動電源オン機能が有効設定である状態に対応する表示画面データの保存場所を示す情報とが含まれていてもよい。その場合は、設定変更要求(処理1609)と併せて印刷装置1004に対し図示しない表示画面要求を行い、表示画面データを取得して表示装置1003に自動電源オン機能が有効に変更された画面を表示する構成であってもよい。その際、例えば前述の図18を表示してもよい。
印刷装置1004は設定変更要求(処理1609)に含まれる変更内容を示す情報に基づいて自動電源オン機能の設定を有効に変更する(処理1610)。設定変更が完了すると、印刷装置1004は、設定変更完了通知をサーバ1006へ送信し(処理1611)、サーバ1006は、設定変更完了通知を音声制御デバイス1001へ送信する(処理1612)。音声制御デバイス1001は、設定変更完了通知を受信した場合、音声にて設定変更完了を通知する(処理1613)。
図16では、処理1608で変更前の画面、例えば図17の画面を表示している。しかしながら、処理1606での表示画面要求を受信した後、印刷装置1004が設定変更を行い、自動電源オン機能が有効になったことを示す表示画面データを印刷装置1004が表示装置1003に処理1607で送信して表示させてもよい。その際、例えば前述の図18を表示してもよい。その場合は生成される制御コマンド(処理1603)に、表示を行う表示装置1003を特定する情報を含む必要がある。
なお、図16では、印刷装置から送信される情報に基づいて図18が表示されたが、例えば、印刷装置から設定完了に関する通知をサーバ1006が受信する。そして、サーバ1006が表示装置に図18を表示させるための情報を送信し、かつ、音声制御デバイス1001に設定完了通知1612を送信しても良い。この際、表示装置1003には、音声制御デバイスが音声で通知するコンテンツよりも詳細なコンテンツが表示される。例えば、音声制御デバイスは音声で設定完了のみを通知するが、表示装置1003には設定完了と共に、設定変更の簡単な音声指示方法が表示されても良い。
[印刷装置の設定変更を指示する場合(その他の制御例)]
前述した制御例2では、自動電源オン設定が無効状態の印刷装置1004において自動電源オン機能を有効にする例を示した。ここでは、例えば既に自動電源オン機能が有効な状態においてユーザが「印刷装置の自動電源オン機能を有効にして」と音声入力した場合の制御例を以下に説明する。図16のサーバ1006は、印刷装置1004の設定変更可能な設定項目および現在の設定値を予め取得しておく。そして、サーバ1006は、音声制御デバイス1001から送られてきた印刷装置1004の設定変更を指示する音声指示(処理1602)が、現在の印刷装置1004の設定値と異なる設定への変更指示であった場合のみ制御コマンド(処理1604)を音声制御デバイス1001へ送る構成としてもよい。その場合は処理1604以後の処理は行われず、図示しない設定変更失敗通知を音声制御デバイス1001へ送信することで音声にて、設定変更が行われなかった旨を通知してもよい。具体的には、音声制御デバイス1001から送られてきた音声データを受信したサーバ1006は、音声データを解析して、予めサーバ1006に記憶されている印刷装置1004の設定が変更可能であるかを判断する。そして、サーバ1006は、その判断結果に応じて、処理1604以後の処理の実行を制御する。
例えば「自動電源オン機能」を含んだ音声が送られてくると、サーバ1006は印刷装置1004の設定変更が可能な設定に対する設定変更であると判断する。次にサーバ1006は「自動電源オン機能を有効にして」という音声指示であるため、取得済の現在の印刷装置1004の設定と比較し、すでに自動電源オン機能が有効である場合には設定変更不要な指示と判断する。そして、サーバ1006は制御コマンド生成を行わず、図示しない設定変更失敗通知を音声制御デバイス1001へ送信することで音声にて設定変更が行われなかった旨を通知する。
本実施形態でサーバ1006が、印刷装置1004の設定変更が可能な設定項目、および現在の印刷装置1004の設定変更が可能な設定値を取得する方法について説明する。印刷装置1004の設定変更が可能な設定項目に関しては、説明済みのサーバ1006への印刷装置1004のサインイン処理時に予め印刷装置1004から取得しておき、サーバ1006内に保持しておいてもよい。またはサーバ1006は、情報が必要な際に印刷装置1004と通信を行うことで取得してもよい。また、印刷装置1004の設定変更が可能な設定項目の現在の設定に関しては、例えば前回の設定変更の音声指示を受けた際の履歴を記憶しておいてもよいし、情報が必要な際にサーバ1006が印刷装置1004と通信を行うことで取得してもよい。
なお、前述の制御例以外の実現方法として印刷装置1004にて設定変更が可能な指示か否かを判断してもよい。その場合は図16の表示画面要求(処理1606)にどのような設定変更を行うかを含む情報、例えば設定変更要求(処理1609)を含める制御にしてもよい。例えば、印刷装置1004は表示画面要求(処理1606)を受けると、表示画面要求(処理1606)に含まれる設定変更要求(処理1609)を参照し、設定変更の必要が無い設定変更に基づく画面表示要求であると判断するとする。そして、その場合、印刷装置1004は、表示画面送信(処理1607)にて表示装置1003に対し非表示にする旨を返却し、表示処理(処理1608)をスキップさせる。そして印刷装置1004は設定変更(処理1610)をスキップしたのちに、設定変更完了通知(処理1611)に失敗の旨を追加してサーバ1006に返却する。音声制御デバイス1001は、設定変更完了通知により付加された失敗の情報を受信すると、音声にて設定変更が失敗した旨を通知する(処理1612、処理1613)。上述の設定変更が可能な指示か否かの判定は、例えば、ユーザ権限に基づいて行われても良い。
また、その他の指示として、「出力装置の画面を表示して」という音声指示でも構わない。この場合、例えば、音声制御デバイス1001は、「出力装置の画面」に対応するURLとして、印刷装置1004のIPアドレスに基づくURLを含む制御コマンドを表示装置に送信する。このURLを使用することで、表示装置1003のウェブブラウザは、出力装置のウェブサーバにより提供される画面を表示しても良い。
[第2実施形態]
次に、第2実施形態について説明する。第1実施形態では図7および図9で説明したとおり、サーバ1006が印刷データを生成し、サーバ1006からの印刷データの生成が完了したことを示す通知を使って印刷装置1004が印刷する形態について説明した。本実施形態では、音声制御デバイス1001が印刷データを生成する形態について説明する。なお、以降の説明では第1実施形態と共通する部分は説明を省略し、第1実施形態と異なる部分を中心に説明する。
図10は、印刷処理を説明するシーケンス図である。なお、処理701〜706は図7と同じであるため詳細な説明は省略する。また、図10および図11では音声制御デバイス1001が印刷データを生成する。そのため、本実施形態では、音声制御デバイス1001の外部記憶装置107は、印刷装置1004が解釈可能な印刷データを生成する印刷ソフトウェア、通信に必要な情報等を記憶する。
音声制御デバイス1001は、ウェイクワードの音声を受信することで、続いて話されるワードを受信する。つまり、音声制御デバイス1001は「表示装置1003に表示されている写真Aを印刷して」という音声を受信する。
音声制御デバイス1001は、音声データをサーバ1006へ送信する(処理1001)。サーバ1006は、音声制御デバイス1001から送信された音声データを解析し、音声データに基づく処理を実行する。サーバ1006は、「表示装置1003に表示されている写真Aを印刷して」という音声の音声データを受信している。そのため、サーバ1006は、写真Aに対応する画像データを印刷するための制御コマンドを生成する(処理1002)。
サーバ1006は、処理1002で生成された制御コマンドを音声制御デバイス1001に送信する(処理1003)。音声制御デバイス1001は、制御コマンドに従った処理を実行する。写真Aに対応する画像データを取得して印刷する指示が制御コマンドに含まれているため、音声制御デバイス1001は、サーバ1006から写真Aに対応する画像データを取得する(処理1004)。
音声制御デバイス1001は、取得した画像データと印刷設定情報に基づいて印刷データを生成する(処理1005)。なお、第1実施形態と同様に、ユーザからの印刷指示として、「表示装置1003に表示されている写真Aを印刷して」という単純な指示の場合、印刷設定に関する情報が含まれていない。よって、本実施形態でも第1実施形態と同様に、音声での指示の中に印刷設定に関する情報が含まれていない場合、画像の印刷設定として、所定の印刷設定を使用する。具体的には、制御コマンド内に印刷設定に関する情報が含まれていない場合、音声制御デバイス1001は、あらかじめ音声制御デバイス1001に登録された所定の印刷設定を適用して印刷データを生成する。なお、印刷設定に関する情報が含まれているかどうかの判定は音声制御デバイス1001ではなくサーバ1006が行ってもよい。この場合、サーバ1006は、音声制御デバイス1001からの音声データ内に印刷設定に関する情報が含まれているかを判定する。そして、印刷設定に関する情報が含まれていない場合は、サーバ1006にあらかじめ登録された所定の印刷設定を適用して制御コマンドを生成するとよい。音声制御デバイス1001は、その制御コマンド内に含まれる印刷設定に基づき、印刷データを生成することができる。
音声制御デバイス1001は、処理1005で生成した印刷データを印刷装置1004へ送信する(処理1006)。印刷装置1004は、印刷データに基づく印刷処理が完了すると(処理1007)、印刷完了通知を音声制御デバイス1001に送信する(処理1008)。音声制御デバイス1001は、印刷完了通知を受信した場合、音声にて印刷完了を通知する(処理1009)。
[音声制御デバイス1001の処理の詳細]
次に図11を用いて音声制御デバイス1001の処理を説明する。図11のフローチャートは、図10の処理1001〜1009に対応する。なお、図11のS1101〜S1102は、図9のS901〜S902と同じ処理であるため詳細な説明は省略する。
CPU103は、サーバ1006から制御コマンドを受信する(S1103)。CPU103は、受信した制御コマンドを解析し、次に実行すべき処理を特定する。制御コマンドには、写真Aの画像データを取得する指示と、画像データの印刷指示が含まれている。よって、CPU103は、サーバ1006から画像データを取得し、印刷データを生成する(S1104)。なお、S1104では、第1実施形態におけるサーバ1006の処理と同様に、ユーザからの音声での指示内に印刷設定に関する情報が含まれているかどうかを判定し、含まれていない場合は所定の印刷設定を適用する処理を行う。具体的には、CPU103は、制御コマンドを解析し、制御コマンド内に印刷設定に関する情報が含まれているかを判定する。そして、CPU103は、制御コマンド内に印刷設定に関する情報が含まれている場合、制御コマンド内に含まれる印刷設定に関する情報を取得する。一方、制御コマンド内に印刷設定に関する情報が含まれていない場合、CPU103は、所定の印刷設定に関する情報を取得する。ここでは、所定の印刷設定に関する情報として、音声制御デバイス1001にあらかじめ登録されている印刷設定に関する情報(値)を取得する。そして、取得した印刷設定に関する情報を適用して印刷データを生成する。
なお、印刷設定に関する情報が含まれているかどうかの判定は音声制御デバイス1001ではなくサーバ1006が行ってもよい。この場合、サーバ1006は、音声制御デバイス1001からの音声データ内に印刷設定に関する情報が含まれているかを判定する。そして、印刷設定に関する情報が含まれていない場合は、サーバ1006にあらかじめ登録された所定の印刷設定を適用して制御コマンドを生成する。よって、音声制御デバイス1001は、その制御コマンド内に含まれる印刷設定に基づき、印刷データを生成することができる。
CPU103は、印刷データを印刷装置1004へ送信する(S1105)。ここでCPU103は、上述した図5の画面507を介した指示に従って、音声制御デバイス1001の制御対象となる装置として表示装置1003と印刷装置1004を登録している。そのためCPU103は、この登録に従って印刷データの送信先を印刷装置1004に決定する。CPU103は、印刷完了通知を受信したか否かを判定し(S1106)、印刷完了通知を受信した場合、印刷が完了したことを音声にて通知する(S1107)。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。また、サーバ1006の負荷を軽減することも可能となる。
なお、上述の例では、所定の印刷設定に関する情報が音声制御デバイス1001に登録されている例を説明したが、サーバ1006が所定の印刷設定に関する情報を保持してもよい。つまり、サーバ1006は、処理1001における音声制御デバイス1001からの音声データ内に印刷設定に関する情報が含まれているかを判定する。そして、サーバ1006は音声データ内に印刷設定に関する情報が含まれていないと判定した場合、サーバ1006にあらかじめ登録された所定の印刷設定に関する情報を制御コマンドに含める。そして、音声制御デバイス1001に送信する。音声制御デバイス1001は、受信した制御コマンドに従い印刷データを生成するとよい。
また、本実施形態においても、第1実施形態の[変形例]に記載されたサーバ1006の印刷設定に関係する処理を音声制御デバイス1001に置き換えることで、第1実施形態の[変形例]の各例と同様の処理を実行することができる。以下、変形例についても、第1実施形態と同様の処理については説明を省略し、第1実施形態と異なる部分を主に説明する。
本実施形態においても、音声での印刷指示の中に印刷設定に関する情報が含まれていない場合、所定の印刷設定で印刷することをユーザに音声で通知してもよい。具体的には、音声制御デバイス1001が、ユーザによる音声での印刷指示又は制御コマンドの中に、印刷設定に関する情報が含まれていないと判定した場合、音声制御デバイス1001が所定の印刷設定で印刷することをユーザに音声で通知するとよい。もちろん、サーバ1006が音声データの中に印刷設定に関する情報が含まれているかを判定し、音声制御デバイス1001に対して所定の印刷設定で印刷することをユーザに音声で通知させるための制御コマンドを生成して送信してもよい。また、第1実施形態と同様に質問形式でユーザに通知してもよく、質問に対するユーザからの返答を受けて印刷設定を確定又は変更してもよい。また、本実施形態においても、音声ではなく、表示により、ユーザに印刷設定を通知してもよい。具体的には、音声制御デバイス1001又はサーバ1003から制御コマンドが表示装置1003に送信され、適用する印刷設定を表示装置1003に表示させてもよい。
また、必要な印刷設定の項目ごとに、音声制御デバイス1001又はサーバ1006が、指示中に情報が含まれているかを確認してもよい。つまり、音声制御デバイス1001は、音声中に含まれてない項目について、あらかじめ音声制御デバイス1001又はサーバ1006に登録された所定の印刷設定の値を適用して印刷データを生成してもよい。また、図14に示すように、音声制御デバイス1001又はサーバ1006は、複数の印刷設定を備えていても良い。そして、その中から印刷指示に基づき所定の印刷設定を選択するとよい。さらに、1つのデータ種類に対して、複数の印刷設定を備えていてもよい。また、所定の印刷設定はユーザの指示により変更可能であっても良い。
また、音声制御デバイス1001が、「表示装置1003に表示されている写真Aを印刷して」という音声から印刷をリクエストしたユーザ名を特定できる場合、そのユーザ名を付加して音声データを生成しても良い。
また、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが音声で部数の追加指示を行うことで、この追加の部数について、同じ画像データを使った再印刷を実行可能にすることもできる。さらに、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが異なる印刷設定を音声で指示することで、同じ画像データを使った異なる印刷設定の再印刷を実行可能にすることもできる。
また、音声での指示中に印刷速度に関連する指示が含まれていた場合、音声制御デバイス1001又はサーバ1006は、この指示に基づき適用する印刷設定を変更してもよい。また、音声制御デバイス1001又はサーバ1006は、例えば過去の所定期間に受け付けた印刷指示中の設定値を解析することにより、ユーザの印刷設定に関する好みを反映するようにしてもよい。つまり、好みに関する解析結果に基づき、登録された所定の印刷設定の値を変更してもよい。
なお、第2実施形態のシステムにおいても第1実施形態において図15および図16を用いて説明したように、印刷装置1004の設定を変更しても構わない。つまり、音声制御デバイス1001が印刷装置1004の設定変更指示をユーザの声により受け付けることで印刷装置1004の設定を変更しても構わない。
[第3実施形態]
次に、第3実施形態について説明する。本実施形態では、表示装置1003が印刷データを生成する形態について説明する。なお、以降の説明では第1実施形態と共通する部分は説明を省略し、第1実施形態と異なる部分を中心に説明する。
図12は、印刷処理を説明するシーケンス図である。なお、処理701〜706は図7と同じであるため詳細な説明は省略する。また処理1201〜1203は、図10の処理1001〜1003と同じ処理であり、処理1207〜1209は、図10の処理1007〜1009と同じ処理であるため詳細な説明は省略する。また、図12の処理では、表示装置1003が印刷データを生成する。そのため表示装置1003の外部記憶装置207は、印刷装置1004が解釈可能な印刷データを生成する印刷ソフトウェア、通信に必要な情報等を記憶する。
音声制御デバイス1001は、制御コマンドに従った処理を実行する。ここでは、写真Aに対応する画像データを取得して印刷する指示が制御コマンドに含まれている。図12では、表示装置1003が印刷データを生成する。そのため音声制御デバイス1001は、表示装置1003に制御コマンドを送信する(処理1204)。
表示装置1003は、受信した制御コマンドに従った処理を実行する。表示装置1003は、表示用に画像データを既に取得しているため、既に取得済みの画像データに基づいて印刷データを生成する(処理1205)。なお、第1及び第2実施形態と同様に、ユーザからの印刷指示として、「表示装置1003に表示されている写真Aを印刷して」という単純な指示の場合、印刷設定に関する情報が含まれていない。よって、本実施形態でも第1及び第2実施形態と同様に、音声での指示の中に印刷設定に関する情報が含まれていない場合、画像の印刷設定として、所定の印刷設定を使用する。
具体的には、表示装置1003は、あらかじめ表示装置1003に登録された所定の印刷設定を適用して印刷データを生成する。なお、表示装置1003のCPU203は、制御コマンドを解析し、制御コマンド内に印刷設定に関する情報が含まれているかを判定する。そして、表示装置1003のCPU203は、制御コマンド内に印刷設定に関する情報が含まれている場合、制御コマンド内に含まれる印刷設定に関する情報を取得する。一方、制御コマンド内に印刷設定に関する情報が含まれていない場合、表示装置1003のCPU203は、所定の印刷設定に関する情報を取得する。ここでは、所定の印刷設定に関する情報として、表示装置1003にあらかじめ登録されている印刷設定に関する情報(値)を取得する。そして、取得した印刷設定に関する情報を適用して印刷データを生成する。
この際、表示装置1003は、表示部に印刷設定に関する情報を表示しても良い。なお、印刷設定に関する情報が含まれているかどうかの判定は表示装置1003ではなくサーバ1006又は音声制御デバイス1001が行ってもよい。サーバ1006が判定を行う場合、サーバ1006は、音声制御デバイス1001からの音声データ内に印刷設定に関する情報が含まれているかを判定する。そして、印刷設定に関する情報が含まれていない場合は、サーバ1006にあらかじめ登録された所定の印刷設定を適用して制御コマンドを生成する。よって、表示装置1003は、その制御コマンド内に含まれる印刷設定に基づき、印刷データを生成することができる。
音声制御デバイス1001が判定を行う場合、受け付けた音声又は、処理1203で取得した制御コマンドを解析して、印刷設定に関する情報が含まれているかを判定する。そして、印刷設定に関する情報が含まれていない場合は、音声制御デバイス1001にあらかじめ登録された所定の印刷設定を適用して制御コマンドを生成する。これにより、表示装置1003は、その制御コマンド内に含まれる印刷設定に基づき、印刷データを生成することができる。表示装置1003は、処理1205で生成した印刷データを印刷装置1004へ送信する(処理1206)。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。また、サーバ1006および音声制御デバイス1001の負荷を軽減することも可能となる。
なお、上述の例では、所定の印刷設定に関する情報が表示装置1003に登録されている例を説明したが、サーバ1006が所定の印刷設定に関する情報を保持してもよい。つまり、サーバ1006は処理1201において音声制御デバイス1001からの音声データ内に印刷設定に関する情報が含まれているかを判定する。そして、サーバ1006は音声データ内に印刷設定に関する情報が含まれていないと判定した場合、サーバ1006にあらかじめ登録された所定の印刷設定に関する情報を含む制御コマンドを生成する。そして、サーバ1006は、その制御コマンドを、音声制御デバイス1001を介して又は直接表示装置1003に送信する。そして、表示装置1003は、受信した制御コマンドに従い印刷データを生成するとよい。
また、本実施形態においても、第1実施形態の[変形例]に記載されたサーバ1006の印刷設定に関係する処理を表示装置1003に置き換えることで、第1実施形態の[変形例]の各例と同様の処理を実行することができる。
以下、変形例についても、第1実施形態と同様の処理については説明を省略し、第1実施形態と異なる部分を主に説明する。
本実施形態においても、音声データ内に印刷設定に関する情報が含まれていない場合、所定の印刷設定で印刷することをユーザに音声で通知してもよい。具体的には、表示装置1003が、ユーザによる音声での印刷指示の中に、印刷設定に関する情報が含まれていないと判定した場合、音声制御デバイス1001が所定の印刷設定で印刷することをユーザに音声で通知するとよい。もちろん、音声制御デバイス1001、サーバ1006のいずれかが印刷設定に関する情報が含まれているかを判定してもよい。また、第1実施形態と同様に質問形式でユーザに通知してもよく、質問に対するユーザからの返答を受けて印刷設定を確定又は変更してもよい。また、本実施形態においても、音声ではなく、表示により、ユーザに印刷設定を通知してもよい。具体的には、音声制御デバイス1001又はサーバ1003から制御コマンドが表示装置1003に送信され、適用する印刷設定を表示装置1003に表示させてもよい。
また、表示装置1003、サーバ1006、音声制御デバイス1001のいずれかが、必要な印刷設定の項目ごとに、指示中に情報が含まれているかを確認してもよい。そして、表示装置1003は、音声中に含まれてない項目について、表示装置1003、サーバ1006、音声制御デバイス1001のいずれかにあらかじめ登録された所定の印刷設定の値を適用して印刷データを生成することができる。
また、図14に示すように、複数の印刷設定を備えていても良い。そして、その中から印刷指示に基づき所定の印刷設定を選択するとよい。さらに、1つのデータ種類に対して、複数の印刷設定を備えていてもよい。また、所定の印刷設定はユーザの指示により変更可能であっても良い。
また、音声制御デバイス1001が、「表示装置1003に表示されている写真Aを印刷して」という音声データから印刷をリクエストしたユーザ名を特定できる場合、そのユーザ名を付加して音声データを生成しても良い。
また、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが音声で部数の追加指示を行うことで、この追加の部数について、同じ画像データを使った再印刷を実行可能にすることもできる。さらに、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが異なる印刷設定を音声で指示することで、同じ画像データを使った異なる印刷設定の再印刷を実行可能にすることもできる。
また、音声での指示中に印刷速度に関連する指示が含まれていた場合、表示装置1003、サーバ1006、音声制御デバイス1001のいずれかは、この指示に基づき適用する印刷設定を変更してもよい。また、表示装置1003、サーバ1006、音声制御デバイス1001のいずれかは、例えば過去の所定期間に受け付けた印刷指示中の設定値を解析することにより、ユーザの印刷設定に関する好みを反映するようにしてもよい。つまり、好みに関する解析結果に基づき、登録された所定の印刷設定の値を変更してもよい。
なお、第3実施形態のシステムにおいても第1実施形態において図15および図16を用いて説明したように、印刷装置1004の設定を変更しても構わない。つまり、音声制御デバイス1001が印刷装置1004の設定変更指示をユーザの声により受け付けることで印刷装置1004の設定を変更しても構わない。
(その他の実施形態)
上述した実施形態では、表示装置1003に表示されている写真を印刷する形態について記載したが、他の形態で印刷が指示されても良い。
例えば、ユーザが、ウェイクワードに続いて「ファイルAを印刷して」と話す。音声制御デバイス1001が「ファイルAを印刷して」という音声に対応する音声データをサーバ1006へ送信する。そしてサーバ1006は、ユーザ用に管理しているデータからファイルAという名称のデータを検索し、印刷データを生成しても良い。また、上述した実施形態では、写真に対応する画像データを印刷するケースについて説明したが、印刷対象となるデータは画像データに限らず、文書データであっても良い。
また、上述した実施形態では、ユーザが発する音声での印刷指示に従って印刷装置1004が印刷する形態について説明した。しかし、印刷装置1004は、パーソナルコンピュータにインストールされた印刷ソフトウェア(例えば、プリンタドライバ)に対する、音声以外の指示により生成された印刷データに基づいて印刷処理を実行しても良い。なお、音声以外の指示とは、ポインティングデバイスを使った操作や、タッチパネルを使った操作により行われる指示である。
また、上述した実施形態では、近距離無線通信の一例としてBluetoothを挙げたが、その他の通信方式が使用されても良い。例えば、WiFiAwareがBluetoothの代わりに使用されても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。