(58)【調査した分野】(Int.Cl.,DB名)
前記第1の通信手段による接続または前記第2の通信手段による接続のいずれかに接続先を設定する接続設定手段をさらに有することを特徴とする請求項2または5に記載の情報処理装置。
前記制御手段は、前記第1の通信手段により前記電子機器と通信を行う場合、前記第3の通信手段による通信を切断し、前記第1の通信手段による通信に切り替えることを特徴とする請求項4に記載の情報処理装置。
前記制御手段は、前記第1の通信手段により前記電子機器と通信を行う場合、前記第2の通信手段による通信を切断し、前記第1の通信手段による通信に切り替えることを特徴とする請求項5または6に記載の情報処理装置。
前記能力を満たすソフトウェアに更新されると、前記第1の通信手段による前記電子機器との通信を促すためのメッセージを表示する表示手段をさらに有することを特徴とする請求項1ないし8のいずれか1項に記載の情報処理装置。
【発明を実施するための形態】
【0012】
以下に、本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。また、後述する各実施形態の一部を適宜組み合わせて構成しても良い。
【0013】
[実施形態1]本発明の情報処理装置および電子機器として携帯電話の一種であるスマートフォンとデジタルカメラを適用し、スマートフォンがデジタルカメラの無線LANアクセスポイントを介して通信可能に接続されたシステムについて説明する。もちろん情報処理装置および電子機器は上記の例には限定されない。例えば情報処理装置としてはいわゆるタブレットデバイスやパーソナルコンピュータ、インターネット等の広域網に接続可能なテレビ、プリンタなどを用いてもよい。また、電子機器としてはタブレットデバイス、スマートフォン、音楽プレーヤ、プリンタなどを用いることができる。
【0014】
<システム構成>まず、
図1を参照して、本実施形態のシステム構成について説明する。
【0015】
情報処理装置101は、無線LANによりインターネット104および電子機器102と接続する機能を備える。また、情報処理装置101は、電子機器102が形成する無線LANネットワークに参加可能であり、電子機器102との間でデータ通信を行う。また、情報処理装置101は、広域ネットワーク(WAN)基地局103に、3G/LTE等に対応する通信方式を用いて接続可能であり、WAN基地局103に接続されたインターネット104を経由してサービス提供サーバ105からアプリケーションソフトウェア等のアップデートプログラムをダウンロードできる。情報処理装置101は、一度に1つのネットワークのみに接続可能であるため、電子機器102が形成する無線LANネットワークにより電子機器102と接続している間は、WAN基地局103を介してインターネット104には接続することはできない。また、情報処理装置101は、(Near Field Communication)等の近接無線通信のリーダライタ機能を備えており、電子機器102に組み込まれたNFCタグに対してデータの読み出し、書き込みを行うことができる。
【0016】
<電子機器の構成>次に、
図2を参照して、本実施形態のシステムを構成する電子機器102としてのデジタルカメラ200の構成及び機能について説明する。
【0017】
図2において、制御部201は、デジタルカメラ200の全体を統括して制御する演算処理装置(CPU)であって、後述する不揮発性メモリ204に格納されたプログラムを実行することで、後述するフローチャートの各処理を実現する。なお、制御部201が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【0018】
撮像部202は、ズームレンズやフォーカスレンズを含むレンズ群、絞り機能を備えるシャッターを含む。また、撮像部202は、被写体像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子、撮像素子から出力されるアナログ画像信号をデジタル信号に変換するA/D変換器を有する。
【0019】
画像処理部203は、撮像部202により撮像された画像データに、ホワイトバランスや色、明るさ等を調整する画質調整処理を施し、また、表示用サイズへのリサイズ処理等を行う。また、画像処理部203は、画質調整処理が施された画像データをJPEG等により圧縮符号化して画像ファイルを生成し、記録媒体210に記録する。また、画像処理部203は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づき制御部201が撮像部202のフォーカスレンズや絞り、シャッターを制御することで、AF(オートフォーカス)処理やAE(自動露出)処理を行う。
【0020】
不揮発性メモリ204は、電気的に消去・記録可能なメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ204には、制御部201の動作用の定数、プログラム等が記録される。ここでいう、プログラムとは、本実施形態にて後述する各種フローチャートを実行するためのプログラムのことである。
【0021】
作業用メモリ205は、制御部201の動作用の定数、変数、不揮発性メモリ204から読み出したプログラム等を展開する作業領域として使用される。また、作業用メモリ205は、撮像部202で撮像された画像データを一時的に保持するバッファメモリや、表示部207の画像表示用メモリとして使用される。
【0022】
操作部206は、ユーザからの各種操作を受け付ける各種スイッチ、ボタン、タッチパネル等の操作部材からなり、例えば、電源スイッチ、シャッタースイッチ、モード切替スイッチ等を含む。シャッタースイッチは、デジタルカメラ200に設けられたシャッターボタンの操作途中、いわゆる半押し(撮影準備指示)でONとなり第1シャッタースイッチ信号SW1を発生する。第1シャッタースイッチ信号SW1を受けて、制御部201は撮像部202を制御することによりAF(オートフォーカス)処理やAE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作を開始する。また、シャッタースイッチは、シャッターボタンの操作完了、いわゆる全押し(撮影指示)でONとなり、第2シャッタースイッチ信号SW2を発生する。制御部201は、第2シャッタースイッチ信号SW2を受けて、撮像部202からの信号読み出しから記録媒体210に画像データを書き込むまでの一連の撮影処理の動作を開始する。
【0023】
表示部207は、撮影時のビューファインダー画像の表示、撮影した画像の表示、対話的な操作のための文字表示等を行う。表示部207は、例えば、液晶ディスプレイ、有機ELディスプレイ等の表示デバイスである。表示部207は、デジタルカメラ200と一体化された構成であっても、デジタルカメラ200と接続された外部装置であっても良い。
【0024】
記録媒体210は、画像処理部203により符号化された画像ファイルが記録されたり、制御部201により既に記録されている画像ファイルが読み出される。記録媒体210は、デジタルカメラ200に装着されるメモリカードやハードディスクドライブ等であっても良いし、デジタルカメラ200に内蔵されたフラッシュメモリやハードディスクドライブであっても良い。
【0025】
接続部211は、情報処理装置101などの外部装置と接続するためのインターフェースである。本実施形態のデジタルカメラ200は、接続部211を介して、外部装置とデータの授受を行うことができる。なお、本実施形態では、接続部211は外部装置と無線で通信するための無線LAN通信モジュール211aを含む。制御部201は、接続部211を制御することで外部装置との無線通信を実現する。なお、通信方式は無線LANに限定されるものではなく、例えばUSB(Universal Serial Bus)やBluetooth(登録商標)等を用いることができる。また、接続部211は近接無線通信を行うためのNFCタグ211bを含む。NFCタグ211bは、リーダライタ機能を有する外部装置によりデータの読み出し、書き込みが行われる。電子機器102は、NFCタグ211bにより外部装置に対して接続を要求し、無線LAN等により画像データ等を転送する。NFCタグ211bはダイナミック型と呼ばれるもので、送信データが電子機器102の制御により動的に変更可能である。
【0026】
また、本実施形態では、接続部211は、無線LANネットワークを形成するアクセスポイント(AP)として動作可能な無線LANアクセスポイントモジュール(以下、APモジュール)211cを含む。デジタルカメラ200が無線LANアクセスポイントとして動作すると、デジタルカメラ200は自身でネットワークを形成する。デジタルカメラ200の周辺に存在する情報処理装置101は、デジタルカメラ200を無線LANアクセスポイントと認識し、デジタルカメラ200の無線LANネットワークに参加可能となる。なお、本実施形態では、制御部201は、後述するように情報処理装置101が電子機器102と通信するために必要なソフトウエアの能力を表す能力情報(Capability)に応じて無線LANアクセスポイントの有効/無効を制御する。上記のようにデジタルカメラ200を動作させるためのプログラムは不揮発性メモリ204に保持されているものとする。
【0027】
なお、本実施形態におけるデジタルカメラ200はアクセスポイントの一種であるものの、スレーブ装置から受信したデータをインターネットプロバイダ等に転送するゲートウェイ機能は有していない簡易APである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネット等のネットワークに転送することはできない。
【0028】
<情報処理装置の構成>次に、
図3を参照して、本実施形態のシステムを構成する情報処理装置101としてのスマートフォン300の構成及び機能について説明する。
【0029】
本実施形態のスマートフォン300は、制御部301、撮像部302、不揮発性メモリ303、作業用メモリ304、操作部305、表示部306、記録媒体310、接続部311を備える。上記各要素の基本的な機能はデジタルカメラ200と同様であり、詳細な説明は省略する。なお、情報処理装置101をパーソナルコンピュータ(PC)等とした場合、PCは表示部を備えている必要はなく、表示部の表示を制御する表示制御機能を有していれば良い。
【0030】
なお、不揮発性メモリ303には、デジタルカメラ200と通信するためのアプリケーションソフトウェアが保持されているものとする。なお、本実施形態におけるスマートフォン300の処理は、アプリケーションにより提供されるソフトウェアを読み込むことにより実現される。なお、アプリケーションはスマートフォン300にインストールされたOSの基本的な機能を利用するためのソフトウェアを有しているものとする。なお、スマートフォン300のOSが本実施形態における処理を実現するためのソフトウェアを有していても良い。
【0031】
接続部311は、外部装置と無線で通信するための無線LAN通信モジュール311aを含む。制御部301は、接続部311を制御することで外部装置との無線通信を実現する。なお、通信方式は無線LANに限定されるものではなく、例えばUSB(Universal Serial Bus)やBluetooth(登録商標)等を用いることができる。また、接続部311は近接無線通信を行うためのNFCリーダライタ311bを含む。
【0032】
公衆網接続部312は、3G/LTE等の広域ネットワーク(WAN)を介して無線通信を行う際に用いられるインターフェースである。スマートフォン300は、公衆網接続部312を介して、他の機器と通話をしたり、データ通信をすることができる。通話の際には、制御部301はマイク313およびスピーカ314を介して音声信号の入力と出力を行う。本実施形態では、公衆網接続部312は3GやLTEに限らず、WiMAX、ADSL、FTTHといった他の通信方式を用いても良い。また、接続部311および公衆網接続部312は必ずしも独立したハードウェアで構成する必要はなく、例えば1つのアンテナで兼用することも可能である。
【0033】
<デジタルカメラ200の通信処理>次に、
図4を参照して、本実施形態のスマートフォン300との接続を確立するまでのデジタルカメラ200の処理について説明する。
【0034】
なお、
図4に示す処理は、制御部201が不揮発性メモリ204に格納されたプログラムを作業用メモリ205に読み出して実行することにより実現される。
【0035】
ステップS401では、制御部201は、NFCタグ211bのデータによりスマートフォン300がデジタルカメラ200との無線LAN通信に必要なソフトウェアの能力を表す能力情報をスマートフォン300に送信する。
【0036】
ステップS402では、制御部201は、NFCタグ211bのデータによりスマートフォン300から一定時間内に応答が戻ってくるのを待つ。スマートフォン300から一定時間内に応答がない場合は、NFCによる接続を切断し、本処理を終了する。また、一定時間内に応答があった場合は、ステップS403に進む。
【0037】
ステップS403では、制御部201は、無線LANAPモジュール211cを起動してネットワークを形成し、スマートフォン300はデジタルカメラ200と同一のネットワークに参加可能となる。
【0038】
その後、ステップS404では、制御部201はデバイスディスカバリを行い、デジタルカメラ200のネットワークに参加しているスマートフォン300との間で接続を確立する。
【0039】
<スマートフォン300の通信処理>次に、
図5を参照して、本実施形態のデジタルカメラ200との接続を確立するまでのスマートフォン300の処理について説明する。
【0040】
なお、
図5に示す処理は、制御部301が不揮発性メモリ303に格納されたプログラムを作業用メモリ304に読み出して実行することにより実現される。
【0041】
ステップS501では、制御部301は、NFCリーダライタ311bがデジタルカメラ200のNFCタグ211bを読み出すことにより、デジタルカメラ200と無線LANネットワークにより通信を行うために必要なソフトウェアの能力を表す能力情報を受信する。
【0042】
ステップS502では、制御部301は、デジタルカメラ200から取得した能力情報と比較し、ソフトウェアが能力情報に記述された能力を満たすか否かを判定し、能力を満たす場合はステップS503に進み、満たさない場合はステップS506に進む。
【0043】
ステップS503では、制御部301は、デジタルカメラ200に応答を送信する。
【0044】
ステップS504では、制御部301は、デジタルカメラ200のネットワークに参加する。
【0045】
ステップS505では、制御部301は、デジタルカメラ200との接続を確立する。
【0046】
具体的には、ステップS503でデジタルカメラ200に応答を送信するため、デジタルカメラ200は、
図4のステップS403の処理にて無線LANAPモジュール211cを起動し、無線LANネットワークを形成する。また、スマートフォン300は、デジタルカメラ200が形成した無線LANネットワークに参加する。デジタルカメラ200とスマートフォン300は、同一のネットワークに参加しているため、ステップS505では、デジタルカメラ200とスマートフォン300との接続が確立できる。この場合、スマートフォン300は、インターネット104には接続されていない。
【0047】
ステップS502で、スマートフォン300のソフトウェアが、デジタルカメラ200と接続するために必要なソフトウェアの能力を満たさない場合は、制御部301は、デジタルカメラ200に応答を送信しないで、ステップS506に進む。
【0048】
ステップS506では、制御部301は、インターネット104を経由してサービス提供サーバ105にアクセスし、更新ソフトウェアをダウンロードする。この場合、デジタルカメラ200には応答を送信していないため、デジタルカメラ200は、
図4のステップS402でスマートフォン300からの応答待ち状態であり、無線LANAPモジュール211cの起動は行われていない。そのため、スマートフォン300は、WAN基地局103により広域ネットワークに参加することとなり、インターネット104上のサービス提供サーバ105との接続が確立できる。
【0049】
ステップS507では、制御部301は、既存のソフトウェアを、ステップS506でダウンロードしたソフトウェアに更新する。その後、デジタルカメラ200に応答を送信する必要があるが、ソフトウェアの更新の間にデジタルカメラ200との物理的距離が離れてしまったなどの理由により、デジタルカメラ200に応答を送信できない状況になる可能性も考えられる。そのため、ステップS508では、制御部301は、デジタルカメラ200に応答を送信可能な状態であるか否かを判定する。判定の結果、応答を送信可能な状態ならばステップS503に進み、デジタルカメラ200に応答を送信し、応答を送信できない状態ならばステップS509に進み、表示部306にデジタルカメラ200との接続を再試行するためのメッセージを表示する。ここで、ユーザがメッセージに従って再度デジタルカメラ200との接続を再試行した場合、デジタルカメラ200は
図4の処理を最初から、スマートフォン300は
図5の処理を最初から実行することになる。その結果、スマートフォン300で動作するソフトウェアは、必要な能力を既に満たしているため、即座にデジタルカメラ200に応答を送信し、接続を確立できるようになる。
【0050】
このように、本実施形態のスマートフォン300は、広域ネットワーク接続からデジタルカメラ200のローカルネットワーク接続に切り替える際に、通信に必要なソフトウェアを更新してからデジタルカメラ200との接続を確立する。このため、スマートフォン300でソフトウェアの更新が必要になった場合に、アップデートソフトウェアを提供しているインターネット上のサーバにアクセスできず、ソフトウェアを更新できなくなってしまう事態を防止することができる。
【0051】
<NFCによる通信情報>次に、
図6を参照して、
図4および
図5においてNFCにより授受される情報について説明する。
【0052】
図6(a)は、
図5のステップS501で、デジタルカメラ200がNFCタグ211bに書き込む情報を示している。NFCタグ211bには、能力情報領域610と、接続中ソフトウェア名領域620の2つの情報を記録することができる。ステップS501の時点では、デジタルカメラ200は、能力情報領域610に情報を記録し、接続中ソフトウェア名領域620には空のデータを記録している。
【0053】
図6(b)は、ステップS503で、スマートフォン300がNFCタグ211bに書き込む情報を示している。
図6(a)では空のデータが記録されていた、接続中ソフトウェア名領域620に、ソフトウェアの名称が書き込まれる。
【0054】
つまり、ステップS503で、スマートフォン300で動作するソフトウェアが、デジタルカメラ200との接続を確立するために応答を送信することは、デジタルカメラ200がNFCタグ211bの、接続中ソフトウェア名領域620に対してソフトウェアの名称を書き込むことである。また、ステップS502で、デジタルカメラ200が、スマートフォン300からの応答を待つことは、NFCタグ211bの接続中ソフトウェア名領域620が空データでなくなるのを待つ、つまり、スマートフォン300のNFCリーダライタ311bによりデータが書き込まれることである。
【0055】
図6(a)で記録されている、能力情報領域610の例について説明する。能力情報領域610には、画像読み取り機能フラグ611、画像リモート撮影機能フラグ612、画像書き込み機能フラグ613、GPS情報アクセス機能フラグ614が存在する。本実施形態のデジタルカメラ200は、ソフトウェアに画像読み取り機能、画像リモート撮影機能が必要であるため、画像読み取り機能フラグ611および画像リモート撮影機能フラグ612には1が設定される。また、画像書き込み機能フラグ613およびGPS情報アクセス機能フラグ614には0が設定される。スマートフォン300で動作するソフトウェアは、ステップS502で、能力情報領域610に記述されたフラグと、ソフトウェア自身の能力とを比較する。比較の結果、例えば、スマートフォン300のソフトウェアが画像リモート撮影機能を有していない場合、ステップS506で、制御部301は、ソフトウェアに画像リモート撮影機能を追加するための更新ソフトウェアをサービス提供サーバ105からダウンロードする。
【0056】
なお、本実施形態では、ソフトウェアが必要な能力情報として、ソフトウェアが必要な機能の要否を機能単位で記述する例を説明したが、例えばその代わりに、必要となるソフトウェアのバージョン情報のみを記述する形態でも良い。その場合には、スマートフォン300で動作するソフトウェアは、ステップS502で、能力情報領域610に記述されたバージョン情報と、ソフトウェア自身のバージョン情報とを比較し、バージョンが不足している場合には、ステップS506でサービス提供サーバ105から、デジタルカメラ200との接続を確立するために必要なソフトウェアのバージョンをダウンロードすることになる。
【0057】
図7は、
図5の処理において、スマートフォン300のUI画面に表示されるメッセージを例示している。
【0058】
図7(a)は、ステップS507においてソフトウェアの更新を行っている間に表示されるメッセージを示している。ソフトウェアの更新を行っている間に、デジタルカメラ200とスマートフォン300を物理的に離してしまうと、更新終了後のステップS508において、デジタルカメラ200に応答を送信することができなくなり、ユーザは再度接続する操作を行う必要がある。このような事態を避けるため、ユーザに、ソフトウェアの更新中にはカメラ200とスマートフォン300を接触させたままにするように促すメッセージを表示する。
【0059】
図7(b)は、ソフトウェアの更新中に、ユーザがデジタルカメラ200とスマートフォン300を離してしまったなどの理由で、デジタルカメラ200に応答を送信することができなかった場合、ステップS509で表示されるメッセージを示している。このメッセージは、スマートフォン300のユーザに、デジタルカメラ200とスマートフォン300の接続を再試行することを促す内容となっている。
【0060】
[実施形態2]次に、
図8から
図11を参照して、実施形態2のシステムについて説明する。
【0061】
<システム構成>まず、
図8を参照して、実施形態2のシステム構成について説明する。
【0062】
本実施形態の情報処理装置801および電子機器802は、所定の場所に固定して設置されている無線LANアクセスポイント803に接続可能である。この場合、情報処理装置801は、WAN基地局103ではなく、無線LANアクセスポイント803に接続することでインターネット104を経由してサービス提供サーバ105にアクセスする。また、電子機器802は、無線LANアクセスポイント803を経由して情報処理装置801と接続し、データをやりとりできる。
【0063】
また、電子機器802は、無線LAN通信モジュール211aにより情報処理装置801と接続可能である。つまり、電子機器802は、無線LANアクセスポイント803が利用可能な環境では、無線LAN通信モジュール211aにより無線LANアクセスポイント803を介して情報処理装置801との接続を確立することができる。なお、無線LANアクセスポイント803が利用できない環境であっても、電子機器802は無線LANAPモジュール211cを有効にすることで情報処理装置801との接続を確立できる。この場合、情報処理装置801は、電子機器802の無線LANネットワークのみに接続されているため、WAN基地局103に接続することはできない。
【0064】
その他、本実施形態の情報処理装置801及び電子機器802の構成および機能は、
図1から
図3で述べた構成と同様である。
【0065】
図9は、情報処理装置801と電子機器802が同一の無線LANネットワークに参加する際に各装置に表示されるUI画面を例示している。
【0066】
図9(a)は、電子機器802を情報処理装置801と接続するためのモードで起動した場合に表示部207に表示される画面を示している。この画面では、情報処理装置801との通信を、無線LAN通信モジュール211aにより無線LANアクセスポイント803を介して行うか、無線LANAPモジュール211cを有効化することにより行うかをユーザが選択可能である。「カメラをアクセスポイントにする」項目901を選択すると、電子機器802の無線LANAPモジュール211cを有効化するように設定できる。また、「アクセスポイントを探す」項目902を選択すると、その時点で利用可能な無線LANアクセスポイント803を探索し接続することができる。
【0067】
「カメラをアクセスポイントにする」項目901が選択された場合、
図9(b)の画面に遷移する。この画面では、情報処理装置801が無線LANAPモジュール211cが形成する無線LANネットワークに参加するために必要なIDや暗号化キー等の設定値が情報処理装置801の画面の設定値表示領域911に表示される。
【0068】
「アクセスポイントを探す」項目902が選択された場合、
図9(c)の画面に遷移する。この画面では、電子機器802が使用されている環境で利用可能な、無線LANネットワーク一覧921が表示される。ユーザは、これらから接続先の情報処理装置801が利用しているネットワークを選択して参加することができる。無線LANアクセスポイント803が利用可能な場所では、無線LANネットワーク一覧921に無線LANアクセスポイント803の名称が表示されるため、ユーザはその無線LANアクセスポイント803を選択すれば良い。
【0069】
図9(d)は、情報処理装置801でネットワーク接続設定を行うための画面を示している。無線LANネットワーク一覧931には、その時点で利用可能なネットワーク一覧が表示されるので、情報処理装置801のユーザは任意のネットワークを選択して参加することができる。また、情報処理装置801のユーザは、電子機器802と同一のネットワークに参加するために、電子機器802で選択されたネットワークと同一の設定値を入力する。例えば、電子機器802における
図9(a)の画面で項目901が選択された場合には、電子機器802における
図9(b)の画面で設定値表示領域911に表示された設定値を、情報処理装置801における
図9(d)の画面に入力して設定すれば良い。電子機器802における
図9(a)の画面で項目902が選択され、
図9(c)の画面で無線LANアクセスポイント803のネットワークが選択された場合には、情報処理装置801における
図9(d)の画面で同じ無線LANアクセスポイント803のネットワークを選択すれば良い。
【0070】
このように、情報処理装置801と電子機器802が同一のネットワークに参加した状態で、情報処理装置801においてソフトウェアを起動することで、電子機器802とのの接続が確立されることになる。
【0071】
以下では、本実施形態の情報処理装置801をスマートフォン300、電子機器802をデジタルカメラ200と称して説明する。
【0072】
<デジタルカメラ200の通信処理>次に、
図10を参照して、本実施形態のスマートフォン300との接続を確立するまでのデジタルカメラ200の処理について説明する。 なお、
図10の処理は、制御部201が不揮発性メモリ204に格納されたプログラムを作業用メモリ205に読み出して実行することにより実現される。また、
図10の処理は、
図9のネットワーク接続設定に従い、デジタルカメラ200とスマートフォン300が同一のネットワークに参加している状態で実行される。
【0073】
ステップS1001では、制御部201は、スマートフォン300がデジタルカメラ200と無線LANにより通信を行うために必要なソフトウェアの能力情報を、
図9の手順に従って接続された無線LANアクセスポイントによりスマートフォン300に送信する。
【0074】
ステップS1002では、制御部201は、スマートフォン300からの応答を受信する。
【0075】
ステップS1003では、制御部201は、スマートフォン300からの応答が、ソフトウェアが能力情報に記述された能力を満たす内容であるか否かを判定し、能力を満たす場合にはステップS1006に進み、満たさない場合はステップS1004に進む。
【0076】
ステップS1004では、制御部201は、無線LANAPモジュール211cが有効になっているか否かを判定し、有効になっている場合はステップS1005に進み、無効になっている場合は、処理を終了する。
【0077】
ステップS1005では、制御部201は、無線LANAPモジュール211cを無効化し、処理を終了する。無線LANAPモジュール211cが無効化されると、このネットワークに参加するように
図9(d)の画面で接続設定されていたスマートフォン300は、自動的にデジタルカメラ200の無線LANネットワークから切断される。その結果、スマートフォン300は、WAN基地局103を経由してインターネット104に接続され、サービス提供サーバ105から更新ソフトウェアをダウンロードできるようになる。
【0078】
ステップS1004で無線LANAPモジュール211cが無効になっている場合、スマートフォン300は、無線LANアクセスポイント803のネットワークに参加しているため、インターネット104上のサービス提供サーバ105からの更新ソフトウェアのダウンロードが可能である。
【0079】
ステップS1006では、制御部201は、スマートフォン300からの応答により、ソフトウェアがデジタルカメラ200と通信を行うための能力を満たしているので、スマートフォン300との接続を確立する。
【0080】
本実施形態では、ステップS1001でスマートフォン300に送信する能力情報として、
図6(a)の情報と同じ形式の情報が利用される。また、ステップS1002で、スマートフォン300からの応答に含まれる能力情報についても同様に、
図6(b)の情報と同じ形式の情報が利用される。スマートフォン300は、ソフトウェアがデジタルカメラ200から送信される能力情報を満たす場合には、接続中ソフトウェア名領域620にソフトウェアの名称を記録して応答する。ステップS1003での判定は、接続中ソフトウェア名領域620が空であるか否かにより判定される。
【0081】
<スマートフォン300の通信処理>次に、
図11を参照して、本実施形態のデジタルカメラ200との接続を確立するまでのスマートフォン300の処理について説明する。
【0082】
なお、
図11の処理は、制御部301が不揮発性メモリ303に格納されたプログラムを作業用メモリ304に読み出して実行することにより実現される。また、
図11の処理は、
図9のネットワーク接続設定に従い、デジタルカメラ200とスマートフォン300が同一のネットワークに参加している状態で実行される。
【0083】
ステップS1101では、制御部301は、デジタルカメラ200と無線LANにより通信を行うために必要なソフトウェアの能力を表す能力情報を、
図9の手順に従って接続された無線LANアクセスポイントによりデジタルカメラ200から受信する。
【0084】
ステップS1102では、制御部301は、ソフトウェアが能力情報に記述された能力を満たすか否かを判定し、能力を満たす場合には、ステップS1103に進み、満たさない場合はステップS1105に進む。
【0085】
ステップS1103では、制御部301は、
図6(b)のように接続中ソフトウェア名領域620にソフトウェアの名称を記録して、デジタルカメラ200に応答を送信する。
【0086】
ステップS1104では、制御部301は、デジタルカメラ200との接続を確立する。
【0087】
ステップS1105では、制御部301は、
図6(a)のように接続中ソフトウェア名領域620にソフトウェアの名称を記録しないで、デジタルカメラ200に応答を送信する。ここで、
図9のネットワーク接続設定で、スマートフォン300がデジタルカメラ200の無線LANネットワークに参加している場合、
図10のステップS1005においてデジタルカメラ200の無線LANアクセスポイントが無効化されるため、自動的にWAN基地局103を経由してインターネット104に接続されることになる。
【0088】
ステップS1106では、制御部301は、サービス提供サーバ105から更新ソフトウェアをダウンロードし、既存のソフトウェアを更新する。
【0089】
その後、ステップS1107では、制御部301は、表示部306にデジタルカメラ200との接続を再試行するためのメッセージを表示し、処理を終了する。このメッセージは、例えば、スマートフォン300のソフトウェアが更新され、デジタルカメラ200との接続が可能になり、デジタルカメラ200との再接続を促す内容となる。ユーザがメッセージに従って再度デジタルカメラ200との接続を再試行した場合、デジタルカメラ200は
図10の処理を最初から、スマートフォン300は
図11の処理を最初から実行することになる。その結果、スマートフォン300で動作するソフトウェアは、必要な能力を既に満たしているため、ステップS1103で能力を満たす内容の応答をデジタルカメラ200に送信し、接続を確立できるようになる。
【0090】
このように、本実施形態のスマートフォン300は、広域ネットワーク接続からデジタルカメラ200と共通のネットワーク接続に切り替える際に、通信に必要なソフトウェアを更新してからデジタルカメラ200との接続を確立する。このため、スマートフォン300でソフトウェアの更新が必要になった場合に、アップデートソフトウェアを提供しているインターネット上のサーバにアクセスできず、ソフトウェアを更新できなくなってしまう事態を防止することができる。
【0091】
[他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。