JP2023176541A - プログラム、システムおよび方法 - Google Patents

プログラム、システムおよび方法 Download PDF

Info

Publication number
JP2023176541A
JP2023176541A JP2022088879A JP2022088879A JP2023176541A JP 2023176541 A JP2023176541 A JP 2023176541A JP 2022088879 A JP2022088879 A JP 2022088879A JP 2022088879 A JP2022088879 A JP 2022088879A JP 2023176541 A JP2023176541 A JP 2023176541A
Authority
JP
Japan
Prior art keywords
communication device
access point
information
communication
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022088879A
Other languages
English (en)
Inventor
光治 稲垣
Koji Inagaki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2022088879A priority Critical patent/JP2023176541A/ja
Priority to US18/200,713 priority patent/US20230388181A1/en
Publication of JP2023176541A publication Critical patent/JP2023176541A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

【課題】装置に対して特定の信号が送信された後に当該装置に対する所定方式によるネットワークセットアップが行われる構成における利便性を向上させる仕組みを提供する。【解決手段】情報処理装置および通信装置と異なるアクセスポイントの情報を取得する。取得されたアクセスポイントの情報が条件を満たす場合に、アクセスポイントに通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を通信装置に送信する。【選択図】図5

Description

本発明は、装置間の接続に関する設定を行うプログラム、システムおよび方法に関する。
近年、デジタルカメラ、プリンタ、携帯電話・スマートフォンなどの電子機器に無線通信機能を搭載し、これらの機器を無線ネットワークに接続して通信装置として使用するケースが増えている。電子機器を無線ネットワークに接続するには、暗号方式、暗号鍵、認証方式、認証鍵等のさまざまな通信パラメータを設定する必要がある。そのため通信パラメータの設定は煩雑であり、デジタルカメラやプリンタのユーザには敷居が高い。そのため、通信パラメータの設定を簡単にするための仕組みが利用されている。また、通信パラメータの情報漏えい等を防ぐため、通信パラメータを公開鍵暗号方式で秘匿化してユーザ端末に通知する仕組みも利用されている。
その一つとして、Wi-Fi AllianceでDPP(Device Provisioning Protocol)を使ったWEC(Wi-Fi Easy Connect)という機器間でネットワーク情報を送受信する仕組みが規格化されている。WECでは、ネットワーク情報の送受のトリガーとなるBootstrappingの手法としてQRコード、BLE、NFCなどが挙げられており、通信相手となる機器に公開鍵を提供することで通信が開始される。
特許文献1では、通信パラメータの情報を含むQRコード(登録商標)画像を媒介することにより、通信端末における通信パラメータの設定を容易にする技術が記載されている。また、特許文献2では、プリンタが端末から特定信号を受信した後にQRコードを出力部に出力することが記載されている。
特開2006-261938号公報 特開2019-180036号公報
装置に対して特定の信号が送信された後に当該装置に対する所定方式のネットワークセットアップが行われる構成において、装置がその所定方式のネットワークセットアップに対応していない場合に信号が送信されても、該ネットワークセットアップは行われない。
本発明は、装置に対して特定の信号が送信された後に当該装置に対する所定方式によるネットワークセットアップが行われる構成における利便性を向上させる仕組みを提供することを目的とする。
上記課題を解決するため、本発明に係るプログラムは、通信装置と無線通信が可能な情報処理装置のコンピュータを、前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得手段、前記第1取得手段により取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御手段、として機能させる。
本発明によれば、装置に対して特定の信号が送信された後に当該装置に対する所定方式によるネットワークセットアップが行われる構成における利便性を向上させる。
情報処理装置及び通信装置を含むシステムの構成を示す図である。 情報処理装置と通信装置によって実行される処理を示すシーケンス図である。 情報処理装置のUI画面を示す図である。 情報処理装置における特定信号の送信制御処理を示すフローチャートである。 情報処理装置のUI画面を示す図である。 情報処理装置における特定信号の送信制御処理を示すフローチャートである。 DPP待ち受けモードの処理を示すフローチャートである。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[第1実施形態]
本実施形態の通信システムに含まれる情報処理装置及び通信装置について説明する。情報処理装置として、本実施形態ではスマートフォンを例示しているが、これに限定されない。例えば情報処理装置として、携帯端末、PC(パーソナルコンピュータ)、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等を適用することができる。また、プリンタのみならず、複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等が適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機が適用可能である。
また、本実施形態では、情報処理装置は、Wi-Fi Easy Connect(以下、WEC)(登録商標)と呼ばれる機能に対応している場合は、当該機能を実行可能である。WECとは、Wi-Fi Allianceで策定されたDevice Provisioning Protocol(以下、DPP)を用いて、他の装置のネットワークセットアップを実行する機能である。なお他の装置のネットワークセットアップとは具体的には、他の装置を、ネットワークを形成するアクセスポイントと接続させる処理である。WECにおいては、「Configurator」という役割で動作する装置(以下、Configurator装置)と、「Enrollee」という役割で動作する装置(以下、Enrollee装置)との間で通信が行われる。なお本実施形態では、Configurator装置はDPPにおけるInitiatorであり、Enrollee装置は、DPPにおけるResponderであるものとする。Bootstrappingにおいて、Configurator装置はEnrollee装置からBootstrapping情報を取得する。Bootstrapping情報の取得には、例えばQRコード、BLE(Bluetooth Low Energy)、NFC(Near Field Communication)、またはその他の通信を用いる方法が挙げられる。Bootstrapping情報には、例えばEnrollee装置の識別情報(MACアドレス等)や、Enrollee装置とセキュアな通信を行うために用いられる公開鍵情報などが含まれる。本実施形態では、Bootstrapping情報を「WEC関連情報」として説明する。なお、他の情報もWEC関連情報として扱われて良い。そしてConfigurator装置は、取得したBootstrapping情報を用いてEnrollee装置との無線通信を実行する。具体的には例えば、Configurator装置は、Bootstrapping情報に含まれる公開鍵を用いてEnrollee装置と通信を行う。さらに、その通信で得られた情報に基づいて共通鍵を生成し、その共通鍵を用いて暗号化した情報を、Enrollee装置に送信する。なおここで送信される情報は具体的には例えば、アクセスポイントに接続するための接続情報である。そしてEnrollee装置は、Configurator装置から受信した接続情報を使ってアクセスポイントとの無線接続を確立する。なお、本実施形態におけるWECによるネットワークセットアップ処理において、WECに対応している情報処理装置はConfigurator装置として動作し、WECに対応している通信装置はEnrollee装置として動作するものとして説明する。
まず、本実施形態の情報処理装置と、本実施形態の情報処理装置と通信可能な通信装置の構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は通信装置と通信を行うことが可能な装置に関して適用可能なものであり、図1に示す構成に限定されるものではない。
情報処理装置101は、本実施形態の情報処理装置である。情報処理装置101は、入力インタフェース102、CPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース107、表示部108、通信部110、近距離無線通信部111、撮影部112等を有する。CPU103、ROM104、RAM105等によって、情報処理装置101のコンピュータが形成される。
入力インタフェース102は、キーボード109等の操作部が操作されることにより、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、操作部は、物理キーボードや物理ボタン等であっても良いし、表示部108に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インタフェース102は、表示部108を介してユーザからの入力(操作)を受け付けても良い。
CPU103は、システム制御部であり、情報処理装置101の全体を制御する。ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、不図示のデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに記憶することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
外部記憶装置106は、通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム(以後、設定アプリ)、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。設定アプリとは、通信装置151の接続先のアクセスポイントの設定をWEC等で行うためのアプリケーションプログラムである。なお、設定アプリは、ネットワークセットアップ機能以外の他の機能を備えていても良い。例えば設定アプリは、通信装置151に印刷を実行させる機能や、通信装置151にセットされた原稿をスキャンさせる機能、通信装置151の状態を確認する機能等を備えていても良い。設定アプリは、例えば、通信部110を介したインターネット通信によって、外部のサーバからインストールされることにより、外部記憶装置106に格納される。また、外部記憶装置106は、通信部110を介して接続している通信装置151との間で送受信する情報送受信制御プログラム等の各種プログラムや、これらのプログラムが使用する各種情報を保存している。
出力インタフェース107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインタフェースである。表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。
通信部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とが外部アクセスポイントを介して接続する方式をインフラ接続方式という。
近距離無線通信部111は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成であり、通信部110とは異なる通信方式によって通信を行う。近距離無線通信部111は、例えば、通信装置151内の近距離無線通信部157と接続可能である。通信方式としては、例えば、Near Field Communication(NFC)、Bluetooth(登録商標) Classic、Bluetooth Low Energy(BLE)、Wi-Fi Aware等が挙げられる。
撮影部112は、情報処理装置101上で動作するアプリケーションによって撮影機能が実行された場合に動作する。アプリケーションによって撮影機能が実行されると、例えば、撮影部112から取得された情報がCPU103によって処理され、ライブビューとして表示部108に表示される。ここで、アプリケーションによって撮影操作が実行されると、撮影部112から取得された情報がCPU103によって処理され、撮影画像としてRAM105に保存される。さらに、アプリケーションによってQRコード取得機能が実行されると、撮影部112から取得された情報がCPU103によって処理され、QRコードとして解析され、QRコードに含まれる各種情報が取得される。QRコードに含まれる情報としては、例えば、WEC関連情報がある。なお、本実施形態では、二次元コードの一例としてQRコードを扱う。本実施形態では、情報処理装置101は、設定アプリによるネットワークセットアップ処理の実行指示に基づいて情報処理装置101のOSによりWECを実行する。
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、スキャンエンジン162、通信部156、近距離無線通信部157等を有する。ROM152、RAM153、CPU154等によって、通信装置151のコンピュータが形成される。
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部110に接続可能である。通信部156が、該アクセスポイントを有効化することで、通信装置151がアクセスポイントとして動作することになる。なお、通信部156は情報処理装置101とダイレクトに無線接続しても良いし、アクセスポイント131を介して無線接続しても良い。本実施形態では、通信部156が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるものとする。また以下の説明において、Wi-Fi(WirelessFidelity)(登録商標)(Wi-Fi通信)とは、IEEE802.11シリーズに準拠する通信規格である。また、通信装置151がWECに対応しているのであれば、前述したWECを、通信部156による通信により実行するものとする。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウエアにより、アクセスポイントとして動作してもよい。
本実施形態の通信装置151は、通信部156を用いて通信を行うためのモードとして、インフラストラクチャモード及びP2P(Peer to Peer)モードで動作可能である。
インフラストラクチャモードとは、通信装置151が、ネットワークを形成する外部装置(例えば、アクセスポイント131)を介して、情報処理装置101等の他の装置と通信する形態である。インフラストラクチャモードで動作する通信装置151によって確立される外部アクセスポイントとの接続を、インフラストラクチャ接続(以後、インフラ接続)という。本実施形態では、インフラ接続において、通信装置151が子局として動作し、外部アクセスポイントが親局として動作する。なお本実施形態において親局とは、親局が属するネットワークにおいて使用される通信チャネルを決定する装置であり、子局とは、子局が属するネットワークにおいて使用される通信チャネルを決定せず、親局が決定した通信チャネルを用いる装置である。
P2Pモードとは、通信装置151が、ネットワークを形成する外部装置を介さず、情報処理装置101等の他の装置と直接的に通信する形態である。本実施形態では、P2Pモードには、通信装置151がアクセスポイントとして動作するAPモードが含まれるものとする。APモード時に通信装置151内で有効化されるアクセスポイントの接続情報(SSIDやパスワード)は、ユーザが任意に設定可能であるものとする。なおP2Pモードには、例えば、通信装置151がWi-Fi Direct(WFD)によって通信するためのWFDモードが含まれていても良い。なお、複数のWFD対応機器のうちいずれが親局として動作するかは、例えば、Group Owner Negotiationというシーケンスに従って決定される。なお、Group Owner Negotiationが実行されずに、親局が決定されても良い。WFD対応機器であり且つ親局の役割を果たす装置を特に、Group Ownerという。P2Pモードで動作する通信装置151によって確立される他の装置との直接的な接続を、ダイレクト接続という。本実施形態では、ダイレクト接続において、通信装置151が親局として動作し、他の装置が子局として動作する。
また、本実施形態では通信装置151は、ユーザから所定の操作を受け付けることで、通信装置151のネットワークセットアップを実行するためのモードであるネットワークセットアップモードとして動作可能である。通信装置151は、ネットワークセットアップモードとして動作する場合、通信部156を用いることにより、ネットワークセットアップモードとして動作中に有効なセットアップ用アクセスポイントとして動作する。当該セットアップ用アクセスポイントは、上述のAPモード時に有効化されるアクセスポイントとは異なるアクセスポイントである。また当該セットアップ用アクセスポイントのSSIDは、情報処理装置101の設定アプリが認識可能な所定の文字列を含むものとする。また、当該セットアップ用アクセスポイントは、接続にパスワードを必要としないアクセスポイントであるものとする。また、ネットワークセットアップモードとして動作している通信装置151は、セットアップ用アクセスポイントと接続している情報処理装置101との通信において、所定の通信プロトコル(セットアップ用通信プロトコル)を用いるものとする。セットアップ用通信プロトコルは具体的には例えば、SNMP(Simple Network Management Protocol)である。セットアップ用通信プロトコルの他の具体例としては、HTTP(Hypertext Transfer Protocol)なども挙げられる。通信装置151は、ネットワークセットアップモードでの動作を開始した後、所定の時間が経過したら、ネットワークセットアップモードでの動作を停止し、セットアップ用アクセスポイントを無効化する。これは、セットアップ用アクセスポイントは上述したようにパスワードを必要としないアクセスポイントであるため、長時間有効化していると、適切でない装置から接続を要求されてしまう可能性が高まるためである。なおセットアップ用アクセスポイントは、パスワードを必要とするアクセスポイントであっても良い。その場合、セットアップ用アクセスポイントとの接続に用いられるパスワードは、設定アプリが予め把握している固定の(ユーザが変更できない)パスワードであるものとする。
またさらに、本実施形態では通信装置151は、通信装置151のネットワークセットアップを、セットアップ用通信プロトコルとは異なる通信プロトコルで実行するためのモードとしても動作可能である。本実施形態では、セットアップ用通信プロトコルとは異なる通信プロトコルは、上述したDPPであるものとし、当該モードを、DPP待ち受けモードと呼ぶものとする。通信装置151がDPP待ち受けモードで動作している状態において、情報処理装置101からDPPによるネットワークセットアップ要求が受信された場合、DPPによるネットワークセットアップを実行する。そのためDPP待ち受けモードとは言い換えれば、DPPによるネットワークセットアップ要求を待ち受けているモードである。
近距離無線通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成であり、例えば、情報処理装置101内の近距離無線通信部111と接続可能である。通信方式としては、例えば、NFC、Bluetooth Classic、BLE、Wi-Fi Aware等が挙げられる。
CPU154は、システム制御部であり、通信装置151の全体を制御する。RAM153は、バックアップ電源を必要とするSRAM等で構成される。なお、RAM153は、図示しないデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、通信装置151の設定情報や通信装置151の管理データ等を格納するメモリエリアもRAM153に設けられている。また、RAM153は、CPU154の主メモリとワークメモリとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存するための受信バッファや各種の情報を保存する。ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。本実施形態では、ROM152に格納されている各制御プログラムは、ROM152に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。
プリントエンジン155は、RAM153に保存された情報や情報処理装置101等から受信した印刷ジョブに基づき、インク等の記録剤を紙等の記録媒体上に付加することで記録媒体上に画像を形成し、印刷結果を出力する。なお一般的に、情報処理装置101等から送信される印刷ジョブのデータ量は大きいため、印刷ジョブの通信には、高速通信が可能な通信方式を用いることが求められる。そのため、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、印刷ジョブを受信する。
スキャンエンジン162は、操作部159からの入力や情報処理装置101等から受信したスキャンジョブに基づき、セットされた原稿等から画像データや文書データを読み取る。読み取ったデータはスキャン結果として、RAM153に保存したり、情報処理装置101等に送信したりする。なお一般的に、通信装置151から情報処理装置101等に送信されるスキャン結果のデータ量は大きいため、それらの通信には、高速通信が可能な通信方式を用いることが求められる。よって、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、スキャン結果を送信する。
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
入力インタフェース158は、物理ボタン等の操作部159が操作されることにより、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、操作部159は、表示部161に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インタフェース158は、表示部161を介してユーザからの入力を受け付けても良い。出力インタフェース160は、表示部161がデータの表示や通信装置151の状態の通知を行うための制御を行うインタフェースである。表示部161は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や通信装置151の状態の通知を行う。なお、本実施形態においては、操作部159と表示部161がタッチパネルディスプレイからなる操作表示部として構成される。
本実施形態では、通信部110及び156は、装置間で通信パラメータを共有するための通信パラメータ共有処理を実行する。通信パラメータ共有処理は、提供側の装置が受信側の装置に無線通信するための通信パラメータを提供する処理であり、インフラモードとP2Pモードそれぞれで行われ得る。ここで、通信パラメータには、例えば、ネットワーク識別子としてのSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵等の無線LAN通信を行うために必要な無線通信パラメータが含まれる。また、MACアドレス等の識別情報、パスワード、IP層での通信を行うためのIPアドレス、上位サービスに必要な情報等も含まれる。通信部110及び156が実行する通信パラメータ共有処理は、例えば、Wi-Fi Allianceで規定されているWPS(Wi-Fi Protected Setup)であってもよい。また、通信部110及び156が実行する通信パラメータ共有処理では、公開鍵暗号方式を用いて通信パラメータを安全に転送するような方式が用いられても良い。
また、通信装置151は、バーコード生成制御部を備える。バーコード生成制御部は、図1では不図示であるが、例えば、CPU154がプログラムを実行することにより実現される。バーコード生成制御部では、バーコード、二次元コード、QRコードなどのコード情報の生成を実施し、表示部161で、生成したコード情報を表示するための制御を実施する。バーコード生成制御部は、通信パラメータの設定に必要な情報を符号化したQRコード等を表示部161に表示させる。なお、表示部161は、ユーザからの入力インタフェースとして、ソフトボタンなどを表示できる構成であってもよい。
以上の構成を有する通信システムの動作について説明を行う。以下の説明では、一例として、情報処理装置101が外部のアクセスポイントに接続していない状態から始まり、通信装置151が表示部161に表示させたQRコードを情報処理装置101が撮像部112により撮影し、撮影したQRコードの情報を用いて、WECによるネットワークセットアップを行う構成を説明する。
まず、図2と図3を用いて、DPPを利用したWECにおいて、情報処理装置101と通信装置151によって実行される処理を説明する。図2に示すシーケンスは、例えば、各装置のCPUが各装置のROMや外部記憶装置等に格納されたプログラムを各装置のRAMに読み出して実行することにより実現される。
まず、S200において、通信装置151は、DPP待ち受けモードを開始する。DPP待ち受けモード開始のトリガーは、例えば、操作部159を介したユーザ操作であってもよいし、情報処理装置101等の外部装置から特定信号を受信することであってもよい。情報処理装置101等の外部装置から特定信号を受信することの具体例としては、特定のBLEビーコンを受信することや、特定の無線LAN通信を受信することなどが挙げられる。DPP待ち受けモードが開始されると、WEC関連情報の読み取りが可能となる。例えば、S201に示すBootstrappingにQRコードを用いる場合、通信装置151は、WEC関連情報に基づいてQRコードを生成し、表示部161に表示する。
なお、S200でDPP待ち受けモードを開始する際、通信装置151は、他のモードとして並行動作していても良い。例えば、上述のネットワークセットアップモードとして並行動作していても良い。
ここで、図7を用いて、DPPを利用したWECにおいて、通信装置151によって実行されるDPP待ち受けモードの処理を説明する。図7に示すフローチャートは、例えば、通信装置151のCPU154がROM152等に記憶されたプログラムをRAM153に読み出して実行することにより実現される。
図7は、DPP待ち受けモード開始処理の内容を示すフローチャートである。また、図7のフローチャートは、例えば通信装置151がS200でDPP待ち受けモードを開始したことに基づいて開始する。
S601において、CPU154は、DPP通信の待ち受けチャネルを決定する。DPP通信の待ち受けチャネルとは、情報処理装置101から送信されるDPPによるネットワークセットアップ要求を待ち受けるチャネルのことである。また、DPP configuration処理も同じチャネルが使用される。なお、DPP通信の待ち受けチャネルにどのチャネルを使用するかは、例えば、ユーザが通信装置151の操作画面から設定してもよい。
S602において、CPU154は、上述した、情報処理装置101とセキュアな通信を行うために用いられる公開鍵情報を生成する。
S603において、CPU154は、上述したBootstrapping情報を生成する。Bootstrapping情報には、例えば、通信装置151の識別情報(MACアドレス等)や、DPP通信の待ち受けチャネルに関する情報、S602で生成された公開鍵情報などが含まれる。
S604において、CPU154は、DPP待ち受けモードを開始する。DPP待ち受けモードが開始されると、通信装置151と情報処理装置101との間でDPP Authenticationにおける通信が可能となる。
S605において、CPU154は、DPP待ち受けモードタイムアウト用タイマを起動する。なおCPU154は、DPP待ち受けモードでの動作を開始した後、所定の時間が経過したら、DPP待ち受けモードでの動作を停止する。DPP待ち受けモードの動作を停止することで、例えば、ネットワークセットアップ用プロトコルを用いたネットワークセットアップ処理に移行する。
再び、図2を参照する。S201において、情報処理装置101は、Bootstrapping情報としてWEC関連情報を取得する。例えば、Bootstrapping情報の取得にQRコードを用いる場合、情報処理装置101は、設定アプリにおいてQRコード撮影機能を実行する。QRコード撮影機能では撮影部112を用いてQRコードの撮影を行い、撮影された撮影画像からQRコードを解析する。これによって、設定アプリは、QRコードに含まれるWEC関連情報を取得する。
S202において、情報処理装置101は、OSの機能により、DPPを利用したWECを開始する。具体的にはまず情報処理装置101は、WEC用アプリの起動指示を設定アプリからOSに指示することで、WEC用アプリを起動する。これにより、WEC用アプリがフォアグラウンドで動作し、設定アプリがバックグラウンドで動作することとなる。なお例えば当該指示の実行が、WECを実行するための指示に相当することとなる。これにより情報処理装置101は、WEC用アプリによるWEC開始画面を表示する。なおWEC用アプリは、情報処理装置101に予めインストールされているプログラムであり、情報処理装置101のOSベンダーによって提供されるプログラムである。また、WEC用アプリが起動された場合、設定アプリによって取得されたWEC関連情報が、WEC用アプリに提供される。
図3は、WEC用アプリによって表示されるWEC開始画面の一例を示す図である。WEC開始画面300には領域301、302、303が表示されている。領域301は、WECによる設定対象として設定されているアクセスポイントを変更するための領域である。なお領域301が操作される前は、WECによる設定対象として設定されているアクセスポイントは、情報処理装置101が現在接続しているアクセスポイントであり、例えばアクセスポイント131である。情報処理装置101は、領域301が選択された場合、アクセスポイントのリストを表示し、リストからユーザによって選択されたアクセスポイントを、WECによる設定対象として新たに設定する。なおアクセスポイントのリストには、情報処理装置101が接続したことがあるアクセスポイント等が含まれるものとする。領域302は、WECの実行のキャンセル指示を受け付けるための領域であり、領域303は、WECの実行指示を受け付けるための領域である。情報処理装置101は、領域302が操作された場合、本シーケンス図における処理を終了する。また、情報処理装置101は、領域303が押下された場合、S203に進む。本実施形態では、他の構成例として、図3の画面の表示を行わないようにしても良く、即ち領域303が押下されていない状態であってもS203に進むようにしてもよい。
S202において、情報処理装置101のWEC用アプリは、WEC関連情報やWECによる設定対象として設定されているアクセスポイントに関する情報を用いてWEC用のAPIを実行することにより、OSにWECの実行を指示する。そして、S203では、OSの機能により、情報処理装置101と通信装置151との間で、DPP Authenticationと呼ばれる処理が実行される。DPP Authenticationにおいては、情報処理装置101と通信装置151との間で、認証情報や、情報の暗号化に利用される情報などが通信されることで、装置間の通信の認証が行われる。なおDPP Authenticationにおける通信において情報処理装置101から送信される各種情報は、情報処理装置101によって通信装置151から取得されているWEC関連情報に基づき暗号化される。DPP Authenticationにおいては、具体的にはまず情報処理装置101が、DPPによるネットワークセットアップ要求としてAuthentication Requestを送信する。次に、DPP待ち受けモードとして動作する通信装置151は、Authentication Requestを待ち受けるモードであるDPP待ち受けモードとして動作しているため、情報処理装置101から送信されたAuthentication Requestを受信する。Authentication Requestを受信した通信装置151は、受信したAuthentication Requestの、自身が現在有している復号鍵による復号化を試みる。そして通信装置151は、当該復号化に成功した場合、Authentication responseを情報処理装置101に送信し、情報処理装置101との通信を認証する。なお、情報処理装置101が、正確なWEC関連情報を取得できておらず、正確に情報を暗号化できていなかった場合は、通信装置151における復号化が失敗するため、認証は失敗し、Authentication responseが送信されない。Authentication responseが情報処理装置101によって受信されることで、DPP Authenticationが完了する。また、DPP Authenticationにおいては、DPPが用いられて通信が実行される。
次にS204において、情報処理装置101のOSの機能により、情報処理装置101と通信装置151との間で、DPP Configurationと呼ばれる処理が実行される。DPP Configurationにおいては、情報処理装置101は、WECによる設定対象として設定されているアクセスポイントと接続するための接続情報を、WECにより通信装置151に送信する。なお接続情報には、WECによる設定対象として設定されているアクセスポイントのSSIDやパスワード、暗号化方式を示す情報等が少なくとも一つ以上含まれる。このとき送信されるパスワードは、情報処理装置101とアクセスポイントとの間の接続が確立された際にOS対応のアプリが表示する画面上においてユーザによって入力されていた情報である。そして、情報処理装置101とアクセスポイントとの間の接続が確立された際にOSにより保持されていた情報である。またパスワードは、設定アプリは保持していない情報である。また、このとき送信されるパスワードは、OSが既に保持している情報であり、且つDPP ConfigurationはOSによって実行される処理であるため、設定アプリが表示する画面上において新たにユーザによって入力される必要はない。本実施形態では、WECによって接続情報を送信することで、設定アプリが表示する画面上においてユーザからパスワードの入力を新たに受け付けることなく且つ、セキュアな通信で、パスワードを通信装置151に送信することができる。なお、DPP Configurationにおいても、DPPが用いられて通信が実行される。
S205において、通信装置151は、DPP Configurationが完了したことに応じてDPP待ち受けモードを終了する。DPP待ち受けモードの終了は、例えばQRコードの表示の終了により行われる。
S206において、通信装置151は、DPP Configurationによって接続情報を取得したことをもってインフラストラクチャモードに移行する。また、通信装置151は、このときネットワークセットアップモードとして動作していた場合は、ネットワークセットアップモードを終了する。通信装置151は、取得した接続情報を用いて、当該接続情報に対応するアクセスポイントとの接続を試みる。接続が成功した場合、以後、通信装置151は、接続したアクセスポイントが形成するネットワークを介して通信を実行可能となる。なお接続したアクセスポイントが形成するネットワークを介した通信は、DPPとは異なるプロトコル(具体的には例えば、Port9100やSNMP、HTTP、通信装置151のベンダー独自のプロトコル)によって実行される。なお通信装置151は、WECによって取得した接続情報に対応するアクセスポイントとの接続の成否を示す情報を、情報処理装置101に送信しても良い。また、さらに、WECによって取得した接続情報に対応するアクセスポイントとの接続が失敗した場合は、失敗した原因を示す情報を、情報処理装置101に送信しても良い。またこれらの情報送信は、DPPが用いられて実行されてよい。なお、取得した接続情報に対応するアクセスポイントとの接続が失敗する原因は、WECにおける通信のエラーや、当該アクセスポイントが発見されなかったことや、通信装置151から取得されたWEC関連情報が適切な情報でなかったこと等である。また例えば、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式が、通信装置151が対応していない暗号化方式であったこと等である。また例えば、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式が、WECが対応していない暗号化方式であったこと等である。なお通信装置101は、WECによって取得した接続情報に対応するアクセスポイントと通信装置151との接続の成否を示す情報を表示部108に表示してもよい。さらに、WECによって取得した接続情報に対応するアクセスポイントと通信装置151との接続が失敗した場合は、失敗した原因を示す情報を表示部108に表示してもよい。
S207において、情報処理装置101は、WECの実行が終了したことに基づいて、フォアグラウンドで動作しているアプリを、WEC用アプリから設定アプリに切り替える。そして、情報処理装置101は、自身が属するネットワーク上で、通信装置151を検索する。本処理は、WECの実行が終了したことの通知をOSから受け取った設定アプリにより実現される。そして情報処理装置101は、通信装置151が発見された場合に、通信装置151にケーパビリティ情報を要求し、通信装置151はケーパビリティ情報を情報処理装置101に送信する。これにより、設定アプリ上に、通信装置151の情報を登録し、以後、設定アプリによる通信装置151との通信を実行可能とする。具体的には例えば、設定アプリによって通信装置151に印刷ジョブを送信可能とする。なおこのとき、通信装置151が接続したアクセスポイントによって形成されるネットワークに情報処理装置101が属している場合には、当該アクセスポイントを介して情報処理装置101と通信装置151との通信が実行可能となる。また、通信装置151が接続したアクセスポイントが、情報処理装置101が接続しているアクセスポイントでなかった場合等、情報処理装置101と通信装置151との間の通信が実行できない場合は、ケーパビリティ情報の要求や取得は省略される。なおS207における通信は、例えば、DPPともセットアップ用通信プロトコルとも異なる通信プロトコルが利用されて実行される。その後、情報処理装置101は、本シーケンス図における処理を終了する。
なお上述では、WEC用アプリによってWEC開始画面が表示され、WEC用アプリがWEC用のAPIを実行することによりWECの実行をOSに指示する形態を説明したが、この形態に限定されない。例えば設定アプリによってWEC開始画面が表示されても良い。またWEC用のAPIを設定アプリが実行することによりWECの実行をOSに指示する形態であっても良い。
また上述では、Bootstrapping情報の取得の構成としてQRコードを用いる方法を例示したが、この形態に限定されない。例えば、Bootstrapping情報の取得の構成として、NFCやBLEといった近距離無線通信が用いられてもよい。また、他の構成として、DPP待ち受けモードで起動されているセットアップ用アクセスポイントを介したSNMPやHTTPなどの通信プロトコルによる通信が用いられてもよい。
次に、図4、図5、図6、図7、図8を用いて、情報処理装置101が外部のアクセスポイントに接続していない状態において、通信装置151に特定信号を送信してWECによるネットワークセットアップを行う処理と、通信装置151に特定信号を送信しない処理とを制御するシーケンスについて説明する。
図4は、本実施形態における特定信号の送信制御の処理を示すフローチャートである。図4の処理は、例えば、CPU103が、ROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。
S400において、情報処理装置101は、ユーザ操作により、設定アプリを起動する。S401において、設定アプリは、情報処理装置101と通信装置151との接続を実施するか否かの指示を受け付けるための画面を表示する。そして、設定アプリは、通信装置151との接続を開始するか否かを判定する。なお、このときの通信装置151との接続とは、通信装置151に対するネットワークセットアップを行うための接続ということである。図5(a)は、設定アプリによって表示される通信装置151との接続開始画面の一例を示す図である。接続開始画面500には領域501、領域502が表示されている。領域501は、通信装置151との接続を開始する指示を受け付けるための領域である。領域502は、通信装置151との接続を開始しない指示を受け付けるための領域である。S401において、領域502が押下されたことを検知した場合、設定アプリは、通信装置151との接続を開始しないと判定する。そして、情報処理装置101から通信装置151に特定信号を送信することなく、図4の処理を終了する。一方、領域501が押下されたことを検知した場合、設定アプリは、通信装置151との接続を開始すると判定し、S402に進む。
S402において、設定アプリは、アクセスポイントサーチを実行し、情報処理装置101の周囲に存在するアクセスポイントを探索する。ここで、アクセスポイントサーチは、ビーコンを一定間隔で受信するパッシブスキャンにより実行されてもよいし、Probe Requestを送信してProbe Responseを受信するアクティブスキャンにより実行されてもよい。
次に、S403において、設定アプリは、アクセスポイントサーチの結果、検出されたアクセスポイントの電波強度が閾値以上であるか否かを判定する。尚、電波強度は、具体的には一例として、SNR(Signal Noise Ratio)で表される。S403で電波強度が閾値以上でないと判定された場合、設定アプリは、特定信号の送信を行わない。そして、S410において、設定アプリは、WEC以外によるネットワークセットアップ方法を用いて、通信装置151のネットワークセットアップを実施する。ここで、WEC以外によるネットワークセットアップ方法としては、例えば、情報処理装置101と通信装置151が直接接続するダイレクト接続であってもよいし、BLE等による接続であっても良い。このように、本実施形態によれば、電波強度が弱いためにネットワークセットアップが失敗してしまうことを防ぐことができる。
一方、アクセスポイントの電波強度が閾値以上であると判定された場合、S404において、設定アプリは、WECに対応しているアクセスポイントが検出されたか否かを判定する。例えば、S402においてアクセスポイントがアドバタイズしたビーコン、又は、ProveResponseのAKMにDPPを示す情報が含まれているか否かに基づいて、S404の判定が行われても良い。尚、AKMとは、Authentication and Key Managementの略である。S404で検出されたアクセスポイントがWECに対応していないと判定された場合、設定アプリは、特定信号の送信を行わない。そして、S410において、設定アプリは、WEC以外によるネットワークセットアップ方法を用いて、通信装置151のネットワークセットアップを実施する。このように、本実施形態によれば、検出されたアクセスポイントがWECに対応していないにも関わらず、情報処理装置101が特定信号の送信を行ってしまい、ネットワークセットアップが失敗してしまうことを防ぐことができる。
一方、WECに対応しているアクセスポイントが検出されたと判定された場合、S405において、設定アプリは、通信装置151がWECに対応している装置であるか否かを判定する。ここで、通信装置151がWECに対応している装置であるか否かを判定する例を説明する。
例えば、S402で探索されたアクセスポイントのSSIDに、通信装置151であり且つWEC対応を表現する特定の文字列が含まれることに基づいて、通信装置151がWECに対応している装置であると判定しても良い。
また、例えば、S402で探索されたアクセスポイントのSSIDに、通信装置151であることを表現する特定の文字列が含まれており、且つ、ビーコン又はProveResponseにWEC対応を表現する文字列が含まれていることに基づいて、通信装置151がWECに対応している装置であると判定しても良い。
また、例えば、通信装置151がWECに対応しているか否かの判定を行うために、図4に示されていない通信を実施してもよい。例えば、情報処理装置101と通信装置151の間でダイレクト接続を行い、情報処理装置101が通信装置151のケーパビリティを取得し、取得したケーパビリティから、通信装置151がWECに対応している装置であるか否かを判定しても良い。
また、例えば、通信装置101の不揮発性メモリに保持している情報に基づいて、第1の外部の装置151がWECに対応している装置であるか否かを判定しても良い。例えば、過去に情報処理装置101が通信装置151と接続した際に、情報処理装置101が通信装置151のケーパビリティを不揮発性メモリに保持しているとする。すると、情報処理装置101は、S402で探索されたSSIDから、通信装置151が情報処理装置101の周囲に存在することを検知する。そして、S405では、情報処理装置101は、不揮発性メモリに保持されている通信装置151のケーパビリティを用いて、通信装置151がWECに対応している装置であるか否かを判定しても良い。
S405で通信装置151がWECに対応していない装置であると判定された場合、設定アプリは、特定信号の送信を行わない。そして、S410において、設定アプリは、WEC以外によるネットワークセットアップ方法を用いて、通信装置151のネットワークセットアップを実施する。このように、本実施形態によれば、通信装置151がWECに対応していないにも関わらず、情報処理装置101が特定信号の送信を行い、ユーザが意図しない通信装置がQRコードの表示等を行ってしまうことを防ぐことができる。
一方、通信装置151がWECに対応している装置であると判定された場合、S406において、設定アプリは、アクセスポイントの一覧の画面を表示する。図5(b)は、設定アプリによって表示されるアクセスポイント一覧画面の一例を示す図である。アクセスポイント一覧画面600には、領域601、領域602が表示されている。領域601は、接続処理を行うアクセスポイントの選択を受け付けるための領域であり、アクセスポイントのSSID一覧を表示している。設定アプリは、領域601の何れかのSSIDの選択を受け付けると、当該アクセスポイントと情報処理装置101の接続処理を開始する。
ここで、WECに対応しているアクセスポイントがユーザに選択されやすくなるように、WECに対応しているアクセスポイントが優先的に表示されても良い。例えば、領域601の一番上のSSID(SSID:XXXXYYYYZZZZ1)にWECに対応しているアクセスポイントを表示してもよい。また、WECに対応しているアクセスポイントのSSIDに「推奨」などの文言表示を行うようにしても良いし、SSID文字列に色を付ける等、識別可能としても良い。そのような構成により、WECに対応しているアクセスポイントが選択されやすくすることができる。言い換えれば、WECに対応していないアクセスポイントを意図せずに選択させてしまうことを防ぐことができる。尚、領域602が押下されると、領域601の一覧に表示されていないアクセスポイントの指定を受け付けることが可能となる。例えば、領域601の一覧に表示されていないアクセスポイントの表示を行うようにしても良いし、アクセスポイントサーチを再度行い、その探索結果の表示を行うようにしても良い。
また、WECに対応しているアクセスポイントが選択されやすくなるように、図5(b)の画面の代わりに図5(c)のアクセスポイント接続確認画面700を表示してもよい。アクセスポイント接続確認画面700には、WECに対応しているアクセスポイントのSSIDが表示されている。領域701は、表示されているSSIDのアクセスポイントと接続を行う指示を受け付けるための領域である。領域701が押下された場合には、表示されているSSIDのアクセスポイントと、情報処理装置101との接続処理を開始する。領域702は、表示されていない他のアクセスポイントの指定を受け付けるための領域である。領域702が押下された場合には、表示されていない他のアクセスポイントの表示を行うようにしてもよいし、WECに対応している他のアクセスポイントの表示を行うようにしてもよい。また、アクセスポイントサーチを再度行い、表示されているアクセスポイントとは異なる、WECに対応しているアクセスポイントの表示を行うようにしてもよい。なお、本例では、通信装置151のアクセスポイントは、S406での表示対象とはならない。
S407において、設定アプリは、情報処理装置101とS406で選択されたアクセスポイントとの接続を実施する。その際、アクセスポイントと情報処理装置101とを接続するために、ユーザに対してアクセスポイントのパスワードを通信装置101に入力させるようにしてもよい。
S408において、設定アプリは、S406でWECに対応しているアクセスポイントが選択されたか否かを判定する。ここでは、S406で選択されたアクセスポイントに基づいて判定する構成を説明しているが、他の判定の構成が用いられても良い。例えば、S407で接続されたアクセスポイントに基づいて、判定する構成でも良い。即ち、S407で接続されたアクセスポイントがWECに対応しているか否かを判定してもよい。
S408でWECに対応しているアクセスポイントが選択されなかったと判定された場合、設定アプリは、特定信号の送信を行わない。そして、S410において、設定アプリは、WEC以外のネットワークセットアップ方法を用いて、通信装置151のネットワークセットアップを実施する。
一方、WECに対応しているアクセスポイントが選択されたと判定された場合、S409において、設定アプリは、通信装置151とアクセスポイントとの接続確認画面を表示する。図5(d)は、設定アプリによって表示される接続確認画面の一例を示す図である。接続確認画面800には、通信装置151のSSID、通信装置151のシリアルナンバーが表示されている。
領域801は、WECによるネットワークセットアップ方法を用いたアクセスポイントと通信装置151との接続処理を実施しない指示を受け付けるための領域である。領域801が押下された場合、S410において、設定アプリは、WEC以外のネットワークセットアップ方法を用いて、通信装置151のネットワークセットアップを実施する。尚、接続確認画面800上で表示される通信装置151のSSIDは、例えば、S402で探索され、S405でWECに対応している装置であると判定された通信装置151のSSIDである。また、表示される通信装置151のシリアルナンバーは、例えば、上述した、情報処理装置101が取得した通信装置151のケーパビリティに含まれているシリアルナンバーである。また、シリアルナンバーではなく、MACアドレスであってもよい。MACアドレスである場合は、例えば、S402のアクセスポイントサーチにおいて取得したビーコン又はProveResponseに含まれるBSSIDから取得されても良い。シリアルナンバーを表示することにより、ユーザが意図した装置に特定信号を送信することをユーザに認識させることができる。また、接続確認画面800では、シリアルナンバーを表示しているが、表示しなくてもよい。
領域802は、WECによるネットワークセットアップ方法を用いたアクセスポイントと通信装置151との接続処理を実施する指示を受け付けるための領域である。領域802が押下された場合、S411において、設定アプリは、通信装置151に対するWECによるネットワークセットアップ処理を開始する。まず、設定アプリは、通信装置151に特定信号を送信する。本実施形態における特定信号とは、例えば、WFD方式のServiceDiscoveryRequest、又はProveRequest(通信装置151のSSIDを指定)である。
S412において、図2で説明したように、通信装置151に対するWECによるネットワークセットアップが実施される。S412の処理は、図2の処理に対応する。即ち、図2で説明したように、通信装置151は、特定信号を受信することで、DPP待ち受けモードを開始し、QRコード等の表示を行う。その後、情報処理装置101は、図4の処理を終了する。尚、S401、S403、S404、S405、S408、S409において、判定処理を実施し、判定結果に応じて、特定信号送信の有無を決定するシーケンスを説明したが、一部の判定処理を実施しなくてもよい。また、図4の各処理は、設定アプリからの指示により実行されるとして説明したが、設定アプリではなく、WEC用アプリからの指示により実行されても良いし、OSからの指示により実行されてもよい。
以上のように、本実施形態では、所定の条件を満たす場合に、情報処理装置101は、通信装置151に対して、DPP待ち受けモードを開始させるための特定信号を送信する。例えば、通信装置151がWECに対応している装置であり、且つ、通信装置151と接続するアクセスポイントがWECに対応している場合に、情報処理装置101は、通信装置151に対して、DPP待ち受けモードを開始させるための特定信号を送信する。つまり、WECによるネットワークセットアップが実施可能でない場合には、情報処理装置101は特定信号の送信を行わない。そのため、情報処理装置101は、WECによるネットワークセットアップが実施可能でない場合には、特定信号を送信するためにリソース(CPU)を使用しないように制御することができる。本実施形態によれば、情報処理装置101の周囲にWECに対応している外部の装置と、WECに対応していない外部の装置とが混在している状況でユーザが意図せずに、WECに対応していない装置とWEC接続を行おうとしても、情報処理装置101は特定信号の送信を行わない。そのような構成により、ユーザが意図していないWECに対応している他の装置が特定信号に反応し、QRコードを表示してしまうことなどを防ぐことができる。
[第2実施形態]
以下、第1実施形態と異なる点について第2実施形態を説明する。第1実施形態では、情報処理装置101が外部のアクセスポイントと未接続である状態から図4の処理が開始され、通信装置151に特定信号を送信してWECによるネットワークセットアップを行う処理と、特定信号を送信しない処理とを切り替えるよう制御することを説明した。本実施形態では、情報処理装置101が外部のアクセスポイントと接続している状態から、上記の2つの処理を切り替えるよう制御する処理が開始される。
図6は、本実施形態における特定信号の送信制御の処理を示すフローチャートである。図6の処理は、例えば、CPU103が、ROM104に記憶されたプログラムをRAM105に読み出して実行することにより実現される。
S900において、情報処理装置101は、ユーザ操作により、設定アプリを起動する。S901において、設定アプリは、情報処理装置101と通信装置151との接続を実施するか否かの指示を受け付けるための画面を表示する。S900では、第1実施形態と同様に、図5(a)の接続開始画面500が表示される。そして、設定アプリは、通信装置151との接続を開始するか否かを判定する。S901において、領域502が押下されたことを検知した場合、設定アプリは、通信装置151との接続を開始しないと判定する。そして、情報処理装置101からの特定信号の送信が行われることなく、図6の処理を終了する。一方、領域501が押下されたことを検知した場合、設定アプリは、通信装置151との接続を開始すると判定し、S902に進む。
S902において、設定アプリは、情報処理装置101と現在接続しているアクセスポイントがWECに対応しているアクセスポイントであるか否かを判定する。例えば、接続しているアクセスポイントが過去にアドバタイズしたビーコン、又は、ProveResponseのAKMにDPPが含まれていたか否かに基づいて、S902の判定が行われても良い。また、S902の判定では、情報処理装置101の不揮発性メモリに記憶された情報が用いられてもよい。また、図6には不図示であるが、接続中のアクセスポイントに対して、AKMを取得するための通信を実施してその取得した情報に基づいて、S902の判定が行われても良い。
S902で情報処理装置101と接続中のアクセスポイントがWECに対応していないと判定された場合は、設定アプリは、特定信号の送信を行わない。そしてS907において、設定アプリは、WEC以外のネットワークセットアップ方法を用いて、通信装置151に対するネットワークセットアップを実施する。このように、本実施形態によれば、情報処理装置101と接続中のアクセスポイントがWECに対応していないにも関わらず、情報処理装置101が特定信号の送信を行い、ネットワークセットアップが失敗してしまうことを防ぐことができる。S907では、一例としてアクセスポイントを介するインフラ接続を想定しているが、アクセスポイントを介さないダイレクト接続であってもよい。また、図4のS402以降の処理を実行し、情報処理装置101と現在接続中のアクセスポイントとは別の、WECに対応しているアクセスポイントを探索しても良い。つまり、WECによるネットワークセットアップを、他の方式のネットワークセットアップより優先させるようにしてもよい。
一方、S902で情報処理装置101と接続中のアクセスポイントがWECに対応していると判定された場合は、S903において、設定アプリは、図4のS405と同様に、通信装置151がWECに対応している装置であるか否かを判定する。尚、図4では、S405の処理前にアクセスポイントサーチを実行していたが、S903の処理前には、情報処理装置101と接続中のアクセスポイントが存在するため、アクセスポイントサーチを実行しない。しかしながら、本実施形態においても、S903の処理前にアクセスポイントサーチを実行し、その探索結果を用いて、S903の判定を行うようにしてもよい。S903で通信装置151がWECに対応している装置でないと判定された場合、設定アプリは、特定信号の送信を行わない。そして、S907において、設定アプリは、WEC以外によるネットワークセットアップ方法を用いて、通信装置151に対するネットワークセットアップを実施する。
一方、S903で通信装置151がWECに対応している装置であると判定された場合、S904において、設定アプリは、通信装置151とアクセスポイントの接続確認画面を表示する。S904では、第1実施形態と同様に、図5(d)の接続開始画面800が表示される。以降、S905とS906は、図4のS411とS412における説明と同じであるので、それらの説明を省略する。
以上のように、本実施形態によれば、通信装置151がWECに対応している装置であり、且つ、情報処理装置101と接続中のアクセスポイントがWECに対応している場合に、情報処理装置101が特定信号の送信を行う。そのような構成により、WECによるネットワークセットアップが実施可能でない場合にも関わらず、情報処理装置101が特定信号の送信を行ってしまうことを防ぐことができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本実施形態の開示は、以下のプログラム、システムおよび方法を含む。
(項目1)
通信装置と無線通信が可能な情報処理装置のコンピュータを、
前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得手段、
前記第1取得手段により取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御手段、
として機能させるためのプログラム。
(項目2)
前記送信制御手段は、前記第1取得手段により取得された前記アクセスポイントの情報が前記条件を満たさない場合には、前記信号を前記通信装置に送信しないことを特徴とする項目1に記載のプログラム。
(項目3)
前記条件を満たす場合とは、前記第1取得手段により取得された情報が示す前記アクセスポイントが前記所定の方式に対応していることを含むことを特徴とする項目1又は2に記載のプログラム。
(項目4)
前記通信装置の情報を取得する第2取得手段、としてさらに機能させ、
前記第1取得手段により取得された前記アクセスポイントの情報、および前記第2取得手段により取得された前記通信装置の情報が前記条件を満たす場合に前記送信制御手段は前記信号を前記通信装置に送信することを特徴とする項目1又は2に記載のプログラム。
(項目5)
前記条件を満たす場合とは、前記第1取得手段により取得された情報が示す前記アクセスポイントの電波強度が閾値以上であることを含むことを特徴とする項目1又は2に記載のプログラム。
(項目6)
前記第1取得手段により取得された情報が示す前記アクセスポイントと前記情報処理装置とを接続する接続手段、としてさらに機能させるための項目1乃至5のいずれか1項に記載のプログラム。
(項目7)
前記接続手段は、前記第2取得手段により取得された前記通信装置の情報が前記条件を満たすと判定された場合に、前記第1取得手段により取得された情報が示す前記アクセスポイントと前記情報処理装置とを接続することを特徴とする項目6に記載のプログラム。
(項目8)
前記第1取得手段は、前記情報処理装置と接続されている前記アクセスポイントの情報を取得することを特徴とする項目1乃至5のいずれか1項に記載のプログラム。
(項目9)
前記所定の方式によるネットワークセットアップとは、WEC(Wi-Fi Easy Connect)によるネットワークセットアップであることを特徴とする項目1乃至8のいずれか1項に記載のプログラム。
(項目10)
前記所定の方式によるネットワークセットアップを実行可能とするための信号とは、前記通信装置をDPP(Device Provisioning Protocol)待ち受けモードとするための信号であることを特徴とする項目9に記載のプログラム。
(項目11)
前記送信制御手段による前記信号の送信の後、DPP(Device Provisioning Protocol)による通信を行う通信手段、としてさらに機能させるための項目10に記載のプログラム。
(項目12)
通信装置と無線通信が可能な情報処理装置において実行される方法であって、
前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得工程と、
前記第1取得工程において取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御工程と、
を有することを特徴とする方法。
(項目13)
通信装置と、前記通信装置と無線通信が可能な情報処理装置とを含むシステムであって、
前記情報処理装置は、
前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得手段と、

