IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特開2023-183241プログラム、情報処理装置、制御方法、通信装置、および通信システム
<>
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図1
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図2
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図3
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図4
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図5
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図6
  • 特開-プログラム、情報処理装置、制御方法、通信装置、および通信システム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183241
(43)【公開日】2023-12-27
(54)【発明の名称】プログラム、情報処理装置、制御方法、通信装置、および通信システム
(51)【国際特許分類】
   H04W 76/10 20180101AFI20231220BHJP
   H04W 12/04 20210101ALI20231220BHJP
   H04W 84/12 20090101ALI20231220BHJP
   H04L 9/32 20060101ALI20231220BHJP
   H04W 92/08 20090101ALI20231220BHJP
   H04L 9/08 20060101ALI20231220BHJP
【FI】
H04W76/10
H04W12/04
H04W84/12
H04L9/32 200B
H04W92/08 110
H04L9/08 F
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022096758
(22)【出願日】2022-06-15
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】大塚 正喜
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA34
(57)【要約】
【課題】通信装置のネットワークセットアップを行う際の利便性を向上する技術を提供すること。
【解決手段】
プログラムは、通信装置と無線通信が可能な情報処理装置のコンピュータに、通信装置が対応しているセットアップ方式に関する対応方式情報を取得させ、通信装置を通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を通信装置に送信させることであって、通信装置が第1の方式によるネットワークセットアップに対応していることを対応方式情報が示す場合に、特定信号を通信装置に送信し、通信装置が第1の方式によるネットワークセットアップに対応していないことを対応方式情報が示す場合に、特定信号を送信しない、よう制御させる。
【選択図】図4
【特許請求の範囲】
【請求項1】
通信装置と無線通信が可能な情報処理装置のコンピュータを、
前記通信装置が対応しているセットアップ方式に関する対応方式情報を取得する第1の取得手段と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信するよう制御する送信制御手段であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御手段と、
として機能させるためのプログラム。
【請求項2】
前記通信装置が前記第1の方式を含む複数の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合、前記送信制御手段は前記特定信号を送信することを特徴とする請求項1に記載のプログラム。
【請求項3】
前記情報処理装置のコンピュータを、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合であって、前記通信装置が前記第1の方式とは異なる第2の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記第2の方式によるネットワークセットアップによって前記通信装置を前記アクセスポイントに接続させるか否かの選択を表示する表示手段、
としてさらに機能させることを特徴とする請求項1に記載のプログラム。
【請求項4】
前記表示手段が前記第2の方式によるネットワークセットアップによって前記通信装置を前記アクセスポイントに接続させるか否かの選択を表示した場合であって、前記第2の方式によるネットワークセットアップを実行しないと選択された場合に、前記表示手段は手動でのネットワークセットアップを行うか否かの選択を受け付ける画面を表示し、
前記送信制御手段は、手動でのネットワークセットアップが選択された場合に、前記通信装置に手動セットアップのための入力画面を表示させる指示信号を送信する、
ことを特徴とする請求項3に記載のプログラム。
【請求項5】
前記情報処理装置のコンピュータを、前記アクセスポイントが対応しているセットアップ方式に関する第2の対応方式情報を取得する第2の取得手段としてさらに機能させ、
前記送信制御手段は、前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合であって、前記アクセスポイントが前記第1の方式によるネットワークセットアップに対応していることを前記第2の対応方式情報が示す場合に、前記特定信号を送信するよう制御する
ことを特徴とする請求項1に記載のプログラム。
【請求項6】
前記第1の方式とはWi-Fi Easy Connectであることを特徴とする請求項1に記載のプログラム。
【請求項7】
前記情報処理装置のコンピュータを、
前記特定信号を送信した場合に、前記通信装置から、出力される公開鍵を用いて得られる特定情報を取得する第2の取得手段と、
前記第2の取得手段で前記特定情報を取得した後に、前記公開鍵が利用された認証要求を送信する第1の送信手段と、
前記第1の送信手段で送信した前記認証要求に対する認証応答を前記通信装置から受信する受信手段と、
前記受信手段で前記認証応答を受信した後に、前記通信装置と前記アクセスポイントとの間に無線接続を確立するために使用される接続情報を前記通信装置に送信する第2の送信手段と、
としてさらに機能させることを特徴とする請求項1に記載のプログラム。
【請求項8】
前記特定情報は、前記公開鍵がコード化されることによって得られるコード画像であり、
前記第2の取得手段は、前記情報処理装置の撮影部によって撮像された前記コード画像から前記特定情報を取得することを特徴とする請求項7に記載のプログラム。
【請求項9】
前記第1の取得手段は、前記通信装置に、前記通信装置が対応しているセットアップ方式に関する前記対応方式情報を問い合わせる第1の信号を送信し、前記第1の信号への応答として前記通信装置から前記通信装置が対応しているセットアップ方式に関する前記対応方式情報を含む応答を受信することで前記対応方式情報を取得することを特徴とする請求項1に記載のプログラム。
【請求項10】
通信装置と無線通信が可能な情報処理装置の制御方法であって、
前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を取得する第1の取得工程と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信する送信制御工程であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御工程と、
を含むことを特徴とする制御方法。
【請求項11】
情報処理装置と無線通信が可能な通信装置であって、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
を備えることを特徴とする通信装置。
【請求項12】
情報処理装置と無線通信が可能な通信装置のコンピュータに、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
として機能させるためのプログラム。
【請求項13】
通信装置と、前記通信装置と無線通信が可能な情報処理装置と、を含む通信システムであって、
前記情報処理装置は、
前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を取得する第1の取得手段と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信する送信制御手段であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御手段と、
を備え、
前記通信装置は、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
を備えることを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は通信装置のネットワークセットアップに関するプログラム、情報処理装置、制御方法、通信装置、および通信システムに関する。
【背景技術】
【0002】
近年、デジタルカメラ、プリンタ、携帯電話・スマートフォンなどの電子機器に無線通信機能を搭載し、これらの機器を無線ネットワークに接続して通信装置として使用するケースが増えている。電子機器を無線ネットワークに接続するには、暗号方式、暗号鍵、認証方式、認証鍵等のさまざまな通信パラメータを設定する必要がある。そのため通信パラメータの設定は煩雑であり、デジタルカメラやプリンタのユーザには敷居が高い。そのため、通信パラメータの設定を簡単にするための仕組みが利用されている。また、通信パラメータの情報漏えい等を防ぐため、通信パラメータを公開鍵暗号方式で秘匿化してユーザ端末に通知する仕組みも利用されている。
【0003】
その一つとして、Wi-Fi AllianceでDPP(Device Provisioning Protocol)を使ったWEC(Wi-Fi Easy Connect)という機器間でネットワーク情報を送受信する仕組みが規格化されている。WECでは、ネットワーク情報の送受のトリガーとなるBootstrappingの手段としてQRコード(登録商標)、BLE、NFCなどが挙げられており、通信相手となる機器に公開鍵を提供することで通信が開始される。
【0004】
特許文献1では、通信パラメータの情報を含むQRコード(登録商標)画像を媒介することにより、通信端末における通信パラメータの設定を容易にする技術が記載されている。また特許文献2では、プリンタが端末から特定信号を受信した後にQRコード(登録商標)を出力部に出力することが記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006-261938号公報
【特許文献2】特開2019-180036号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献2では、プリンタがWECに非対応の場合においても、端末は特定信号をプリンタに送信してしまう。その結果、プリンタが特定信号に反応せず、プリンタのネットワークセットアップに失敗し、ユーザが通信装置のネットワークセットアップを行う際の利便性が低下することが課題であった。
【0007】
そこで本発明は、通信装置のネットワークセットアップを行う際の利便性を向上する技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明に係るプログラムは、
通信装置と無線通信が可能な情報処理装置のコンピュータを、
前記通信装置が対応しているセットアップ方式に関する対応方式情報を取得する第1の取得手段と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信するよう制御する送信制御手段であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御手段と、
として機能させる。
【発明の効果】
【0009】
本発明によれば、通信装置のネットワークセットアップを行う際の利便性を向上する技術を提供することができる。
【図面の簡単な説明】
【0010】
図1】情報処理装置と通信装置とを含む通信システムの構成を示す図である。
図2】情報処理装置と通信装置とによって実行される処理を示すシーケンス図である。
図3】情報処理装置がWEC用アプリによって表示するWEC開始画面の一例を示す図である。
図4】アクセスポイントと未接続である情報処理装置が実行する通信装置のネットワークセットアップ処理の一例を示すフローチャートである。
図5】(A)~(D)は情報処理装置のUI画面の一例を示す図である。
図6】アクセスポイントと接続している情報処理装置が実行する通信装置のネットワークセットアップ処理の一例を示すフローチャートである。
図7】通信装置が実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
[第1実施形態]
本実施形態に係る通信システムに含まれる情報処理装置101及び通信装置151について説明する。本実施形態では、情報処理装置101としてスマートフォンを例示しているが、これに限定されない。例えば情報処理装置101として、携帯端末、PC(パーソナルコンピュータ)、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置151としてプリンタを例示しているが、これに限定されず、情報処理装置101と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等を適用可能である。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等を適用可能である。また、その他にも、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機を適用可能である。
【0013】
また、本実施形態では、情報処理装置101は、Wi-Fi Easy Connect(以下、WEC)(登録商標)と呼ばれる機能に対応している場合は、当該機能を実行可能である。WECとは、Wi-Fi Allianceで策定されたDevice Provisioning Protocol(以下、DPP)を用いて、他の装置のネットワークセットアップを実行する機能である。なお、他の装置のネットワークセットアップとは、他の装置を、ネットワークを形成するアクセスポイントと接続させる処理である。
【0014】
WECにおいては、「Configurator」という役割で動作する装置(以下、Configurator装置)と、「Enrollee」という役割で動作する装置(以下、Enrollee装置)との間で通信が行われる。Configurator装置はEnrollee装置からBootstrapping情報を取得する。Bootstrapping情報には、例えばEnrollee装置の識別情報(MACアドレス等)や、Enrollee装置とセキュアな通信を行うために用いられる公開鍵情報などが含まれる。本実施形態では、Bootstrapping情報を「WEC関連情報」として説明する。なお、他の情報がWEC関連情報として用いられても良い。そして、Configurator装置は、取得したBootstrapping情報を用いてEnrollee装置との無線通信を実行する。具体的には、例えば、Configurator装置は、Bootstrapping情報に含まれる公開鍵を用いてプロトコルキーを暗号化し、暗号化したプロトコルキーをEnrollee装置に送信する。そして、Configurator装置は、その暗号化したプロトコルキーに基づいて共通鍵を暗号化し、その共通鍵を用いて暗号化した情報を、Enrollee装置に送信する。なお、ここで送信される情報は、具体的には例えば、アクセスポイントに接続するための接続情報である。そして、Enrollee装置は、Configurator装置から受信した接続情報を使ってアクセスポイントとの無線接続を確立する。なお、本実施形態におけるWECによるネットワークセットアップ処理においては、WECに対応している情報処理装置101は、Configurator装置として動作するものとして説明する。また、WECに対応している通信装置151は、Enrollee装置として動作するものとして説明する。
【0015】
まず、本実施形態の情報処理装置101と、本実施形態の情報処理装置101と通信可能な通信装置151の構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を一例として説明するが、図示された機能に限定されない。互いに通信可能な装置として適用可能な装置で実施可能な機能に対応する構成を適宜有する。
【0016】
情報処理装置101は、入力インターフェイス102、CPU103、ROM104、RAM105、外部記憶装置106、出力インターフェイス107、表示部108、通信部110、近距離無線通信部111、撮影部112を有する。CPU103、ROM104、RAM105等によって、プログラムを実行する情報処理装置101のコンピュータが形成される。
【0017】
入力インターフェイス102は、キーボード109等の操作部が操作されることにより、ユーザからのデータ入力や動作指示を受け付けるためのインターフェイスである。なお、操作部は、物理キーボードや物理ボタン等であっても良いし、表示部108に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インターフェイス102は、表示部108を介してユーザからの入力を受け付けても良い。
【0018】
CPU103は、システム制御部であり、情報処理装置101の全体を制御する。ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを記憶する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に記憶されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。
【0019】
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、不図示のデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに記憶することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
【0020】
外部記憶装置106は、通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム(以後、設定アプリ)、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。設定アプリとは、通信装置151の接続先のアクセスポイントの設定をWEC等で行うためのアプリケーションプログラムである。なお、設定アプリは、ネットワークセットアップ以外の他の機能を備えていても良い。例えば、設定アプリは、通信装置151に印刷を実行させる機能や、通信装置151の原稿台にセットされた原稿をスキャンさせる機能、通信装置151の状態を確認する機能等を備えていても良い。設定アプリは、例えば、通信部110を介したインターネット通信によって、外部のサーバからインストールされることにより、外部記憶装置106に格納される。また、外部記憶装置106は、通信部110を介して接続している通信装置151との間で送受信する情報送受信制御プログラム等の各種プログラムや、これらのプログラムが使用する各種情報を保存している。
【0021】
出力インターフェイス107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインターフェイスである。表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。
【0022】
通信部110は、通信装置151やアクセスポイント131等の装置と接続して、データ通信を実行するための構成である。例えば、通信部110は、通信装置151内のアクセスポイント(不図示)に接続可能である。通信部110と通信装置151内のアクセスポイントが接続することで、情報処理装置101と通信装置151は相互に通信可能となる。なお、通信部110は無線通信で通信装置151とダイレクトに通信しても良いし、情報処理装置101及び通信装置151の外部に存在する外部装置を介して通信しても良い。なお、外部装置とは、情報処理装置101の外部及び通信装置151の外部に存在する外部アクセスポイント(アクセスポイント131等)や、アクセスポイント以外で通信を中継可能な装置を含む。本実施形態では、通信部110が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるWi-Fi(WirelessFidelity)(登録商標)であるものとする。そして、前述のWECは、通信部110による通信により実行されるものとする。また、アクセスポイント131としては、例えば、無線LANルータ等の機器などが挙げられる。なお、本実施形態において、情報処理装置101と通信装置151とが外部アクセスポイントを介さずにダイレクトに接続する方式をダイレクト接続方式という。また、情報処理装置101と通信装置151とが外部アクセスポイントを介して接続する方式をインフラ接続方式という。
【0023】
近距離無線通信部111は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成であり、通信部110とは異なる通信方式によって通信を行う。近距離無線通信部111は、例えば、通信装置151内の近距離無線通信部157と接続可能である。通信方式としては、例えば、Near Field Communication(NFC)、Bluetooth(登録商標) Classic、Bluetooth Low Energy(BLE)、Wi-Fi Aware等が挙げられる。
【0024】
撮影部112は、外部を撮像する例えばカメラである。本実施形態では、情報処理装置101はさらに、不図示の、バーコード読取制御部を備える。バーコード読取制御部は、例えばカメラである撮影部112により撮影された画像を解析し、符号化されたコード情報を取得する。バーコード読取制御部は、バーコード、二次元コード、QRコード(登録商標)などのコード情報の解析処理を実施する。
【0025】
本実施形態では、情報処理装置101は、設定アプリによるネットワークセットアップ処理の実行指示に基づいて情報処理装置101のOSによりWECを実行する。
【0026】
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、通信部156、近距離無線通信部157を有する。ROM152、RAM153、CPU154等によって、プログラムを実行する通信装置151のコンピュータが形成される。
【0027】
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の外部装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部110に接続可能である。通信部156が、該アクセスポイントを有効化することで、通信装置151がアクセスポイントとして動作することになる。なお、通信部156は、情報処理装置101とダイレクトに無線接続しても良いし、アクセスポイント131を介して無線接続しても良い。本実施形態では、通信部156が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるものとする。また、通信装置151がWECに対応しているのであれば、前述のWECが、通信部156による通信により実行されるものとする。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウェアによりアクセスポイントとして動作してもよい。
【0028】
本実施形態の通信装置151は、通信部156を用いて通信を行うためのモードとして、インフラストラクチャモード及びP2P(Peer to Peer)モードで動作可能である。
【0029】
インフラストラクチャモードとは、通信装置151が、ネットワークを形成する外部装置(例えばアクセスポイント131)を介して、情報処理装置101等の他の装置と通信する形態である。インフラストラクチャモードで動作する通信装置151によって確立される外部アクセスポイントとの接続を、インフラストラクチャ接続(以後、インフラ接続)という。本実施形態では、インフラ接続において、通信装置151が子機として動作し、外部アクセスポイントが親機として動作する。なお、本実施形態において親機とは、親機が属するネットワークにおいて使用される通信チャネルを決定する装置であり、子機とは、子機が属するネットワークにおいて使用される通信チャネルを決定せず、親機が決定した通信チャネルを用いる装置である。
【0030】
P2Pモードとは、通信装置151が、ネットワークを形成する外部装置を介さず、情報処理装置101等の他の装置と直接的に通信する形態である。本実施形態では、P2Pモードには、通信装置151がアクセスポイントとして動作するAPモードが含まれるものとする。APモード時に通信装置151内で有効化されるアクセスポイントの接続情報(SSIDやパスワード)は、ユーザが任意に設定可能であるものとする。なお、P2Pモードには、例えば、通信装置151がWi-Fi Direct(WFD)によって通信するためのWFDモードが含まれていても良い。なお、複数のWFD対応機器のうちいずれが親機として動作するかは、例えば、Group Owner Negotiationというシーケンスに従って決定される。なお、Group Owner Negotiation(以降、GO Negotiationと省略)が実行されずに、親機が決定されても良い。WFD対応機器であり且つ親機の役割を果たす装置を特に、Group Ownerという。P2Pモードで動作する通信装置151によって確立される他の装置との直接的な接続をダイレクト接続という。本実施形態では、ダイレクト接続において、通信装置151が親機として動作し、他の装置が子機として動作する。
【0031】
近距離無線通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成であり、例えば、情報処理装置101内の近距離無線通信部111と接続可能である。通信方式としては、例えば、NFC、Bluetooth Classic、BLE、Wi-Fi Aware等が挙げられる。
【0032】
RAM153は、バックアップ電源を必要とするSRAM等で構成される。なお、RAM153は、不図示のデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに記憶することができる。また、通信装置151の設定情報や通信装置151の管理データ等を格納するメモリエリアもRAM153に設けられている。また、RAM153は、CPU154の主メモリとワークメモリとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存するための受信バッファや各種の情報を保存する。
【0033】
ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを記憶する。本実施形態では、ROM152に記憶されている各制御プログラムは、ROM152に記憶されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。CPU154は、システム制御部であり、通信装置151の全体を制御する。
【0034】
プリントエンジン155は、RAM153に保存された情報や情報処理装置101等から受信した印刷ジョブに基づき、インク等の記録剤を紙等の記録媒体上に付与することで記録媒体上に画像を形成し、印刷結果を出力する。なお、一般的に、情報処理装置101等から送信される印刷ジョブのデータ量は大きいため、印刷ジョブの通信には、高速通信が可能な通信方式を用いることが求められる。そのため、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、印刷ジョブを受信する。表示部161は、例えばパネルであり、データの表示や通信装置151の状態の通知を行う。
【0035】
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
【0036】
本実施形態では、通信部110及び156は、装置間で通信パラメータを共有するための通信パラメータ共有処理を実行する。通信パラメータ共有処理は、提供側の装置が受信側の装置に無線通信するための通信パラメータを提供する処理であり、インフラモードとP2Pモードそれぞれで行われ得る。ここで、通信パラメータには、例えば、ネットワーク識別子としてのSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵等の無線LAN通信を行うために必要な無線通信パラメータが含まれる。また、MACアドレス等の識別情報、パスワード、IP層での通信を行うためのIPアドレス、上位サービスに必要な情報等も含まれる。これらのアクセスポイントに接続するために使用される無線通信パラメータは、接続情報とも呼ばれる。通信部110及び156が実行する通信パラメータ共有処理は、例えば、Wi-Fi Allianceで規定されているWPS(Wi-Fi Protected Setup)であってもよい。また、通信部110及び156が実行する通信パラメータ共有処理では、公開鍵暗号方式を用いて通信パラメータを安全に転送するような方式が用いられても良い。
【0037】
また、通信装置151は、不図示の画像コード生成部を備える。画像コード生成部は、図1では不図示であるが、例えば、CPU154がプログラムを実行することにより実現される。画像コード生成部では、バーコード、二次元コード、QRコード(登録商標)などの画像コード(コード情報)の生成を実施し、表示部161で、生成した画像コードを表示するための制御を実施する。画像コード生成部は、通信パラメータの設定に必要な情報がコード化されたコード画像を表示部161に表示させる。なお、表示部161は、ユーザからの入力インターフェイスとして、ソフトボタンなどを表示できる構成であってもよい。
【0038】
以上の構成を有する通信システムの動作について説明を行う。以下の説明では、情報処理装置101が外部のアクセスポイントに接続していない状態で、情報処理装置101が通信装置151のネットワークセットアップを実行するために、特定信号の送信を行うか否かを切り替える送信制御を行う処理について説明する。
【0039】
まず、図2図3を用いて、DPPを利用したWECにおいて、情報処理装置101と通信装置151によって実行されるネットワークセットアップ処理の一例を説明する。図2に示すシーケンスは、例えば、各装置のCPUが各装置のROMや外部記憶装置等に格納されたプログラムを各装置のRAMに読み出して実行することにより実現される。
【0040】
まず、S200において通信装置151は、DPP待ち受けモードを開始する。DPP待ち受けモード開始のトリガーは、例えば、操作部159を介したユーザ操作であってもいいし、情報処理装置101等の外部装置から特定信号を受信することであってもよい。DPP待ち受けモードが開始されるとWEC関連情報の読み取りが可能となる。例えば、S201に示すBootstrappingにQRコード(登録商標)などのコード画像を用いる場合、通信装置151は、WEC関連情報がコード化されたコード画像を生成し、表示部161に表示する。
【0041】
S201では、情報処理装置101がBootstrappingによって、WEC関連情報を取得する。例えば、Bootstrappingにコード画像を用いる場合、情報処理装置101は、設定アプリにおいてコード画像の撮影機能を実行する。コード画像撮影機能では撮影部112を用いてコード画像の撮影を行い、撮影された画像からコード画像を解析し、コード化された公開鍵などのWEC関連情報を取得する。これによって、設定アプリはコード画像に基づいてWEC関連情報を取得できる。
【0042】
S202では、情報処理装置101がOSの機能により、DPPを利用したWECを開始する。具体的にはまず情報処理装置101は、WEC用アプリの起動指示を設定アプリからOSに指示することで、WEC用アプリを起動する。これにより、WEC用アプリがフォアグラウンドで動作し、設定アプリがバックグラウンドで動作することとなる。なお例えば当該指示の実行が、WECを実行するための指示に相当することとなる。これにより情報処理装置101は、WEC用アプリによるWEC開始画面を表示する。なおWEC用アプリは、情報処理装置101に予めインストールされているプログラムであり、情報処理装置101のOSベンダーによって提供されるプログラムである。また、WEC用アプリが起動された場合、設定アプリによって取得されたWEC関連情報が、WEC用アプリに提供される。
【0043】
図3は、WEC用アプリによって表示されるWEC開始画面の一例である。WEC開始画面300には領域301、302、303が表示されている。領域301は、WECによる設定対象として設定されているアクセスポイントを変更するための領域である。なお領域301が操作される前は、WECによる設定対象として設定されているアクセスポイントは、情報処理装置101が現在接続しているアクセスポイントである。情報処理装置101は、領域301が選択された場合、アクセスポイントのリストを表示し、リストからユーザによって選択されたアクセスポイントを、WECによる設定対象として新たに設定する。なおアクセスポイントのリストには、情報処理装置101が接続したことがあるアクセスポイント等が含まれるものとする。領域302は、WECの実行をキャンセルするための領域であり、領域303は、WECの実行を指示するための領域である。
【0044】
情報処理装置101は、領域302が操作された場合、本シーケンス図における処理を終了する。また、情報処理装置101は、領域303が押下された場合、S203に進む。但し、他の一例としては、図3の表示は行わずに、領域303が押下されていない状態で、S203に進んでもよい。S203では、WEC用アプリが、WEC関連情報やWECによる設定対象として設定されているアクセスポイントに関する情報を用いてWEC用のAPIを実行することにより、OSにWECの実行を指示する。そして、OSの機能により、情報処理装置101と通信装置151との間で、DPP Authenticationと呼ばれる認証要求処理が実行される。
【0045】
DPP Authenticationにおいては、情報処理装置101と通信装置151との間で、認証情報や、情報の暗号化に利用される情報などが通信されることで、装置間の通信の認証が行われる。なおDPP Authenticationにおける通信において情報処理装置101から送信される各種情報は、情報処理装置101によって通信装置151から取得されているWEC関連情報に含まれる公開鍵に基づき暗号化される。DPP Authenticationにおいては具体的にはまず情報処理装置101が、認証要求としてAuthentication Requestを送信する。
【0046】
次に、DPP待ち受けモードとして動作する通信装置151は、Authentication Requestを待ち受けるモードであるDPP待ち受けモードとして動作しているため、情報処理装置101から送信された当該Requestを受信する。Authentication Requestを受信した通信装置151は、受信したAuthentication Requestを、自身が現在有している復号鍵による復号化を試みる。そして通信装置151は、当該復号化に成功した場合、認証応答としてAuthentication responseを情報処理装置101に送信し、情報処理装置101との通信を認証する。なお、情報処理装置101が、正確なWEC関連情報を取得できておらず、正確に情報を暗号化できていなかった場合は、通信装置151における復号化が失敗するため、認証は失敗し、Authentication responseが送信されない。Authentication responseが情報処理装置101によって受信されることで、DPP Authenticationが完了する。またDPP Authenticationにおいては、DPPが用いられて通信が実行される。
【0047】
次にS204において、OSの機能により、情報処理装置101と通信装置151との間で、DPP Configurationと呼ばれる処理が実行される。DPP Configurationにおいては、情報処理装置101は、WECによる設定対象として設定されているアクセスポイントと接続するための接続情報をWECにより通信装置151に送信する。なお接続情報には、WECによる設定対象として設定されているアクセスポイントのSSIDやパスワード、暗号化方式を示す情報等が少なくとも一つ以上含まれる。このとき送信されるパスワードは、情報処理装置101とアクセスポイントとの間の接続が確立される際にOS対応のアプリが表示する画面上においてユーザによって入力された情報である。そして、送信されるパスワードは、情報処理装置101とアクセスポイントとの間の接続が確立された際にOSにより保持された情報である。またパスワードは、設定アプリは保持していない情報である。また、このとき送信されるパスワードは、OSが既に保持している情報であり、且つDPP ConfigurationはOSによって実行される処理であるため、設定アプリが表示する画面上において新たにユーザによって入力される必要はない。
【0048】
本実施形態のようにWECによって接続情報を送信することで、設定アプリが表示する画面上においてユーザからパスワードの入力を新たに受け付けることなく且つ、セキュアな通信で、パスワードを通信装置151に送信することができる。なおDPP Configurationにおいても、DPPが用いられて通信が実行される。
【0049】
S205において、通信装置151は、DPP Configurationが完了したことに応じてDPP待ち受けモードを終了する。
【0050】
S206において、通信装置151は、DPP Configurationによって接続情報が取得できたことをもってインフラストラクチャモードに移行する。そして通信装置151は、接続情報を用いて、当該接続情報に対応するアクセスポイントとの接続を試みる。接続が成功した場合、以後、通信装置151は、接続したアクセスポイントが形成するネットワークを介して通信を実行可能となる。なお接続したアクセスポイントが形成するネットワークを介した通信は、DPPとは異なるプロトコル(具体的には例えば、Port9100やSNMP、HTTP、通信装置151のベンダー独自のプロトコル)によって実行される。
【0051】
なお通信装置151は、WECによって取得した接続情報に対応するアクセスポイントとの接続の成否を示す情報を、情報処理装置101に送信しても良い。また、さらに、WECによって取得した接続情報に対応するアクセスポイントとの接続が失敗した場合は、失敗した原因を示す情報を、情報処理装置101に送信しても良い。またこれらの情報送信は、DPPが用いられて実行されてよい。WECによって取得した接続情報に対応するアクセスポイントとの接続が失敗する原因は、WECにおける通信のエラーや、当該アクセスポイントが発見されなかったことや、通信装置151から取得されたWEC関連情報が適切でなかったこと等である。また例えば、アクセスポイントとの接続が失敗する原因は、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式が、通信装置151の対応していない暗号化方式であったこと等である。また例えば、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式が、WECが対応していない暗号化方式であったこと等である。なお情報処理装置101は、WECによって取得した接続情報に対応するアクセスポイントと通信装置151との接続の成否を示す情報を表示部108に表示してもよい。さらに、WECによって取得した接続情報に対応するアクセスポイントと通信装置151との接続が失敗した場合は、失敗した原因を示す情報を表示部108に表示してもよい。
【0052】
S207では、情報処理装置101は、WECの実行が終わったことに基づいて、フォアグラウンドで動作しているアプリを、WEC用アプリから設定アプリに切り替える。そして、情報処理装置101は、自身が属するネットワーク上で、通信装置151を検索する。本処理は、WECの実行が終わったことの通知をOSから受け取った設定アプリにより実現される。そして情報処理装置101は、通信装置151が発見された場合に、通信装置151に、通信装置151にケイパビリティ情報を要求する問い合わせを行う。通信装置151はケイパビリティ情報を情報処理装置101に送信する応答を実行する。これにより、設定アプリ上に、通信装置151の情報を登録し、以後、設定アプリによって通信装置151との通信を実行可能とする。具体的には例えば、設定アプリによって通信装置151に印刷ジョブを送信可能とする。
【0053】
なおこのとき、WECによって通信装置151が接続したアクセスポイントによって形成されるネットワークに情報処理装置101が属している場合には、当該アクセスポイントを介して通信装置151との通信が実行可能となる。また、通信装置151が接続したアクセスポイントが、情報処理装置101が接続しているアクセスポイントでなかった場合等、情報処理装置101と通信装置151との間の通信が実行できない場合は、ケイパビリティ情報の要求や取得は省略される。なおS207における通信は、例えば、DPPともセットアップ用通信プロトコルとも異なる通信プロトコルが利用されて実行されることができる。その後、情報処理装置101は、本シーケンス図における処理を終了する。
【0054】
なお上述では、WEC用アプリによってWEC開始画面が表示され、WEC用アプリがWEC用のAPIを実行することによりWECの実行をOSに指示する形態を説明したが、この形態に限定されない。例えば設定アプリによってWEC開始画面が表示されても良い。またWEC用のAPIを設定アプリが実行することによりWECの実行をOSに指示する形態であっても良い。
【0055】
また上述では、Bootstrappingの手段としてコード画像を用いる方法を例示したが、この形態に限定されない。例えば、Bootstrappingの手段として、NFCやBLEといった近距離無線通信が用いられてもよい。また、他手段として、DPP待ち受けモードで起動されているセットアップ用アクセスポイントを介したSNMPやHTTPなどの通信プロトコルによる通信が用いられてもよい。
【0056】
次に、図4図5(A)~5(D)、図7を用いて、情報処理装置101がアクセスポイントに接続していない状態で開始する、通信装置151に特定信号を送信するか否かを制御する送信制御のための処理シーケンスについて説明する。
【0057】
図4はアクセスポイントと未接続である情報処理装置101が実行する接続処理を示すフローチャートである。図4の処理は、このフローチャートで示す処理は、例えばユーザが情報処理装置101を操作して設定アプリの起動を指示したことに基づいて開始される。また図4のフローチャートで示す処理は、例えば、CPU103がROM104やメモリ等に格納された設定アプリをRAM105に展開して実行することにより実現される。以下の説明では、図4に示す処理は設定アプリによって実行されるものとして説明を行うが、情報処理装置101が実行する他のアプリや通信部110など、情報処理装置101のソフトウェアおよびハードウェアの組み合わせによって実現されればよい。
【0058】
S400において、情報処理装置101はユーザ操作により設定アプリを起動する。設定アプリはS401において、情報処理装置101と通信装置151との接続を実施するか否かの画面を情報処理装置101の表示部108に表示する。そして、設定アプリは、通信装置151との接続を開始するか否かを判定する。なお、このときの通信装置151との接続は、通信装置151に対するネットワークセットアップを行うための接続である。
【0059】
図5(A)は、設定アプリによって表示部108に表示される通信装置151との接続開始画面の一例である。接続開始画面500には領域501、領域502が表示されている。領域501は、通信装置151との接続処理を開始する指示を受け付けるための領域である。領域502は通信装置151との接続処理を開始しない指示を受け付けるための領域である。
【0060】
S401において、領域502を押下されたことを検知した場合(S401でNo)、情報処理装置101は通信装置151への特定信号の送信を行うことなく、図4に示す処理を終了する。一方、S401において、接続処理を開始する領域を押下されたことを設定アプリが検知した場合(S401でYes)、情報処理装置101は処理をS402に進める。S402では、設定アプリは、アクセスポイントのサーチ処理を実行し、情報処理装置101の付近に存在するアクセスポイントを探索する。ここで、アクセスポイントのサーチ処理は、アクセスポイントから報知されるネットワーク情報を待ち受けるパッシブスキャン、またはProbe Request信号をアクセスポイントに送信してネットワーク情報を取得するアクティブスキャンである。
【0061】
次に、S403において、設定アプリは通信装置151が対応しているネットワークセットアップ方式に関する対応方式情報を取得する。対応方式情報は、例えばWECやWi-Fi Directなど、対応しているネットワークセットアップの方式を示す特定の文字列などの情報を含む。この場合、通信装置151が複数の方式に対応している場合には、対応方式情報は複数の方式を示す情報を含んでもよい。別の例では、対応方式情報は、通信装置151がWECなどの特定のネットワークセットアップ方式に対応しているか否かを示すフラグを含んでもよい。例えば、対応方式情報は、複数のネットワークセットアップ方式のそれぞれについて、対応しているか否かを示す複数のフラグを含んでもよい。
【0062】
ここで、情報処理装置101が通信装置151の対応方式情報を取得する4つの例を挙げる。
【0063】
第1の例は、通信装置151がAPモードで動作し、アクセスポイントのサービスセット識別子(SSID)に、通信装置151の識別子、および対応方式情報を含むビーコンを送信する。この場合、情報処理装置101は、S402にて検出したアクセスポイントのサービスセット識別子(SSID)に基づいて、セットアップ対象の通信装置151が対応しているネットワークセットアップ方式を判定することができる。
【0064】
第2の例は、S402にて検出したアクセスポイントのSSIDに、通信装置151の識別子が含まれ、ProbeRequest信号に対する応答であるProbeResponse信号に通信装置151の対応方式情報が含まれる。この場合、情報処理装置101は、S402において検出したアクセスポイントのSSIDに基づいて通信装置151を特定する。そして、S403でProbeRequest信号を送信し、対応方式情報を含むProbeResponse信号を受信することで、情報処理装置101は通信装置151が対応しているネットワークセットアップ方式を判定することができる。
【0065】
第3の例は、通信装置151から対応方式情報を取得するために、情報処理装置101はネットワークセットアップに使用する接続とは異なる接続を確立し、確立した接続を介して通信装置151から対応方式情報を取得する。例えば、情報処理装置101は、情報処理装置101と通信装置151とでダイレクト無線接続を行い、通信装置151が対応しているネットワークセットアップ方式に関する対応方式情報を取得することができる。
【0066】
第4の例は、情報処理装置101は、記憶部に格納された情報を利用して通信装置151が対応しているネットワークセットアップ方式を判定する。例えば、情報処理装置101は、過去に接続した通信装置151ごとに、通信装置151が対応するネットワークセットアップ方式に関する情報お外部記憶装置106などの記憶部に格納する。情報処理装置101は、S402にて検出したSSIDに基づいて通信装置151を特定し、特定した通信装置151の対応方式情報を記憶部から取得する。これによって、通信装置151が対応しているネットワークセットアップ方式を情報処理装置101が判定することができる。
【0067】
次に、S404において、通信装置151がWECに対応していないと設定アプリが判定した場合、設定アプリは、特定信号の送信を行わない(S413)。続いてS414において、設定アプリは通信装置151がWEC以外のネットワークセットアップ方式に対応しているか否かを判定する。通信装置151がWEC以外のネットワークセットアップ方式に対応していないと設定アプリが判定した場合(S414でNo)、設定アプリは処理をS417に進め、ユーザに手動設定でのネットワークセットアップ(手動セットアップ)の実行を指示する。ここで、手動セットアップとは、ユーザが通信装置151を直接操作して通信装置151とは異なるアクセスポイントに接続させることを指す。情報処理装置101は、ユーザに手動セットアップの実行を指示する画面を表示してもよい。また、設定アプリは、通信装置151に、手動セットアップのための入力画面を表示するよう指示信号を送信しても良い。これによって、通信装置151は手動セットアップ処理に高速に切り替えることができる。
【0068】
通信装置151がWEC以外のネットワークセットアップ方式に対応していると設定アプリが判定した場合(S414でYes)、設定アプリはS415に処理を進める。S415においては、設定アプリはWEC以外の方式によるネットワークセットアップを行うかの選択を情報処理装置101に表示してユーザに選択させる。このとき、WEC以外の方式によるネットワークセットアップをユーザが拒否した場合、S417でユーザに手動設定でのネットワークセットアップの実行を指示する。また、S415でWEC以外の方式によるネットワークセットアップを実行するとユーザが選択した場合、S416において、WEC以外の方式を用いて、情報処理装置101は通信装置151とネットワークセットアップ処理を実行する。WEC以外のネットワークセットアップ方式は、例えば、情報処理装置101と通信装置151がダイレクト接続するWi-Fi Direct(WFD)やμAPのようなダイレクト接続を使用した方式である。この方式によれば、ダイレクト接続を使用して、通信装置151が通信装置151とは異なるアクセスポイントに接続するために使用される特定情報を情報処理装置101から送信される。ダイレクト接続は、上述したものに加え、BluetoothLowEnergy(BLE)等の他の接続方式であってもよい。
【0069】
一方で、通信装置151がWECに対応していると判定された場合、次にS405において、設定アプリはアクセスポイントサーチの結果、検出されたアクセスポイントの電波強度が閾値以上であるか否かを判定する。尚、電波強度は、具体的には一例として、SNR(Signal Noise Ratio)で表される。S405で電波強度が閾値以上でないと判定された場合、情報処理装置101は、S413で特定信号を送信しない。そして、S414、S415において、設定アプリは、ユーザ選択によりWEC以外の方式によるネットワークセットアップ処理を行うか、ユーザの手動操作によるセットアップ処理(手動セットアップ処理)を行う。
【0070】
一方、アクセスポイントの電波強度が閾値以上である判定された場合、情報処理装置101は処理をS406に進め、WECに対応しているアクセスポイントが検出されたか否かを判定する。例えば、S402においてアクセスポイントがアドバタイズしたビーコン、又は、ProveResponseのAKMにDPPを示す情報が含まれているか否かに基づいて、S404の判定が行われてもよい。尚、AKMとはAuthentication and Key Managementの略である。S406において、検出されたアクセスポイントがWECに対応していないと判定された場合は、S413で特定信号を送信しないよう設定する。そして、S414、S415において、設定アプリは、判定に応じてユーザ選択によりWEC以外の方式によるネットワークセットアップ処理か、ユーザの手動操作によるネットワークセットアップ処理かを実行するよう指示する。
【0071】
一方で、S406においてWEC対応のアクセスポイントが見つかった場合、次にS407において、設定アプリはアクセスポイントの一覧の画面を表示する。図5(B)は、設定アプリによって表示されるアクセスポイント一覧画面の一例である。アクセスポイント一覧画面510には領域511、領域512が表示されている。領域511は、アクセスポイントと通信装置151との接続を行うネットワークセットアップを開始する指示を受け付けるための領域であり、アクセスポイントのSSID一覧を表示している。領域511の何れかのSSIDを選択すると、当該アクセスポイントと通信装置151とを接続させるネットワークセットアップ処理を開始する。
【0072】
ここで、WEC対応のアクセスポイントがユーザに選択されやすくなるように、領域511の一番上のSSID(SSID:XXXXYYYYZZZZ1)にWEC対応のアクセスポイントを表示してもよい。また、WEC対応のアクセスポイントのSSIDに「推奨」などの文言表示を行うようにしてもよいし、SSID文字列に色を付ける等、識別可能としてもよい。これによって、WECに対応しているアクセスポイントが選択されやすくすることができる。言い換えれば、WECに対応していないアクセスポイントを意図せずに選択させてしまうことを防ぐことができる。尚、領域512の領域が選択されると、領域511の一覧に表示されていないアクセスポイントの指定を受け付けることができる。例えば領域511の一覧に表示されていないアクセスポイントの表示を行うようにしてもよいし、再度アクセスポイントサーチを行い、その探索結果の表示を行うようにっしても良い。すなわち、領域512は、領域511に表示されたアクセスポイント以外のアクセスポイントを介して通信装置151のネットワークセットアップを開始する指示を受け付ける領域である。
【0073】
また、WECに対応しているアクセスポイントが選択されやすくなるように、図5(B)の代わりに図5(C)のアクセスポイント接続確認画面520を表示してもよい。領域521は、表示されているSSIDのアクセスポイントと接続を行う指示を受け付けるための領域である。領域522は、表示されていない他のアクセスポイントの指定を受け付けるための領域である。領域521が押下された場合には、表示されているSSIDのアクセスポイントと、情報処理装置101との接続処理を開始する。領域522が押下された場合には、表示されていないアクセスポイントの表示を行うようにしてもよいし、WECに対応している他のアクセスポイントの表示を行ってもよい。あるいは、再度アクセスポイントサーチを行い、表示されているアクセスポイントとは異なる、WECに対応しているアクセスポイントの表示を行うようにしてもよい。
【0074】
次に、S408において、設定アプリは、情報処理装置101とS407で選択されたアクセスポイントとの接続を行う。尚、セットアップ方式はWEC以外の方法であってもよい。その際、アクセスポイントと情報処理装置101とを接続するために、ユーザに対してアクセスポイントのパスワードを情報処理装置101に入力させるようにしてもよい。
【0075】
次に、S409において、設定アプリはS407でWECに対応しているアクセスポイントが選択されたか否かを判定する。ここでは、選択されたアクセスポイントに基づいて判定する例を挙げたが、他の判定の構成が用いられてもよい。例えば、S408で接続したアクセスポイントがWECに対応しているか否かに基づいて判定してもよい。
【0076】
S409において、WECに対応しているアクセスポイントが選択されなかったと判定された場合(S409でNo)、設定アプリは、S413に処理を進め、特定信号を送信しないよう設定する。そして、設定アプリは、S414、S415においてユーザの選択に応じて、WEC以外の方式によるネットワークセットアップ処理を行う。
【0077】
一方で、WECに対応しているアクセスポイントが選択されたと判定された場合(S409でYes)、設定アプリは処理をS410に進め、通信装置151とアクセスポイントとの接続確認画面を表示する。図5(d)は、設定アプリによって表示される接続確認画面の一例である。接続確認画面530には領域531、領域532、通信装置151のSSID、通信装置151のシリアルナンバーが表示されている。領域531は、WECによるネットワークセットアップ方式を用いたアクセスポイントと通信装置151との接続処理を実行しない指示を受け付けるための領域である。領域532は、WECによるネットワークセットアップ方式を用いたアクセスポイントと通信装置151との接続処理を実行する指示を受け付けるための領域である。
【0078】
領域531が押下された場合、設定アプリは処理をS413に進め、特定信号を送信しないよう設定し、S414、S415においてWEC以外のセットアップ方式による接続処理を行う。尚、接続確認画面530に表示される通信装置151のSSIDは、例えばS402のアクセスポイントサーチで検出され、S404でWECに対応していると判定された通信装置151のSSIDである。また、表示される通信装置151のシリアルナンバーは、例えば、上述した、情報処理装置101が取得した通信装置151のケイパビリティに含まれているシリアルナンバーである。また、シリアルナンバーではなく、MACアドレスであってもよい。MACアドレスである場合は、例えば、S402のアクセスポイントサーチにおいて取得したビーコン又は、ProbeResponseに含まれるBSSIDから取得されてもよい。シリアルナンバーを表示することにより、ユーザが意図した装置に特定信号を送信することをユーザに認識させることができる。また、接続確認画面530では、シリアルナンバーを表示しなくてもよい。
【0079】
領域532が押下された場合、S411において、設定アプリは、通信装置151に特定信号を送信する。領域532が押下された場合、S411において、設定アプリは、通信装置151に対するWECによるネットワークセットアップ処理を開始する。まず、設定アプリは、通信装置151に特定信号を送信する。本実施形態における特定信号とは、例えば、WFD方式のServiceDiscoveryRequest、又はProbeRequest(通信装置151のSSIDを指定)である。
【0080】
S412において、図2で説明したように、情報処理装置101は通信装置151に対するWECによるネットワークセットアップ処理が実行される。すなわち、図2で説明したように、通信装置151は、特定信号を受信することで、DPP待ち受けモードを開始し、コード画像の表示を行う。その後、情報処理装置101は、図4に示す処理を終了する。尚、S401、S404、S405、S406、S409、S410において、判定処理を実施し、判定結果に応じて、特定信号を送信するか否かを決定するシーケンスを説明したが、一部の判定処理を実施しなくてもよい。また、S414、S415でWEC以外の方式によるネットワークセットアップ処理を実行するシーケンスを説明したが、一部の判定処理を実施しなくてもよい。例えば、通信装置151がWECに対応していない場合には、手動操作によるネットワークセットアップ処理を指示するように図4に示す処理を変更してもよい。また、図4の各処理は、設定アプリからの指示により実行されるとして説明したが、設定アプリではなく、WEC用アプリからの指示により実行されてもよいし、OSからの指示により実行されてもよい。
【0081】
図7は、通信装置151がDPP待受モードを開始するまでの処理の一例を示すフローチャートである。図7に示すフローチャートは、例えば通信装置151のCPU154がROM152やメモリ等に格納された設定アプリをRAM153に読み出して実行することにより実現される。また、図7のフローチャートは、例えば通信装置151がネットワークセットアップの開始の指示を受け付けたことに基づいて開始される。なお、図7の例では、情報処理装置101がS403において、通信装置151にProbeRequest信号を送信し、通信装置151が対応しているネットワークセットアップ方式に関する対応方式情報を含むProbeResponse信号を受信する。すなわち、S403において説明した、情報処理装置101が通信装置151の対応方式情報を取得する4つの例のうち、第2の例であるものとして説明を行う。
【0082】
S701において、通信装置151は、問合せ信号の待受モードを開始する。ここで、問合せ信号は、情報処理装置101から送信されたProbeRequest信号であるものとする。例えば、通信装置151は、待受モードの間、所定の長さが切れるまで、問合せ信号を待ち受ける。
【0083】
S702において、通信装置151は、問合せ信号を受信したか否かを判定する。問合せ信号を受信した場合(S702でYes)は、通信装置151は処理をS703に進める。S703では、通信装置151は、対応方式情報を含む応答信号を生成する。すなわち、通信装置151は、通信装置151がWECによるネットワークセットアップに対応しているか否かを判定可能な情報を含む応答信号を生成する。図7の例では、応答信号はProbeResponse信号である。続いて、通信装置151は、S704に処理を進め、S703で生成した応答信号を情報処理装置101に送信する。S704で送信された応答信号に基づいて、情報処理装置101は、通信装置151がWECによるネットワークセットアップに対応しているか否かを判定可能な情報を取得することができる。
【0084】
続いて、通信装置151はS705に処理を進める。通信装置151は、通信装置151がWECによるネットワークセットアップに対応している場合(S705でYes)、通信装置151は処理をS706に進め、特定信号の待受を開始する。特定信号は、上述したようにDPPのProbe Request信号であってもよい。通信装置151が特定信号を受信すると、DPP待受モードを開始し、図2に示すWECによるネットワークセットアップ処理を実行することができる。
【0085】
通信装置151は、通信装置151がWECによるネットワークセットアップに対応していない場合(S705でNo)、通信装置151は処理をS707に進め、特定信号の待受を行わないよう設定する。例えば、Wi-Fi Protected Setup(WPS)などの他のセットアップ方式の開始要求の待ち受けを行ってもよい。
【0086】
以上のように、本実施形態によれば、情報処理装置101は、通信装置151がWECによるネットワークセットアップに対応していない場合には、通信装置151には特定信号を送信しない。これによって、通信装置151がWECに対応していない場合に情報処理装置101が通信装置151に特定信号を送信し、応答がないことによってネットワークセットアップ処理が失敗することを防ぐことができる。これによって、通信装置151のネットワークセットアップ処理にかかる時間が不要に長くなることや、特定信号を不要に送信することによるネットワーク帯域の消費を抑えることができる。また、情報処理装置101は、WECに対応していない通信装置と、WECに対応している他の装置とが存在する場合に、通信装置に対してWEC方式によるネットワークセットアップ処理を実行して特定信号を送信することを避けることができる。これにより、ユーザが意図していない装置、上記の例ではWECに対応している他の装置が反応し、他の装置がユーザの意図していない動作を行うことを防ぐことができる。
【0087】
なお、図4の例では、情報処理装置101は、S403では、取得した情報から通信装置151が対応するネットワークセットアップ方式の識別を行うものとして図示している。しかしながら、情報処理装置101は、通信装置151がWECなどの特定のネットワークセットアップ方式に対応しているか否かのみを判定してもよい。この場合、情報処理装置101は図4のS414で通信装置151がWEC以外のネットワークセットアップ方式に対応しているか否かを判定することができなくてもよい。このような場合、情報処理装置101はS413の後にユーザ手動設定でのネットワークセットアップ(S417)に処理を進めるようにしてもよい。
【0088】
[第2実施形態]
以下、第1実施形態と異なる点を中心に第2実施形態について説明する。第1実施形態では、情報処理装置101が外部のアクセスポイントと未接続である状態から図4の処理が開始され、通信装置151に特定信号を送信する処理と特定信号を送信しない処理とを切り替えるよう制御することを説明した。第2実施形態では情報処理装置101が外部のアクセスポイントと接続している状態から上記の2つの処理を切り替えるよう制御する処理が開始される。
【0089】
図6は、本実施形態における特定信号の送信制御の処理を示すフローチャートである。図6の処理は、例えば、CPU103が、ROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。
【0090】
S600において、情報処理装置101はユーザ操作によって情報処理装置101の設定アプリを起動する。S601において、設定アプリは、情報処理装置101と通信装置151との接続を実施するか否かの指示を受け付ける画面を表示する。S601では、第1実施形態と同様に、図5(A)の接続開始画面500が表示される。そして、設定アプリは、通信装置151のネットワークセットアップを開始するか否かを判定する。S601において、領域502が押下されたことを検出した場合、設定アプリは、通信装置151のネットワークセットアップ処理を行わないと判定する。そして、情報処理装置101から特定信号の送信が行われることなく、図6の処理を終了する。一方、領域501が押下されたことを検出した場合、設定アプリは処理をS602に進める。
【0091】
S602において、設定アプリは、通信装置151から対応方式情報の取得を行う。これは、図4のS403と同様であるため説明を省略する。尚、図4はS403の判定の前にアクセスポイントサーチを実行しているが、本実施形態の情報処理装置101は、通信装置151のネットワークセットアップに接続中のアクセスポイントを利用する。このため、情報処理装置101は、S602の判定の前にはアクセスポイントサーチを実行しない。しかしながら、S602の前にアクセスポイントサーチを実行し、S403同様、探索結果を利用して通信装置151が特定のセットアップ方式に対応しているか否かを判定してもよい。
【0092】
次にS603において、S602で取得した対応方式情報から通信装置151はWEC対応か否かの判定を行う。これは、図4のS404と同様のため説明を省略する。通信装置151がWECによるネットワークセットアップに対応していない場合は、S608において、特定信号を非送信とする設定を行う。
【0093】
続いて、S609において、設定アプリは、通信装置151がWEC以外の方式によるネットワークセットアップに対応しているか否かを判定する。WEC以外のセットアップ方式に対応していなければ、設定アプリは、S612でユーザに手動操作でのセットアップを実行するよう指示する。また、S609においてWEC以外のセットアップ方式に対応している場合、S610においてWEC以外の方式でセットアップするか否かをユーザに問い合わせる画面を情報処理装置101に表示し、ユーザ入力を待ち受ける。このとき、WEC以外の方式によるネットワークセットアップを行わないユーザ指示を受け付けた場合、S612でユーザによる手動操作でのセットアップを実行するよう指示する。また、S610でWEC以外の方式によるネットワークセットアップを実行するユーザ指示を受け付けた場合、S611において、WEC以外の方式によって、情報処理装置101は通信装置151のネットワークセットアップを実施する。
【0094】
次にS604において、設定アプリは、情報処理装置101と現在接続しているアクセスポイントがWECに対応しているアクセスポイントであるか否かを判定する。例えば、接続しているアクセスポイントが過去にアドバタイズしたビーコン、又は、ProbeResponseのAKMにDPPが含まれていたか否かに基づいて、S604の判定が行われてもよい。また、S604の判定では、情報処理装置101の不揮発メモリに格納された情報が用いられてもよい。また、図6には図示していないが、接続中のアクセスポイントに対して、AKMを取得するための通信を実施し、取得した情報に基づいてS604の判定が行われてもよい。
【0095】
情報処理装置101と接続中のアクセスポイントがWECに対応していないと判定された場合(S604でNo)、設定アプリは、S608で特定信号の非送信を設定し、S609、S610においてWEC以外の方式によるネットワークセットアップを行う。WEC以外の方式によるネットワークセットアップは、アクセスポイントを介したインフラ接続によって行われても良いし、アクセスポイントを介さないダイレクト接続であってもよい。また、図4のS402以降の処理を実行し、現在接続中のアクセスポイントとは別の、WECに対応しているアクセスポイントを探索し、WECに対応しているアクセスポイントを介してWECによるネットワークセットアップを実行するようにしても良い。これによって、WECによるネットワークセットアップをその他の方式によるネットワークセットアップ方式より優先させることができる。
【0096】
S604で接続中のアクセスポイントがWECに対応していると判定された場合(S604でYes)、設定アプリは処理をS605に進め、通信装置151とアクセスポイントの接続確認画面を表示する。S605では、第1実施形態と同様に、図5(D)の接続確認画面530が表示される。
【0097】
また、以降のS606、S607は図4のS411、S412と同様の処理であるため説明を省略する。
【0098】
以上のように、本実施形態によれば、通信装置151がWECに対応していない場合に、通信装置151に特定信号の送信を行わないようにする。これによって、WECによるネットワークセットアップが実施可能でない場合にも関わらず、情報処理装置101が通信装置151に特定信号の送信を行ってしまうことを防ぐことができる。
【0099】
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0100】
<実施形態のまとめ>
本実施形態の開示は、以下の通りである。
【0101】
(項目1)
通信装置と無線通信が可能な情報処理装置のコンピュータを、
前記通信装置が対応しているセットアップ方式に関する対応方式情報を取得する第1の取得手段と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信するよう制御する送信制御手段であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御手段と、
として機能させるためのプログラム。
【0102】
(項目2)
前記通信装置が前記第1の方式を含む複数の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合、前記送信制御手段は前記特定信号を送信することを特徴とする項目1に記載のプログラム。
【0103】
(項目3)
前記情報処理装置のコンピュータを、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合であって、前記通信装置が前記第1の方式とは異なる第2の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記第2の方式によるネットワークセットアップによって前記通信装置を前記アクセスポイントに接続させるか否かの選択を表示する表示手段、
としてさらに機能させることを特徴とする項目1または2に記載のプログラム。
【0104】
(項目4)
前記表示手段が前記第2の方式によるネットワークセットアップによって前記通信装置を前記アクセスポイントに接続させるか否かの選択を表示した場合であって、前記第2の方式によるネットワークセットアップを実行しないと選択された場合に、前記表示手段は手動でのネットワークセットアップを行うか否かの選択を受け付ける画面を表示し、
前記送信制御手段は、手動でのネットワークセットアップが選択された場合に、前記通信装置に手動セットアップのための入力画面を表示させる指示信号を送信する、
ことを特徴とする項目3に記載のプログラム。
【0105】
(項目5)
前記情報処理装置のコンピュータを、前記アクセスポイントが対応しているセットアップ方式に関する第2の対応方式情報を取得する第2の取得手段としてさらに機能させ、
前記送信制御手段は、前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合であって、前記アクセスポイントが前記第1の方式によるネットワークセットアップに対応していることを前記第2の対応方式情報が示す場合に、前記特定信号を送信するよう制御する
ことを特徴とする項目1から4のいずれか1つに記載のプログラム。
【0106】
(項目6)
前記第1の方式とはWi-Fi Easy Connectであることを特徴とする項目1から5のいずれか1つに記載のプログラム。
【0107】
(項目7)
前記情報処理装置のコンピュータを、
前記特定信号を送信した場合に、前記通信装置から、出力される公開鍵を用いて得られる特定情報を取得する第2の取得手段と、
前記第2の取得手段で前記特定情報を取得した後に、前記公開鍵が利用された認証要求を送信する第1の送信手段と、
前記第1の送信手段で送信した前記認証要求に対する認証応答を前記通信装置から受信する受信手段と、
前記受信手段で前記認証応答を受信した後に、前記通信装置と前記アクセスポイントとの間に無線接続を確立するために使用される接続情報を前記通信装置に送信する第2の送信手段と、
としてさらに機能させることを特徴とする項目1から6のいずれか1つに記載のプログラム。
【0108】
(項目8)
前記特定情報は、前記公開鍵がコード化されることによって得られるコード画像であり、
前記第2の取得手段は、前記情報処理装置の撮影部によって撮像された前記コード画像から前記特定情報を取得することを特徴とする項目7に記載のプログラム。
【0109】
(項目9)
前記第1の取得手段は、前記通信装置に、前記通信装置が対応しているセットアップ方式に関する前記対応方式情報を問い合わせる第1の信号を送信し、前記第1の信号への応答として前記通信装置から前記通信装置が対応しているセットアップ方式に関する前記対応方式情報を含む応答を受信することで前記対応方式情報を取得することを特徴とする項目1から8のいずれか1つに記載のプログラム。
【0110】
(項目10)
通信装置と無線通信が可能な情報処理装置の制御方法であって、
前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を取得する第1の取得工程と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信する送信制御工程であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御工程と、
を含むことを特徴とする制御方法。
【0111】
(項目11)
情報処理装置と無線通信が可能な通信装置であって、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
を備えることを特徴とする通信装置。
【0112】
(項目12)
情報処理装置と無線通信が可能な通信装置のコンピュータに、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
として機能させるためのプログラム。
【0113】
(項目13)
通信装置と、前記通信装置と無線通信が可能な情報処理装置と、を含む通信システムであって、
前記情報処理装置は、
前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を取得する第1の取得手段と、
前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を前記通信装置に送信する送信制御手段であって、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していることを前記対応方式情報が示す場合に、前記特定信号を前記通信装置に送信し、
前記通信装置が前記第1の方式によるネットワークセットアップに対応していないことを前記対応方式情報が示す場合に、前記特定信号を送信しない、
よう制御する送信制御手段と、
を備え、
前記通信装置は、
前記情報処理装置から、前記通信装置が対応しているネットワークセットアップ方式に関する対応方式情報を問い合わせる第1の信号を受信する受信手段と、
前記受信手段で受信した前記第1の信号への応答として、前記対応方式情報を含む応答を送信する送信手段と、
前記送信手段で前記応答を送信すると、前記通信装置を前記通信装置とは異なるアクセスポイントに接続させるための第1の方式によるネットワークセットアップを実行可能とするための特定信号を待ち受ける待受手段と、
を備えることを特徴とする通信システム。
【0114】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0115】
101:情報処理装置、102:入力インターフェイス、103:CPU、104:ROM、105:RAM、106:外部記憶装置、107:出力インターフェイス、108:表示部、109:キーボード、110:通信部、111:近距離無線通信部、112:撮影部、131:アクセスポイント、151:通信装置、152:ROM、153:RAM、154:CPU、155:プリントエンジン、156:通信部、157:近距離無線通信部、158:入力インターフェイス、159:操作部、160:出力インターフェイス、161:表示部、162:スキャンエンジン
図1
図2
図3
図4
図5
図6
図7