(第1実施形態)
図1に、本実施形態に係るシステム構成図の一例を示す。本実施形態のシステムは、例えば、音声制御デバイス11、携帯端末12、表示装置13、通信装置14、アクセスポイント(AP)15、サーバ16で構成される。音声制御デバイス11は、例えば、スマートスピーカなどである。携帯端末12は、例えば、スマートフォン、ノートPC(Personal Computer)、タブレット端末、PDA(Personal Digital Assistant)等の任意の携帯端末である。なお、以下では、携帯端末12はスマートフォンである。また、携帯端末を端末装置と呼ぶこともある。また、表示装置13は、画面を表示可能な装置であり、例えばテレビや液晶ディスプレイ等である。通信装置14は、例えばプリンタであるが、複写機、ファクシミリ装置、デジタルカメラ等であってもよい。また、通信装置14は、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機であってもよい。なお、以下では、通信装置14は、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等のプリンタであるものとする。
音声制御デバイス11~通信装置14は、AP15およびインターネットを介してサーバ16に接続可能(通信可能)である。また、音声制御デバイス11から通信装置14は、AP15を介して互いに接続可能(通信可能)である。
図2は、音声制御デバイス11のハードウェア構成図である。音声制御デバイス11は、スピーカ102、CPU103、ROM104、マイクロフォン105、RAM106、外部記憶装置107、通信部108、近距離無線通信部109を有する。なお、図2乃至図4および図8に示すブロックは、例えば内部バスを用いて相互に接続される。また、CPUはCentral Processing Unitの、ROMはRead Only Memoryの、RAMはRandom Access Memoryの、頭字語である。なお、これらの構成は一例であり、各装置は、図示された以外のハードウェアを含んでもよい。また、図2乃至図4および図8における複数のブロックが1つのブロックにまとめられてもよいし、1つのブロックが2つ以上のブロックに分割されてもよい。すなわち、各装置は、後述するような処理を実行可能な範囲で任意の構成をとることができる。
スピーカ102は、後述する処理により音声を発する。CPU103は、システム制御部であり、音声制御デバイス11の全体を制御する。ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みOS(Operating System)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行うために用いられる。マイクロフォン105は、音声制御デバイスの周囲の音声を受信する。例えば、ユーザが発した声を受信するRAM106は、例えば、バックアップ電源を必要とするSRAM(Static RAM)等で構成される。なお、RAM106は、不図示のデータバックアップ用の一次電池によってデータが保持されるため、プログラム制御変数等のデータを揮発させずに格納することができる。また、音声制御デバイス11の設定情報や管理データ等を格納するメモリエリアもRAM106に設けられている。また、RAM106は、CPU103の主メモリ及びワークメモリとしても用いられる。外部記憶装置107は、アプリケーションソフトウェアを記憶する。
通信部108は、所定の無線通信方式に従って通信を行うための回路やアンテナを含んで構成される。例えば、通信部108は、AP15に無線接続することができる。また、通信部108は、一時的に使用されるAPとして動作することもある。なお、AP15は、例えば、無線LANルータ等の機器でありうる。本実施形態で使用される無線通信は、IEEE802.11規格シリーズに準拠した無線LANの無線通信方式に従って動作する能力を有してもよいし、他の無線通信方式に従って動作する能力を有してもよい。
近距離無線通信部109は、音声制御デバイス11と一定の近距離範囲内に存在する他の装置と近距離無線通信を実行する。なお、近距離無線通信部109は、通信部108と異なる無線通信方式によって通信を行う。本実施形態では、近距離無線通信部110は、Bluetooth(登録商標)規格に従って動作するものとする。また、本実施形態では、通信部108を用いた無線通信の通信速度は、近距離無線通信部109を用いた近距離無線通信の通信速度よりも速い。また、本実施形態では、通信部108を用いた無線通信の通信距離は、近距離無線通信部109を用いた近距離無線通信の通信距離よりも長い。なお、後述する他の装置の通信部および近距離無線通信部も同様である。
図3は、携帯端末12、表示装置13のハードウェア構成図である。携帯端末12、表示装置13は、一例として、入力インターフェース202、CPU203、ROM204、表示部205、RAM206、外部記憶装置207、通信部208、近距離無線通信部209を有する。なお、これらのブロックは、例えば内部バスを用いて相互に接続される。
CPU203は、システム制御部であり、装置の全体を制御する。RAM206は、例えばRAM106と同様に、バックアップ電源を必要とするDRAM(Dynamic RAM)等で構成される。RAM206は、CPU203の主メモリとワークメモリとしても用いられる。ROM204は、CPU203が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。
表示部205は、各種情報及び各種画面を表示する。なお、表示部205は、タッチディスプレイ等で構成されることにより、ユーザから各種入力を受け付ける機能を有していても良い。すなわち、表示部205は、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースであり、物理キーボードやボタン、タッチパネル等で構成される操作パネルであっても良い。通信部208は、上述の通信部108と同様の機能を有し、AP15を介して他の装置と無線接続することができる。近距離無線通信部209は、近距離無線通信部109と同じ無線通信方式を用いて、近距離無線通信部109との間で近距離無線通信を行うことができる装置である。
図4は、通信装置14のハードウェア構成図である。通信装置14は、一例として、プリントエンジン402、通信部403、近距離無線通信部404、ROM405、RAM406、CPU407、表示部408を備える。
CPU407は、システム制御部であり、通信装置14の全体を制御する。RAM406は、例えばRAM106と同様に、バックアップ電源を必要とするDRAM(Dynamic RAM)等で構成される。RAM406は、CPU407の主メモリとワークメモリとしても用いられる。ROM405は、CPU407が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。
通信部403は、上述の通信部108と同様の機能を有し、AP15を介して他の装置と無線接続することができる。近距離無線通信部404は、近距離無線通信部109と同じ無線通信方式を用いて、近距離無線通信部109との間で近距離無線通信を行うことができる装置である。
プリントエンジン402は、通信部403を介して受信した印刷ジョブに基づいて、インク等の記録剤を用いて紙等の記録媒体上に画像を形成し、印刷結果を出力する。
表示部408は、各種情報及び各種画面を表示する。なお、表示部408は、タッチディスプレイ等で構成されることにより、ユーザから各種入力を受け付ける機能を有していても良い。すなわち、表示部408は、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースであり、物理キーボードやボタン、タッチパネル等で構成される操作パネルであっても良い。
続いて、音声制御デバイス11のセットアップについて説明する。なお、携帯端末12が、音声制御デバイス11のセットアップのために表示する画面の例を図5に示す。
携帯端末12は、予め音声制御デバイス用の管理アプリケーションをインストールしているものとする。
ユーザは、管理アプリケーションを起動することで画面501が携帯端末12の表示部205に表示される。ここでユーザが画面501に記載されているメッセージに従って携帯端末12の近距離無線通信部209(例えば、Bluetooth)を有効化する。音声制御デバイス11が起動された場合、音声制御デバイス11が特定の識別子を含むビーコンを発する。携帯端末12は、管理アプリケーションを用いて音声制御デバイス11が発するビーコンを発見した場合、画面503を表示する。画面503において「Yes」ボタンが押下された場合、携帯端末12と音声制御デバイス11が近距離無線接続を確立する。携帯端末12と音声制御デバイス11間の近距離無線接続が確立された場合、画面504が携帯端末12の表示部205に表示される。ここで、ユーザが、画面504の「Yes」ボタンを押下した場合、音声データが携帯端末12から音声制御デバイス11に近距離無線接続を介して送信され、音声制御デバイス11のスピーカ102から音声が出力される。ここで音声制御デバイス11から音声が出力された場合、ユーザは画面504の次に表示される「テスト完了ボタン」を押下する音で画面505が携帯端末12の表示部205に表示される。ここで、ユーザは、音声制御デバイス11を接続したいAPのSSIDとパスワードを画面505に入力し、接続ボタンを押下する。基本的には、ユーザは、画面505を使って携帯端末12が通信部208を用いて無線接続しているAP15のSSIDとパスワードを入力する。この処理により、携帯端末12が近距離無線接続を介してSSIDとパスワードを音声制御デバイス11に送信する。音声制御デバイス11は、近距離無線接続を介して受信したSSIDとパスワードを使ってAP15と無線接続を確立する。以上の処理により、音声制御デバイス11と携帯端末12がAP15を介して無線通信することが可能となる。続いて、ユーザは、携帯端末12に表示される画面506を使ってサーバ16へログインするためのユーザIDとパスワードを入力する。なお、画面506において入力されたユーザIDとパスワードが近距離無線接続またはAP15を介して携帯端末12から音声制御デバイス11に送信される。音声制御デバイス11は、携帯端末12から受信したユーザIDとパスワードを使ってサーバ16にサインインする。この際、音声制御デバイス11は、自らのMacアドレスも送信する。これにより、音声制御デバイス11は、サーバ16がユーザに提供するサービスを使用することが可能となる。つまり、サーバ16は、音声制御デバイス11のMacアドレスとユーザIDとを関連付けて管理する。ここで音声制御デバイス11は、サーバ16のアクセストークンを受信しても構わない。ユーザは、画面506に続いて表示される画面507を使って音声制御デバイス11を使って制御したいデバイス(以下、制御対象のデバイス)を選択する。ここでは、ユーザが、表示装置13と通信装置14を選択したものとする。画面507に表示される装置は、携帯端末12が、AP15を介してデバイスを探索することで表示される。この際、デバイスの探索処理の結果として、携帯端末12は、デバイス探索の際に各装置のMacアドレス、IPアドレス、各装置が提供可能なサービスに関する情報などを取得している。そのため、画面507においてOKボタンが押下された場合、携帯端末12は、各装置の上記の情報を音声制御デバイス11に送信する。なお、その後、音声制御デバイス11は、受信した各装置の情報をサーバ16に送信しても良い。そして、それらの情報を受信したサーバ16は、音声制御デバイス11の情報が紐づけられているユーザIDに、さらに、受信した各装置の情報を紐づけても良い。このような形態とすることで、サーバ16は、音声制御デバイス11が属するネットワーク(すなわち、AP15に接続している装置によって構成されるネットワーク)に、どのような装置が存在するかを認識することができる。
なお、別の方法を用いて音声制御デバイス11のセットアップが行われても良い。例えば、音声制御デバイス11を起動した(またはセットアップモードを有効化した)場合、音声制御デバイス11の通信部108がソフトウェアAPとして動作する。携帯端末12は、例えば、画面501において「Bluetoothを使わずに接続」502が押下された場合、通信部208を使って音声制御デバイス11と無線接続を確立する。例えば、携帯端末12の通信部208がAP15に既に接続されていた場合、ユーザの操作または管理アプリケーションの指示に従って通信部208の接続先をAP15から音声制御デバイス11の通信部108のソフトウェアAPに切り換える。そして携帯端末12の通信部208と音声制御デバイス11の通信部108間で無線接続が確立された場合、画面509が表示される。なお、以降の処理として、携帯端末12の通信部208と音声制御デバイス11の通信部108間で確立された無線接続を介して、画面505に入力された情報が送信される。その後、携帯端末12と音声制御デバイス11は、AP15を介して無線通信をするために、携帯端末12は接続先をAP15に切り替える。また、音声制御デバイス11も、ソフトウェアAPを無効化し、通信部108を使ってAP15と無線接続する。
上述したように音声制御デバイス11は、音声制御デバイスが備えるアクセスポイントを介した無線通信により携帯端末12から外部のAP15に関する情報(SSID、パスワード等)を受信する1つ目の受信処理を実行可能である。さらに、音声制御デバイス11は、近距離無線通信を介して携帯端末12から外部のAP15に関する情報(SSID、パスワード等)を受信する2つ目の受信処理を実行可能である。音声制御デバイス11は、上述した2つの受信処理機能のうちいずれか一方のみの受信処理機能を備えていても良いし、両者の受信処理機能を備えていても良い。また、音声制御デバイス11は、他の受信処理機能により、外部のAP15へ接続しても構わない。
続いて、通信装置14がサーバ16にサインインするための処理について説明する。例えば、インターネットには、音声制御デバイス11に対応するサーバ16と、音声制御デバイス11に対応しないサーバ17が存在する。音声制御デバイス11と通信装置14が連携するためには、通信装置14はサーバ17ではなく、サーバ16にサインインする必要がある。
そこで通信装置14は、音声制御デバイス連携モードを備える。この音声制御デバイス連携モードが有効化された場合、通信装置14は、自らが参加しているネットワークに対してデバイス探索を行い、音声制御デバイスを発見する。音声制御デバイス11が発見されるため図6の画面601が通信装置14の表示部408に表示される。ユーザが画面601においてOKボタンを押下した場合、画面602が通信装置14の表示部408に表示される。なお、デバイス探索により取得される情報に、例えば、音声制御デバイス11に対応するサーバ16のURLが含まれる。通信装置14は、このURLを使用することでサーバ16にサインインするための画面602を表示できる。通信装置14は、画面602に入力された情報を使ってサーバ16にサインインすることができる。以上の処理により、通信装置14は、サーバ16で管理されている画像データを扱うことが可能となる。
また、通信装置14がデバイス探索を行うことでサーバ17に対応する音声制御デバイスが発見された場合、通信装置14は、サーバ17にサインインするための画面を表示する。
なお、通信装置14がサーバ16にサインインするための処理として別の処理が実施されても良い。別の処理の一例について説明する。まず、携帯端末12が、サーバ16へのサインインが完了している状態とする。例えば、ユーザは、上述した画面506を使ってサーバ16へサインインしているものとする。そして、携帯端末12がAP15を介して通信装置14を発見した場合、携帯端末12は、通信装置14の識別情報と登録ボタンを表示する。例えば、画面507の通信装置の隣に登録ボタンが表示されても良い。ここでユーザが登録ボタンを押下した場合、登録リクエストが携帯端末12から通信装置14に送信される。なお、この登録リクエストにはサーバ16の宛先情報が含まれている。通信装置14は、登録リクエストを受けると通信装置14の表示部408にプリンタの登録処理を実行するか否かの選択画面を表示する。ここで、ユーザが登録処理の実行を選択した場合、通信装置14は、登録リクエストに含まれる宛先情報に従ってサーバ16へ通信装置14のMacアドレスを含む登録リクエストを送信する。そして、通信装置14は、この登録リクエストに対するレスポンスをサーバ16から受信する。なお、このレスポンスには通信装置14の登録処理に関わるURLが含まれる。つまり、このURLは、通信装置14の登録処理に関わる専用URLである。通信装置14は、サーバ16から受信したレスポンスを携帯端末12へ送信する。携帯端末12は、受信したレスポンスに含まれるURLを使って登録リクエストをサーバ16へ送信する。この登録リクエストには、既に携帯端末12においてサーバ16にサインインするために入力されたユーザIDおよびパスワードも含まれる。この登録リクエストを受信したサーバ16は、正しいユーザIDとパスワードを受信した場合、登録リクエストが成功したことを示すレスポンスを携帯端末12へ送信する。つまり、サーバ16は、通信装置14の登録処理に関わる専用URLを使って登録リクエストを受信したため、この時点で携帯端末12にサインインしたユーザ用の印刷装置として通信装置14を仮登録する。つまり、サーバ16は、ユーザIDと通信装置14のMacアドレスを関連付けて管理する。携帯端末12は、登録が完了したことを示す完了情報を通信装置14へ送信する。通信装置14は、完了情報を受信した場合、通信装置14のMacアドレスを含む登録リクエストをサーバ16へ送信する。サーバ16は、通信装置14が仮登録状態であることを識別し、登録完了レスポンスを返す。以上の処理により、サーバ16は、携帯端末12にサインインしたユーザ用の印刷装置として通信装置14を本登録する。通信装置14は、登録完了レスポンスをサーバ16から受信した場合、登録完了を示す情報を携帯端末12へ送信する。以上の処理により、通信装置14がサーバ16で管理されている画像データを扱うことが可能となっても良い。
ここで、本発明の課題について説明する。通常、通信装置14は、通信装置14に対して印刷を指示した装置にだけ、通知を送信する。例えば、PCやスマートフォン等の装置が印刷を指示する形態であれば、それらの装置は、通信装置14から送信された通知に基づく内容を、それらの装置が備える表示部によってユーザに提示することができる。しかしながら、音声制御デバイス11に対してユーザが発生する音声に基づいて印刷が行われる本実施形態では、後述するように、音声制御デバイス11やサーバ16が通信装置14に対して印刷を指示する。それらの装置は、ユーザに情報を提示するための表示部を有していないことがある。そのため、通信装置14に対して印刷を指示した装置にだけ、通知が送信される形態を、音声制御デバイス11を介して印刷を行う形態に適用すると、通信装置14が送信する通知の内容が、視覚的にユーザに提示されないことがある。また、音声制御デバイス11が、表示部を有していても、ユーザが表示装置13のそばにいて、音声制御デバイス11のそばにいない場合は、結果として当該内容がユーザに提示されないことがある。そこで、音声制御デバイス11に対するユーザ指示(音声)によって印刷が通信装置に対して指示される場合にも、通信装置14が送信する通知の内容を、視覚的にユーザに提示しやすくする形態について説明する。
図7は、音声制御デバイス11が、ユーザから発せられた声による印刷指示によって通信装置14が印刷処理を実行する処理を説明するシーケンス図である。なお、表示装置13も既にサーバ16にサインインしているものとする。また、後述する写真Aに対応する画像データは、サーバ16によりユーザ用に保存されているとする。また、各装置間の通信は、AP15を介して行われるものとする。
ユーザは、音声制御デバイス11の近辺で、まずは予め決められているキーワードであるウェイクワードを話し、ユーザ自身が行いたいことを話す。例えば、ユーザは、ウェイクワードに続いて「写真Aを表示して」と話す。
音声制御デバイス11は、ウェイクワードの音声を受信することで、続いて話される音声を受信する。つまり、音声制御デバイス11は「写真Aを表示して」という音声を受信する。
音声制御デバイス11は、音声制御デバイス11の識別情報(例えば、Macアドレス等)と受信した音声に基づく音声データをサーバ16へ送信する(701)。
サーバ16は、音声制御デバイス11のMacアドレスから、当該Macアドレスに関連づけられているユーザIDを特定することで、音声制御デバイスがサインイン済みのデバイスであることを認識する。また、上述したアクセストークンが使用されても良い。そして、サーバ16は、音声制御デバイス11から送信された音声データを解析し、音声データに基づく制御コマンドを生成し、音声制御デバイス11に送信する(702-703)。なお、この制御コマンドには、実行すべき処理内容として表示処理コマンドと、表示対象となる写真Aに対応する画像データの保存場所を示す情報が含まれている。
音声制御デバイス11は、サーバ16から受信した制御コマンドの送信対象を選択する。ここでは、ユーザからの要求として、ユーザは「写真Aを表示して」と話しているため、音声制御デバイス11は、制御対象のデバイスを参照し、そのうちの1つであり、表示サービス(機能)を有する表示装置13を送信先として選択する。音声制御デバイス11は、選択された表示装置13に制御コマンドを送信する(704)。なお、制御対象のデバイスを参照して送信先を選択するのは、サーバ16であっても良い。その場合、サーバ16は、選択した送信先に関する情報を含めて、制御コマンドを音声制御デバイス11に送信する。
なお、この時音声制御デバイス11が送信先を選択する方法は、上述の形態に限定されない。
例えば、ユーザが、写真Aの表示先を音声で指定する場合がある。この場合、音声データを受信したサーバ16は、音声制御デバイス11が紐づけられているユーザIDに同じく紐づけられている装置の中から、ユーザによって指定された表示先を検索する。ユーザによって指定された表示先が発見されたら、サーバ16は、ユーザによって指定された表示先に関する表示先情報を含めて制御コマンドを送信する。音声制御デバイス11は、制御コマンドに含まれている表示先情報に基づいて、表示先を選択する。
また、例えば、音声制御デバイス11やサーバ16は、音声制御デバイス11が属するネットワークにおいて、表示サービスを有する装置を検索するためのブロードキャストを実行する。そして、音声制御デバイス11やサーバ16は、ブロードキャストに対して応答した装置を、送信先として選択する。
なお、音声制御デバイス11は、サーバから受信した制御コマンドを704にて送信しているが、別のコマンドを送信しても構わない。つまり、音声制御デバイス11が、703において受信した制御コマンドに基づいて別のコマンドを生成し、その生成された別のコマンドを表示装置13に送信しても良い。以降においても、音声制御デバイスが制御コマンドを送信する処理が記載されているが(例えば、図10の704等)、同様に制御コマンドに基づいて生成された別のコマンドが送信されても構わない。その場合、コマンドを受けた装置は、別のコマンドに従った処理を実行可能である。
表示装置13は、制御コマンドに従った処理を実行する。表示装置13は、まず制御コマンドに含まれる保存場所にアクセスし、保存場所から写真Aに対応する画像データを取得する(705)。そして、表示装置13は、写真Aに対応する画像データAを表示する(706)。なお、表示装置13は、制御コマンドに写真Aに対応するURLが含まれる場合、そのURLにアクセスすることで写真Aを含むWebページを表示しても構わない。
続いて、ユーザは、音声制御デバイス11の近辺で、まずはウェイクワードを話し、ユーザ自身が行いことを話す。例えば、ユーザは、ウェイクワードに続いて「表示装置13に表示されている写真Aを印刷して」と話す。
音声制御デバイス11は、ウェイクワードの音声を受信することで、続いて話されるワードを受信する。つまり、音声制御デバイス11は「表示装置13に表示されている写真Aを印刷して」という音声を受信することで、音声で印刷指示を受け付ける。
音声制御デバイス11は、音声データをサーバ16へ送信する(707)。なお、基本的な処理は701と同じである。
サーバ16は、音声制御デバイス11から送信された音声データを解析し、音声データに基づく処理を実行する。サーバ16は、「表示装置13に表示されている写真Aを印刷して」という音声の音声データを受信しているため、写真Aに対応する画像データに基づいて印刷データを生成する(708)。なお、処理708として、サーバ16とは異なる別のサーバが印刷データを生成しても良い。例えば、通信装置14の製造元が、印刷データを生成するソフトウェアを備えた印刷サーバを提供する。そして、サーバ16は、印刷サーバに印刷データの生成を依頼し、印刷サーバが印刷データを生成しても良い。
サーバ16は、印刷データの生成が完了すると、印刷データの生成が完了したことを示す通知を通信装置14へ送信する(709)。
通信装置14は、印刷データの生成が完了したことを示す通知を受信した場合、サーバ16にアクセスし、印刷データを取得して、印刷を実行する(710、711)。
通信装置14は、印刷処理が完了すると印刷完了通知をサーバ16へ送信し(712)、サーバ16は、印刷完了通知を音声制御デバイス11へ送信する(713)。
音声制御デバイス11は、印刷完了通知を受信した場合、704において送信された制御コマンドによって、印刷対象の画像を表示していた表示装置13を特定する。そして、音声制御デバイス11は、特定した表示装置13に、印刷完了通知を送信する(714)。
音声制御デバイス11は、印刷完了通知を受信した場合、さらに音声にて印刷が完了したことをユーザに通知する(714)。
なお、音声制御デバイス11が、「表示装置13に表示されている写真Aを印刷して」という声から印刷をリクエストしたユーザ名を特定できる場合、そのユーザ名を付加して音声データを生成しても構わない。この処理により、通信装置14は、印刷処理711の実行中または印刷履歴としてユーザ名を表示することができる。
また、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが、音声制御デバイス11の近辺で、まずはウェイクワードを話し、ユーザ自身が行いことを話す。例えば、ユーザは、ウェイクワードに続いて「もう1枚」や「追加で3部印刷」のように部数の追加指示を話す。
この部数の追加指示を受けた音声制御デバイス11は、処理707で送信された音声データを再度送信しても良い。なお、「もう1枚」や「追加で3部印刷」に対応する音声データも合わせて送信される。サーバ16は、この2つの音声データを受信することで、処理708と同様の印刷データ生成処理を行う。そして、サーバ16は、部数について、新規のリクエストの音声データに基づいて設定する。この処理により、ユーザは容易に同じ画像データを使った再印刷を指示できる。さらに、印刷完了が通知された後であり、かつ、別の印刷データを使った印刷が指示される前に、ユーザが、音声制御デバイス11の近辺で、まずはウェイクワードを話し、ユーザ自身が行いことを話す。例えば、ユーザは、ウェイクワードに続いて「もっと大きい用紙に印刷して」と話す。
この指示を受けて音声制御デバイス11は、処理707で送信された音声データを再度送信しても良い。なお、「もっと大きいサイズに印刷して」に対応する音声データも合わせて送信される。サーバ16は、この2つの音声データを受信することで、処理708と同様の印刷データ生成処理を行う。そして、サーバ16は、用紙サイズについて、新規のリクエストの音声データに基づいて設定する。この処理により、ユーザは、同じ画像データを異なるサイズの用紙に印刷することを容易に指示できる。なお、後述するように別の装置が印刷データを生成する場合は、印刷データを生成する装置が、同様の処理を行っても良い。
なお、音声制御デバイス11は、714と715の処理の順番を入れ替えても良い。
表示装置13は、印刷完了通知を受信した場合、印刷が完了したことを示すメッセージ等を含む、印刷が完了したことをユーザに通知するための画面を表示部に表示する(715)。これにより、通信装置14に対して印刷を指示した装置(音声制御デバイス11やサーバ16)以外の装置にも、印刷が完了したことをユーザに通知するための通知処理を実行させることができる。
なお、表示処理のトリガーとなる印刷完了通知は、サーバ16から表示装置13に送信されても良い。この場合、サーバ16は、712にて印刷完了通知を受信したら、702において生成された制御コマンドによって印刷対象の画像を表示していた装置(表示装置13)を特定する。このときサーバ16は、音声制御デバイス11に対して制御コマンドの送信先を指示している場合には、当該送信先を、702において生成された制御コマンドによって印刷対象の画像を表示していた装置として特定する。またサーバ16は、音声制御デバイス11が紐づけられているユーザIDに同じく紐づけられている装置のうち表示サービスを有する装置を、702において生成された制御コマンドによって印刷対象の画像を表示していた装置として特定しても良い。サーバ16はこのようにして特定した装置に対して、印刷完了通知を送信する。
また、表示処理のトリガーとなる印刷完了通知は、通信装置1004から表示装置13に送信されても良い。この場合、音声制御デバイス11やサーバ16は、印刷完了通知の送信先として、音声制御デバイス11が紐づけられているユーザIDに同じく紐づけられている装置のうち表示サービスを有する装置を特定する。なお、音声制御デバイス11やサーバ16は、702において生成された制御コマンドによって印刷対象の画像を表示していた装置を特定しても良い。また、音声制御デバイス11は、制御対象の装置から、表示サービスを有する装置を特定しても良い。また、音声制御デバイス11やサーバ16は、それらが属するネットワークにおいて、表示サービスを有する装置を検索するためのブロードキャストを実行し、ブロードキャストに対して応答した装置を特定しても良い。このようにして特定された装置が印刷完了通知の送信先となる。そして、通信装置1004に対して、音声制御デバイス11やサーバ16から、印刷完了通知の送信先(表示装置13)に関する情報が送信される。通信装置1004は、受信した当該情報に基づいて、印刷完了通知を表示装置13に送信する。
図8は、サーバ16のハードウェア構成図である。サーバ16は、CPU801、ROM802、RAM803、外部記憶装置804、通信部805を有する。CPU801は、システム制御部であり、サーバ16の全体を制御する。なお、本実施形態では、サーバ16が1台で構成されているが、複数台の情報処理装置が連携して動作することでサーバ16に対応するサーバシステムを構築しても構わない。ROM802は、CPU801が実行する制御プログラムやデータテーブル、組み込みOS(Operating System)プログラム等の固定データを格納する。RAM106は、不図示のデータバックアップ用の一次電池によってデータが保持されるため、プログラム制御変数等のデータを揮発させずに格納することができる。外部記憶装置804は、アプリケーションソフトウェアを記憶する。なお、図7では、上述したようにサーバ16が印刷データを生成する。そのため、サーバ16の外部記憶装置804は、通信装置14が解釈可能な印刷データを生成する印刷ソフトウェアを記憶する。通信部805は、所定の無線通信方式に従って通信を行うための回路やアンテナを含んで構成される。
次に図9を用いて音声制御デバイス11とサーバ16の処理を説明する。図9のフローチャートは、図7において示した音声制御デバイス11とサーバ16の各処理に対応する。なお、CPU103がフローチャートの処理に関わるプログラムをメモリから読みだして実行することで音声制御デバイス11の処理が実行される。一方、CPU801がフローチャートの処理に関わるプログラムをメモリから読みだして実行することでサーバ16の処理が実行される。
CPU103は、音声制御デバイス11の周辺でユーザにより発せられた言葉(音声)を入力し(S901)、入力した音声に基づいて音声データを生成する。そして、音声データが音声制御デバイス11からサーバ16へ送信される(S902)。
CPU801は、音声データを受信すると音声データを解析し、ユーザのリクエストを特定する。サーバ16は、「表示装置13に表示されている写真Aを印刷して」というユーザリクエストに対応した音声データを受信する。そのため、CPU801は、表示装置13に表示されている写真Aに対応する画像データを特定し、その画像データに基づいて印刷データを生成し(S903)、印刷処理を実行するプリンタを選択する(S904)。なお、S903の印刷データの生成の際に使用される印刷設定情報は、サーバ16を使った印刷用に予め設定されている印刷設定情報である。CPU801は、音声制御デバイス11のMacアドレスに関連づいているユーザIDを特定する。そして、サーバ16は、そのユーザIDに関連付けて管理されている通信装置14を特定する。以上の処理により、S904が実現される。
CPU801は、S904において選択したプリンタ(通信装置14)に対して印刷データの生成が完了したことを示す通知を通信装置14へ送信する(S905)。その後、CPU801は、通信装置14から印刷完了通知を受信したか否かを判定する(S906)。
S906において通信装置14から印刷完了通知を受信した場合、CPU801は、印刷指示元である音声制御デバイス11に印刷完了通知を送信する。
CPU103は、印刷完了通知を受信した場合、表示装置13に対して印刷完了通知を送信する(S907)。なお、上述したように、表示装置13に対する印刷完了通知の送信は、サーバ16によって行われても良い。その後、CPU103は、音声にて印刷完了を通知する(S908)。具体的には、CPU103は、印刷完了通知を音声に変換し、スピーカ102を用いて印刷完了を音声で出力する。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。
図7および図8では、サーバ16からの印刷データの生成が完了したことを示す通知を使って通信装置14が印刷する例について説明した。図10では、音声制御デバイス11が印刷データを生成する例について説明する。
図10は、印刷処理を説明するシーケンス図である。なお、処理701-706は図7と同じであるため詳細な説明は省略する。また、図10および図11では音声制御デバイス11が印刷データを生成する。そのため、音声制御デバイス11の外部記憶装置107は、通信装置14が解釈可能な印刷データを生成する印刷ソフトウェア、通信に必要な情報等を記憶する。また、各装置間の通信は、AP15を介して行われるものとする。
音声制御デバイス11は、ウェイクワードの音声を受信することで、続いて話されるワードを受信する。つまり、音声制御デバイス11は「表示装置13に表示されている写真Aを印刷して」という音声を受信する。
音声制御デバイス11は、音声データをサーバ16へ送信する(1001)。
サーバ16は、音声制御デバイス11から送信された音声データを解析し、音声データに基づく処理を実行する。サーバ16は、「表示装置13に表示されている写真Aを印刷して」という音声の音声データを受信している。そのため、サーバ16は、写真Aに対応する画像データを印刷するための制御コマンドを生成する(1002)。
サーバ16は、処理1002で生成された制御コマンドを音声制御デバイス11に送信する(1003)。
音声制御デバイス11は、制御コマンドに従った処理を実行する。写真Aに対応する画像データを取得して印刷する指示が制御コマンドに含まれているため、音声制御デバイス11は、サーバ16から写真Aに対応する画像データを取得する(1004)。
音声制御デバイス11は、取得した画像データと印刷設定情報に基づいて印刷データを生成する(1005)。処理1005で使用される印刷設定情報は、予め音声制御デバイス11に保持される印刷ソフトウェアに設定されている。
音声制御デバイス11は、処理1005で生成した印刷データを通信装置14へ送信する(1006)
通信装置14は、印刷データに基づく印刷処理が完了すると(1007)、印刷完了通知を音声制御デバイス11に送信する。
音・BR>コ制御デバイス11は、印刷完了通知を受信した場合、704において送信された制御コマンドによって、印刷対象の画像を表示していた表示装置13を特定する。そして、音声制御デバイス11は、特定した表示装置13に、印刷完了通知を送信する(1009)。
音声制御デバイス11は、印刷完了通知を受信した場合、さらに音声にて印刷が完了したことをユーザに通知する(1010)。
表示装置13は、印刷完了通知を受信した場合、印刷が完了したことを示すメッセージ等を含む、印刷が完了したことをユーザに通知するための画面を表示部に表示する(1011)。これにより、通信装置14に対して印刷を指示した装置(音声制御デバイス11やサーバ16)以外の装置にも、印刷が完了したことをユーザに通知するための通知処理を実行させることができる。
なお、通知処理のトリガーとなる印刷完了通知は、通信装置14から表示装置13に送信されて良い。その場合、例えば、音声制御デバイス11は、印刷データに、印刷対象の画像を表示していた装置である表示装置13を特定するための情報を含めて、通信装置14に送信する。これにより、通信装置14は、印刷完了通知の送信先を特定することができる。次に図11を用いて音声制御デバイス11の処理を説明する。図11のフローチャートは、図10において示した音声制御デバイス11の各処理に対応する。
なお、図11のS1101-S1102は、図9のS901-S902と同じ処理であるため詳細な説明は省略する。
CPU103は、サーバ16から制御コマンドを受信する(S1103)。CPU103は、受信した制御コマンドを解析し、次に実行すべき処理を特定する。制御コマンドに写真Aの画像データを取得する指示と、画像データの印刷指示が含まれている。よって、CPU103は、サーバ16から画像データを取得し、印刷データを生成する(S1104)。なお、S1104では、上述した通り予め設定されている印刷設定情報を使って印刷データが生成される。
CPU103は、印刷データを通信装置14へ送信する(S1105)。ここでCPU103は、上述した図5の画面507を介した指示に従って、音声制御デバイス11の制御対象となる装置として表示装置13と通信装置14を登録している。そのためCPU103は、この登録に従って印刷データの送信先を通信装置14に決定する。
CPU103は、印刷完了通知を受信したか否かを判定し(S1106)、印刷完了通知を受信した場合、表示装置13に対して印刷完了通知を送信する(S1107)。なお、上述したように、表示装置13に対する印刷完了通知の送信は、通信装置14によって行われても良い。その後、CPU103は、印刷が完了したことを音声にて通知する(S1108)。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。また、サーバ16の負荷を軽減することも可能となる。
続いて、表示装置13が印刷データを生成する例について説明する。
図12は、印刷処理を説明するシーケンス図である。なお、処理701-706は図7と同じであるため詳細な説明は省略する。また処理1201-1203は、図10の処理1001-1003と同じ処理であり、処理1207-1209は、図10の1007-1009と同じ処理であるため詳細な説明は省略する。また、図12の処理では、表示装置が印刷データを生成する。そのため表示装置13の外部記憶装置207は、通信装置14が解釈可能な印刷データを生成する印刷ソフトウェア、通信に必要な情報等を記憶する。
音声制御デバイス11は、制御コマンドに従った処理を実行する。写真Aに対応する画像データを取得して印刷する指示が制御コマンドに含まれている。図12では、表示装置13が印刷データを生成する。そのため音声制御デバイス11は、表示装置13に制御コマンドを送信する(1204)。
表示装置13は、受信した制御コマンドに従った処理を実行する。表示装置13は、表示用に画像データを既に取得しているため、既に取得すみの画像データに基づいて印刷データを生成する(1205)。処理1205で使用される印刷設定情報は、予め表示装置13に保持される印刷ソフトウェアに設定されている。この際、表示装置13は、表示部に印刷設定情報を表示しても構わない。
表示装置13は、処理1205で生成した印刷データを通信装置14へ送信する(1206)
通信装置14は、受信した印刷データに基づいて、印刷処理を行う(1207)。
そして、通信装置14は、印刷完了通知を、表示装置13と音声制御デバイス11に送信する(1208、1210)。なお、表示装置13は、自身に関する情報と、制御コマンドの送信元に関する情報を印刷完了通知の送信先に関する情報として通信装置14に送信する。そして、通信装置14は、印刷完了通知の送信先に関する情報を、表示装置13から印刷データとともに受信することで、印刷完了通知の送信先を特定する。
表示装置1003は、印刷完了通知を受信した場合、印刷が完了したことを示すメッセージ等を含む、印刷が完了したことをユーザに通知するための画面を表示部に表示する(1209)。
音声制御デバイス11は、印刷完了通知を受信した場合、印刷が完了したことを音声にてユーザに通知する(1211)。
なお、この形態に限定されず、例えば、通信装置14は、印刷完了通知を、表示装置13と音声制御デバイス11のうちどちらかのみに送信する形態であっても良い。そして、表示装置13と音声制御デバイス11のうち印刷完了通知を受信した装置が、表示装置13と音声制御デバイス11のうち印刷完了通知を受信していない装置に、印刷完了通知を送信する形態であっても良い。この場合例えば、音声制御デバイス11は、制御対象の装置から、表示装置13を特定することで、印刷完了通知の送信先を特定する。また、例えば、音声制御デバイス11は、制御コマンドの送信元を、印刷完了通知の送信先として特定する。
以上の処理により、ユーザは、簡易な操作で所望の写真を印刷することが可能となる。また、サーバ16および音声制御デバイス11の負荷を軽減することも可能となる。
続いて、通信装置14が、音声制御デバイスに入力された音声の印刷指示に従って印刷処理を実行するセットアップ処理について説明する。
まず、様々なタイプの音声制御デバイスについて一例を挙げて説明する。
例えば、A社の音声制御デバイス11を使って印刷する場合、音声制御デバイス11に対応するサーバAが印刷データを生成する。また、通信装置14が、サーバAにアクセスするためのユーザIDとパスワードを設定する画面を表示可能とする。
B社の音声制御デバイス11を使って印刷する場合、音声制御デバイス11に対応するサーバBが印刷データを生成する。また、通信装置14が、サーバBにアクセスするための招待ページを印刷する。
C社の音声制御デバイス11を使って印刷する場合、音声制御デバイス11に対応するサーバCが印刷データを生成する。また、通信装置14がサーバCにアクセスするための操作を携帯端末12が受け付けるものとする。
D社の音声制御デバイス11を使って印刷する場合、音声制御デバイス11が印刷データを生成する。つまり、サーバ連携は不要である。
E社の音声制御デバイス11を使って印刷する場合、音声制御デバイス11に対応するサーバEが印刷データを生成する。また、通信装置14が、サーバEにアクセスするためのユーザIDとパスワードを設定する画面を表示可能とする。なお、以上の特徴をまとめた図15のテーブルを通信装置14が保持する。なお、音声制御デバイスのメーカによってウェイクワードは異なる。
次に図13を用いて通信装置14の処理を説明する。
まずユーザが音声制御デバイスと通信装置14との連携を指示した場合、CPU407は、連携対象となる音声制御デバイスの選択画面1401を表示する(S1301)。なお、図14は、通信装置14のセットアップに関わる画面の例を示す。
CPU407は、選択画面1401において選択された音声制御デバイスに基づいてサーバ連携が必要か否かを判定する(S1302)。例えば、通信装置14は、図15のテーブルを使ってS1302の判定を行う。つまり、A-C社の音声制御デバイスが選択された場合、CPU407は、S1302においてYesと判定する。一方、D社の音声制御デバイスが選択された場合、CPU407は、Noと判定する。
S1302においてNoと判定された場合、CPU407の処理は後述するS1306へ移る。
S1302においてYesと判定された場合、CPU407は、通信装置14の操作パネルでサインインを実行するか否かを判定する(S1303)。A社またはE社の音声制御デバイスが選択された場合、CPU407は、S1303においてYesと判定する。一方、B-C社の音声制御デバイスが選択された場合、CPU407は、S1303においてNoと判定する。
S1303においてYesと判定された場合、CPU407は、操作パネルにサインイン画面を表示し(S1304)、サインイン画面にて入力されたユーザIDおよびパスワードを使ってサーバへアクセスする(S1305)。この際、A社の音声制御デバイスが選択された場合、S1304においてサインイン画面1402が表示される。一方、E社の音声制御デバイスが選択された場合、S1304においてサインイン画面1405が表示される。
一方、S1303においてNoと判定された場合、CPU407は、招待ページを印刷するか否かを判定する(S1307)。B社の音声制御デバイスが選択された場合、CPU407は、S1307においてYesと判定する。一方、C社の音声制御デバイスが選択された場合、CPU407は、S1307においてNoと判定する。
S1307においてYesと判定された場合、CPU407は、招待ページを印刷することを示す画面1403を表示する。そして画面1403のOKボタンが押下された場合、CPU407は、招待ページを印刷する(S1308)。CPU407は、招待ページの印刷要求と通信装置14のMacアドレスをサーバBに送信すると、サーバBから招待ページの印刷データを受信する。そして、CPU407は、受信した印刷データに基づいて印刷処理を実行する。なお、印刷された招待ページには通信装置14の登録処理に関わる専用URLが印刷されている。よって、ユーザは、招待ページのURLを携帯端末12等に入力することで、通信装置14用のサインイン画面が携帯端末12に表示される。ユーザは、携帯端末12に表示された通信装置14用のサインイン画面にユーザIDとパスワードを入力してサーバBに送信する。サーバBは、通信装置14用のサインイン画面から受信したユーザIDとパスワードに基づいてサインイン処理を実行する。この処理が成功した場合、サーバBは、通信装置14用のサインイン画面から受信したユーザIDと通信装置14のMacアドレスを関連付けて管理する。そしてサーバBが、通信装置14にサインインが成功したことを通知すると共にユーザIDとパスワードを通信装置14に送信する。以上の処理により、CPU407は、S1308の処理後にS1305においてサーバBにアクセスする(S1305)
S1307においてNoと判定された場合、CPU407は、携帯端末12を使って関連付けを実行することを示すメッセージ1404を表示する(S1309)。つまり、C社の音声制御デバイスが選択された場合、S1309が実行される。なお、S1309の処理は、上述した通信装置14がサーバ16にサインインするための処理における別の処理に相当するため、詳細な説明は省略する。以上の処理により、CPU407は、S1309の処理後にS1305においてサーバCにアクセスする(S1305)
その後、CPU407は、S1305の後に音声制御デバイスと連携するための設定処理を実行する(S1306)。例えば、通信装置14は、所定期間印刷データを受信しない場合に省電力状態で動作する。通信装置14が省電力状態で動作中に印刷データを受信した場合に印刷データに基づく印刷処理を実行する第1省電力モードと、印刷データを受信しても印刷データを処理しない第2省電力モードがある。なお、第2省電力モードの消費電力は、第1省電力モードよりも小さい。ここで、CPU407は、音声制御デバイスと連携するための設定処理として第1省電力モードを設定する。なお、第1省電力モードは、音声制御デバイスが受け付けた音声での印刷指示に基づく印刷データを受信した場合のみ、印刷処理が実行されても良い。
なお、S1301の処理として、音声制御デバイスをユーザが選択する例について説明したが、別の方法でも構わない。例えば、通信装置14が、デバイス探索を実行することで発見した音声制御デバイスからデバイス情報を取得する。CPU407が、音声制御デバイスから取得したデバイス情報に基づいて、自動的に連携対象となる音声制御デバイスを選択しても構わない。その場合、S1301の処理は省略される。
以上の処理により、様々な経路で印刷データが送信される場合であっても通信装置14は適切に印刷処理を実行することが可能となる。なお、図13の処理を実行するに際し、複数の同じ音声制御デバイス11がネットワーク上に存在する場合、通信装置104は、各音声制御デバイス11と連携するために同じサーバにサインインすることになる。例えば、複数のA社の音声制御デバイス11がネットワーク上に存在する場合、ユーザは、通信装置104を使ってサーバAと連携するために1回のサインインを行っていれば良い。一方、複数の異なる音声制御デバイス11がネットワーク上に存在する場合、通信装置104は、各音声制御デバイス11と連携するために異なるサーバにサインインすることになる。例えば、A社の音声制御デバイス11とE社の音声制御デバイス11がネットワーク上に存在する場合、ユーザは、通信装置104を使ってサーバAと連携するためにサインインを行い、かつ、サーバEと連携するために採インを行う。
次に図16を用いて印刷以外の処理をユーザが声でリクエストした場合の処理について説明する。各装置間の通信は、AP15を介して行われるものとする。まず、例えば、ユーザは、ウェイクワードに続いて「インクの残量を教えて」と話す。
音声制御デバイス11は、ウェイクワードの音声を受信することで、続いて話される音声を受信する。つまり、音声制御デバイス11は「インクの残量を教えて」という音声を受信する。
音声制御デバイス11は、音声制御デバイス11の識別情報(例えば、Macアドレス等)と受信した音声に基づく音声データをサーバ16へ送信する(1601)。
サーバ16は、音声制御デバイス11から送信された音声データを解析し、音声データに基づく制御コマンドを生成し、制御コマンドを通信装置に送信する(1602-1603)。制御コマンドには、インクの残量の確認指示が含まれている。
通信装置14は、制御コマンドに従った処理を実行する。通信装置14は、インクの残量を確認し、確認結果(インクの残量の状態)をサーバ16へ送信する(1604-1605)。すなわち、通信装置14は、インクの残量の状態を状態通知としてサーバ16に送信する。サーバ16は、確認結果に基づいて音声データを生成する。例えば、サーバ16が、シアンが不足していることを示す確認結果を受信した場合、シアンが不足していることを示す音声データを生成する。
音声制御デバイス11は、受信した音声データに基づいて確認結果である通信装置14の状態を音声で通知する(1607)。なお、インクの残量以外に、通信装置の状態や紙の残量、ネットワーク接続状況、印刷処理やスキャン処理を実行中かどうか等の問い合わせを受けても良い。
また、音声制御デバイス11は、状態通知を、表示装置13に対して送信する(1608)。なお、この時音声制御デバイス11は、音声制御デバイス11が紐づけられているユーザIDに同じく紐づけられている装置のうち表示サービスを有する装置を状態通知の送信先として特定する。または、音声制御デバイス11は、制御対象の装置のうち表示サービスを有する装置を状態通知の送信先として特定する。
なお、表示処理のトリガーとなる状態通知は、サーバ16から表示装置13に送信されて良い。この場合、サーバ16は、状態通知を受信したら、音声制御デバイス11が紐づけられているユーザIDに同じく紐づけられている装置のうち表示サービスを有する装置を、状態通知の送信先の装置として特定しても良い。サーバ16はこのようにして特定した装置に対して、状態通知を送信する。
表示装置13は、状態通知を受信した場合、受信した状態通知に基づいて、確認結果である通信装置14の状態をユーザに通知するためのメッセージ等を含む、通信装置14の状態をユーザに通知するための画面を表示部に表示する(1609)。
また、ユーザが、シアンインクが不足しているとの音声通知を受けた場合、さらにシアンインクを声で注文しても構わない。この場合、音声制御デバイス11は、通信装置14の製品種別を特定するシリアル番号を受信する。そして、音声制御デバイス11は、シアンインクの注文を示す音声データとシリアル番号をサーバ16へ送信する。そして、サーバ16が、音声データとシリアル番号に基づく注文データを生成し、発注しても構わない。
また、通信装置14は、エラー等が発生しユーザによる作業が必要となる場合に、その作業方法を通信装置14の操作パネルに表示する。この際、ユーザの作業として両手が必要となる作業については、作業方法の音声データを生成し、音声制御デバイス11へ送信する。そして、音声制御デバイス11は、作業方法を音声にて通知する。これにより、ユーザが両手を使う作業であっても容易に行うことが可能となる。例えば、インクの交換方法については通信装置14が操作パネルに表示し、印刷中に紙ジャム等が発生した場合やインクふき取りクリーニングなどは音声で通知しても良い。
以上の処理により、ユーザは、印刷以外の指示を容易にリクエストすることが可能となる。
次に音声制御デバイス11が、自ら印刷データを生成するのか、サーバ16に印刷データの生成を依頼するのかを切り替える処理について説明する。図17は、音声制御デバイス11を説明するフローチャートである。
CPU103は、音声制御デバイス11の周辺でウェイクワードに続いてユーザにより発せられた言葉(音声)を入力する(S1701)。
CPU103は、音声に印刷指示が含まれているか否かを判定する(S1702)。S1702においてNoと判定された場合、CPU103は、入力した音声に基づいて音声データを生成し、サーバ16へ送信する(S1707)。
一方、S1702においてYesと判定された場合、CPU103は、通信装置14の情報を取得する(S1703)。例えば、通信装置14がサーバ16へのサインイン処理を行っている場合、通信装置14はサーバ連携することを示す情報を保持している。そのため、S1701では、サーバ連携することを示す情報またはサーバへのサインイン処理が完了していることを示す情報を取得する。
CPU103は、印刷データをサーバ16が生成するか否かを1703において取得した情報に基づいて判定する(S1704)。具体的には、S1703において、サーバ連携することを示す情報またはサーバへのサインイン処理が完了していることを示す情報が取得された場合、CPU103は、印刷データをサーバ16が生成すると判定する。一方、S1703においてこれらの情報が取得されない場合、CPU103は、印刷データをサーバ16が生成しないと判定する。
S1704においてNoと判定された場合、CPU103は、入力した音声に基づいて音声データを生成する。さらに、CPU103は、印刷データの生成装置として「音声制御デバイス11」を指定する情報を生成する。そして、CPU103は、音声データと、印刷データを生成する装置を指定する情報とをサーバ16へ送信する(S1705)。
CPU103は、S1705において図11のS1103-S1107の処理を実行する(S1706)。その結果、図10の処理1003以降の処理が実行される。
一方、S1704においてYesと判定された場合、CPU103は、入力した音声に基づいて音声データを生成し、サーバ16へ送信する(S1708)。S1708の後、図7の処理708以降の処理が実行される。なお、S1708では、音声データと共に印刷データの生成装置として「サーバ16」を指定する情報が送信されても良い。
CPU103は、S1709とS1710において、印刷完了通知を受信したか否かを判定する。そして、CPU103は、印刷完了通知を受信するまで処理を繰り返す。
CPU103は、S1711とS1712において、表示装置13に対して、印刷完了通知を送信する。なお、上述したように、表示装置13に対する印刷完了通知の送信は、サーバ16や通信装置14によって行われても良い。
CPU103は、S1713とS1714において、印刷が完了したことを、音声によってユーザに通知する。
以上の処理により、音声制御デバイス11は、通信装置14がサーバ16から印刷データを取得できる場合は、サーバ16に印刷データを生成させる。一方、通信装置14がサーバ16から印刷データを取得できない場合、音声制御デバイス11が、印刷データを生成する。以上の処理により、音声制御デバイス11は効率的な処理を実行できる。具体的には、音声制御デバイス11は、通信装置14がサーバ16から印刷データを取得できる場合は、印刷データの生成をサーバ16に依頼できるため、印刷データの生成負荷が軽減される。なお、図17では、S1701においてユーザから音声を入力した場合にS1702以降の処理が実行されるが、他のタイミングでも構わない。例えば、S1701の前に、音声制御デバイス11がS1703-S1704を実行することで、予め印刷データを生成する装置を判定しておいても良い。
また、S1704では他の情報を取得しても良い。例えば、通信装置14は、サーバ16へサインイン済みか否かを認識できるため、通信装置14が印刷データを生成する装置として「音声制御デバイス11」または「サーバ16」を指定しても良い。その他、サーバ連携が有効か否かを示す情報がS1703において取得され、サーバ連携が有効である場合にS1703においてYesと判定され、サーバ連携が無効である倍にS1703においてNoと判定されても良い。
(第2実施形態)
本実施形態では、通信装置14が、音声制御デバイス11の機能を備えるケースについて説明する。なお、第1実施形態と同様の機能については説明を省略する。
図18は、本実施形態のシステム構成図である。図1との違いは、音声制御デバイス11が存在しない点である。さらに、通信装置18が、通信装置14の機能に加えて音声制御デバイス11の機能を備えている点である。
図19は、本実施形態の印刷までの処理の流れを説明するシーケンス図である。図19は、音声制御デバイス11が、ユーザから発せられた声による印刷指示によって通信装置14が印刷処理を実行する処理を説明するシーケンス図である。表示装置13も既にサーバ16にサインインしているものとする。また、ユーザが声で発する指示は図7で説明したものと同じである。つまり、処理701の前に、ユーザは、ウェイクワードに続いて「写真Aを表示して」と話し、処理707の前に、ユーザは、ウェイクワードに続いて「表示装置13に表示されている写真Aを印刷して」と話す。また、処理701-処理708は、音声制御デバイス11が通信装置18に変わった点以外は、図7と同じである。また、各装置間の通信は、AP15を介して行われるものとする。
サーバ16は、印刷データの生成が完了すると、印刷データの生成が完了したことを示す通知を通信装置18へ送信する(1901)。
通信装置18は、印刷データの生成が完了したことを示す通知を受信した場合、サーバ16にアクセスし、印刷データを取得して、印刷を実行する(1903)。
通信装置18は、印刷処理が完了すると印刷完了通知をサーバ16へ送信する(1904)。これにより、サーバ16は、処理708にて生成した印刷データのステータスを印刷中から完了へ変更する。
また、通信装置18は、印刷処理が完了すると、704において送信された制御コマンドによって、印刷対象の画像を表示していた表示装置13を特定する。そして、音声制御デバイス11は、特定した表示装置13に、印刷完了通知を送信する(1905)。
表示装置13は、印刷完了通知を受信した場合、印刷が完了したことを示すメッセージ等を含む、印刷が完了したことをユーザに通知するための画面を表示部に表示する(1906)。通信装置18は、音声にて印刷完了を通知する(1907)。
本実施形態によれば通信装置18が、音声制御デバイス11の機能を備えるため、他の実施形態と比較してより簡易なシステム構成で、利便性の高い印刷処理を実現することができる。
(その他の実施形態)
上述した実施形態では、表示装置13に表示されている写真に基づいた印刷データを印刷する形態について記載したが、他の形態で印刷が指示されても構わない。
例えば、ユーザが、ウェイクワードに続いて「ファイルAを印刷して」と話す。音声制御デバイス11または通信装置18が「ファイルAを印刷して」という音声に対応する音声データをサーバ16へ送信する。そしてサーバ16は、ユーザ用に管理しているデータからファイルAという名称のデータを検索し、印刷データを生成しても構わない。
また、上述のようにして、表示装置13に表示されている写真でないデータに基づいた印刷データを印刷する形態であっても、表示装置13に通知内容が表示されても良い。
また、上述した実施形態では、写真に対応する画像データを印刷するケースについて説明したが、印刷対象となるデータは画像データに限らず、文書データであっても構わない。
また、上述した実施形態では、ユーザが発する声での印刷指示に従って通信装置14(または通信装置18)が印刷する形態について説明した。しかし、通信装置14(または通信装置18)は、パーソナルコンピュータにインストールされた印刷ソフトウェア(例えば、プリンタドライバ)に対する音声以外の指示により生成された印刷データに基づいて印刷処理を実行しても良い。なお、音声以外の指示とは、マウスを使った操作や、タッチパネルを使った操作により行われる指示である。
また、上述した実施形態では、近距離無線通信の一例としてBluetoothを挙げたが、その他の通信方式が使用されても良い。例えば、WiFiAwareがBluetoothの代わりに使用されても良い。
また、上述した実施形態では、通信装置14は、印刷完了通知や状態通知を送信する形態について説明したが、この形態に限定されない。すなわち、通信装置14が音声制御デバイス11に送信する通知は、ユーザに通知すべき内容であればいずれの内容であっても良い。具体的には例えば、通信装置14は、印刷中にエラーが発生したり、印刷データに含まれる印刷設定が、通信装置14の設定やハードウェア、ソフトウェアに対応していない場合等は、エラー通知を音声制御デバイス11に送信しても良い。また、印刷完了通知や状態通知が表示装置13に送信されるのと同様にして、エラー通知等のその他の通知も、表示装置13に送信されても良い。
また、上述では、通信装置14から送信される通知が、表示装置13に届くように制御される形態を説明したが、この形態に限定されない。例えば、通信装置14を遠隔操作するための遠隔操作画面を表示するための情報が、表示装置13に届くように制御される形態であっても良い。例えば、ユーザが、遠隔操作画面を表示するための所定のワードを含む音声を発するとする。そして、当該音声を音声制御デバイス11が受信するとする。その場合、上述の実施形態において印刷データが通信装置14に送信される経路と同様の経路で、遠隔操作画面を表示するための情報の送信指示が通信装置14に送信される。そして、当該送信指示を受け付けた通信装置14は、上述の実施形態において通知が表示装置13に送信される経路と同様の経路で、遠隔操作画面を表示するための情報を表示装置13に送信する。これにより、表示装置13が、遠隔操作画面を表示することができる。ひいては、表示装置13は、遠隔操作画面をユーザに提示することができる。なお、表示装置13が遠隔操作画面を表示している状態で、ユーザが、遠隔操作画面の内容を切り替えたり更新したりするための所定のワードを含む音声を発するとする。その場合は、上述の実施形態において印刷データが通信装置14に送信される経路と同様の経路で、切り替え後又は更新後の遠隔操作画面を表示するための情報の送信指示が通信装置14に送信される。その後、上述の実施形態において通知が表示装置13に送信される経路と同様の経路で、切り替え後又は更新後の遠隔操作画面を表示するための情報が表示装置13に送信される。これにより、表示装置13に表示される遠隔操作画面の内容を切り替えたり更新したりすることができる。なお、更新後の遠隔操作画面を表示するための情報の送信指示は、ユーザから所定のワードを含む音声が発せされたか否かに関わらず、所定の条件が満たされる毎に自動で送信されても良い。なお、遠隔操作画面には、通信装置14のステータスや、通信装置14が実行している印刷処理のステータスが表示されても良い。通信装置14のステータスとは例えば、通信装置14が備えているインクや用紙の残量、通信装置14のネットワーク接続状況等である。また、通信装置14が実行している印刷処理のステータスとは、例えば、当該印刷処理が実行中かどうかや、当該印刷処理がエラーとなっているかどうか、当該印刷処理が完了したかどうか等を示すステータスである。
また、上述では、音声制御デバイス11と表示装置13の両方に通知が行われる形態としたが、この形態に限定されない。例えば、どちらか一方のみに通知が行われる形態であっても良い。 なお、上述では、音声制御デバイス11は、表示部を有しないものとしたが、この形態に限定されない。音声制御デバイス11は、通信装置14から送信される通知の内容を提示するための、高性能な表示部や面積の大きい表示部を有しないが、簡単な情報をユーザに提示するための、表示性能の低い表示部や面積の小さい表示部を有していても良い。また、音声制御デバイス11が高性能な表示部や面積の大きい表示部を有している場合は、通信装置14から送信される通知に関する画面を自身が備える当該表示部に表示しても良い。
なお、上述では、通信装置14から送信される通知に関する画面が表示装置13に表示される形態としたが、この形態に限定されない。例えば、携帯端末12に表示されても良い。
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(CPU、MPU、プロセッサ等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。