前記第1取得手段により取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御手段と、を備え、
前記通信装置は、
前記送信制御手段により送信された前記信号を受信する受信手段と、
前記受信手段により前記信号を受信したことに基づいて、前記通信装置を、前記所定の方式によるネットワークセットアップを実行可能な状態とする制御手段と、を備える、
ことを特徴とするシステム。
(項目14)
前記所定の方式によるネットワークセットアップとは、WEC(Wi-Fi Easy Connect)によるネットワークセットアップであることを特徴とする項目13に記載のシステム。
(項目15)
前記所定の方式によるネットワークセットアップを実行可能とするための信号とは、前記通信装置をDPP(Device Provisioning Protocol)待ち受けモードとするための信号であることを特徴とする項目14に記載のシステム。
(項目16)
前記制御手段は、前記状態として、前記情報処理装置とDPP(Device Provisioning Protocol)で通信するための情報を表示部に表示させた状態とすることを特徴とする項目15に記載のシステム。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
101 情報処理装置: 103 CPU: 151 通信装置

Claims (16)

  1. 通信装置と無線通信が可能な情報処理装置のコンピュータを、
    前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得手段、
    前記第1取得手段により取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御手段、
    として機能させるためのプログラム。
  2. 前記送信制御手段は、前記第1取得手段により取得された前記アクセスポイントの情報が前記条件を満たさない場合には、前記信号を前記通信装置に送信しないことを特徴とする請求項1に記載のプログラム。
  3. 前記条件を満たす場合とは、前記第1取得手段により取得された情報が示す前記アクセスポイントが前記所定の方式に対応していることを含むことを特徴とする請求項1に記載のプログラム。
  4. 前記通信装置の情報を取得する第2取得手段、としてさらに機能させ、
    前記第1取得手段により取得された前記アクセスポイントの情報、および前記第2取得手段により取得された前記通信装置の情報が前記条件を満たす場合に前記送信制御手段は前記信号を前記通信装置に送信することを特徴とする請求項1に記載のプログラム。
  5. 前記条件を満たす場合とは、前記第1取得手段により取得された情報が示す前記アクセスポイントの電波強度が閾値以上であることを含むことを特徴とする請求項1に記載のプログラム。
  6. 前記第1取得手段により取得された情報が示す前記アクセスポイントと前記情報処理装置とを接続する接続手段、としてさらに機能させるための請求項4に記載のプログラム。
  7. 前記接続手段は、前記第2取得手段により取得された前記通信装置の情報が前記条件を満たすと判定された場合に、前記第1取得手段により取得された情報が示す前記アクセスポイントと前記情報処理装置とを接続することを特徴とする請求項6に記載のプログラム。
  8. 前記第1取得手段は、前記情報処理装置と接続されている前記アクセスポイントの情報を取得することを特徴とする請求項1に記載のプログラム。
  9. 前記所定の方式によるネットワークセットアップとは、WEC(Wi-Fi Easy Connect)によるネットワークセットアップであることを特徴とする請求項1に記載のプログラム。
  10. 前記所定の方式によるネットワークセットアップを実行可能とするための信号とは、前記通信装置をDPP(Device Provisioning Protocol)待ち受けモードとするための信号であることを特徴とする請求項9に記載のプログラム。
  11. 前記送信制御手段による前記信号の送信の後、DPP(Device Provisioning Protocol)による通信を行う通信手段、としてさらに機能させるための請求項10に記載のプログラム。
  12. 通信装置と無線通信が可能な情報処理装置において実行される方法であって、
    前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得工程と、
    前記第1取得工程において取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御工程と、
    を有することを特徴とする方法。
  13. 通信装置と、前記通信装置と無線通信が可能な情報処理装置とを含むシステムであって、
    前記情報処理装置は、
    前記情報処理装置および前記通信装置と異なるアクセスポイントの情報を取得する第1取得手段と、
    前記第1取得手段により取得された前記アクセスポイントの情報が条件を満たす場合に、前記アクセスポイントに前記通信装置を接続させるための所定の方式によるネットワークセットアップを実行可能とするための信号を前記通信装置に送信する送信制御手段と、を備え、
    前記通信装置は、
    前記送信制御手段により送信された前記信号を受信する受信手段と、
    前記受信手段により前記信号を受信したことに基づいて、前記通信装置を、前記所定の方式によるネットワークセットアップを実行可能な状態とする制御手段と、を備える、
    ことを特徴とするシステム。
  14. 前記所定の方式によるネットワークセットアップとは、WEC(Wi-Fi Easy Connect)によるネットワークセットアップであることを特徴とする請求項13に記載のシステム。
  15. 前記所定の方式によるネットワークセットアップを実行可能とするための信号とは、前記通信装置をDPP(Device Provisioning Protocol)待ち受けモードとするための信号であることを特徴とする請求項14に記載のシステム。
  16. 前記制御手段は、前記状態として、前記情報処理装置とDPP(Device Provisioning Protocol)で通信するための情報を表示部に表示させた状態とすることを特徴とする請求項15に記載のシステム。
