(57)【要約】【課題】情報処理装置と通信装置とのペアリングの実行についてのユーザー確認を、適切な条件で行うこと。【解決手段】通信装置としてのプリンタから発信されたアドバタイズ情報に基づいて、そのプリンタが情報処理装置に登録されているかを判断する（ステップＳ７）。プリンタが情報処理装置に登録されている登録プリンタの場合には、ペアリングの実行をユーザーに確認する（ステップＳ８）。ユーザーによりペアリングの実行が指示された場合、もしくはプリンタが情報処理装置に登録されている登録プリンタの場合には、プリンタと情報処理装置との通信のペアリングのための所定の処理を実行する（ステップＳ９）。【選択図】図９
2018050347.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置によって実行されるプログラムであって、
通信装置から発信されたアドバタイズ情報に基づいて、前記通信装置が前記情報処理装置に登録されているかを判断する判断工程と、
前記判断工程において前記通信装置が登録されていると判断されなかった場合に、ペアリングの実行をユーザーに確認する確認工程と、
前記確認工程においてユーザーによりペアリングの実行が指示された場合、もしくは前記判断工程において前記通信装置が登録されていると判断された場合に、前記通信装置との通信のペアリングのための所定の処理を実行する実行工程と、
を前記情報処理装置に実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置間における通信のペアリングを行うプログラム、情報処理方法、および情報処理装置に関するものである。
【背景技術】
【０００２】
装置間における通信のペアリングにおいては、それらの装置間においてデバイス情報等が交換される。特許文献１には、撮像装置と携帯装置とが予めペアリングを行うことにより、電波が届く距離に両者が近づけば自動的に通信接続を確立する方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−３４０９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に記載の方法においては、例えば、装置Ａと装置Ｂとのペアリングが装置Ａのユーザーによる確認なしに実行可能であった場合、装置Ａのユーザーが装置Ｂとのペアリングを意図しない場合にも、そのペアリングが行われてしまうおそれがある。仮に、装置Ａにおいて、ペアリングの要否を常にユーザーに確認した場合には、ユーザーが認知している装置についても、その確認が求められてしまう。
【０００５】
本発明の目的は、情報処理装置と通信装置とのペアリングの実行についてのユーザー確認を、適切な条件で行うことにある。
【課題を解決するための手段】
【０００６】
本発明のプログラムは、情報処理装置によって実行されるプログラムであって、通信装置から発信されたアドバタイズ情報に基づいて、前記通信装置が前記情報処理装置に登録されているかを判断する判断工程と、前記判断工程において前記通信装置が登録されていると判断されなかった場合に、ペアリングの実行をユーザーに確認する確認工程と、前記確認工程においてユーザーによりペアリングの実行が指示された場合、もしくは前記判断工程において前記通信装置が登録されていると判断された場合に、前記通信装置との通信のペアリングのための所定の処理を実行する実行工程と、を前記情報処理装置に実行させることを特徴とするプログラム。
【発明の効果】
【０００７】
本発明によれば、情報処理装置と通信装置とのペアリングの実行についてのユーザー確認を、適切な条件で行うことができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１の実施形態における情報処理装置および通信装置の説明図である。
【図２】アドバタイズ情報の送受信処理と消費電力との関係の説明図である。
【図３】ＢＬＥにおけるアドバタイズの説明図である。
【図４】情報処理装置と通信装置とのペアリング処理の説明図である。
【図５】情報処理装置および通信装置における表示画面の説明図である。
【図６】アドバタイズ信号の説明図である。
【図７】ペアリング処理時における情報処理装置の表示画面の説明図である。
【図８】ペアリング処理時における情報処理装置の表示画面の説明図である。
【図９】ペアリング処理を説明するためのフローチャートである。
【図１０】ペアリングの実施確認画面の説明図である。
【図１１】印刷実行時における表示画面の説明図である。
【図１２】ペアリング処理と追加画像データ確認処理との関係を説明するためのフローチャートである。
【図１３】追加画像データ確認処理を説明するためのフローチャートである。
【図１４】再起動処理時における表示画面の説明図である。
【図１５】ペアリング処理と再起動時処理と回復処理との関係を説明するためのフローチャートである。
【図１６】再起動時処理と回復処理とを説明するためのフローチャートである。
【図１７】通信装置の機能および状態に関する情報の説明図である。
【図１８】ハンドオーバー処理時における表示画面の説明図である。
【図１９】ペアリング処理と印刷ボタン表示処理との関係を説明するためのフローチャートである。
【図２０】印刷ボタン表示処理を説明するためのフローチャートである。
【図２１】ハンドオーバー処理を説明するためのフローチャートである。
【図２２】Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続処理を説明するためのフローチャートである。
【図２３】ＡＰモード接続処理を説明するためのフローチャートである。
【図２４】強制ＡＰモード接続処理を説明するためのフローチャートである。
【図２５】本発明の第２の実施形態におけるペアリング処理を説明するためのフローチャートである。
【図２６】通信装置の機能および状態に関する情報の説明図である。
【図２７】情報表示ダイアログの説明図である。
【図２８】本発明の第３の実施形態における通信装置部の表示画面の説明図である。
【発明を実施するための形態】
【０００９】
以下に図面を参照して、本発明の実施形態を例示的に説明する。ただし、本発明の趣旨を逸脱しない範囲において、当業者の通常の知識に基づいて以下に記載する実施形態に対して適宜変更、改良が加えられたものも、本発明の範囲に入ると理解されるべきである。
【００１０】
（第１実施形態）
本実施形態の通信システムに含まれる情報処理装置および通信装置について説明する。情報処理装置としては、本実施形態において例示するスマートホンのみに限定されず、携帯端末、ノートＰＣ、タブレット端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ等、種々のものが適用可能である。また、通信装置としては、本実施形態において例示するプリンタ（記録装置）のみに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものが適用可能である。例えば、プリンタとしては、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等を適用することができる。また、通信装置としては、プリンタのみならず、複写機、ファクシミリ装置、携帯端末、スマートホン、ノートＰＣ、タブレット端末、ＰＤＡ、デジタルカメラ、音楽再生デバイス、テレビ等も適用可能である。その他、複写機能、ＦＡＸ機能、記録機能等の複数の機能を備える複合機も適用可能である。
【００１１】
まず、本実施形態における情報処理装置の構成と、その情報処理装置と通信可能な通信装置の構成と、を図１のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は通信装置と通信を行うことが可能な装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。
【００１２】
（情報処理装置）
本実施形態の情報処理装置１０１は、入力インターフェース１０２、ＣＰＵ１０３、ＲＯＭ１０４、ＲＡＭ１０５、外部記憶装置１０６、出力インターフェース１０７、表示部１０８、通信部１０９、近距離無線通信部１１０、撮影装置１１１等を有する。
【００１３】
入力インターフェース１０２は、ユーザーからのデータ入力、および動作指示を受け付けるためのインターフェースであり、物理キーボード、ボタン、タッチパネル等によって構成される。この入力インターフェース１０２と、後述の出力インターフェース１０７と、を同一の構成とし、ユーザーからの操作の受け付けと、画面の出力と、を同一の構成によって行う形態としてもよい。ＣＰＵ１０３はシステム制御部であり、情報処理装置１０１の全体を制御する。
【００１４】
ＲＯＭ１０４は、ＣＰＵ１０３が実行する制御プログラム、データテーブル、および組み込みオペレーティングシステム（以下、「ＯＳ」という）プログラム等の固定データを格納する。本実施形態では、ＲＯＭ１０４に格納されている各制御プログラムは、ＲＯＭ１０４に格納されている組み込みＯＳの管理下において、スケジューリング、タスクスイッチ、および割り込み処理等のソフトウエアの実行を制御する。ＲＡＭ１０５は、バックアップ電源を必要とするＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。なお、ＲＡＭ１０５は、図示しないデータバックアップ用の１次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、情報処理装置１０１の設定情報、および情報処理装置１０１の管理データ等を格納するメモリエリアもＲＡＭ１０５に設けられている。また、ＲＡＭ１０５は、ＣＰＵ１０３の主メモリとワークメモリとしても用いられる。
【００１５】
外部記憶装置１０６は、各種プログラム、および、これらのプログラムが使用する各種情報を保存している。外部記憶装置１０６に格納されるプログラムとしては、記録の実行機能を提供するアプリケーション（以降、「記録アプリケーション」という）、および通信装置１５１が解釈可能な記録情報を生成する記憶情報生成プログラムが挙げられる。さらに、通信部１０９を介して接続される通信装置１５１との間において送受信するための情報送受信制御プログラムが挙げられる。また、外部記憶装置１０６は、他の情報処理装置およびインターネットから、通信部１０９を介して得た画像データも保存する。
【００１６】
出力インターフェース１０７は、表示部１０８によってデータを表示および情報処理装置１０１の状態を通知するための制御を行うインターフェースである。表示部１０８は、ＬＥＤ（発光ダイオード）およびＬＣＤ（液晶ディスプレイ）などから構成されており、データの表示および情報処理装置１０１の状態を通知する。なお、表示部１０８上に、数値入力キー、モード設定キー、決定キー、取り消しキー、および電源キー等のキーを備えるソフトキーボードを設置することにより、表示部１０８を介してユーザーからの入力を受け付けることもできる。
【００１７】
通信部１０９は、通信装置１５１等の装置と接続されることによって、その装置との間のデータ通信を実行する。例えば、通信部１０９は、通信装置１５１内のアクセスポイント（不図示）に接続可能である。通信部１０９と通信装置１５１内のアクセスポイントとが接続されることにより、情報処理装置１０１と通信装置１５１とは相互に通信可能となる。通信部１０９は、無線通信によって通信装置１５１とダイレクトに通信してもよく、あるいは情報処理装置１０１および通信装置１５１の外部に存在する外部アクセスポイント（アクセスポイント１３１）を介して通信してもよい。無線通信方式としては、例えば、Ｗｉ−Ｆｉ（ＷｉｒｅｌｅｓｓＦｉｄｅｌｉｔｙ）（登録商標）やＢｌｕｅｔｏｏｔｈ（登録商標）等が挙げられる。また、アクセスポイント１３１としては、例えば、無線ＬＡＮルーター等の機器などが挙げられる。本実施形態においては、情報処理装置１０１と通信装置１５１とが外部アクセスポイントを介さずにダイレクトに接続される方式をダイレクト接続方式という。また、情報処理装置１０１と通信装置１５１とが外部アクセスポイントを介して接続される方式をインフラストラクチャー接続方式という。
【００１８】
近距離無線通信部１１０は、通信装置１５１等の装置と、近距離において無線接続することによってデータ通信を実行するように構成されており、通信部１０９とは異なる通信方式によって通信を行う。近距離無線通信部１１０は、通信装置１５１内の近距離無線通信部１５７と接続可能である。なお、本実施形態においては、近距離無線通信部１１０の通信方式として、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ（ＢＬＥ）が用いられる。
【００１９】
撮影装置１１１は、撮影素子を用いて撮影した画像をデジタルデータに変換する装置である。デジタルデータは、一度、ＲＡＭ１０５に格納された後、ＣＰＵ１５４が実行するプログラムによって所定の画像フォーマットに変換されてから、画像データとして外部記憶装置１０６に保存される。ＲＯＭ１５２は、ＣＰＵ１５４が実行する制御プログラム、データテーブル、およびＯＳプログラム等の固定データを格納する。
【００２０】
（通信装置）
本実施形態の通信装置１５１は、ＲＯＭ１５２、ＲＡＭ１５３、ＣＰＵ１５４、プリントエンジン１５５、通信部１５６、近距離無線通信部１５７、入力インターフェース１５８、出力インターフェース１５９、および表示部１６０等を有する。
【００２１】
通信部１５６は、通信装置１５１内部のアクセスポイントとして、情報処理装置１０１等の装置と接続するためのアクセスポイントを有している。このアクセスポイントは、情報処理装置１０１の通信部１０９に接続可能である。通信部１５６は、無線通信によって情報処理装置１０１とダイレクトに通信してもよく、あるいは、アクセスポイント１３１を介して通信してもよい。通信方式としては、例えば、Ｗｉ−Ｆｉ（商標登録）やＢｌｕｅｔｏｏｔｈ（登録商標）等が挙げられる。また、通信部１５６は、アクセスポイントとして機能するハードウェアを備えていてもよく、あるいは、通信部１５６をアクセスポイントとして機能させるためのソフトウエアによって、アクセスポイントとして動作してもよい。近距離無線通信部１５７は、情報処理装置１０１等の装置と、近距離において無線接続するように構成されている。本実施形態においては、近距離無線通信部１５７の通信方式として、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ（ＢＬＥ）が用いられる。
【００２２】
ＲＡＭ１５３は、バックアップ電源を必要とするＳＲＡＭ等によって構成される。ＲＡＭ１５３は、図示しないデータバックアップ用の１次電池によってデータを保持するため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、ＲＡＭ１５３には、通信装置１５１の設定情報、および通信装置１５１の管理データ等を格納するメモリエリアも設けられている。また、ＲＡＭ１５３は、ＣＰＵ１５４の主メモリおよびワークメモリとしても用いられ、情報処理装置１０１等から受信した記録情報を一旦保存するための受信バッファ、および各種情報の保存メモリとして機能する。
【００２３】
ＲＯＭ１５２は、ＣＰＵ１５４が実行する制御プログラム、データテーブル、およびＯＳプログラム等の固定データを格納する。本実施形態において、ＲＯＭ１５２に格納されている各制御プログラムは、ＲＯＭ１５２に格納されている組み込みＯＳの管理下において、スケジューリング、タスクスイッチ、および割り込み処理等のソフトウエアの実行を制御する。ＣＰＵ１５４は、システム制御部であり、通信装置１５１の全体を制御する。
【００２４】
プリントエンジン１５５は、ＲＡＭ１５３に保存された情報、および情報処理装置１０１等から受信した記録ジョブに基づいて、インク等の記録剤を用いて紙等の記録媒体上に画像を記録し、その記録結果を出力する。情報処理装置１０１等から送信される記録ジョブは、送信データ量が大きくて高速通信が求められるため、近距離無線通信部１５７よりも高速に通信可能な通信部１５６を介して受信する。
【００２５】
入力インターフェース１５８は、ユーザーからのデータ入力および動作指示を受け付けるためのインターフェースであり、物理キーボード、ボタン、およびタッチパネル等によって構成される。この入力インターフェース１５８と、後述の出力インターフェース１５９と、を同一の構成として、画面の出力と、ユーザーからの操作の受け付けと、を同一の構成によって行う形態としてもよい。出力インターフェース１５９は表示部１６０を制御し、表示部１６０によってデータを表示させると共に通信装置１５１の状態を通知させる。
【００２６】
表示部１６０は、ＬＥＤ（発光ダイオード）およびＬＣＤ（液晶ディスプレイ）などから構成され、データの表示および通信装置１５１の状態の通知を行う。表示部１６０上に、数値入力キー、モード設定キー、決定キー、取り消しキー、および電源キー等のキーを備えるソフトキーボードを設置することにより、表示部１６０を介してユーザーからの入力を受け付けることもできる。
【００２７】
このような通信装置１５１には、オプション機器として外付けＨＤＤおよびＳＤカード等のメモリが装着されてもよく、それらのメモリに、通信装置１５１に保存される情報を保存してもよい。また、情報処理装置１０１と通信装置１５１との処理分担は、本実施形態のみに限定されず、他の形態であってもよい。
【００２８】
（アドバタイズ情報の送信、およびＢＬＥ接続要求の受信）
次に、ＢＬＥ規格におけるアドバタイズ情報の送信、およびＧＡＴＴ（Ｇｅｎｅｒｉｃ  Ａｔｔｒｉｂｕｔｅ  Ｐｒｏｆｉｌｅ）通信の開始要求の受信の処理について説明する。本実施形態においては、近距離無線通信部１５７がスレーブ機器として動作して、その近距離無線通信部１５７がこれらの処理を行うものとする。近距離無線通信部１５７は、２．４ＧＨｚの周波数帯を４０チャネル（０〜３９ｃｈ）に分割して通信を行う。近距離無線通信部１５７は、それらの４０チャンネルのうち、３７〜３９番目のチャネルをアドバタイズ情報の送信およびＢＬＥ接続要求の受信に利用し、０〜３６番目のチャネルをＢＬＥ接続後のデータ通信に利用する。
【００２９】
図２は、１つのチャネルを利用してアドバタイズ情報を送信する際の、各処理別の消費電力の説明図であり、その縦軸が近距離無線通信部１５７の消費電力を示し、その横軸が時間を示す。電力Ｔｘ２０５は、アドバタイズ情報をブロードキャストする処理（送信処理）における総消費電力であり、電力Ｒｘ２０６は、ＢＬＥ接続要求を受信するための受信器を有効にしておく処理（受信処理）における総消費電力である。送信電力２０２は、送信処理による瞬間消費電力であり、受信電力２０３は、受信処理による瞬間消費電力である。マイコン動作電力２０１は、近距離無線通信部１５７内のマイコン（マイクロコンピュータ）が動作している場合の瞬間消費電力である。電力Ｔｘ２０５と電力Ｒｘ２０６の消費の前後、および、それらの間においてもマイコンが動作している理由は、送信、受信処理の実行および停止のためには、事前にマイコンが起動している必要があるからである。複数のチャネルを利用してアドバタイズ情報を送信する場合には、アドバタイズ情報の送信を行うチャネルの数だけ、消費電力が増えることになる。マイコンが動作しておらず、近距離無線通信部１５７が省電力状態となっている間は、スリープ電力２０４が近距離無線通信部１５７の瞬間消費電力となる。このように、近距離無線通信部１５７は、所定のチャネルを用いて送信処理を行った後、同一のチャネルを用いて一定時間受信処理を行うことによって、情報処理装置１０１からのＢＬＥ接続要求の送信を待つ。
【００３０】
近距離無線通信部１５７は、図３に示すように、アドバタイズ情報の送信処理と受信処理をチャネル（３７〜３９ｃｈ）別に３回繰り返した後、マイコンの動作を停止させて、一定時間省電力状態となる。以下、所定のチャネルによるアドバタイズ情報の送信処理と受信処理の組み合わせをアドバタイズという。また、所定のチャネルによってアドバタイズ情報を送信する時間間隔をアドバタイズ間隔という。なお、１回目のアドバタイズを行ってから省電力状態になるまでに繰り返すアドバタイズの回数は、３回以下であれば任意に変更可能である。
【００３１】
（ペアリング）
本実施形態においては、情報処理装置１０１と通信装置１５１との間において認証を行うことにより、装置間でＧＡＴＴ（Ｇｅｎｅｒｉｃ  Ａｔｔｒｉｂｕｔｅ  Ｐｒｏｆｉｌｅ）通信によりデータの読み書きを実行するためのペアリング処理を実施する。ＧＡＴＴとは、ＢＬＥ規格において情報の読み書き（送受信）を司るプロファイルである。ＧＡＴＴ通信とは、情報処理装置１０１がＧＡＴＴクライアントの役割を担い、通信装置１５１がＧＡＴＴサーバの役割を担って、ＧＡＴＴベースのプロファイルにより、情報処理装置１０１から通信装置１５１に対して情報の読み書きが行われる通信である。情報処理装置１０１と通信装置１５１間とでのペアリングが実行されていない状態では、通信装置１５１は、ＧＡＴＴ通信による情報の読み書きを許可しない。これにより、ペアリングを行っていない情報処理装置１０１と通信装置１５１とが通信を行ってしまい、例えば、通信装置１５１が保持する情報がペアリングを行っていない情報処理装置１０１に不用意に取得されてしまうことを抑制することができる。
【００３２】
ペアリング処理の詳細について説明する。まず、情報処理装置１０１は、後述の印刷アプリが起動され、その印刷アプリによって表示される初期画面（ホーム画面）が表示部１０８に表示された場合に、特定の装置情報を有するアドバタイズ情報のサーチを開始する。特定の装置情報とは、例えば、印刷アプリに対応する装置（プリンタ等）のＵＵＩＤやＭＡＣアドレス等である。そして、情報処理装置１０１は、特定の装置情報を有するアドバタイズ情報を受信すると、当該アドバタイズ情報を送信した装置（ここでは、通信装置１５１）に、ＢＬＥ接続要求（ＣＯＮＮＥＣＴ＿ＲＥＱ）を送信し、装置間でＢＬＥ接続を確立する。そして、情報処理装置１０１は、通信装置１５１とのペアリングを完了していない場合は、ユーザーにペアリングを促すための画面を表示部１０８に表示する。そして、情報処理装置１０１は、ペアリングの実行をユーザーに指示された場合に、セキュリティーマネージャプロトコルによる通信により、通信装置１５１に、ペアリング要求を送信する。なお、ぺアリングが終了するまで、装置間の通信は、セキュリティーマネージャプロトコルによって行われるものとする。
【００３３】
本実施形態においては、上記のペアリングのための認証方法として、ＰＩＮコード認証を行う。ＰＩＮコード認証とは、特定のユーザーのみに情報の送受信を制限するために、双方において予め決められた文字が一致した場合にのみ、送受信を許可する認証方法である。本実施形態におけるＰＩＮコード認証について、図４を用いて説明する。
【００３４】
図４は、情報処理装置１０１と通信装置１５１との間におけるＰＩＮコード認証によるペアリング処理の説明するためのシーケンス図である。
【００３５】
まず、情報処理装置１０１が通信装置１５１にペアリングを要求することにより、ペアリング処理が開始される。通信装置１５１はペアリングの要求を受けると、表示部１６０（図１参照）に、図５（ａ）に示すようなＰＩＮコード表示画面２００を表示する。ＰＩＮコード表示画面２００にはＰＩＮコード（認証情報）２０１が表示され、Ｃａｎｃｅｌボタン２０２が選択されるとペアリング処理がキャンセルされる。情報処理装置１０１は、表示部１０８（図１参照）に、図５（ｂ）に示すようにＰＩＮコード入力画面２１０が表示され、Ｃａｎｃｅｌボタン２１２が選択されるとペアリング処理がキャンセルされる。
【００３６】
ユーザーがＰＩＮコード入力画面２１０のＰＩＮコード入力領域２１１にＰＩＮコード２０１を入力して、ＯＫボタン２１３を選択することにより、情報処理装置１０１は、入力されたＰＩＮコードを通信装置１５１に送信する。通信装置１５１は、情報処理装置１０１から受信したＰＩＮコードと、図５（ａ）のＰＩＮコード表示画面２００に表示したＰＩＮコード２０１と、が一致するか否かを判定する。それらが一致した場合にペアリング処理が実行される。本例におけるペアリング処理は、ＢＬＥのＳＭＰ（Ｓｅｃｕｒｉｔｙ  Ｍａｎａｇｅｒ  Ｐｒｏｔｏｃｏｌ）を利用したペアリング処理であり、前述のＰＩＮコードをもとに所定の方法により作成したリンクキーを交換する。交換したリンクキーは、情報処理装置１０１の外部記憶装置１０６、および通信装置１５１のＲＯＭ１５２にそれぞれ保存される。このようにしてペアリングが完了すると、通信装置１５１のＰＩＮコード表示画面２００は自動的に非表示となり、元の画面に遷移する。
【００３７】
ペアリングの完了後に、ＧＡＴＴ通信を開始する。すなわち、情報処理装置１０１は、通信装置１５１に対してＧＡＴＴ通信の要求する際に、情報処理装置１０１に保存されているリンクキーを通知する。通信装置１５１は、ＧＡＴＴ通信要求を受信した場合、ペアリング処理時に通信装置１５１内の記憶領域に保存されているリンクキーと、情報処理装置１０１から通知されたリンクキーと、を比較する。そして、その比較結果に基づいて、ＧＡＴＴ通信要求を発信している装置（情報処理装置１０１）がペアリング済みの装置であるか否かを確認する。情報処理装置１０１がペアリング済みの装置である場合には、通信装置１５１と情報処理装置１０１との間においてＧＡＴＴ通信による情報の読み書きを開始する。これにより、情報処理装置１０１は、一旦、通信装置１５１とのペアリング処理を完了しておけば、以降は、ユーザーによるＰＩＮコードの入力なしに通信装置１５１とのＧＡＴＴ通信を実行することができる。  なお、上述では、ＰＩＮコード入力領域２１１に、ＰＩＮコード入力画面２１０に表示されているＰＩＮコード２０１をユーザーに入力させる形態を説明したが、この形態に限定されない。例えば、ＰＩＮコード２１０を固定（ユーザーが任意に変更できない）情報とし、印刷アプリのインストールと共に情報処理装置１０１に格納される形態とすることにより、ユーザの入力なしにＰＩＮコード２１０が通信装置１５１に通知される形態としてもよい。また、ペアリング処理が開始されるタイミングも上述の形態に限定されず、例えば、印刷アプリを介してユーザーが印刷を指示したタイミング、あるいは接続設定処理においてＢＬＥ接続が行われる前のタイミング等であっても良い。また、例えば、ＰＩＮコードなしでペアリングを実施してもよく、この場合には、ＧＡＴＴ通信のデータを暗号化する。前述のＰＩＮコードの代わりに暗号キーを表示または入力することにより、通信装置１５１の表示部１６０の表示内容が確認できるユーザーのみに解読可能な通信が実現できる。
【００３８】
（アドバタイズの情報）
図６（ａ）は、アドバタイズ信号のうちのペイロード部分を示した図である。アドバタイズペイロード５００は、アドバタイズアドレス（図上、「ＡｄｖＡ」と表記）５１０と、アドバタイズデータ（図上、「ＡｄｖＤａｔａ」と表記）５２０と、によって構成されている。本実施形態において、アドバタイズアドレス５１０は、通信装置１５１に対して固有に割り当てたられた情報である。アドバタイズデータ５２０は、複数のアドバタイズ構造領域（図上、「ＡＤ＿Ｓｔｒｕｃｔｕｒｅ  １，２，・・・，Ｎ」と表記）５２０（１），５２０（２），・・・，５２０（Ｎ）をもち、それらが所定の容量に満たない場合には“０”でパディングする。アドバタイズ構造領域５２０（５２０（１），５２０（２），・・・，５２０（Ｎ））は、データ長５２１、アドバタイズタイプ５２２、および実データ５２３の格納領域を含む。図６（ａ）においては、データ長５２１は「Ｌｅｎｇｔｈ」と表記し、アドバタイズタイプ５２２は「ＡＤ  Ｔｙｐｅ」と表記し、実データ５２３は「Ｄａｔａ」と表記する。
【００３９】
図６（ｂ）は、本実施形態におけるアドバタイズ構造領域５２０に格納するデータ５０３の説明図である。同図においては、３つのアドバタイズ構造領域（図上、「ＡＤ  Ｓｔｒｕｃｔｕｒｅ１」、「ＡＤ  Ｓｔｒｕｃｔｕｒｅ２」、「ＡＤ  Ｓｔｒｕｃｔｕｒｅ３」と表記）５２０（１），５２０（２），５２０（３）にデータが格納されている。アドバタイズ構造領域５２０（１）のデータは、ＢＬＥのデータフォーマットであるため説明を割愛する。
【００４０】
アドバタイズ構造領域５２０（２）には、通信装置１５１の固有の情報が格納される。本例における領域５２０（２）のデータ長（Ｌｅｎｇｔｈ）は、アドバタイズタイプ（ＡＤ  Ｔｙｐｅ）と実データ（Ｄａｔａ）のデータ長が７ｏｃｔｅｔ（１ｏｃｔｅｔは８ｂｉｔを意味する）であることを示す。アドバタイズタイプは実データ内の情報の意味を示し、本例における「０ｘＦＦ」は、実データが通信装置１５１の固有情報であることを示している。実データとしては、特定情報と、機能および状態の情報と、が格納される。通信装置１５１の特定情報の具体例としては、通信装置の製造メーカー、および通信装置の用途（例えば、家庭向け、あるいはオフィス向け）を区別するための情報が挙げられる。実データとしては、さらに通信装置の機能および状態に関する情報が格納される。通信装置の機能および状態に関する情報５０４は、バイト配列によって格納されている。本例では、１ｏｃｔｅｔ目の領域に、通信装置がプリント機能を有しているか否かに関する情報がセットされ、プリント機能を有している場合にはｖａｌｕｅが“１”となり、プリント機能を有していない場合にはｖａｌｕｅが“０”となる。本例の場合、通信装置１５１はプリントエンジン１５５（図１参照）を有しているため、１ｏｃｔｅｔ目のｖａｌｕｅは“１”となる。また、２ｏｃｔｅｔ目のｖａｌｕｅは、通信装置１５１にエラーが発生している場合に“１”となり、エラーが発生していない場合には“０”となる。例えば、プリントエンジン１５５による記録動作中にインクが無くなった場合には、インクタンクの交換が必要とり、インクタンクが交換されるまで記録動作の待機状態となる。その場合には、２ｏｃｔｅｔ目のｖａｌｕｅが“１”となる。１６ｏｃｔｅｔ目の領域には、ページ番号が格納される。図においては、１６ｏｃｔｅｔ目のｖａｌｕｅが“０”となっており、それが“１”の場合には、他のｏｃｔｅｔに異なる情報が格納される。例えば、ページ番号“０”の場合には、上述したように１ｏｃｔｅｔ目の領域にプリント機能の有無に関する情報を格納し、ページ番号“１”の場合には、１ｏｃｔｅｔ目の領域に他の情報を格納することができる。したがって、情報に格納できるアドバタイズのサイズに制限がある場合でも、ページ番号を変えることによって他の情報も送信することができる。
【００４１】
なお、アドバタイズ構造領域に格納するデータの内容およびデータの構造は、上述した例に限定されない。例えば、製造メーカー、通信装置の機器、および状態に関する情報の組み合わせを一意に識別可能な番号として、ＵＵＩＤ（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）を予め定義しておく。そして、通信装置１５１が状態などに応じてＵＵＩＤを選択して、アドバタイズ構造領域に格納することにより、アドバタイズを実施してもよい。本例においては、ＵＵＩＤを組み合わせにより複製定義することによって、他の通信装置が発信するアドバタイズ情報内のＵＵＩＤとの偶然の一致（衝突現象）を避ける。仮に、衝突現象が発生した場合には、他の通信装置のアドバタイズを情報処理装置１０１が処理することによる誤動作が発生する。
【００４２】
アドバタイズ構造領域５２０（３）には、通信装置１５１の名称が格納される。通信装置の名称は、装置毎に異なるため可変である。本例における領域５２０（３）のデータ長（Ｌｅｎｇｔｈ）は、アドバタイズタイプ（ＡＤ  Ｔｙｐｅ）と実データ（Ｄａｔａ）のデータ長が９ｏｃｔｅｔであることを示す。アドバタイズタイプは実データ内の情報の意味を示し、本例における「０ｘ０９」は、実データが通信装置１５１の名称であることを示している。実データは通信装置１５１の名称となり、本例の場合、その名称は「ＰｒｉｎｔｅｒＡ」である。
【００４３】
通信装置１５１によるアドバタイズ信号は、図３のように定常的に送信されているものとする。アドバタイズ信号のデータは、前述したように通信装置１５１の状態に応じて変更される。なお、アドバタイズ信号の送信は、本例のような定常的な送信に限定されない。例えば、通信装置１５１の入力インターフェース１５８を介して、ユーザーによる操作が行われたときなどにおいて、特定の条件に合致した場合にのみアドバタイズ信号を送信するように構成してもよい。
【００４４】
（印刷アプリケーション）
次に、ペアリング処理を実施するタイミングについて説明する。本例では、印刷アプリケーション（記録アプリケーション）の特定の画面に遷移した際に、ペアリング処理を実行する。まず、印刷アプリケーションの画面について説明する。
【００４５】
情報処理装置１０１は、外部記憶装置１０６に格納された印刷実行機能を提供するアプリケーションを起動するように、ユーザーから入力インターフェース１０２を介して指示を受けることにより、印刷アプリケーションを起動する。なお、以降においては、通信装置１５１をプリンタと表記する。
【００４６】
図７および図８は、印刷アプリケーションが表示部１０８を介してユーザーに表示する、印刷アプリケーション画面の遷移の説明図である。図７（ａ）の使用許諾契約画面６００は、ユーザーに、印刷アプリケーションを使用する際に順守する条件などを確認するための画面である。ユーザーは使用許諾契契約文６０１を確認して、同意するか否かを選択する。同意しない場合には、ボタン６０３を選択することよって印刷アプリケーションが終了する。同意する場合には、ボタン６０２を選択することによって、図７（ｂ）のメイン画面６０４に遷移する。メイン画面６０４は、印刷アプリケーションの主な機能を一覧表示する。情報処理装置１０１の外部記憶装置１０６などに格納された印刷対象が画像データの場合には、ボタン６０５を選択する。ボタン６０５を選択することによって、図８（ａ）の画像選択画面６１３に遷移する。印刷対象が文書データの場合には、図７（ｂ）のボタン６０６を選択する。ボタン６０６を選択することによって、不図示の文書選択画面に遷移する。
【００４７】
印刷アプリケーションは、図７（ｂ）のプリンタ登録ボタン６０７が選択されることにより、プリンタの検索（特定）および登録の処理を行う。印刷アプリケーションにおいては、プリンタを無線通信のネットワーク内において特定するために、プリンタを特定する情報および機能情報などを登録することが可能である。プリンタを特定する情報としては、プリンタの識別情報（ＭＡＣアドレス）、ＩＰアドレス、プリンタの名称などが挙げられる。また、プリンタの機能情報としては、印刷可能な用紙種リスト等、プリンタの性能などに関する情報などが挙げられる。印刷アプリケーションは、このような特定情報と機能情報を登録する処理を行うことにより、これらの情報が関連付けられて外部記憶装置１０６に保存される。以下、このような登録処理が実行されたプリンタを「登録プリンタ」といい、プリント処理を実行するプリンタを「カレントプリンタ」という。なお、複数のプリンタを登録することも可能である。その場合、ユーザーは、プリント処理を実行する前に、登録プリンタの中からカレントプリンタを選択する。もちろん、登録プリンタが１つであれば、そのプリンタがカレントプリンタとなる。プリンタを登録する場合には、図７（ｂ）のプリンタ登録ボタン６０７を選択する。プリンタ登録ボタン６０７を選択することによって、図７（ｃ）のプリンタ登録画面６０８に遷移する。
【００４８】
印刷アプリケーションは、プリンタ登録画面６０８に遷移してから、通信部１０９を用いて接続中のアクセスポイントを介して、無線通信ネットワーク（例えば、無線ＬＡＮ）内に接続されたプリンタを自動的に検索し、見つかったプリンタをリスト形式で表示する。本例においては、特定情報に含まれるプリンタの名称によって表示する。プリンタ登録画面６０８にリストアップされたプリンタ群の中から、登録したいプリンタをユーザーが選択することによって、登録プリンタが決定される。もちろん、登録プリンタは複数選択することも可能である。
【００４９】
図６（ｃ）のプリンタ登録画面６０８においては、アクセスポイント名６０９として、現在、プリンタが接続中のアクセスポイント１３１のＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）が表示される。ここでは、簡略化したアクセスポイントＡとしている。モーダルダイアログ６１０は、実行中の処理を明示するダイアログを表示する。ダイアログ６１０の表示中は、その他の表示領域が暗転して、その領域内のボタン選択などの操作ができない状態となる。検索が終了するとダイアログ６１０は非表示となり、その他の領域が明転し、その領域内のボタン選択などの操作が可能となる。プリンタの検索結果は、検索結果一覧６１１に表示される。図例では、検索された２台のプリンタ（Ｐｒｉｎｔｅｒ  ＡおよびＰｒｉｎｔｅｒ  Ｂ）が表示されている。リストアップされたプリンタをユーザーが選択することによって、選択されたプリンタが登録プリンタとなり、画面は図７（ｂ）のメイン画面６０４に遷移する。
【００５０】
なお、本例においては、登録プリンタとして１台のみが選択可能な場合について説明する。そのため、選択プリンタがカレントプリンタとなる。また、登録プリンタのプリンタ識別情報、ＩＰアドレス、プリンタ名称等は外部記憶装置１０６に格納される。
【００５１】
メイン画面６０４の画像印刷ボタン６０５を選択することにより、画面は図８（ａ）の画像選択画面６１３に遷移する。画像選択画面６１３においては、情報処理装置１０１の外部記憶装置１０６に格納された画像データのサムネイル画像６１４が表示され、ユーザーがサムネイル画像６１４を選択することによって、印刷対象の画像が選択される。選択された印刷対象の画像に対応するサムネイル画像上には、印刷対象であることを示すチェックマーク６１５が表示される。印刷対象の画像を選択してから、印刷設定ボタン６１６を選択することにより、画面は図８（ｂ）の印刷設定画面６１７に遷移する。
【００５２】
印刷設定画面６１７のサムネイル表示領域６１８には、印刷対象画像のサムネイル画像が表示される。印刷対象の画像は、図８（ａ）の画像選択画面６１３においてチェックマーク６１５を付けたサムネイル画像に対応する。プリンタ名表示領域６１９には、カレントプリンタのプリンタ名が表示される。プリンタ名としては、カレントプリンタに関連付けて保存されている通信装置特定情報に含まれる名称が表示される。なお、登録プリンタが複数ある場合には、不図示のプリンタ選択画面などを通じてユーザーによって選択された登録プリンタの名称がカレントプリンタとして表示されることになる。印刷条件表示領域６２０には、印刷を実行する際の印刷条件が表示される。ユーザーは、不図示の印刷条件変更画面によって印刷条件を適宜変更できる。ユーザーは、印刷開始を印刷アプリケーションに指示する際には、印刷開始ボタン６２１を選択する。これにより、画面は図８（ｃ）の印刷中画面６２２に遷移する。
【００５３】
印刷アプリケーションは、印刷中画面６２２に遷移してから、カレントプリンタ（本例では、プリンタＡ）に対して、ユーザーが選択した印刷対象画像を印刷条件表示領域６２０に表示した印刷条件によって印刷処理する指示を送信する。印刷中画面６２２の印刷中画像６２３は、印刷対象画像のうち現在印刷中の画像を表示する。メッセージ６２４には、印刷の進捗およびステータスを表示する。印刷中に何らかの問題が生じて、印刷が継続できなかったり、中止になったりした場合には、その状態をメッセージ６２４に表示してユーザーに伝える。キャンセルボタン６２５が選択された場合には印刷を中止して、前画面の図８（ｂ）の印刷設定画面６１７に遷移する。
【００５４】
（ペアリングのタイミング）
図９は、印刷アプリケーションが実行するペアリング処理を説明するためのフローチャートである。このペアリング処理は、印刷アプリケーションが起動した直後に実行される。
【００５５】
まず、情報処理装置１０１は、プリンタが発信したアドバタイズ信号を受信し（ステップＳ１）、ＯＳから印刷アプリケーションに、アドバタイズ信号の受信が通知される。その際、アドバタイズ信号内に格納された情報５００（図６参照）もＯＳから印刷アプリケーションに渡される。印刷アプリケーションは、アドバタイズ信号の受信が通知されると、ペアリングを実施することが可能か否かを確認する（ステップＳ２）。
【００５６】
このような確認処理については、図７および図８の印刷アプリケーションの画面を用いて説明する。これらの画面の表示中は、印刷アプリケーションがユーザーに確認を要求する状態であったり、何らかの処理を実行中の状態であったりする。そのような場合には、ペアリングを実施しない。具体的に、図７（ａ）の使用許諾契約画面６００を表示中のときには、ユーザーが使用許諾契約を同意するまで印刷アプリケーションの使用が許可されないため、アドバタイズ信号を受信してもペアリング処理は実行しない。また、本例においては、図７（ｃ）のプリンタ登録画面６０８の表示中にプリンタの検索処理を実行する。そのプリンタ検索中のモーダルダイアログ６１０が表示されているときにペアリング処理を実行した場合には、複数のダイアログが表示されてユーザーに求められる操作が複雑となるため、ペアリング処理を実行しない。しかし、プリンタの検索が終了して、モーダルダイアログ６１０が非表示になったときには、ペアリング処理が実行可能であると判定する。ペアリング処理が実行可能であると判定された場合には、受信したアドバタイズ情報を解析する（ステップＳ３）。具体的には、前述したアドバタイズ構造領域５２０に格納されたデータ５０３を解析する。アドバタイズ情報の解析が終了した後は、そのアドバタイズが印刷アプリケーションによって処理可能な特定のアドバタイズであるか否かを判定する（ステップＳ４）。
【００５７】
本例では、前述の図６（ｂ）の通信装置特定情報を用いて、アドバタイズが印刷アプリケーションによって処理可能であるか否か、つまりペアリング処理が実行可能であるか否かを判定する。その通信装置特定情報は、製造メーカー、通信装置の用途（例えば、家庭向け、あるいはオフィス向け）などの通信装置を特定する情報である。ステップＳ４においては、例えば、通信装置特定情報に含まれる製造メーカーに関する情報が特定の情報であることを条件に、ペアリング処理が実行可能であると判定する。また、印刷アプリケーションが家庭向けのプリンタに対応したアプリケーションの場合に、通信装置特定情報としてプリンタがオフィス向けであるという情報が格納されているときには、ペアリング処理は実行不可能であると判定する。その場合に、通信装置特定情報としてプリンタが家庭向けであるという情報が格納されているときには、ペアリング処理は実行可能であると判定する。また、通信装置特定情報に含まれる製造メーカーに関する情報が特定の情報であって、かつ通信装置特定情報にプリンタが家庭向けであるという情報が含まれていることを条件に、ペアリング処理が実行可能であると判定してもよい。
【００５８】
本例においては、通信装置特定情報に基づいて、ペアリング処理が実行可能であるか否かを判定した。しかし、これには限定されず、例えば、アドバタイズ情報の通信装置名に基づいて、印刷アプリケーションが対応した特定の名前のプリンタに対してのみペアリング処理が実行可能であると判定してもよい。また、通信装置の機能および状態に関する情報５０４に基づいて、ペアリング処理が実行可能か否かを判定してもよい。例えば、通信装置にプリント機能がない場合には、印刷アプリケーションはペアリング処理をしない。また、プリンタがエラー状態にあり、かつプリンタのエラー情報を扱うアプリケーションが情報処理装置１０１にインストールされている場合には、印刷アプリケーションはペアリング処理をせず、エラー情報を扱うアプリケーションにユーザーを誘導してもよい。
【００５９】
アドバタイズが印刷アプリケーションによって処理可能であると判定された場合には、ステップＳ４からステップＳ５に移行し、情報処理装置１０１は、過去にペアリング処理した通信装置のリストを取得する。なお、ペアリング処理によってリンクキーが交換された場合、印刷アプリケーションは、外部記憶装置１０６に、通信装置特定情報とリンクキーとを対応付けて保存する。ステップＳ５においては、このようにリンクキーと対応付けられて保存されている通信装置特定情報のリストを取得する。
【００６０】
その後、情報処理装置１０１と通信装置１５１とがペアリング済みであるか否かを確認する。例えば、受信したアドバタイズ信号に含まれている通信装置特定情報における通信装置の名称が、上記リストの通信特定情報における通信装置の名称に含まれているか否か確認する。それが含まれている場合には、ペアリング済み、すなわちアドバタイズ信号を発信している通信装置のリンクキーが既に外部記憶装置１０６に格納されていると判定することができる。既にペアリング済みである場合、図９のフローは終了する。なお、ステップＳ６においてペアリング済みであることを確認することにより、後述する確認ダイアログ８００の不要な表示および確認を防ぐことができる。
【００６１】
ペアリングが完了していない場合には、ステップＳ６からステップＳ７に移行して、アドバタイズを発信しているプリンタが前述の登録プリンタであるか否かを確認する。具体的には、アドバタイズ信号に含まれている通信装置特定情報における通信装置の名称が、外部記憶装置１０６に格納されている登録プリンタの名称に対応するか否かを判定する。アドバタイズを発信しているプリンタが登録プリンタである場合には、後述のペアリングを実施するか否かの確認（ステップＳ８）はせずに、ペアリング処理（ステップＳ９）を実行する。登録プリンタは、情報処理装置と無線ＬＡＮによる接続を確立したことがあるプリンタであり、またユーザーが印刷アプリケーションによって利用すると認めたプリンタであるため、ペアリングを実施するか否かの確認（ペアリング実施確認）をする必要がない。したがって、不要なペアリング実施確認を行う必要が無くなり、ユーザーの手間を削減することができる。
【００６２】
アドバタイズを発信しているプリンタが登録プリンタでない場合には、ステップＳ８の表示制御に移行して、ユーザーにペアリングを実施するか否かを確認させる。このようなペアリング実施確認は、ＢＬＥのアドバタイズの特性上、不特定多数のユーザーの端末装置が受信してしまうため、ユーザーが所有するプリンタであるかを確認することを目的として、図１０の確認ダイアログ８００を表示させる。本例の確認ダイアログ８００は、プリンタの名前８０１を表示し、それがユーザーの所望するプリンタであるか否かを確認させる。「はい」ボタン８０２が選択された場合には、ステップＳ８からステップＳ９に移行してペアリング処理を実行する。「いいえ」ボタン８０３が選択された場合には、ペアリング処理を実行しない。
【００６３】
ステップＳ９のペアリング処理においては、情報処理装置１０１が通信装置１５１にペアリングを要求する。これにより、通信装置１５１の表示部１６０は、図５（ａ）のようなＰＩＮコード表示画面２００を表示し、情報処理装置１０１の印刷アプリケーションは、図５（ｂ）のＰＩＮコード入力画面２１０を表示部１０８に表示する。このように通信装置１５１は、ＰＩＮコード入力画面２１０を表示すると共に、情報処理装置１０１に対してＰＩＮコード表示画面２００の表示を指示する（出力制御）。
【００６４】
印刷アプリケーションは、ＯＫボタン２１３が選択されたか否かを判定し、それが選択された場合には、ＰＩＮコード入力領域２１１に入力されているＰＩＮコードをＢＬＥによって通信装置１５１に送信する。通信装置１５１は、図５（ａ）のように表示されたＰＩＮコード２０１と、情報処理装置１０１から受信したＰＩＮコードと、が一致した場合に、ペアリング処理を実行してから、ＧＡＴＴ通信を開始する。
【００６５】
このようにペアリングに際しては、情報処理装置１０１のＰＩＮコード入力画面２１０からのＰＩＮコード（認証情報）の入力、および通信装置１５１のＰＩＮコード表示画面２００におけるＰＩＮコード（所定の認証情報）２０１の表示を伴う。これによりユーザーは、情報処理装置１０１と通信装置１５１とがペアリング対象であるか否かを確認することができる。通信装置１５１がプリンタの場合には、ＰＩＮコード表示画面２００におけるＰＩＮコード２０１の表示と共に、あるいは、それに代えて、ＰＩＮコード２０１をプリントアウトしてもよい。または、ＰＩＮコード２０１を音声などによって出力してもよい。このように通信装置１５１は、ＰＩＮコード２０１を表示およびプリントなどによって出力することができればよい。
【００６６】
本例では、印刷アプリケーションが起動した直後にペアリング処理を実行する。しかし、ペアリング処理を実行するタイミングは、これに限定されず、例えば、印刷アプリケーションの画面の遷移時、および画面内の特定の動作を実行した場合に、ペアリング処理を実行してもよい。
【００６７】
図９のステップＳ６において、ペアリング済みと判定された場合にはペアリング処理を実行しないため、不要なペアリング処理の実行が防止できる。ステップＳ７において、図７（ｃ）の画面が表示され、無線ＬＡＮによりプリンタが検索されて、ユーザーが登録したプリンタのアドバタイズ信号を受信した場合には、図１０の確認ダイアログ８００の表示画面（ペアリングの実施確認画面）は表示されない。したがって、ユーザーがプリンタの使用を許可しているにも拘らず、改めて不要な実施確認を行うことが防止できる。
【００６８】
なお、情報処理装置１０１は、上述のステップＳ７において、アドバタイズ信号を発信しているプリンタが登録プリンタであるかか否かを判断していたが、これに限定されない。例えば、登録プリンタのうちのカレントプリンタ（登録プリンタの中からユーザーが選択済みのプリンタ）であるか否かを判断してもよい。  更に、アドバタイズ信号にエラーを示す情報が含まれている場合、即ち上述のアドバタイズ構造領域５２０（２）における２ｏｃｔｅｔ目のｖａｌｕｅが、通信装置１５１にエラーが発生していることを示す“１”の場合、情報処理装置１０１はエラー表示を行う。この場合にも、そのアドバタイズ信号の発信元が登録プリンタであること（もしくは、登録プリンタのうちのカレントプリンタであること）を条件として、エラー表示を行ってもよい。また、例えば複数の異なるプリンタからのアドバタイズ信号を受信し、そのどれもがエラー情報を含み、さらに複数のプリンタに、カレントプリンタと登録プリンタがあって、カレントプリンタでないプリンタが含まれる場合が想定される。このような場合には、カレントプリンタのエラー情報を優先して表示してもよい。その優先表示の方法としては、例えば、カレントプリンタのエラー画面を先に表示し、そのエラー画面が閉じられたときに、登録プリンタのエラー画面が表示されてもよい。また、複数のプリンタのエラー情報をリスト形式で表示する場合、カレントプリンタのエラー情報をリストの上位に表示し、登録プリンタのエラー情報をそれよりも下位に表示してもよい。
【００６９】
（写真誘導）
上述した図９の処理によって、印刷を実行させるプリンタがＢＬＥにより特定される。その後、そのプリンタに印刷させる画像をユーザーが選択する。
【００７０】
印刷アプリケーションは、情報処理装置１０１の外部記憶装置１０６に保存されている画像データを印刷対象とする。図８（ａ）の画像選択画面６１３に画像データを一覧表示した場合、画像データの数が膨大になると、ユーザーが印刷対象の画像データを探し出して選択することが困難となる。そのため、印刷アプリケーションは、画像データを特定の条件において抽出する機能を持つ。その抽出機能は、例えば、外部記憶装置１０６に保存さている画像データを階層表示し、画像データが含まれる特定のグループ（例えば、フォルダ）を選択、あるいは画像データの撮影日付または作成日付の範囲を選択して、画面に表示する画像データを抽出する。このような画像データの抽出のための操作は、印刷アプリケーションが不図示のＵＩを表示して、ユーザーに選択を促すことによって実現できる。
【００７１】
また、画像データを抽出させる他の方法としては、印刷アプリケーションに関する特定のタイミング（例えば、前回、印刷アプリケーションを起動したタイミング）を記憶して用いる方法がある。すなわち、再度、印刷アプリケーションが起動された場合に、記憶されていたタイミングの後に新しい画像データが外部記憶装置１０６に保存されたか否かを確認して、その結果をユーザーに通知する。
【００７２】
図１１（ａ）は、印刷アプリケーション起動時に、このような確認をメイン画面上において実施した場合の説明図である。通知ダイアログ９００は、後述する追加画像データの確認処理において、データ画像が追加されたと判定された場合に、図７（ｂ）のメイン画面６０４上に表示（追加画像データ表示）される。通知ダイアログ９００は、追加画像データがあることのメッセージと、画像選択画面に遷移するためのボタンと、を表示する。「はい」ボタン９０１が選択された場合には、画面は、図８（ａ）の画像選択画面６１３へ自動的に遷移し、その画像選択画面６１３においては、追加画像データのみが表示される。一方、「いいえ」ボタン９０２が選択された場合には、通知ダイアログ９００は非表示となる。図１１（ｂ）の表示切り替え確認ダイアログ９０３は、図８（ａ）の画像選択画面６１３を表示してから実行される確認処理によって、追加画像データがあると確認された場合に表示される。表示切り替え確認ダイアログ９０３においては、追加画像データのみを表示するか否か問うメッセージと、抽出機能を実行するか否かを決定するボタンと、が表示される。「はい」ボタン９０４が選択された場合には、抽出機能によって図１１（ｃ）の画面が表示される。画像データ９０６は追加画像データである。「いいえ」ボタン９０５が選択された場合、通知ダイアログ９００は非表示となる。
【００７３】
図１２は、ペアリング処理と追加画像データ確認処理を説明するためのフローチャートである。
【００７４】
まず、ステップＳ１１において、前述した図９におけるペアリング処理を実行し、次のステップＳ２において、ペアリング処理が完了したか否かを確認する（ペアリング完了確認）。ステップＳ１１においては、図９におけるステップＳ５，Ｓ６と同様に、リストを取得し、そのリストに、今回アドバタイズ信号を発信したプリンタの情報が含まれているか否かを確認する。ペアリング処理されていない場合としては、例えば、特定のアドバタイズ信号でない場合、あるいはユーザーがペアリング処理を希望せずに図５（ｂ）のＣａｎｃｅｌボタン２１２が選択された場合などがある。このような場合には、アドバタイズ信号を発信したプリンタがユーザー所有のプリンタでない、もしくはユーザーがＢＬＥの機能を利用しないことを選択したと判定して、図１２の処理を終了する。ペアリング処理が完了した場合には、追加画像データの確認処理を実行する（ステップＳ１３）。
【００７５】
図１３は、追加画像データの確認処理を説明するためのフローチャートである。
【００７６】
まずは、外部記憶装置１０６から、図１１（ａ）の通知ダイアログ９００もしくは図１１（ｂ）の表示切り替え確認ダイアログ９０３によって前回通知した時間（前回の通知時間）を取得し、その通知時間と、現在の時間と、の差を算出する（ステップＳ２１）。その後、その算出した時間が一定時間以上か否かを判定する（ステップＳ２２）。本例の場合は、算出した時間に基づいて、前回の通知時間から１か月経過しているか否かを判定する。通知時間については後述する。このように、前回の通知時間からの経過時間を考慮することにより、通知ダイアログ９００を頻繁に表示しないように制御する。前回の通知時間から一定時間が経過している場合には、外部記憶装置１０６内の画像データの一覧を取得し（ステップＳ２３）、その画像データの一覧から、前回の通知時間以降に追加された画像データ（追加画像データ）を抽出する（ステップＳ２４）。本例においては、その際に、画像データ内のＥＸＩＦ情報（Ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｉｌｅ  ｆｏｒｍａｔ）の撮影時間を使用するが、これに限らない。例えば、画像データのタイムスタンプ（更新日時または作成日時）、あるいはファイル名に撮影時間を含む命名規則を使用してもよい。
【００７７】
追加画像データの抽出が終了した後は、追加画像データがあるか否かを確認する（ステップＳ２５）。追加画像データがない場合には処理を終了し、追加画像データがある場合には、印刷アプリケーションの画面の種類を確認する（ステップＳ２６）。その画面がメイン画面の場合には、追加画像データの通知として、前述した図１１（ａ）の通知ダイアログ９００を表示してから（ステップＳ２７）、通知時間を更新する（ステップＳ３０）。一方、その画面が画像選択画面の場合には、表示切り替えの確認のために、図１１（ｂ）の表示切り替え確認ダイアログ９０３を表示する（ステップＳ２８）。表示切り替えをユーザーが選択した場合には、図１１（ｃ）のように追加画像データ９０６のみを表示してから（ステップＳ２９）、通知時間を更新する（ステップＳ３０）。
【００７８】
このように画面の種類に応じて処理を切り替える理由は、画面毎に機能が割り当てられているからである。本例の場合、画像選択画面は画像の一覧を表示する機能を有するため、その画面を用いて、追加画像データのみを表示する切り替え処理を実行する。一方、メイン画面は画像一覧する機能を持たないため、その画面を用いて追加画像データを通知する。また、他の画面を用いない理由は、画面遷移の構成およびユーザーの操作の煩雑化を防ぐためである。
【００７９】
なお、本例では、画面を用いて処理を切り替えたがこれに限定されない。例えば、ボタンの押下（ボタンの選択）などのタイミングで切り替えを実施してもよく、あるいは、画面ではなくダイアログを用いてもよい。また、本例では、経過時間に基づいて追加画像データの確認処理の実行タイミングを設定したがこれに限定されない。例えば、印刷アプリケーションの起動回数をカウントし、一定回数起動した後に確認処理を実行してもよい。
【００８０】
このような一連の処理を実行することにより、画像データの増減をユーザーに通知し、追加画像データのみを表示することによって、印刷対象の画像データの選択性が向上する。また、プリンタからのＢＬＥのアドバタイズ受信によって本処理を継続することにより、プリンタが近接した位置にあると判定して、ユーザーが印刷できる状況下において通知することが可能となる。
【００８１】
なお、図１２の追加画像データ確認処理（ステップＳ１３）は、ペアリング処理（ステップＳ１２）の完了に加えて、そのペアリング処理が完了したプリンタが登録プリンタであること（または、カレントプリンタであること）を条件として、行われてもよい。
【００８２】
（プリンタの休眠解除）
プリンタは、電力消費を抑えるために、プリンタ機能維持に必要な最低限の装置のみに電力を供給する休眠状態（スリープ状態）となる。プリンタは、一定時間経過後に自動的に休眠状態になったり、ユーザーの指示によって休眠状態になったりすることができる。プリンタが休眠状態のときに、ユーザーがプリントなどの処理を実行しようとする場合には、プリンタ本体の休眠を解除して起動状態とする処理（以降、「再起動処理」という）が必要となる。以下、情報処理装置１０１と、通信装置１５１としてのプリンタと、のペアリング処理が完了している場合における、ＢＬＥのＧＡＴＴ通信によるプリンタの再起動処理について説明する。なお、プリンタがインクジェットプリンタの場合には、プリントヘッドからインクを吐出するため、一定時間経過するとプリントヘッド内のインクが固着して、インクの吐出不良が発生するおそれがある。その解決策として、画像のプリントに寄与しないインクをプリントヘッドから吐出させて、固着したプリントヘッド内のインクを排出させる等、プリント状態を良好に維持するための処理（以降、「回復処理」という）を実行する。
【００８３】
このようなプリンタの再起動処理および回復処理には一定時間を要し、その期間は、プリントなどの処理が一時停止もしくは実行できない。そこで、ユーザーによるプリントなどの処理が指示され際に、直ちに、その処理が実行できるように、ＢＬＥのＧＡＴＴ通信によりプリンタに再起動を指示する。
【００８４】
図１４は、印刷アプリケーションの印刷設定画面中に表示されるメッセージ６２８の説明図であり、このメッセージ６２８によって、プリンタの再起動処理を実行したことがユーザーに通知される。本例では、図１４のように、画面が印刷を開始可能な画面に遷移した際に、必要に応じて再起動処理と回復処理を実行する。
【００８５】
図１５は、ペアリング処理、再起動処理、および回復処理の関係を説明するためのフローチャートである。前述したペアリング処理を実行し（ステップＳ３１）、それが完了してから、再起動処理と回復処理を実行する（ステップＳ３２，Ｓ３３）。
【００８６】
図１６は、再起動処理と回復処理を説明するためのフローチャートである。本例においては、プリンタの再起動処理を実行した際に、そのプリンタが回復処理を必要としているか否かを確認する。したがって、印刷アプリケーションによって再起動処理が指示された場合には、プリンタの回復処理が行われる。
【００８７】
まず、図１６のステップＳ４１において、再起動処理と回復処理が実行可能か否かを判定する。本例では、前述のカレントプリンタが選択されて、カレントプリンタがアドバタイズを送信し、かつ印刷が開始できる印刷設定画面が表示されているか否かを判定する。なお、再起動処理と回復処理が実行可能か否かを判定する条件は、本例のような条件に限定されない。例えば、画像選択画面に、後述のハンドオーバーによる印刷ボタンを表示した状態において、印刷対象の画像データを選択した場合に、再起動処理と回復処理を実行する等、他の画面あるいはユーザー操作に基づいて再起動処理と回復処理を実行してもよい。また、プリンタが起動状態にないときには、インク情報などのプリンタに関する情報（プリンタ情報）が取得できないように、プリンタが構成されている場合がある。このような場合には、印刷アプリケーションによってプリンタ情報を取得する必要があるときに、再起動処理と回復処理を実行してもよい。また、回復処理に所定時間以上を要すると判定した場合には、表示されている画面に拘らず、再起動処理と回復処理を実行してもよい。
【００８８】
再起動処理と回復処理が実行可能と判定した場合には、プリンタが画像をプリント可能なプリント機能を有しているか否かを判定する（ステップＳ４２）。具体的には、ペアリング処理（ステップＳ３１）において取得したＢＬＥのアドバタイズ情報内の、通信装置の機能および状態に関する情報に基づいて判定する。
【００８９】
図１７は、本例における通信装置の機能および状態に関する情報の説明図である。プリンタがプリント機能を有している場合は、通信装置の機能および状態に関する情報の格納領域に、プリンタ機能を有していることを示す情報が格納される。図１７の例においては、１ｏｃｔｅｔ目の領域がプリント機能の有無を示す情報の格納領域であり、ｖａｌｕｅに格納されている“１”は、プリント機能を有していることを意味する。プリント機能がない場合には、“０”が格納される。プリント機能がない場合には、図１６の処理を終了する。
【００９０】
プリント機能がある場合には、プリンタが休眠状態であるか否かを判定する（ステップＳ４３）。具体的には、ペアリング処理（ステップＳ３１）において取得したＢＬＥのアドバタイズ情報内の、通信装置の機能および状態に関する情報に基づいて判定する。プリンタが休眠状態である場合には、通信装置の機能および状態に関する情報として、休眠状態を示す情報が格納される。図１７の例においては、４ｏｃｔｅｔ目の領域に、プリンタが休眠状態にあるか否かを示す情報が格納され、ｖａｌｕｅに格納されている“１”は、プリンタが休眠状態にあることを意味する。プリンタが起動状態である場合には、“０”が格納される。
【００９１】
プリンタが休眠状態でない場合には、回復処理に要する時間を判定する（ステップＳ４４）。具体的には、ペアリング処理（ステップＳ３１）において取得したＢＬＥのアドバタイズ情報内の、通信装置の機能および状態に関する情報に基づいて判定する。回復処理に時間を要する場合には、通信装置の機能および状態に関する情報として、回復処理に要する時間に関する情報が格納される。図１７の例においては、５ｏｃｔｅｔ目の領域に、回復処理時間に要する時間に関する情報が格納され、ｖａｌｕｅに格納されている“１”は、回復処理に多くの時間が必要であることを意味する。回復処理に時間が多くの必要ない場合には、“０”が格納される。回復処理に、所定時間以上の多くの時間を要する場合には、ユーザーがプリントを実施する前に回復処理を実行する。一方、回復処理に多くの時間が必要ない場合には、ユーザーがプリントを実行した際に回復処理を実行してもプリントの完了時間に大きな影響を与えない。したがって、回復処理に多くの時間を必要としないと判定した場合には、回復処理は実行せずに、図１６の処理を終了する。回復処理に多くの時間を要すると判定した場合には、プリンタとＧＡＴＴ通信を確立して、プリンタに回復処理を実行するように指示する。その後、図１６の処理を終了する。
【００９２】
一方、ステップＳ４３において、プリンタが休眠状態にあると判定された場合には、プリンタとＧＡＴＴ通信を確立して、プリンタに再起動処理を実行するように指示する（ステップＳ４６）。その後、プリンタが再起動したことをユーザーに示す通知メッセージ６２８（図１４参照）を表示する。メッセージ６２８を表示した後、図１６の処理を終了する。回復処理を実行する際には、プリンタを再起動するという顕著な動作を行わないため、回復処理の実行をユーザーに示すメッセージは表示しない。
【００９３】
このように、プリンタと印刷アプリケーションの状態に応じて、再起動処理と回復処理を実行することにより、インクを消費する回復処理の実行を抑えつつ、ユーザーが印刷指示した際に、直ぐに印刷処理を実行することができる。なお、ＢＬＥは低消費電力による通信が可能であるため、プリンタが休眠状態でも消費電力を大きく増やすことなく通信をすることができる。
【００９４】
このように情報処理装置は、ＢＬＥにおけるペアリングが完了している通信装置から、ＢＬＥにおけるアドバタイズ情報を受信した場合に、アドバタイズの情報から通信装置の状態を確認（再起動処理および回復処理が実行可能か否かの状態確認）する。そして情報処理装置は、その確認した通信装置の状態に応じた処理の実行を通信装置に指示する。
【００９５】
なお、図１５における再起動処理と回復処理（ステップＳ３３）は、ペアリング処理（ステップＳ３１）の完了に加えて、そのペアリング処理が完了したプリンタが登録プリンタであること（または、カレントプリンタであること）を条件として、行われてもよい。そのペアリング処理が完了したプリンタがカレントプリンタであることを条件とした場合、複数の異なるプリンタからのアドバタイズ信号を受信し、そのどれもが休眠状態であるときには、カレントプリンタのみの再起動処理または回復処理が実行される。これにより、例えばユーザーが使用する意思の無かったプリンタに対して、不必要に再起動処理または回復処理が実行されることを防ぐことができる。
【００９６】
（ハンドオーバーの印刷ボタンの表示）
ハンドオーバーとは、情報処理装置が、通信装置に接続するためのネットワーク情報を通信装置から取得して、その取得時とは異なるネットワーク種別によって、情報処理装置と通信装置とを接続する方法である。以下においては、通信装置がプリンタである場合を例にして説明する。
【００９７】
上述した印刷アプリケーションにおいては、プリンタと情報処理装置との接続を確立した状態において、印刷アプリケーションにプリンタを登録し、その登録プリンタによって画像をプリントした。しかし、このような処理手順に限定されない。例えば、ハンドオーバー機能を用いることにより、ネットワーク接続されていないプリンタ、および登録されていないプリンタによって、画像をプリントすることができる。具体的には、ＢＬＥのＧＡＴＴ通信によって、情報処理装置１０１が通信装置１５１から、無線ＬＡＮによって接続するためのハンドオーバー情報を取得し、情報処理装置１０１が無線ＬＡＮによって通信装置１５１との接続を確立する。
【００９８】
図１８は、ハンドオーバー処理が可能な印刷アプリケーションの表示画面の説明図である。本例では、ＰｒｉｎｔｅｒＡによってプリントを実行するものとする。プリンター名１６００は「未登録」であり、ＰｒｉｎｔｅｒＡが登録プリンタでないことを示しており、また情報処理装置とＰｒｉｎｔｅｒＡとの接続が確立されていないことも示している。ＰｒｉｎｔｅｒＡからのアドバタイズ信号内の情報（図１７の３Ｏｃｔｅｔ目の領域の情報）から、ハンドオーバーが可能であると判定した場合に、図１８の印刷ボタン１６０１を表示する（機能表示）。ユーザーが印刷ボタン１６０１を選択した場合に、ハンドオーバー処理を実行する。
【００９９】
図１９は、ペアリング処理と印刷ボタン表示処理との関係を説明するためのフローチャートである。前述したペアリング処理を実行し（ステップＳ３１）、それが完了してから、印刷ボタン表示処理を実行する（ステップＳ３２，Ｓ３４）。
【０１００】
図２０は、印刷ボタン表示処理を説明するためのフローチャートである。
【０１０１】
まず、現在の画面が、印刷ボタン表示する画面であるか否かを判定する（ステップＳ５１）。本例では、現在の画面が、印刷対象の画像データを選択した画面であるか否かを判断する。印刷アプリケーションの画面が図7および図８の画面を含む場合には、図８（ａ）の画像選択画面６１３および図８（ｂ）の印刷設定画面６１７が、印刷ボタン表示する画面に該当する。現在の画面が、画像データを選択した画面でない場合には、図２０の処理を終了する。
【０１０２】
現在の画面が、画像データを選択した画面である場合には、プリンタがプリント機能を有しているか否かを判定する（ステップＳ５２）。具体的には、ペアリング処理（ステップＳ３１）において取得したＢＬＥのアドバタイズ情報内の、通信装置の機能および状態に関する情報に基づいて判定する。図１７は、本例における通信装置の機能および状態に関する情報の説明図である。プリンタがプリント機能を有している場合には、通信装置の機能および状態に関する情報の格納領域に、プリンタ機能を有していることを示す情報が格納される。図１７の例においては、１ｏｃｔｅｔ目の領域にプリント機能の有無を示す情報が格納され、ｖａｌｕｅに格納されている“１”は、プリント機能を有していることを意味する。プリント機能がない場合には、“０”が格納される。プリント機能がない場合には、図２０の処理を終了する。
【０１０３】
プリント機能がある場合には、プリンタがハンドオーバー機能を有しているか否かを判定する（ステップＳ５３）。具体的には、ペアリング処理（ステップＳ３１）において取得したＢＬＥのアドバタイズ情報内の、通信装置の機能および状態に関する情報に基づいて判定する。プリンタがハンドオーバー機能を有している場合には、ハンドオーバー機能を有していることを示す情報が格納される。図１７の例においては、３ｏｃｔｅｔ目の領域に、ハンドオーバー機能を有していることを示す情報が格納され、ｖａｌｕｅに格納されている“１”は、ハンドオーバー機能を有していることを意味する。ハンドオーバー機能を有していない場合には、“０”０が格納される。プリンタにハンドオーバー機能がない場合には、図２０の処理を終了する。プリンタにハンドオーバー機能がある場合には、図１８の印刷ボタン１６０１を表示する（ステップＳ５４）。印刷ボタン１６０１内の文字は、アドバタイズ情報の通信装置名を表す。
【０１０４】
本例では、通信装置がプリントの場合について説明した。しかし、スキャンなど他の機能をもつ通信装置に対しても適用できることは勿論である。
【０１０５】
なお、図１９における印刷ボタン表示処理（ステップＳ３４）は、ペアリング処理（ステップＳ３１）の完了に加えて、そのペアリング処理が完了したプリンタが登録プリンタであること（または、カレントプリンタであること）を条件として、行われてもよい。
【０１０６】
あるいは、図１９における印刷ボタン表示処理（ステップＳ３４）は、ペアリング処理（ステップＳ３１）が完了したプリンタが登録プリンタであるか否かにに関わらず実行されてもよい。その場合、印刷ボタンが選択されたときに、プリンタが登録プリンタであること（または、カレントプリンタであること）を条件として、後述する図２１の処理によってハンドオーバーが行われてもよい。また、印刷ボタンが選択されたときに、プリンタが登録プリンタでない（または、カレントプリンタでない）場合であっても、ユーザーがハンドオーバーを許可するための指示を行うことによって、そのハンドオーバーが行われてもよい。
【０１０７】
（ハンドオーバー）
図２１は、印刷ボタン１６０１をユーザーが選択した場合に実行するハンドオーバーを説明するためのフローチャートである。
【０１０８】
まず、情報処理装置は、プリンタからＢＬＥのＧＡＴＴ通信によってハンドオーバー情報を取得する（ステップＳ６１）。ハンドオーバー情報には、プリンタのネットワーク設定に関する３種類の情報が含まれている。具体的には、（１）プリンタのＭＡＣアドレス、（２）通信装置がアクセスポイントモード（以降、「ＡＰモード」という）時のＳＳＩＤとパスワード、（３）プリンタが現在利用可能なネットワーク接続モード、の３種類の情報である。なお、情報（３）接続モードは、ＡＰモード、インフラストラクチャーモード、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔモードのいずれかのモードとなる。また、利用可能なネットワーク接続であるため、接続中であるとは限らない。ＡＰモードは、図１における通信装置１５１の通信部１５６がアクセスポイントの機能を有しているために、情報処理装置１０１がアクセスポイント１３１を介さずに直接、通信装置１５１と接続が可能なモードである。
【０１０９】
ハンドオーバー情報を取得した後は、情報処理装置のＷｉ−Ｆｉ設定が有効か否かを判定する（ステップＳ６２）。Ｗｉ−Ｆｉ設定が有効であることは、情報処理装置がＷｉ−Ｆｉ通信可能な状態であることを意味する。Ｗｉ−Ｆｉ設定が有効の場合にはステップＳ６４に移行し、Ｗｉ−Ｆｉ設定が無効の場合には、情報処理装置のＷｉ−Ｆｉ設定を有効にしてから（ステップＳ６３）から、ステップＳ６４に移行する。
【０１１０】
ステップＳ６４，Ｓ６５では、のプリンタの現在のネットワーク接続モード（情報（３））を判定する。すなわち、ステップＳ６４では、プリンタがＷｉ−Ｆｉ  Ｄｉｒｅｃｔを利用可能であるか否かを判定する。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔが利用可能な場合、情報処理装置は、プリンタに対してＷｉ−Ｆｉ  Ｄｉｒｅｃｔによって接続するための処理を実行する（ステップＳ６６）。その接続処理の終了により、図２１の処理を終了する。一方、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔが利用不可の場合には、プリンタがＡＰモードを利用可能であるか否かを判定する（ステップＳ６５）。ＡＰモードが利用可能な場合、情報処理装置は、プリンタのＡＰモードに接続するための処理を実行する（ステップＳ６７）。その接続処理の終了により、図２１の処理を終了する。ＡＰモードが利用不可な場合には、情報処理装置の指示によりプリンタを一時的にＡＰモードによって起動し、そのＡＰモード（以降、「強制ＡＰモード」という）によって接続する（ステップＳ６８）。このように接続モードを一時的に変更した場合には、ハンドオーバーのための処理（本例では、プリント）が終了した後に、情報処理装置の指示によって、プリンタは元のネットワーク接続モードに戻る。
【０１１１】
プリンタは不特定多数によって利用される可能性があるため、プリンタのネットワーク状態の変更を極力行わないように、ハンドオーバー処理を実行する。プリンタは、複数のネットワーク接続モードに同時に接続可能であってもよく、この場合にも図２１の処理は適用可能である。本例においては、プリンタが現在利用可能なネットワーク接続モードの内、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続を優先する。その理由は、モバイルデータ通信とＷｉ−Ｆｉとによる同時接続が不可能な情報処理装置のＯＳがあった場合に、Ｗｉ−Ｆｉによって接続するとモバイルデータが通信不可となり、ユーザーの利便性が低下するからである。一方、そのようなＯＳであっても、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続の場合にはモバイルデータ通信との同時通信が可能であるため、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続を優先する。
【０１１２】
図２２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続処理を説明するためのフローチャートである。
【０１１３】
まず、プリンタに対して、ＢＬＥのＧＡＴＴ通信により、現在のネットワーク接続モードによって接続可能であることを通知する（ステップＳ７１）。その通知を受けることにより、プリンタは、接続モード変更および他の情報処理装置から処理実行を受け付けない排他モードとなり、情報処理装置との接続を待つ。なお、ハンドオーバーのための処理（本例では、プリント）が終了した後は、排他モードも自動的に終了する。ステップＳ７１からステップＳ７２に移行して、情報処理装置とプリンタとが既に接続中である否かを判定する。具体的に、情報処理装置は、ネットワーク内にブロードキャストし、図２１のステップＳ６１において取得したプリンタのＭＡＣアドレス（情報（１））と一致するプリンタを検出する。それが検出できた場合には、既にプリンタと接続済みであると判定して、図２２の処理を終了する。プリンタと接続されていない場合には、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続処理を実行して（ステップＳ７３）、プリンタと情報処理装置とをＷｉ−Ｆｉ  Ｄｉｒｅｃｔによって接続する。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続には、図２１のステップＳ６１において取得したプリンタのＭＡＣアドレス（情報（１））を利用し、情報処理装置からの接続要求に応じて、プリンタの表示部１６０（図１参照）を用いて、情報処理装置の接続許可をユーザーに求める。その接続が許可されることにより、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔによって接続される。
【０１１４】
図２３は、ＡＰモード接続処理を説明するためのフローチャートである。
【０１１５】
図２２のステップＳ７１，Ｓ７２と同様に、プリンタに対して、ＢＬＥのＧＡＴＴ通信により、現在のネットワーク接続モードによって接続可能であることを通知してから、情報処理装置とプリンタとが既に接続中である否かを判定する。情報処理装置とプリンタとが接続されていない場合には、プリンタのＡＰモード接続処理を実行する（ステップＳ７４）。その接続処理においては、図２１のステップ６１において取得した、プリンタのＡＰモード時のＳＳＩＤとパスワード（情報（２））を利用して、ＡＰモードになったプリンタとの接続を確立する。
【０１１６】
図２４は、強制ＡＰモード接続処理を説明するためのフローチャートである。
【０１１７】
まず、情報処理装置とプリンタとが既に接続中であるか否かを判定する（ステップＳ８１）。その判定の処理、図２２および図２３のステップＳ７２と同じであるため、説明は省略する。情報処理装置とプリンタとが接続されている場合には、ステップＳ８２に移行し、図２２および図２３のステップＳ７１と同様に、プリンタに対して、ＢＬＥのＧＡＴＴ通信により、現在のネットワーク接続モードによって接続可能であることを通知する。この通知の後に、図２４の処理を終了する。情報処理装置とプリンタとが接続されていない場合には、プリンタに対して、ＢＬＥのＧＡＴＴ通信により、現在のネットワーク接続モードでの接続不可であるため、一時的にネットワーク接続モードをＡＰモードに変更することを指示する（ステップＳ８３）。プリンタは、その指示を受けことにより、接続モードをＡＰモードに変更し、他の情報処理装置からの処理実行を受け付けない排他モードとなって、情報処理装置との接続を待つ。ハンドオーバーのための処理（本例では、プリント）が終了した後には、排他モードも自動的に終了する。プリンタに対して強制ＡＰモードを指示した後はステップＳ８４に移行し、図２３のステップＳ７４と同様に、プリンタのＡＰモード接続処理を実行する。
【０１１８】
そして、Ｓ１１１１で、情報処理装置は、ＮＦＣタグに、ＡＰモードへの移行指示を書き込む。そして、プリンタは、ＮＦＣのタグにＡＰモードへの移行指示が書き込まれたことを感知すると、ＡＰモードへの移行処理を実施する。
【０１１９】
このような一連の処理により、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔあるいはインフラストラクチャーモードによる情報処理装置とプリンタとの接続が確立された場合は、その接続状態を維持して、印刷などの処理を実行する。その接続が確立されない場合には、プリンタに対してＡＰモードへの移行を指示する。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔあるいはインフラストラクチャーモードでの接続を極力維持するために、プリンタおよび情報処理装置のインターネットへの接続も極力維持する。また、プリンタのネットワーク接続モードの変更を極力行わないことにより、接続モード変更のタイムロス、および他の情報処理装置とのネットワーク接続切断を防ぐことができる。
【０１２０】
（第２の実施形態）
第１の実施形態におけるペアリング処理の場合は、不特定多数の情報処理装置が意図せずに図１０のペアリングの確認ダイアログ８００によってペアリングを実施し、通信装置の表示部１６０に、図５（ａ）のＰＩＮコード表示画面２００が表示される可能である。本実施形態においては、このような意図しないＰＩＮコード表示画面２００の表示を防ぐ。
【０１２１】
図２５は、印刷アプリケーションが実施するペアリング処理を説明するためのフローチャートである。前述した実施形態における図９と同様に処理については、同一のステップ番号を付して説明を省略する。
【０１２２】
ステップＳ８において、アドバタイズを発信しているプリンタが前述の登録プリンタであると判定された場合には、ステップＳ９１に移行して、プリンタからのアドバタイズＳ２３００が近距離用アドバタイズであるか否かを判定する。近距離用アドバタイズとは、ＢＬＥの送信電力を小さく抑えて、受信距離を制限するように調整するアドバタイズである。近距離用アドバタイズをプリンタが送信する際には、アドバタイズ情報内の、通信装置の機能および状態に関する情報として、近距離用アドバタイズであることを示す情報が格納される。図２６は、本例におけるアドバタイズ情報内の、通信装置の機能および状態に関する情報の説明図である。本例では、６ｏｃｔｅｔ目の領域に、アドバタイズが近接距離用アドバタイズであるか否かを示す情報が格納され、近接距離用アドバタイズである場合には“１”が格納される。近接距離用アドバタイズでない場合には、“０”が格納される。このようなアドバタイズ情報から、近接距離用アドバタイズであることが判定された場合、処理はＳ７０７に移る。近接距離用アドバタイズでない場合には、ステップＳ９２に移行して、図２７に示すような情報表示ダイアログ２５００を表示する。この情報表示ダイアログ２５００によって、情報処理装置をプリンタに近接させることをユーザーに促す。情報処理装置が近接距離用アドバタイズを受信すると、図２７のダイアログ２５００は自動的に非表示となり、ペアリング処理を実行するためにステップＳ８，Ｓ９に移行する。ユーザーによって図２７中のキャンセルボタン２５０１が選択された場合には、ペアリング処理は中断される。
【０１２３】
このように、本実施形態におけるペアリングの処理は、通信装置の近接距離に位置する情報処理装置のみによって実行できるように制限される。これにより、通信装置に、図５（ａ）のＰＩＮコード表示画面２００が不用意に表示されることを防ぐことができる。
【０１２４】
（第３の実施形態）
前述した実施形態においては、ペアリング情報内に、通信装置の状態などに関する情報を格納するように構成した。しかし、このような構成に限定されず、例えば、通信装置の状態などに関する情報をＧＡＴＴ通信によって取得するように構成してもよい。
【０１２５】
また、前述した実施形態においては、ＰＩＮコード認証によるペアリングを行わないと、ＧＡＴＴ通信ができない通信装置について説明した。ペアリングは、不特定多数の情報処理装置と通信装置との接続を防ぐための処理であるため、他の方法によって実現してもよい。例えば、ＢＬＥ通信時に情報処理装置の識別情報を通信装置に送信し、その通信装置の表示部に図２８に示すような識別情報を表示して、ユーザーに接続許可を求めるようにしてもよい。その場合、通信装置は、そのＲＯＭに識別情報を保持し、情報処理装置は、ＧＡＴＴ通信を行う際に識別情報を通信装置に送信する。そして、通信装置は、そのＲＯＭに保持されている識別情報と、情報処理装置からの識別情報と、を比較し、その比較結果に基づいて、ＧＡＴＴ通信によるデータ送信の可否を決定する。ＧＡＴＴ通信によるデータ送信不可と判定した場合には、空の情報を返却するようにしてもよい。
【０１２６】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２７】
１０１  情報処理装置
１５１  通信装置
１０３，１５４  ＣＰＵ
１０８，１６０  表示部
【図１】
2018050347.tif 000003
【図２】
2018050347.tif 000004
【図３】
2018050347.tif 000005
【図４】
2018050347.tif 000006
【図５】
2018050347.tif 000007
【図６】
2018050347.tif 000008
【図７】
2018050347.tif 000009
【図８】
2018050347.tif 000010
【図９】
2018050347.tif 000011
【図１０】
2018050347.tif 000012
【図１１】
2018050347.tif 000013
【図１２】
2018050347.tif 000014
【図１３】
2018050347.tif 000015
【図１４】
2018050347.tif 000016
【図１５】
2018050347.tif 000017
【図１６】
2018050347.tif 000018
【図１７】
2018050347.tif 000019
【図１８】
2018050347.tif 000020
【図１９】
2018050347.tif 000021
【図２０】
2018050347.tif 000022
【図２１】
2018050347.tif 000023
【図２２】
2018050347.tif 000024
【図２３】
2018050347.tif 000025
【図２４】
2018050347.tif 000026
【図２５】
2018050347.tif 000027
【図２６】
2018050347.tif 000028
【図２７】
2018050347.tif 000029
【図２８】
2018050347.tif 000030
【手続補正書】
【提出日】平成30年2月2日(2018.2.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報処理装置によって実行されるプログラムであって、
通信装置との通信のペアリングのための所定の処理を実行する実行工程と、
前記実行工程における前記所定の処理により前記ペアリングが完了している前記通信装置との通信に応じて、所定の表示を前記情報処理装置の表示部に表示する表示工程と、
を前記情報処理装置に実行させ、
前記表示工程では、前記所定の表示が前回表示された後に、前記通信装置による処理対象の候補となるデータが前記情報処理装置に追加されていることを条件に、前記所定の表示を新たに表示することを特徴とするプログラム。
【請求項２】
前記表示工程において、前記所定の表示が前回行われた後に前記追加されたデータを抽出する抽出工程をさらに前記情報処理装置に実行させ、
前記表示工程では、前記抽出工程において前記追加されたデータが抽出された場合に、前記所定の表示を表示することを特徴とする請求項１に記載のプログラム。
【請求項３】
前記表示工程において前記所定の表示が行われた場合に、前記所定の表示が行われた時間に関する情報を更新する更新工程をさらに前記情報処理装置に実行させ、
前記抽出工程では、前記更新工程において更新が行われた情報に対応する時間と、前記情報処理装置に記憶されている、前記通信装置による処理対象の候補となるデータの時間情報と、に基づき、前記追加されたデータを抽出することを特徴とする請求項２に記載のプログラム。
【請求項４】
前記データは画像データであり、
前記時間情報は、前記画像データの撮影時間または更新日時または作成日時を示す情報であることを特徴とする請求項３に記載のプログラム。
【請求項５】
前記表示工程では、前記所定の表示として、前記情報処理装置に記憶されている、前記通信装置による処理対象の候補となるデータのうちの、前記追加されたデータを表示することを特徴とする請求項１乃至４のいずれか１項に記載のプログラム。
【請求項６】
前記通信装置は、印刷を行う印刷装置であり、
前記表示工程では、前記追加されたデータを、前記印刷装置により印刷を行う印刷候補として表示することを特徴とする請求項５に記載のプログラム。
【請求項７】
前記表示工程では、前記所定の表示として、前記通信装置との通信のときに前記表示部に表示されている画面に応じて異なる表示を行うことを特徴とする請求項１乃至５のいずれか１項に記載のプログラム。
【請求項８】
前記表示工程において前回表示が行われた後に所定の時間が経過するまでは、前記表示工程において新たな通知が行われないことを特徴とする請求項１乃至７のいずれか１項に記載のプログラム。
【請求項９】
前記実行工程では、
前記通信装置に所定の認証情報を出力させるための出力指示を行い、
前記情報処理装置の前記表示部に入力された認証情報を前記通信装置に送信し、
前記送信された認証情報と、前記出力指示により前記通信装置に出力された前記所定の認証情報とが対応する場合に、前記情報処理装置と前記通信装置とにおける通信のペアリングが実行されることを特徴とする請求項１乃至８のいずれか１項に記載のプログラム。
【請求項１０】
前記出力指示は、前記通信装置に所定の認証情報を表示させるための指示であることを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記情報処理装置と前記通信装置は、ＢＬＥにより通信を行い、前記実行工程における前記所定の処理によりＢＬＥにおけるペアリングが実行されたことに基づいて、前記情報処理装置と前記通信装置は、ＧＡＴＴ通信を行うことを特徴とする請求項１乃至１０のいずれか１項に記載のプログラム。
【請求項１２】
前記通信装置の状態を確認する状態確認工程をさらに前記情報処理装置に実行させ、
ＢＬＥのＧＡＴＴ通信により、前記通信装置に対して、前記状態確認工程で確認された前記通信装置の状態に応じた処理の実行指示を行うことを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記状態確認工程では、ＢＬＥにおけるアドバタイズ情報を受信した場合に、前記アドバタイズ情報から前記通信装置の状態を確認することを特徴とする請求項１２に記載のプログラム。
【請求項１４】
前記通信装置が所定の起動状態よりも消費電力が少ない所定の状態にあることが前記状態確認工程において確認された場合に、前記実行指示として前記通信装置に対して、前記通信装置を前記所定の起動状態とするための処理の実行が指示されることを特徴とする請求項１２または１３に記載のプログラム。
【請求項１５】
前記通信装置は、印刷を行う印刷装置であり、且つプリント状態を良好に維持するための回復処理を実行可能であり、
前記通信装置が所定の状態にあることが前記状態確認工程において確認された場合に、前記実行指示として前記通信装置に前記回復処理の実行が指示されることを特徴とする請求項１２または１３に記載のプログラム。
【請求項１６】
前記通信装置はインクジェットプリンタであり、前記回復処理は、インクをプリントヘッドから吐出させることでプリントヘッド内に固着したインクを排出させるための処理であることを特徴とする請求項１５に記載のプログラム。
【請求項１７】
前記通信装置とのＢＬＥによる通信に基づいて、他の通信方式により前記通信装置との通信を行う通信制御工程を前記情報処理装置にさらに実行させることを特徴とする請求項１１乃至１６のいずれか１項に記載のプログラム。
【請求項１８】
前記通信制御工程は、ＢＬＥのＧＡＴＴ通信により、前記通信装置のネットワーク接続モードを特定するための情報を取得する工程を含み、
前記取得された情報により特定された前記ネットワーク接続モードに従って、前記他の通信方式により、前記通信装置とのネットワーク接続が確立されることを特徴とする請求項１７に記載のプログラム。
【請求項１９】
前記表示工程では、前記ペアリングが完了している前記通信装置からＢＬＥのアドバタイズ情報を受信した場合に、前記所定の表示を表示することを特徴とする請求項１１乃至１８のいずれか１項に記載のプログラム。
【請求項２０】
前記プログラムはアプリケーションであり、
前記ペアリングは、前記アプリケーションにより表示される複数の画面のうちの所定の画面が表示されていることを条件に実行されることを特徴とする請求項１乃至１９のいずれか１項に記載のプログラム。
【請求項２１】
情報処理装置によって実行される情報処理方法であって、
通信装置との通信のペアリングのための所定の処理を実行する実行工程と、
前記実行工程における前記所定の処理により前記ペアリングが完了している前記通信装置との通信に応じて、所定の表示を前記情報処理装置の表示部に表示する表示工程と、
を含み、
前記表示工程では、前記所定の表示が前回表示された後に、前記通信装置による処理対象の候補となるデータが前記情報処理装置に追加されていることを条件に、前記所定の表示を新たに表示することを特徴とする情報処理方法。
【請求項２２】
通信装置と通信可能な情報処理装置であって、
前記通信装置との通信のペアリングのための所定の処理を実行する処理手段と、
前記処理手段における前記所定の処理により前記ペアリングが完了している前記通信装置との通信に応じて、所定の表示を前記情報処理装置の表示部に表示する表示手段と、
を備え、
前記表示手段は、前記所定の表示が前回表示された後に、前記通信装置による処理対象の候補となるデータが前記情報処理装置に追加されていることを条件に、前記所定の表示を新たに表示することを特徴とする情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
本発明の目的は、情報処理装置と通信装置とのペアリングの実行に基づくユーザー確認を、適切な条件で行うことにある。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明のプログラムは、情報処理装置によって実行されるプログラムであって、通信装置との通信のペアリングのための所定の処理を実行する実行工程と、前記実行工程における前記所定の処理により前記ペアリングが完了している前記通信装置との通信に応じて、所定の表示を前記情報処理装置の表示部に表示する表示工程と、を前記情報処理装置に実行させ、前記表示工程では、前記所定の表示が前回表示された後に前記情報処理装置に画像データが追加されていることを条件に、前記所定の表示を新たに表示することを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明によれば、情報処理装置と通信装置とのペアリングの実行に基づくユーザー確認を、適切な条件で行うことができる。