(システムの構成;図1)
本実施例の通信システム2は、プリンタPRと、複数個の携帯端末Ta〜Tfと、を備える。プリンタPRと各携帯端末Ta〜Tfとは、Wi−Fi Allianceによって策定されたWi−Fi方式に従った無線通信であるWi−Fi通信を実行可能である。
(プリンタPRの構成)
プリンタPRは、印刷機能を実行可能な周辺機器(即ちPC(Personal Computerの略)等の周辺機器)である。プリンタPRは、操作部12と、表示部14と、印刷実行部16と、無線LAN(Local Area Networkの略)インターフェース20と、制御部30と、を備える。各部12〜30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をプリンタPRに入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構である。
無線LANI/F20は、Wi−Fi方式に従ったWi−Fi通信を実行するためのインターフェースである。Wi−Fi方式は、例えば、IEEE(The Institute of Electrical and Electronics Engineers, Inc.の略)の802.11の規格、及び、それに準ずる規格(例えば、802.11a,11b,11g,11n等)に従って、無線通信を実行するための無線通信方式である。より具体的に言うと、無線LANI/F20は、Wi−Fi Allianceによって策定されたWFD(Wi-Fi Directの略)方式をサポートしているI/Fである。従って、制御部30は、WFD方式の無線ネットワーク(以下では「WFDNW」と呼ぶ)を利用して、無線LANI/F20を介して、Wi−Fi通信を実行することができる。
制御部30は、CPU32と、メモリ34と、を備える。CPU32は、メモリ34に記憶されているプログラム36に従って、様々な処理を実行するプロセッサである。メモリ34は、プログラム36のみならず、機器リスト50を記憶することができる。
機器リスト50は、プリンタPRが無線接続を確立した各携帯端末(例えばTa)の各関連情報が記述されるリストである。各関連情報は、MACアドレスと、接続時刻と、使用状況と、切断時刻と、機器タイプと、禁止フラグと、が関連付けられた情報である。「MACアドレス」は、携帯端末のMACアドレスである。「接続時刻」は、プリンタPRが携帯端末との無線接続を確立した時刻である。「使用状況」は、携帯端末にインストールされている所定のアプリケーションプログラム(以下では「印刷アプリ」と呼ぶ)に従った印刷データの通信状況を示す。印刷アプリは、印刷データをプリンタPRに供給して、プリンタPRに印刷機能を実行させるためのアプリケーションプログラムである。「切断時刻」は、プリンタPRが携帯端末との無線接続を切断した時刻である。「機器タイプ」は、携帯端末のタイプを示す。「禁止フラグ」は、プリンタPRが携帯端末から接続要求を受信する場合に、携帯端末との無線接続を確立可能であるのか(即ち「ON」)、無線接続を確立不可能であるのか(即ち「OFF」)を示すフラグである。
携帯端末のタイプは、レガシー機器と、WFD機器と、に大別される。また、WFD機器は、IV(Invitationの略)サポート機器と、IV非サポート機器と、に分類される。レガシー機器は、WFD方式に従って動作不可能な機器である。WFD機器(即ちIVサポート機器及びIV非サポート機器)は、WFD方式に従って動作可能な機器である。IVサポート機器は、Invitation Request信号をサポートしている機器、即ち、Invitation Request信号に応じて無線接続を確立可能な機器である。IV非サポート機器は、Invitation Request信号をサポートしていない機器、即ち、Invitation Request信号に応じて無線接続を確立不可能な機器である。機器リスト50内の「機器タイプ」には、「レガシー」と、「IVサポート」と、「IV非サポート」と、のいずれかが記述される。なお、機器リスト50では、機器タイプ「レガシー」に関連付けて禁止フラグが記述されるが、機器タイプ「IVサポート」又は「IV非サポート」に関連付けて禁止フラグが記述されない。
(携帯端末Ta〜Tfの構成)
各携帯端末Ta〜Tfは、携帯電話(例えばスマートフォン)、PDA、ノートPC、タブレットPC、携帯型音楽再生装置、携帯型動画再生装置等の可搬型の端末装置である。以下では、各携帯端末Ta〜Tfの各MACアドレスのことを「MACa」〜「MACf」と記載する。
携帯端末Taは、レガシー機器であり、携帯端末Tb〜Tfは、WFD機器である。また、携帯端末Tb,Tcは、IVサポート機器であり、携帯端末Td〜Tfは、IV非サポート機器である。
(WFD(Wi-Fi Directの略)方式)
続いて、WFD方式について説明する。WFD方式は、Wi−Fi Allianceによって作成された規格書「Wi−Fi Peer−to−Peer(P2P) Technical Specification Version1.1(Wi−Fi Alliance、2010年)」に記述されている無線通信方式である。
上記のWFDの規格書では、WFD機器の状態として、Group Owner状態(以下では「G/O状態」と呼ぶ)、クライアント状態(以下では「CL状態」と呼ぶ)、及び、デバイス状態の3つの状態が定義されている。WFD機器は、上記の3つの状態のうちの1つの状態で選択的に動作可能である。
G/O状態のWFD機器(即ちG/O機器)は、当該WFD機器が親局として動作する無線ネットワーク(即ちWFDNW)を形成する機器である。CL状態のWFD機器(即ちCL機器)は、WFDNWの子局として動作する機器である。デバイス状態のWFD機器(即ちデバイス機器)は、WFDNWに所属していない機器である。
G/O機器とCL機器との双方が所属しているWFDNWは、例えば、以下の2つの手順のいずれかによって形成される。第1の手順では、一対のデバイス機器は、G/Oネゴシエーションと呼ばれる無線通信を実行する。これにより、当該一対のデバイス機器のうちの一方は、G/O状態(即ちG/O機器)になることを決定し、他方は、CL状態(即ちCL機器)になることを決定する。そして、G/O機器は、WFDNWを形成して、CL機器との無線接続を確立する。これにより、G/O機器とCL機器との双方が所属しているWFDNWが形成される。このように、WFD方式は、G/Oネゴシエーションの仕組みを有する無線通信方式である。
第2の手順では、デバイス機器は、G/Oネゴシエーションを実行せずに、自発的にG/O状態に移行して、WFDNWを形成する。この場合、WFDNWが形成された後に、他のデバイス機器は、G/Oネゴシエーションを実行せずに、CL状態に移行して、G/O機器との無線接続を確立する。これにより、G/O機器とCL機器との双方が所属しているWFDNWが形成される。
G/O機器は、他の機器を介さずに、CL機器と対象データの無線通信を実行可能である。対象データは、OSI参照モデルのネットワーク層の情報、及び、ネットワーク層よりも上位層(例えばアプリケーション層)の情報を含むデータであり、例えば、印刷対象の画像を表わす印刷データを含む。また、G/O機器は、複数個のCL機器が当該G/O機器によって形成されているWFDNWに参加している場合に、一対のCL機器の間の対象データの無線通信を中継可能である。このように、WFDNWでは、各機器は、当該各機器とは別体に構成されているアクセスポイント(以下では「AP」と呼ぶ)を介さずに、対象データの無線通信を実行することができる。即ち、WFD方式は、APが利用されない無線通信方式であると言える。
また、G/O機器は、WFDNWに所属していないデバイス機器と対象データの無線通信を実行することができないが、デバイス機器と接続用データの無線通信を実行して、デバイス機器との無線接続を確立することができる。これにより、G/O機器は、デバイス機器をWFDNWに参加させることができる。
G/O機器は、さらに、WFDNWに所属していないレガシー機器と接続用データの無線通信を実行して、レガシー機器との無線接続を確立することもできる。これにより、G/O機器は、レガシー機器をWFDNWに参加させることができる。
上記の接続用データは、OSI参照モデルのネットワーク層よりも下位層(例えば、物理層、データリンク層等)の情報を含むデータ(即ち、ネットワーク層の情報を含まないデータ)である。より具体的に言うと、上記の接続用データは、WFD方式に特有である特有データを含まない通常接続用データと、当該特有データを含むWFD接続用データと、のどちらかに分類される。
通常接続用データは、例えば、Probe Request/Response信号、Authentication Request/Response信号、Association Request/Response信号、WSC Exchange、4-Way Handshake等を含む。Probe Request信号は、無線ネットワークの親局として動作する機器(例えば、G/O機器、AP)をサーチするための信号であり、Probe Response信号は、その応答信号である。Authentication Request信号は、認証方式を確認するための信号であり、Authentication Response信号は、その応答信号である。Association Request信号は、接続を要求するための信号であり、Association Response信号は、その応答信号である。WSC Exchangeは、認証情報等の各種情報を供給するための信号である。4-Way Handshakeは、認証を実行するための信号である。
また、WFD接続用データは、上記の通常接続用データに加えて、WFD方式に特有である特有データとして、例えば、Invitation Request/Response、Provision Discovery Request/Response信号等を含む。Invitation Request信号は、WFDNWへの参加を促す信号であり、Invitation Responseは、その応答信号である。Provision Discovery Request信号は、WPS(Wi-Fi Protected Setupの略)の方式(例えば、プッシュボタン方式、PINコード方式等)を確認するための信号であり、Provision Discovery Response信号は、その応答信号である。なお、以下では、「Request」、「Response」のことを、それぞれ、「Req.」、「Res.」と記載する。
即ち、レガシー機器は、APと通常接続用データの無線通信を実行して、APとの無線接続を確立し、APによって形成されている無線ネットワークにいわゆるステーションとして参加することができる。これと同様に、レガシー機器は、G/O機器と通常接続用データの無線通信を実行して、G/O機器との無線接続を確立し、WFDNWにステーションとして参加することができる。
デバイス機器(即ち、WFD方式に従って動作可能な機器)は、状況に応じて、通常接続用データ及びWFD接続用データのどちらかの無線通信をG/O機器と実行して、G/O機器との無線接続を確立し、WFDNWに参加することができる。デバイス機器が通常接続用データのみの無線通信を実行する場合には、デバイス機器は、WFDNWにステーションとして参加すると言える。デバイス機器は、WFD方式の特有データの無線通信を実行しないからである。一方において、デバイス機器がWFD接続用データの無線通信を実行する場合には、デバイス機器は、WFDNWにCL機器として参加すると言える。
上述したように、デバイス機器は、WFDNWにステーションとして参加することもできるし、WFDNWにCL機器として参加することもできる。ただし、以下では、ステーションとCL機器とを区別することなく「子局」と呼ぶ。
G/O機器では、通常、当該G/O機器によって形成されているWFDNWに所属可能な子局の数の上限数が、予め決められている。換言すると、G/O機器では、G/O機器が同時的に確立可能な無線接続の数の上限数が、無線LANI/Fのメモリ量等に基づいて予め決められている。本実施例では、MFP10は、G/O機器として動作して、WFDNWを形成することができる。そして、G/O機器であるMFP10が同時的に確立可能な無線接続の数の上限数は、「4」である。ただし、変形例では、上限数は、「4」でなくてもよく、「2」以上の整数であれば、どのような値であってもよい。
(プリンタPRがIVサポート機器との無線接続を確立する処理;図2)
続いて、図2を参照して、プリンタPRがIVサポート機器である携帯端末Tbとの無線接続を確立する処理について説明する。本実施例では、プリンタPRのCPU32は、プリンタPRの電源がONされることをトリガとして、G/Oネゴシエーションを実行せずに、プリンタPRの状態をデバイス状態からG/O状態に移行させて、WFDNWを形成する。この段階では、WFDNWに1個の子局も所属していない。即ち、G/O機器であるプリンタPRのみが所属しているWFDNWが形成される。
T10では、携帯端末Tbのユーザは、プリンタPRの操作部12に所定の操作を実行する。上記の所定の操作は、プリンタPRに無線接続を確立させるための操作であり、例えば、WPS(即ちいわゆる自動無線設定)のプッシュボタン方式に従った操作である。
T11では、携帯端末Tbのユーザは、さらに、印刷アプリを起動するための起動操作と、プリンタPRで印刷されるべき画像を表わす印刷データを指定するための印刷操作と、を携帯端末Tbに実行する。
T12では、携帯端末Tbは、Probe Req.信号をプリンタPRに送信する。Probe Req.信号は、携帯端末TbのMACアドレスであるMACbと、携帯端末TbがWFD機器であることを示すP2P(peer to peerの略)情報と、を含む。
T14では、プリンタPRのCPU32は、携帯端末TbからProbe Req.信号を受信する場合に、Probe Res.信号を携帯端末Tbに送信する。
T16では、携帯端末Tbは、プリンタPRからProbe Res.信号を受信する場合に、Provision Discovery Req.信号を携帯端末Tbに送信する。Provision Discovery Req.信号は、携帯端末TbがInvitation Req.信号をサポートしていることを示すサポート情報を含む。なお、仮に、携帯端末TbがIV非サポート機器である場合には、Provision Discovery Req.信号は、上記のサポート情報を含まない。
T18では、プリンタPRのCPU32は、携帯端末TbからProvision Discovery Req.信号を受信する場合に、Provision Discovery Res.信号を携帯端末Tbに送信する。
T20では、携帯端末Tbは、プリンタPRからProvision Discovery Res.信号を受信する場合に、図示省略のAuthentication Request信号及びAuthentication Response信号の通信の終了後に、接続要求(即ちAssociation Request信号)をプリンタPRに送信する。
T22では、プリンタPRのCPU32は、携帯端末Tbから接続要求を受信する場合に、無線接続を確立するための様々な信号の通信(例えば、Association Response信号、WSC Exchange、4-Way Handshake)を携帯端末Tbと実行する。これにより、CPU32は、携帯端末Tbとの無線接続を確立して、プリンタPRがG/O機器として動作するWFDNWに携帯端末Tbを子局(より具体的にはCL機器)として参加させることができる。
T24では、プリンタPRのCPU32は、携帯端末Tbの関連情報を機器リスト50(図1参照)に登録する。具体的には、CPU32は、「MACアドレス」、「接続時刻」、「使用状況」として、それぞれ、T12のProbe Req.信号に含まれる「MACb」、「現在時刻」、「未使用」を記述する。また、CPU32は、T16のProvision Discovery Req.信号に含まれるサポート情報に基づいて、「機器タイプ」として、「IVサポート」を記述する。なお、仮に、携帯端末TbがIV非サポート機器である場合には、Provision Discovery Req.信号が上記のサポート情報を含まないので、CPU32は、「機器タイプ」として、「IV非サポート」を記述する。T24では、CPU32は、「切断時刻」を記述しない。また、CPU32は、携帯端末Tbがレガシー機器ではないので、「禁止フラグ」を記述しない。
T26では、携帯端末Tbは、WFDNWを利用して、T11の印刷操作で指定された印刷データをプリンタPRに送信する。印刷データは、携帯端末TbのMACbを含む。
T28では、プリンタPRのCPU32は、携帯端末TbからMACbを含む印刷データを受信する場合に、機器リスト50でMACbに関連付けられている「使用状況」、即ち、携帯端末Tbの関連情報に含まれる「使用状況」を、「未使用」から「使用中」に変更する。そして、T30では、CPU32は、受信済みの印刷データによって表わされる画像の印刷を印刷実行部16に開始させる。
T32では、CPU32は、携帯端末Tbからの全ての印刷データの受信が完了したことを検出する。この場合、T34では、プリンタPRのCPU32は、機器リスト50でMACbに関連付けられている「使用状況」、即ち、携帯端末Tbの関連情報に含まれる「使用状況」を、「使用中」から「使用済み」に変更する。
(プリンタがレガシー機器との無線接続を確立する処理;図3)
続いて、図3を参照して、プリンタPRが、レガシー機器である携帯端末Taとの無線接続を確立する処理について説明する。T110,T111は、図2のT10,T11と同様である。
T112では、携帯端末Taは、Probe Req.信号をプリンタPRに送信する。Probe Req.信号は、携帯端末TaのMACアドレスであるMACaを含むが、携帯端末Taがレガシー機器であるので、P2P情報を含まない。T114,T120は、図2のT14,T20と同様である。携帯端末Taがレガシー機器であるので、図2のケースとは異なり、WFD方式の特有データであるProvision Discovery Req.信号及びProvision Discovery Res.信号が通信されない。T122は、図2のT22と同様である。これにより、CPU32は、携帯端末Taとの無線接続を確立して、プリンタPRがG/O機器として動作するWFDNWに携帯端末Taを子局(より具体的にはステーション)として参加させることができる。
T124では、プリンタPRのCPU32は、携帯端末Taの関連情報を機器リスト50(図1参照)に登録する。具体的には、CPU32は、「MACアドレス」、「接続時刻」、「使用状況」として、それぞれ、T112のProbe Req.信号に含まれる「MACa」、「現在時刻」、「未使用」を記述する。また、CPU32は、T112のProbe Req.信号にP2P情報が含まれていないことに基づいて、「機器タイプ」として、「レガシー機器」を記述する。また、CPU32は、「禁止フラグ」として、「OFF」を記述する。T124では、CPU32は、「切断時刻」を記述しない。T126〜T134は、図2のT26〜T34と同様である。
(プリンタの応答処理;図4)
続いて、図4を参照して、プリンタPRのCPU32が実行する応答処理について説明する。S2では、CPU32は、特定の携帯端末(例えば携帯端末Ta〜Tf)から接続要求(即ちAssociation Request信号、図2のT20、図3のT120参照)を受信することを監視する。CPU32は、特定の携帯端末から接続要求を受信する場合に、S2でYESと判断して、S4に進む。
S4では、CPU32は、プリンタPRが現在確立している無線接続の数(以下では「接続数」と呼ぶ)が、上限数「4」に一致するのか否かを判断する。具体的には、CPU32は、まず、機器リスト50から、切断時刻が記述されていない関連情報の数を抽出する。抽出される関連情報の数は、プリンタPRの接続数に一致する。そして、CPU32は、抽出される関連情報の数が「4」未満である場合に、接続数が上限数に一致しないと判断し(S4でNO)、S6〜S60をスキップしてS62に進む。一方において、CPU32は、抽出される関連情報の数が「4」である場合に、接続数が上限数に一致すると判断し(S4でYES)、S6に進む。
S6では、CPU32は、機器リスト50を参照して、特定の携帯端末の関連情報に含まれる「禁止フラグ」が「ON」であるのか否かを判断する。S2で特定の携帯端末から受信される接続要求は、特定の携帯端末のMACアドレスを含む。CPU32は、接続要求に含まれるMACアドレスに関連付けて、「禁止フラグ」として「ON」が記述されている場合には、S6でYESと判断して、S8に進む。
S8では、CPU32は、特定の携帯端末との無線接続を確立不可能であると決定して、拒否通知を特定の携帯端末に送信する。即ち、CPU32は、S2で受信される接続要求に応じて、特定の携帯端末との無線接続を確立しない。S8が終了すると、応答処理が終了する。
一方において、S6において、CPU32は、接続要求に含まれるMACアドレスに関連付けられている「禁止フラグ」が「ON」でない場合には、S6でNOと判断して、S10に進む。CPU32は、接続要求に含まれるMACアドレスが機器リスト50に存在しない場合、接続要求に含まれるMACアドレスに関連付けられている「禁止フラグ」が「OFF」である場合、又は、接続要求に含まれるMACアドレスに関連付けて「禁止フラグ」自体が記述されていない場合には、S6でNOと判断する。
S10では、CPU32は、機器リスト50を参照して、機器選択処理を実行する。即ち、CPU32は、プリンタPRとの無線接続が確立されている各携帯端末の中から、無線接続が切断されるべき切断対象の携帯端末を選択することを試みる。
S50では、CPU32は、S10の機器選択処理において、切断対象の携帯端末を選択することができたのか否かを判断する。CPU32は、切断対象の携帯端末を選択することができなかった場合には、S50でNOと判断して、S8に進む。一方において、CPU32は、切断対象の携帯端末を選択することができた場合、即ち、機器リスト50から切断対象の携帯端末の関連情報を選択することができた場合には、S50でYESと判断し、S52に進む。以下では、S10で選択された関連情報のことを「選択済みの関連情報」と呼ぶ。
S52では、CPU32は、切断対象の携帯端末との無線接続を切断する。具体的には、CPU32は、選択済みの関連情報に含まれるMACアドレスを含む切断要求を切断対象の携帯端末に送信して、切断対象の携帯端末から応答信号を受信する。これにより、プリンタPRと切断対象の携帯端末との間の無線接続が切断され、プリンタPRの接続数が上限数「4」未満になる。
S54では、CPU32は、選択済みの関連情報を参照して、切断対象の携帯端末(即ちS52で無線接続が切断された携帯端末)の機器タイプを判断する。機器タイプが「レガシー」である場合にはS56に進み、機器タイプが「IVサポート」である場合にはS58に進み、機器タイプが「IV非サポート」である場合にはS60に進む。
S56、S58、及び、S60では、CPU32は、機器リスト50を更新する。具体的には、S56では、CPU32は、選択済みの関連情報に含まれる「切断時刻」として現在時刻を記述し、さらに、選択済みの関連情報に含まれる「禁止フラグ」を「OFF」から「ON」に変更する。S58では、CPU32は、選択済みの関連情報に含まれる「切断時刻」として現在時刻を記述する。また、S60では、CPU32は、機器リスト50から選択済みの関連情報を消去する。S56、S58、又は、S60が終了すると、S62に進む。
S62では、CPU32は、無線接続を確立するための通信(図2のT22、図3のT122参照)を特定の携帯端末と実行する。これにより、CPU32は、特定の携帯端末との無線接続を確立して、プリンタPRがG/O機器として動作するWFDNWに特定の携帯端末を子局として参加させることができる。
次いで、S64では、CPU32は、特定の携帯端末の関連情報を機器リスト50に登録する。この処理は、図2のT24及び図3のT124で説明したとおりである。
(機器選択処理:図5)
図5を参照して、図4のS10の機器選択処理の内容を説明する。以下では、CPU32は、機器リスト50を参照して、各処理を実行する。
S12では、CPU32は、プリンタPRとの無線接続を確立している各機器のうちの使用済みのレガシー機器の数を判断する。具体的には、CPU32は、機器リスト50を参照して、切断時刻が記述されておらず、かつ、使用状況「使用済み」が記述されており、かつ、機器タイプ「レガシー」が記述されている関連情報を抽出する。CPU32は、抽出される関連情報の数(即ち使用済みのレガシー機器の数)が「0」であると判断する場合には、S22に進む。
S12において、CPU32は、1個の関連情報のみが抽出されると判断する場合には、S14において、当該1個の関連情報を選択することによって、切断対象の携帯端末として1個の使用済みのレガシー機器を選択する。
また、S12において、CPU32は、2個以上の関連情報が抽出されると判断する場合には、S16において、切断対象の携帯端末を選択するための選択肢である選択対象の機器として、各使用済みのレガシー機器を決定する。具体的には、CPU32は、S40〜S44で利用されるべき関連情報として当該2個以上の関連情報を決定する。S16が終了すると、S40に進む。
S22では、CPU32は、プリンタPRとの無線接続が確立されている各機器のうちの使用済みのIVサポート機器の数を判断する。具体的には、CPU32は、機器リスト50を参照して、切断時刻が記述されておらず、かつ、使用状況「使用済み」が記述されており、かつ、機器タイプ「IVサポート」が記述されている関連情報を抽出する。CPU32は、抽出される関連情報の数(即ち使用済みのIVサポート機器の数)が「0」であると判断する場合には、S32に進む。
S22において、CPU32は、1個の関連情報のみが抽出されると判断する場合には、S24において、当該1個の関連情報を選択することによって、切断対象の携帯端末として1個の使用済みのIVサポート機器を選択する。
また、S22において、CPU32は、2個以上の関連情報が抽出されると判断する場合には、S26において、切断対象の携帯端末を選択するための選択肢である選択対象の機器として、各使用済みのIVサポート機器を決定する。S26が終了すると、S40に進む。
S32では、CPU32は、プリンタPRとの無線接続が確立されている各機器のうちの使用済みのIV非サポート機器の数を判断する。具体的には、CPU32は、機器リスト50から、使用状況「使用済み」が記述されており、かつ、機器タイプ「IV非サポート」が記述されている関連情報を抽出する。CPU32は、抽出される関連情報の数(即ち使用済みのIV非サポート機器の数)が「0」であると判断する場合には、切断対象の携帯端末を選択することなく、図5の処理を終了する。この場合、図4のS50でNOと判断される。
S32において、CPU32は、1個の関連情報のみが抽出されると判断する場合には、S34において、当該1個の関連情報を選択することによって、切断対象の携帯端末として1個の使用済みのIV非サポート機器を選択する。
また、S32において、CPU32は、2個以上の関連情報が抽出されると判断する場合には、S36において、切断対象の携帯端末を選択するための選択肢である選択対象の機器として、各使用済みのIV非サポート機器を決定する。S36が終了すると、S40に進む。
S40〜S44では、CPU32は、2個以上の選択対象の機器(即ち、2個以上の使用済みのレガシー機器、2個以上の使用済みのIVサポート機器、又は、2個以上の使用済みのIV非サポート機器)の中から、1個の機器を選択する。具体的には、CPU32は、2個以上の選択対象の機器のそれぞれの電波強度(必要であればさらに接続時刻)を参照して、1個の機器を選択する。
S40では、CPU32は、2個以上の選択対象の機器のうち、電波強度が最も弱い機器の数を判断する。例えば、CPU32は、2個以上の抽出済みの関連情報に含まれる2個以上のMACアドレスのそれぞれについて、当該MACアドレスを送信先として所定の信号を送信して、応答信号を受信する。これにより、CPU32は、2個以上の選択対象の機器のそれぞれの電波強度を測定することができる。電波強度は、「強」、「中」、「弱」の3段階で表現される。CPU32は、2個以上の選択対象の機器のそれぞれの電波強度を参照して、電波強度が最も弱い機器の数が「1」であるのか「2」以上であるのかを判断する。
S40において、CPU32は、電波強度が最も弱い機器の数が「1」であると判断する場合には、S42に進む。例えば、第1の機器、第2の機器、第3の機器が、それぞれ、「強」、「中」、「弱」であれば、電波強度が最も弱い機器の数が「1」であるので、S42に進む。
S42では、CPU32は、電波強度が最も弱い1個の機器の関連情報を選択する。即ち、CPU32は、切断対象の携帯端末として、電波強度が最も弱い1個の機器を選択する。S42が終了すると、図5の処理が終了する。
また、S40において、CPU32は、電波強度が最も弱い機器の数が「2」以上であると判断する場合には、S44に進む。例えば、第1の機器、第2の機器、第3の機器が、それぞれ、「強」、「中」、「中」であれば、電波強度が最も弱い機器の数が「2」であるので、S44に進む。
S44では、CPU32は、電波強度が最も弱い2個以上の機器の2個以上の関連情報の中から、「接続時刻」として最も古い時刻が記述されている1個の機器の関連情報を選択する。即ち、CPU32は、切断対象の携帯端末として、接続時刻が最も古い1個の機器を選択する。S44が終了すると、図5の処理が終了する。
(図5の選択手法を採用している理由)
上述したように、図5の処理では、切断対象の携帯端末として、使用状況「使用済み」を有する機器が選択され得るが、使用状況「未使用」又は「使用中」を有する機器が選択されない(即ち、S12で「0」個、かつ、S22で「0」個、かつ、S32で「0」個の場合、切断対象の携帯端末が選択されない)。使用済みの機器では、全ての印刷データの通信が終了しているので、その後にさらなる通信がプリンタPRと実行される可能性が低い。このために、使用済みの機器との無線接続を切断しても、当該機器のユーザが不便に感じる可能性が低い。また、未使用の機器では、プリンタPRとの無線接続が確立されたが、印刷データの通信がまだ開始されていないので、当該機器のユーザがプリンタPRに印刷機能を実行させることを望む可能性が高い。また、使用中の機器では、当該機器とプリンタPRとの間で印刷データの通信が実行されている。このために、仮に、未使用又は使用中の機器との無線接続を切断すると、当該機器のユーザが不便に感じる可能性が高いので、当該機器との無線接続を切断しない手法を採用している。
レガシー機器が、IVサポート機器及びIV非サポート機器(即ちWFD機器)と比べて、切断対象の携帯端末として優先的に選択される(即ち、S12の処理が、S22及びS32の処理よりも先に実行される)。レガシー機器は、プリンタPRから切断要求を受信することに起因して、プリンタPRとの無線接続が切断された後に、ユーザから指示(例えば図3のT111の操作)が与えられなくても、接続要求をプリンタPRに自動的に送信することができる。一方において、WFD機器は、プリンタPRから切断要求を受信することに起因して、プリンタPRとの無線接続が切断された後に、ユーザから指示(例えば図2のT11の操作)が与えられたり、プリンタPRからInvitation Req.信号を受信したりしなければ、接続要求をプリンタPRに送信することができない。このように、レガシー機器は、接続要求をプリンタPRに自動的に送信するので、WFD機器と比べると、プリンタPRとの無線接続を比較的に容易に再確立することができる。このために、切断対象の携帯端末として、レガシー機器を優先的に選択する手法を採用している。
IVサポート機器が、IV非サポート機器と比べて、切断対象の携帯端末として優先的に選択される(即ち、S22の処理が、S32の処理よりも先に実行される)。IVサポート機器は、Invitation Req.信号に応じて、プリンタPRとの無線接続を再確立することができる。一方において、IV非サポート機器は、Invitation Req.信号に応じて、プリンタPRとの無線接続を再確立することができない。このように、IVサポート機器は、非IVサポート機器と比べて、プリンタPRとの無線接続を比較的に容易に再確立することができる。このために、切断対象の携帯端末として、IVサポート機器を優先的に選択する手法を採用している。
電波強度が最も弱い機器が、切断対象の携帯端末として優先的に選択される(S40参照)。電波強度が弱い機器は、プリンタPRから離れた場所に存在している可能性が高い。従って、当該機器のユーザが、プリンタPRに印刷機能を実行させることを望む可能性が低い。このために、当該機器との無線接続を切断しても、当該機器のユーザが不便に感じる可能性が低い。このために、切断対象の携帯端末として、電波強度が最も弱い機器を優先的に選択する手法を採用している。
接続時刻が最も古い機器が、切断対象の携帯端末として優先的に選択される(S44参照)。接続時刻が新しい機器のユーザは、例えば、プリンタPRでの印刷結果に満足しなかった場合には、プリンタPRに印刷機能を再び実行させる可能性が高い。このために、仮に、接続時刻が新しい機器との無線接続を切断すると、当該機器のユーザが不便に感じる可能性が高い。このために、切断対象の携帯端末として、接続時刻が最も古い機器を優先的に選択する手法を採用している。
(プリンタの監視処理;図6)
続いて、図6を参照して、プリンタPRのCPU32が実行する監視処理の内容を説明する。監視処理では、CPU32は、イベントに応じて、機器リスト50(図1参照)を更新する。これにより、CPU32は、レガシー機器又はIVサポート機器との無線接続を再確立し得る。
S102では、CPU32は、切断時刻から所定期間(例えば5分)が経過したレガシー機器が存在するのか否かを判断する。具体的には、CPU32は、まず、機器リスト50から、機器タイプ「レガシー」が記述されている1個以上の関連情報を取得する。そして、CPU32は、当該1個以上の関連情報のそれぞれについて、当該関連情報に含まれる「切断時刻」と現在時刻との差分を算出する。そして、CPU32は、当該1個以上の関連情報の中に、上記の差分が上記の所定期間よりも大きい関連情報(以下では「対象の関連情報」と呼ぶ)が存在する場合には、S102でYESと判断して、S104に進む。CPU32は、当該1個以上の関連情報の中に対象の関連情報が存在しない場合には、S102でNOと判断して、S106に進む。
S104では、CPU32は、対象の関連情報を機器リスト50から消去する。即ち、CPU32は、切断時刻から所定期間が経過したレガシー機器の関連情報を機器リスト50から消去する。これにより、禁止フラグ「ON」が記述されていたレガシー機器について、図4のS6でYESと判断されなくなる。この結果、プリンタPRは、禁止フラグが存在する場合(即ち禁止フラグ「ON」である場合)には、禁止フラグの存在に基づいてレガシー機器からの接続要求を拒否するが、禁止フラグが機器リスト50から消去されることによって、当該レガシー機器からの接続要求に応じて当該レガシー機器との無線接続を確立することができる。S104が終了すると、S102に戻る。
S106では、CPU32は、プリンタPRとの無線接続を確立しているいずれかの携帯端末との無線接続の切断が検出されたのか否かを判断する。具体的には、CPU32は、いずれかの携帯端末から切断要求を受信する場合に、S106でYESと判断する。なお、当該切断要求は、携帯端末のMACアドレスを含む。また、CPU32は、図示省略の処理において、接続確認信号を定期的に送信して、プリンタPRとの無線接続を確立している各携帯端末から応答信号を受信することを監視している。当該応答信号は、携帯端末のMACアドレスを含む。従って、CPU32は、機器リスト50に登録されている各MACアドレスと、各応答信号に含まれる各MACアドレスと、を比較することによって、応答信号を送信しなかった携帯端末(即ちMACアドレス)を特定することができる。CPU32は、応答信号を送信しなかった携帯端末を特定した場合に、S106でYESと判断する。
S108では、CPU32は、機器リスト50から、無線接続の切断が検出された携帯端末の関連情報を消去する。即ち、CPU32は、無線接続の切断が検出された携帯端末のMACアドレスを含む関連情報を消去する。
次いで、S110では、CPU32は、無線接続を再確立すべき1個以上の携帯端末が存在するのか否かを判断する。具体的には、CPU32は、機器リスト50を参照して、切断時刻が記述されている1個以上の関連情報(以下では「切断関連情報」と呼ぶ)が存在する場合には、無線接続を再確立すべき1個以上の携帯端末が存在すると判断して(S110でYES)、S112に進む。一方において、CPU32は、切断関連情報が存在しない場合には、無線接続を再確立すべき携帯端末が存在しないと判断して(S110でNO)、S102に戻る。なお、上述したように、機器リスト50では、レガシー機器又はIVサポート機器の関連情報には切断時刻が記述され得るが(図4のS56、S58参照)、IV非サポート機器の関連情報には切断時刻が記述されない(S60参照)。
S112では、CPU32は、無線接続を再確立すべき1個以上のIVサポート機器が存在するのか否かを判断する。具体的には、CPU32は、1個以上の切断関連情報の中に、機器タイプ「IVサポート」が記述されている1個以上の関連情報(以下では「サポート切断関連情報」と呼ぶ)が存在する場合には、無線接続を再確立すべき1個以上のIVサポート機器が存在すると判断して(S112でYES)、S114に進む。一方において、CPU32は、サポート切断関連情報が存在しない場合には、無線接続を再確立すべきIVサポート機器が存在しないと判断して(S112でNO)、S118に進む。
S114では、CPU32は、無線接続を再確立すべき1個以上のIVサポート機器のうちの1個のIVサポート機器にInvitation Req.信号を送信する。具体的には、CPU32は、1個のサポート切断関連情報のみが存在する場合には、当該1個のサポート切断関連情報に含まれるMACアドレスを送信先として、Invitation Req.信号を送信する。また、CPU32は、2個以上のサポート切断関連情報が存在する場合には、当該2個のサポート切断関連情報に含まれる2個以上のMACアドレスのうち、最も古い切断時刻に関連付けられているMACアドレスを送信先として、Invitation Req.信号を送信する。
次いで、S116では、CPU32は、機器リスト50から、S114のInvitation Req.信号の送信先のMACアドレスを含む関連情報を消去する。即ち、CPU32は、Invitation Req.信号の送信先のIVサポート機器の関連情報を消去する。S116が終了すると、S102に戻る。
なお、CPU32は、Invitation Req.信号をIVサポート機器に送信する場合に、通常、IVサポート機器からInvitation Res.信号を受信する。その後、CPU32は、IVサポート機器から接続要求(即ちAssociation Req.信号)を受信するので、図4のS2でYESと判断する。この結果、CPU32は、IVサポート機器との無線接続を再確立し得る(図4のS62)。
S118(即ち無線接続を再確立すべきIVサポート機器が存在しない場合)が実行される段階では、1個以上の切断関連情報の全ては、機器タイプ「レガシー」を含む。S112において、機器タイプ「IVサポート」を含む切断関連情報が存在しないと判断されており、しかも、図4のS60では、無線接続が切断されたIV非サポート機器の関連情報が消去されるからである。また、S118が実行される段階では、1個以上の切断関連情報の全ては、切断時刻から上記の所定期間(S102参照)が経過していないレガシー機器の関連情報である。切断時刻から上記の所定期間が経過したレガシー機器の関連情報は、S104で消去されるからである。
S118では、CPU32は、1個の切断関連情報のみが存在する場合には、当該1個の切断関連情報を機器リスト50から消去する。また、CPU32は、2個以上の切断関連情報が存在する場合には、当該2個以上の切断関連情報のうち、最も古い切断時刻を含む1個の切断関連情報を機器リスト50から消去する。これにより、CPU32は、切断時刻から上記の所定期間が経過していないレガシー機器の関連情報を機器リスト50から消去することができる。この結果、プリンタPRは、当該レガシー機器から接続要求を受信する場合(図4のS2でYES)に、当該レガシー機器との無線接続を再確立することができる(S6でNO)。S118が終了すると、S102に戻る。
上述したように、図6の処理では、プリンタPRは、無線接続を再確立すべきIVサポート機器及びレガシー機器の双方が存在する場合に、IVサポート機器との無線接続を優先的に再確立する(S112でYES)。その理由は以下のとおりである。仮に、レガシー機器との無線接続を優先的に再確立する手法を採用すると、プリンタPRは、レガシー機器から接続要求が自動的に送信されるまで、レガシー機器との無線接続を再確立することができない。これに対し、IVサポート機器との無線接続を優先的に再確立する手法を採用すると、プリンタPRは、プリンタPRの接続数が上限数未満になった直後に、Invitation Req.信号をIVサポート機器に送信することができ(S114)、この結果、IVサポート機器との無線接続を迅速に再確立することができる。本実施例によると、プリンタPRは、プリンタPRの接続数が上限数未満になった後に、無線接続を再確立すべき機器(即ちIVサポート機器)との無線接続を迅速に再確立することができる。
(ケースA;図7)
続いて、図2〜図6を参照して説明したプリンタPRの動作によって実現される具体的な様々なケースを説明する。図7の初期状態では、プリンタPRは、4個の携帯端末Ta〜Tdのそれぞれとの無線接続を確立している。即ち、プリンタPRの接続数は、上限数「4」に達している。
T210では、プリンタPRは、携帯端末Teから接続要求を受信する場合(図4のS2でYES)に、プリンタPRの接続数が上限数に一致すると判断し(S4でYES)、携帯端末Teの禁止フラグが「ON」でないと判断する(S6でNO)。この場合、T212では、プリンタPRは、図7の上側の機器リスト50を参照して、切断対象の携帯端末を選択する(S10)。具体的には、T212では、プリンタPRは、使用済みのレガシー機器である携帯端末Ta(即ち「MACa」を含む関連情報)を選択する(図5のS12で「1個」、S14)。
T214では、プリンタPRは、切断要求を携帯端末Taに送信して、携帯端末Taとの無線接続を切断する(図4のS52)。これにより、プリンタPRの接続数が上限数未満になる。そして、T216では、プリンタPRは、携帯端末Taの関連情報において、切断時刻及び禁止フラグ「ON」を記述する(S56)。
T220では、プリンタPRは、無線接続を確立するための様々な信号の通信を携帯端末Teと実行して、携帯端末Teとの無線接続を確立する(図4のS62)。これにより、プリンタPRの接続数が再び上限数に達する。そして、T222では、プリンタPRは、携帯端末Teの関連情報を機器リスト50に登録する(S64)。
レガシー機器である携帯端末Taは、プリンタPRから切断要求(T214)を受信することに起因して、プリンタPRとの無線接続が切断された後に、ユーザから指示が与えられなくても、接続要求をプリンタPRに自動的に送信する。
T224では、プリンタPRは、携帯端末Taから接続要求を受信する場合(図4のS2でYES)、プリンタPRの接続数が上限数に一致すると判断し(S4でYES)、携帯端末Taの禁止フラグが「ON」であると判断する(S6でYES)。従って、T226では、プリンタPRは、拒否通知を携帯端末Taに送信して、携帯端末Taとの無線接続を確立しない。
上述したように、本実施例では、プリンタPRは、レガシー機器である携帯端末Taとの無線接続を切断してから所定期間が経過する前に、プリンタPRの接続数が上限数に一致する状態で、携帯端末Taから接続要求を受信しても(T224)、他の機器との無線接続を切断しない。このために、携帯端末Taとの無線接続が切断されてから短時間しか経過していない状況で、携帯端末Taから自動的に送信される接続要求に応じて、他の機器との無線接続が切断されるという事象の発生を抑制することができる。
T227では、プリンタPRは、レガシー機器である携帯端末Taとの無線接続を切断してから所定期間が経過したと判断し(図6のS102でYES)、携帯端末Taの関連情報を機器リスト50から消去する(S104)。
その後、T228では、プリンタPRは、携帯端末Taから接続要求を受信する場合(図4のS2でYES)に、プリンタPRの接続数が上限数に一致すると判断し(S4でYES)、携帯端末Taの禁止フラグが「ON」でないと判断する(S6でNO)。T227において、携帯端末Taの当該禁止フラグを含む関連情報が機器リスト50から消去されたからである。この場合、T230では、プリンタPRは、図7の下側の機器リスト50を参照して、切断対象の携帯端末を選択する(S10)。具体的には、プリンタPRは、使用済みのIVサポート機器である携帯端末Tb(即ち「MACb」を含む関連情報)を選択する(図5のS22で「1個」、S24)。
T232では、プリンタPRは、切断要求を携帯端末Tbに送信して、携帯端末Tbとの無線接続を切断する(図4のS52)。これにより、プリンタPRの接続数が上限数未満になる。そして、T234では、プリンタPRは、携帯端末Tbの関連情報において、切断時刻を記述する(S58)。
T236では、プリンタPRは、無線接続を確立するための様々な信号の通信を携帯端末Taと実行して、携帯端末Taとの無線接続を確立する(図4のS62)。これにより、プリンタPRの接続数が再び上限数に達する。そして、T238では、プリンタPRは、携帯端末Taの関連情報を機器リスト50に登録する(S64)。
上述したように、本実施例では、プリンタPRは、レガシー機器である携帯端末Taとの無線接続を切断してから所定期間が経過した後に、プリンタPRの接続数が上限数に一致する状態で、携帯端末Taから接続要求を受信する場合(T228)に、携帯端末Tbとの無線接続を切断する(T232)。このために、プリンタPRは、携帯端末Taとの無線接続を適切に再確立することができる。
(ケースB;図8)
図8の初期状態は、図7の初期状態と同様である。また、T310〜T322は、図7のT210〜T222と同様である。
T324では、プリンタPRは、携帯端末Teから切断要求を受信して、携帯端末Teとの無線接続が切断されたことを検出する(図6のS106でYES)。これにより、プリンタPRの接続数が上限数未満になる。この場合、T326では、プリンタPRは、携帯端末Teの関連情報を機器リスト50から消去する(S108)。
T328では、プリンタPRは、機器リスト50の中に切断時刻が記述されている1個の切断関連情報(即ち「MACa」を含む関連情報)が存在するので、無線接続を再確立すべき携帯端末Taが存在すると判断する(図6のS110でYES)。T328では、プリンタPRは、さらに、機器タイプ「IVサポート」を含む切断関連情報が存在しないので、無線接続を再確立すべきIVサポート機器が存在しないと判断する(S112でNO)。この結果、プリンタPRは、機器タイプ「レガシー」を含む切断関連情報、即ち、携帯端末Taの関連情報を機器リスト50から消去する(S118)。これにより、切断時刻から所定期間が経過する前に、携帯端末Taの関連情報を機器リスト50から消去することができる。
T330では、プリンタPRは、携帯端末Taから接続要求を受信する場合(図4のS2でYES)に、プリンタPRの接続数が上限数に一致しないと判断する(S4でNO)。そして、T332では、プリンタPRは、無線接続を確立するための様々な信号の通信を携帯端末Taと実行して、携帯端末Taとの無線接続を確立する(S62)。なお、ここでは、プリンタPR及び携帯端末Taに図3のT110及びT111に相当する各操作が実行されず、しかも、携帯端末Taは、プリンタPRとの無線接続を確立するための各種情報を既に取得している。従って、T332では、WSC Exchangeの通信が実行されない。T332が実行されると、プリンタPRの接続数が再び上限数に達する。そして、T334では、プリンタPRは、携帯端末Taの関連情報を機器リスト50に登録する(S64)。
上述したように、本実施例では、プリンタPRは、レガシー機器である携帯端末Taとの無線接続を切断してから所定期間が経過する前に、プリンタPRの接続数が上限数未満である状態で、携帯端末Taから接続要求を受信する場合(T330)に、携帯端末Taとの無線接続を適切に再確立することができる(T332)。
(ケースC;図9)
図9の初期状態は、図7の初期状態と同様である。T410は、図7のT210と同様である。
T412では、プリンタPRは、図9の機器リスト50を参照して、切断対象の携帯端末を選択する(図4のS10)。具体的には、T412では、プリンタPRは、使用中のレガシー機器である携帯端末Ta(即ち「MACa」を含む関連情報)を選択せずに(図5のS12で「0個」)、使用済みのIVサポート機器である携帯端末Tb(即ち「MACb」を含む関連情報)を選択する(S22で「1個」、S24)。
T414では、プリンタPRは、切断要求を携帯端末Tbに送信して、携帯端末Tbとの無線接続を切断する(図4のS52)。これにより、プリンタPRの接続数が上限数未満になる。そして、T416では、プリンタPRは、携帯端末Tbの関連情報において、切断時刻を記述する(S58)。T420,T422は、図7のT220,T222と同様である。また、T424,T426は、図8のT324,T326と同様である。
T427では、プリンタPRは、機器リスト50の中に切断時刻が記述されている1個の切断関連情報(即ち「MACb」を含む関連情報)が存在するので、無線接続を再確立すべき携帯端末Tbが存在すると判断する(図6のS110でYES)。T427では、プリンタPRは、さらに、機器タイプ「IVサポート」を含む切断関連情報が存在するので、無線接続を再確立すべきIVサポート機器が存在すると判断する(S112でYES)。この結果、プリンタPRは、Invitation Req.信号を携帯端末Tbに送信する(S114)。そして、T428では、プリンタPRは、携帯端末Tbの関連情報を機器リスト50から消去する(S116)。
T430では、プリンタPRは、携帯端末Tbから接続要求を受信する場合(図4のS2でYES)に、プリンタPRの接続数が上限数に一致しないと判断する(S4でNO)。そして、T432では、プリンタPRは、無線接続を確立するための様々な信号の通信を携帯端末Tbと実行して、携帯端末Tbとの無線接続を確立する(S62)。これにより、プリンタPRの接続数が再び上限数に達する。そして、T434では、プリンタPRは、携帯端末Tbの関連情報を機器リスト50に登録する(S64)。
上述したように、本実施例では、プリンタPRは、IVサポート機器である携帯端末Tbとの無線接続を切断した後に、プリンタPRの接続数が上限数未満に移行する場合(T424)に、Invitation Req.信号を携帯端末Tbに送信して(T427)、携帯端末Tbとの無線接続を適切に再確立することができる(T430、T432)。
(ケースD;図10)
図10の初期状態は、図7の初期状態と同様である。T510〜T522は、図7のT210〜T222と同様である。
T530では、プリンタPRは、さらに、携帯端末Tfから接続要求を受信する場合(図4のS2でYES)に、プリンタPRの接続数が上限数に一致すると判断し(S4でYES)、携帯端末Tfの禁止フラグが「ON」でないと判断する(S6でNO)。この場合、T532では、プリンタPRは、図10の下側の機器リスト50を参照して、切断対象の携帯端末を選択する(S10)。具体的には、T532では、プリンタPRは、使用済みのIVサポート機器である携帯端末Tb(即ち「MACb」を含む関連情報)を選択する(図5のS22で「1個」、S24)。なお、使用済みのレガシー機器である携帯端末Taは、無線接続が既に切断されているので(即ち切断時刻が記述されているので)、切断対象の携帯端末として選択されることはない(S12で「0個」)。T534,T536は、図9のT414,T416と同様である。
T540では、プリンタPRは、無線接続を確立するための様々な信号の通信を携帯端末Tfと実行して、携帯端末Tfとの無線接続を確立する(図4のS62)。これにより、プリンタPRの接続数が再び上限数に達する。そして、T542では、プリンタPRは、携帯端末Tfの関連情報を機器リスト50に登録する(S64)。
(図10の続き;図11)
図11は、図10の続きのシーケンス図を示す。T600では、プリンタPRは、携帯端末Tcから切断要求を受信して、携帯端末Tcとの無線接続が切断されたことを検出する(図6のS106でYES)。これにより、プリンタPRの接続数が上限数未満になる。この場合、T602では、プリンタPRは、携帯端末Tcの関連情報を機器リスト50から消去する(S108)。
T627では、プリンタPRは、プリンタPRは、機器リスト50の中に切断時刻が記述されている2個の切断関連情報(即ち、「MACa」を含む関連情報、「MACb」を含む関連情報)が存在するので、無線接続を再確立すべき2個の携帯端末Ta,Tbが存在すると判断する(図6のS110でYES)。T627では、プリンタPRは、さらに、機器タイプ「IVサポート」を含む切断関連情報(即ち「MACb」を含む関連情報)が存在するので、無線接続を再確立すべきIVサポート機器が存在すると判断する(S112でYES)。この結果、プリンタPRは、Invitation Req.信号を携帯端末Tbに送信する(S114)。T628〜T634は、図9のT428〜T434と同様である。
上述したように、本実施例では、プリンタPRは、無線接続を再確立すべきIVサポート機器及びレガシー機器の双方が存在する場合に、IVサポート機器である携帯端末Tbとの無線接続を優先的に再確立する。これにより、プリンタPRは、プリンタPRの接続数が上限数未満になった後に、無線接続を再確立すべき機器(即ちIVサポート機器)との無線接続を迅速に再確立することができる。
(ケースE;図12)
図12の初期状態では、プリンタPRは、4個の携帯端末Ta,Td〜Tfのそれぞれとの無線接続を確立している。即ち、プリンタPRの接続数は、上限数「4」に達している。また、プリンタPRは、過去に、各携帯端末Tb,Tcに切断要求を送信して、無線接続を切断している。このために、機器リスト50では、各携帯端末Tb,Tcの各関連情報において、切断時刻が記述されている。
T800では、プリンタPRは、携帯端末Taから切断要求を受信して、携帯端末Taとの無線接続が切断されたことを検出する(図6のS106でYES)。これにより、プリンタPRの接続数が上限数未満になる。この場合、T802では、プリンタPRは、携帯端末Taの関連情報を機器リスト50から消去する(S108)。
T827では、プリンタPRは、機器リスト50の中に切断時刻が記述されている2個の切断関連情報(即ち、「MACb」を含む関連情報、「MACc」を含む関連情報)が存在するので、無線接続を再確立すべき2個の携帯端末Tb,Tcが存在すると判断する(図6のS110でYES)。T827では、プリンタPRは、さらに、機器タイプ「IVサポート」を含む2個の切断関連情報が存在するので、無線接続を再確立すべき2個のIVサポート機器が存在すると判断する(S112でYES)。従って、T827では、プリンタPRは、機器タイプ「IVサポート」を含む2個の切断関連情報のうち、最も古い切断時刻が記述されている1個の切断関連情報(即ち「MACb」を含む関連情報)を選択して、Invitation Req.信号を携帯端末Tbに送信する(S114)。T828〜T834は、図9のT428〜T434と同様である。
上述したように、本実施例では、プリンタPRは、無線接続を再確立すべき2個以上のIVサポート機器が存在する場合に、プリンタPRとの無線接続が先に切断された携帯端末Tbとの無線接続を優先的に再確立する。このために、携帯端末Tbとの無線接続が長期間に亘って再確立されないという事象の発生を抑制することができる。
(対応関係)
プリンタPR、印刷機能が、それぞれ、「無線通信装置」、「画像処理機能」の一例である。レガシー機器、WFD機器(即ちIVサポート機器及びIV非サポート機器)が、それぞれ、「第1種の機器」、「第2種の機器」の一例である。IVサポート機器、IV非サポート機器が、それぞれ、「サポート機器」、「非サポート機器」の一例である。WFD方式が、「特定の無線通信方式」の一例である。WFD方式のG/Oネゴシエーションが、「無線ネットワークの親局及び子局を決定するための無線通信を実行する仕組み」の一例である。Invitation Req.信号が、「所定コマンド」の一例である。
図7のケースAでは、携帯端末Te、携帯端末Taが、それぞれ、「第1の特定機器」、「第1の対象機器」の一例である。T210の接続要求、T214の切断要求が、それぞれ、「第1の無線接続要求」、「第1の切断要求」の一例である。T224の接続要求を受信する場合が、「所定期間が経過する前に、接続数が上限数に一致する状態で、第1の対象機器から無線接続要求が受信される場合」の一例である。T228の接続要求を受信する場合が、「所定期間が経過した後に、接続数が上限数に一致する状態で、第1の対象機器から無線接続要求が受信される場合」の一例である。
図8のケースBでは、T330の接続要求を受信する場合が、「所定期間が経過する前に、接続数が上限数未満である状態で、第1の対象機器から無線接続要求が受信される場合」の一例である。
図10のケースDでは、携帯端末Te、携帯端末Tf、携帯端末Ta、携帯端末Tbが、それぞれ、「第1の特定機器」、「第2の特定機器」、「第1の対象機器」、「第2の対象機器」の一例である。T510の接続要求、T530の接続要求、T514の切断要求、T534の切断要求が、それぞれ、「第1の無線接続要求」、「第2の無線接続要求」、「第1の切断要求」、「第2の切断要求」の一例である。
図4のS2の処理、S10の処理(即ち図5の処理)、S52の処理、S62の処理が、それぞれ、「受信部」、「選択部」、「切断部」、「確立部」によって実行される処理の一例である。また、図4のS6の処理、S8の処理、S56の処理、図6のS102の処理、及び、S104の処理が、「切断制御部」によって実行される処理の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)
上記の実施例では、図5の処理において、プリンタPRのCPU32は、切断対象の携帯端末として、未使用又は使用中の機器を選択せずに、使用済みの機器を選択する。これに代えて、CPU32は、使用中の機器を選択せずに、未使用又は使用済みの機器を選択してもよい。また、別の変形例では、CPU32は、使用状況に関わらず、切断対象の携帯端末を選択してもよい。即ち、「N1個の機器」は、アプリケーションが起動中である機器を含んでいてもよい。
(変形例2)
上記の実施例では、図5の処理において、プリンタPRのCPU32は、切断対象の携帯端末として、IVサポート機器と比べて、レガシー機器を優先的に選択する。これに代えて、CPU32、切断対象の携帯端末として、レガシー機器と比べて、IVサポート機器を優先的に選択してもよい。プリンタPRは、レガシー機器から自動的に送信される接続要求を受信しなければ、レガシー機器との無線接続を再確立することができない。従って、仮に、レガシー機器において、接続要求を自動的に送信する機能が無効化されている場合には、プリンタPRは、レガシー機器から自動的に接続要求を受信することができず、レガシー機器との無線接続を再確立することができない。これに対し、プリンタPRは、IVサポート機器との無線接続を切断した後に、Invitation Req.信号をIVサポート機器に送信することができる。これにより、プリンタPRは、IVサポート機器との無線接続を適切に再確立することができる。即ち、プリンタPRは、無線接続の再確立の可能性を高めるために、切断対象の携帯端末として、レガシー機器と比べて、IVサポート機器を優先的に選択してもよい。一般的に言うと、「選択部」は、第1の対象機器として、第1種の機器と比べて第2種の機器を優先的に選択してもよい。
(変形例3)
図6の処理において、プリンタPRのCPU32は、S102及びS104の処理を実行しなくてもよい。即ち、「確立部」は、所定期間が経過する前に、接続数が上限数未満である状態で、第1の対象機器から無線接続要求が受信される場合に、第1の対象機器との無線接続を再確立しなくてもよい、
(変形例4)
図6の処理において、プリンタPRのCPU32は、無線接続を再確立すべきIVサポート機器及びレガシー機器の双方が存在する場合に、IVサポート機器との無線接続を優先的に再確立する。これに代えて、CPU32は、レガシー機器との無線接続を優先的に再確立してもよい。例えば、プリンタPRとの通信を頻繁に実行し得る機器(例えば、PC、サーバ等)がレガシー機器として利用される環境であれば、レガシー機器との無線接続を優先的に再確立する構成を採用するのが好ましい。即ち、「確立部」は、サポート機器である第2の対象機器と比べて、第1種の機器である第1の対象機器との無線接続を優先的に再確立してもよい。
(変形例5)
プリンタPRのCPU32は、プリンタPRをWFD方式のG/O機器として動作させる代わりに、いわゆるSoftAPを起動して、プリンタPRを疑似的なAPとして動作させてもよい。本変形例でも、CPU32は、プリンタPRが親局として動作する無線ネットワークを形成することができる。
(変形例6)
「無線通信装置」は、プリンタPRに限られず、他の種類の機器(例えば、スキャナ、ファクシミリ、電話機、多機能機、無線アクセスポイント、PC、携帯端末等)であってもよい。一般的に言うと、「無線通信装置」は、無線ネットワークの親局として動作して、外部機器との無線接続を確立可能な機器であれば、どのような種類の機器であってもよい。例えば、「無線通信装置」としてスキャナが採用される場合には、スキャン機能が「画像処理機能」の一例である。
(変形例7)上記の実施例では、プリンタPRのCPU32がメモリ34内のプログラム36(即ちソフトウェア)を実行することによって、図2〜図6の各処理が実現される。これに代えて、図2〜図6の各処理のうちの少なくとも1つの処理は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。