JP2022088879A 2022-05-31 2022-05-31 プログラム、システムおよび方法 Pending JP2023176541A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022088879A JP2023176541A (ja) 2022-05-31 2022-05-31 プログラム、システムおよび方法
US18/200,713 US20230388181A1 (en) 2022-05-31 2023-05-23 Information processing apparatus, control method, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022088879A JP2023176541A (ja) 2022-05-31 2022-05-31 プログラム、システムおよび方法

Publications (1)

Publication Number Publication Date
JP2023176541A true JP2023176541A (ja) 2023-12-13

Family

ID=88875944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022088879A Pending JP2023176541A (ja) 2022-05-31 2022-05-31 プログラム、システムおよび方法

Country Status (2)

Country Link
US (1) US20230388181A1 (ja)
JP (1) JP2023176541A (ja)

Also Published As

Publication number Publication date
US20230388181A1 (en) 2023-11-30

Similar Documents

Publication Publication Date Title
US10397963B2 (en) Information processing apparatus, control method, and non-transitory computer-readable storage medium
US20220279605A1 (en) Information processing apparatus, control method thereof, and storage medium
JP7391559B2 (ja) 情報処理装置、制御方法及びプログラム
US20230060244A1 (en) Information processing apparatus, control method therefor, and storage medium
US20220279438A1 (en) Information processing apparatus, control method thereof, and storage medium
JP2023176541A (ja) プログラム、システムおよび方法
US20230413352A1 (en) Non-transitory computer-readable storage medium, control method, communication apparatus, and communication system
WO2023053839A1 (ja) 通信装置、方法、プログラム、並びにシステム
JP2023176543A (ja) プログラムおよび方法
US20230135980A1 (en) Information processing device, method, and storage medium for storing method
EP4161158A1 (en) Information processing apparatus, method for controlling the same, and storage medium
US20230171682A1 (en) Communication apparatus, control method therefor, and storage medium
US11082912B2 (en) Information processing apparatus, control method, and storage medium
JP2023162062A (ja) 通信装置、その制御方法、並びにプログラム
JP2023166256A (ja) 通信システム、通信装置とその制御方法、並びにプログラム
JP2023066227A (ja) 情報処理装置、通信装置、通信システム、通信装置の設定方法並びにプログラム
JP2024084450A (ja) 情報処理装置、方法、プログラム、システム
JP2024053381A (ja) 情報処理装置、その制御方法およびプログラム
JP2023165326A (ja) 通信装置、プログラム及びシステム
JP2024035307A (ja) 情報処理装置、制御方法およびプログラム
JP2024083844A (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2023158555A (ja) 通信装置、制御方法およびプログラム
JP2023164084A (ja) プログラム、システム、および方法
JP2022087295A (ja) 情報処理装置、制御方法及びプログラム
JP2024083892A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム