(57)【要約】      （修正有）【課題】ユーザの意図に沿った接続設定を選択することが容易な通信装置、通信装置の制御方法及びプログラムを提供する。【解決手段】外部装置と通信する通信手段と、ユーザからの操作を受け付ける操作手段と、外部装置から通信手段を介して受信した情報に基づき外部装置との接続に用いる接続設定を生成する第一の機能と、前記ユーザから操作手段が操作されたことによって入力される情報に基づき接続設定を生成する第二の機能とを有する生成手段と、第一の機能によって生成された接続設定は、第二の機能によって生成された接続設定よりも優先度が高い状態で記録媒体に記録されるよう制御する記録制御手段と、通信手段を介して外部装置と接続する際に、優先度が高い接続設定を優先的に用いるよう制御する制御手段とを有する。【選択図】図２
2020108035.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信する通信手段と、
ユーザからの操作を受け付ける操作手段と、
前記外部装置から前記通信手段を介して受信した情報に基づき、前記外部装置との接続に用いる接続設定を生成する第一の機能と、前記ユーザから前記操作手段が操作されたことによって入力される情報に基づき前記接続設定を生成する第二の機能とを有する生成手段と、
前記第一の機能によって生成された接続設定は、前記第二の機能によって生成された接続設定よりも優先度が高い状態で記録媒体に記録されるよう制御する記録制御手段と、
前記通信手段を介して前記外部装置と接続する際に、前記優先度が高い接続設定を優先的に用いるよう制御する制御手段とを有することを特徴とする通信装置。
【請求項２】
前記制御手段は、電源投入時に接続を開始する自動接続機能を更に有し、
前記自動接続機能によって前記外部装置と接続する場合、前記制御手段は、前記優先度が最も高い接続設定を用いるよう制御することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記記録媒体に記録されている接続設定の一覧を表示するよう制御する表示制御手段を更に有し、
前記表示制御手段は、前記優先度に基づく順番で接続設定を表示することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記記録制御手段は、前記記録媒体に記録されている接続設定ごとに、前記外部装置と論理接続が成功したことがあるか否かを示す情報を記録し、
接続処理を開始してから一定時間が経過しても接続が確立できない場合、かつ接続処理に使用している接続設定が論理接続が成功したことが無い場合、前記制御手段は、次に優先度の高い接続設定で接続処理を開始するよう制御することを特徴とする請求項１乃至３のいずれか１項に記載の通信装置。
【請求項５】
前記外部装置との論理接続が成功した場合、該接続のために用いた接続設定の優先度を、前記記録媒体に記録されている他のどの接続設定よりも高い優先度に設定することを特徴とする請求項１乃至４のいずれか１項に記載の通信装置。
【請求項６】
前記記録媒体に、前記外部装置との論理接続が成功した際に用いられている接続設定が記録されている状態で前記第一の機能によって接続設定が生成された場合、前記第一の機能によって生成された接続設定は、前記外部装置との論理接続が成功した際に用いられている接続設定よりも高い優先度が設定されることを特徴とする請求項１乃至５のいずれか１項に記載の通信装置。
【請求項７】
前記外部装置との接続はＬＡＮを介して接続され、
前記論理接続はＨＴＴＰを用いて接続されることを特徴とする請求項４乃至６のいずれか１項に記載の通信装置。
【請求項８】
ＨＴＴＰのリクエストに対するレスポンスが受信されたことに応じて前記論理接続の成功が判断されることを特徴とする請求項５乃至７のいずれか１項に記載の通信装置。
【請求項９】
外部装置と通信する通信手段と、ユーザからの操作を受け付ける操作手段とを有する通信装置の制御方法であって、
前記外部装置から前記通信手段を介して受信した情報に基づき前記外部装置との接続に用いる接続設定を生成する第一の機能と、前記ユーザから前記操作手段が操作されたことによって入力される情報に基づき前記接続設定を生成する第二の機能とを有する生成ステップと、
前記第一の機能によって生成された接続設定は、前記第二の機能によって生成された接続設定よりも優先度が高い状態で記録媒体に記録されるよう制御する記録制御ステップと、
前記通信手段を介して前記外部装置と接続する際に、前記優先度が高い接続設定を優先的に用いるよう制御する制御ステップとを有することを特徴とする通信装置の制御方法。
【請求項１０】
コンピュータを、請求項１乃至８のいずれか１項に記載の通信装置の各手段として機能させるための、コンピュータが読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置と通信することができる通信装置に関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータ、デジタルカメラ、ゲーム機、タブレット端末、携帯電話機など、多くの電子機器にカメラ機能および通信機能が搭載され、これら電子機器間でのデータ送受信が実現されている。多くの機器間での通信が可能になっている現状では、電子機器間の接続設定を複数保存できることも多い。この場合、機器同士で接続するためには、どの接続設定を使用するかを決定しなければならない。例えば、特許文献１には周囲の無線ネットワークを検索し、相手機器に関連付けられているネットワークを優先して表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１６２３２２公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の特許文献１のような方法の他に、このような接続設定を複数保存できる場合、最後に使用した接続設定の優先度を高くすることで、ユーザビリティを高めることが考えられている。
【０００５】
しかしながら、最後に使用した接続設定を次回も用いることは、必ずしもユーザの意図に沿っているとは限らなかった。それゆえ、ユーザの望む接続設定とは異なる接続設定を利用してしまい、ユーザに煩わしさを感じさせる虞があった。
【０００６】
そこで、本発明では、よりユーザの意図に沿った接続設定を利用できる環境を整えることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の通信装置は、外部装置と通信する通信手段と、ユーザからの操作を受け付ける操作手段と、前記外部装置から前記通信手段を介して受信した情報に基づき前記外部装置との接続に用いる接続設定を生成する第一の機能と、前記ユーザから前記操作手段が操作されたことによって入力される情報に基づき前記接続設定を生成する第二の機能とを有する生成手段と、前記第一の機能によって生成された接続設定は、前記第二の機能によって生成された接続設定よりも優先度が高い状態で記録媒体に記録されるよう制御する記録制御手段と、前記通信手段を介して前記外部装置と接続する際に、前記優先度が高い接続設定を優先的に用いるよう制御する制御手段とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、よりユーザの意図に沿った接続設定を利用できる環境を整えることができる。
【図面の簡単な説明】
【０００９】
【図１】第一の実施形態におけるデジタルカメラの構成を示すブロック図である。
【図２】第一の実施形態におけるスマートフォンの構成を示すブロック図である。
【図３】第一の実施形態における送信機器が提供するＡＰＩの例を示す図である。
【図４】第一の実施形態における送信機器の接続設定生成時のＵＩを示す図である。
【図５】第一の実施形態における受信機器の接続設定生成時のＵＩを示す図である。
【図６】第一の実施形態における接続設定生成時のシーケンス図である。
【図７】第一の実施形態における接続設定のデータ構成を示す図である。
【図８】第一の実施形態における送信機器の動作を説明するためのフローチャートである。
【図９】第一の実施形態２における送信機器の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、本発明を実施するための形態について、添付の図面を用いて詳細に説明する。
【００１１】
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されてもよい。また、各実施の形態を適宜組み合せることも可能である。
【００１２】
［第一の実施形態］
＜デジタルカメラ１００の内部構成＞
図１は、本実施形態の通信装置の一例であるデジタルカメラ１００の構成例を示すブロック図である。なお、ここでは通信装置の一例としてデジタルカメラについて述べるが、通信装置はこれに限られない。例えば通信装置は携帯型のメディアプレーヤや、いわゆるタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもよい。
【００１３】
制御部１０１は、入力された信号や、後述のプログラムに従ってデジタルカメラ１００の各部を制御する。なお、制御部１０１が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【００１４】
撮像部１０２は、例えば、光学レンズユニットと絞り・ズーム・フォーカスなど制御する光学系と、光学レンズユニットを経て導入された光（映像）を電気的な映像信号に変換するための撮像素子などで構成される。撮像素子としては、一般的には、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）や、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）が利用される。撮像部１０２は、制御部１０１に制御されることにより、撮像部１０２に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行いデジタルデータを画像データとして出力する。本実施形態のデジタルカメラ１００では、画像データは、ＤＣＦ（Ｄｅｓｉｇｎ  Ｒｕｌｅ  ｆｏｒ  Ｃａｍｅｒａ  Ｆｉｌｅ  ｓｙｓｔｅｍ）の規格に従って、記録媒体１１０に記録される。
【００１５】
不揮発性メモリ１０３は、電気的に消去・記録可能な不揮発性のメモリであり、制御部１０１で実行される後述のプログラム等が格納される。
【００１６】
作業用メモリ１０４は、撮像部１０２で撮像された画像データを一時的に保持するバッファメモリや、表示部１０６の画像表示用メモリ、制御部１０１の作業領域等として使用される。
【００１７】
操作部１０５は、ユーザがデジタルカメラ１００に対する指示をユーザから受け付けるために用いられる。操作部１０５は例えば、ユーザがデジタルカメラ１００の電源のＯＮ／ＯＦＦを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。さらに、後述の接続部１１１を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、後述する表示部１０６に形成されるタッチパネルも操作部１０５に含まれる。なお、レリーズスイッチは、ＳＷ１およびＳＷ２を有する。レリーズスイッチが、いわゆる半押し状態となることにより、ＳＷ１がＯＮとなる。これにより、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理、ＥＦ（フラッシュプリ発光）処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、ＳＷ２がＯＮとなる。これにより、撮影を行うための指示を受け付ける。
【００１８】
表示部１０６は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部１０６は必ずしもデジタルカメラ１００が内蔵する必要はない。デジタルカメラ１００は内部又は外部の表示部１０６と接続することができ、表示部１０６の表示を制御する表示制御機能を少なくとも有していればよい。
【００１９】
記録媒体１１０は、撮像部１０２から出力された画像データを記録することができる。記録媒体１１０は、デジタルカメラ１００に着脱可能なよう構成してもよいし、デジタルカメラ１００に内蔵されていてもよい。すなわち、デジタルカメラ１００は少なくとも記録媒体１１０にアクセスして記録制御する手段を有していればよい。
【００２０】
接続部１１１は、外部装置と接続するためのインターフェースである。本実施形態のデジタルカメラ１００は、接続部１１１を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部１０２で生成した画像データを、接続部１１１を介して外部装置に送信することができる。なお、本実施形態では、接続部１１１は外部装置とＩＥＥＥ８０２．１１の規格に従った、いわゆる無線ＬＡＮで通信するためのインターフェースを含む。制御部１０１は、接続部１１１を制御することで外部装置との無線通信を実現する。なお、通信方式は無線ＬＡＮに限定されるものではなく、例えば赤外通信方式も含む。接続部１１１は第１の無線通信手段の一例である。
【００２１】
近距離無線通信部１１２は、例えば無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラから構成される。近距離無線通信部１１２は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することによりＩＥＥＥ８０２．１５の規格（いわゆるＢｌｕｅｔｏｏｔｈ（登録商標））に従った近距離無線通信を実現する。本実施形態においてＢｌｕｅｔｏｏｔｈ（登録商標）通信は、低消費電力であるＢｌｕｅｔｏｏｔｈ（登録商標）  Ｌｏｗ  Ｅｎｅｒｇｙのバージョン４．０を採用する。このＢｌｕｅｔｏｏｔｈ（登録商標）通信は、無線ＬＡＮ通信と比べて通信可能な範囲が狭い（つまり、通信可能な距離が短い）。また、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信は、無線ＬＡＮ通信と比べて通信速度が遅い。その一方で、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信は、無線ＬＡＮ通信と比べて消費電力が少ない。本実施形態のデジタルカメラ１００は、近距離無線通信部１１２を介して、外部装置とデータのやりとりを行うことができる。例えば外部装置から撮影の命令を受信した場合は撮像部１０２を制御し、撮影動作を行い、無線ＬＡＮ通信によるデータの授受を行うための命令を受信した場合は接続部１１１を制御し、無線ＬＡＮ通信を開始する。
【００２２】
近接無線通信部１１３は、例えば無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラから構成される。近接無線通信部１１３は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することで非接触近接通信を実現する。ここでは、例えばＩＳＯ／ＩＥＣ  １８０９２の規格（いわゆるＮＦＣ：Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に従った非接触近接通信を実現する。本実施形態の近接無線通信部１１３は、デジタルカメラ１００の側部に配される。
【００２３】
外部装置とは、互いの近接無線通信部を近接させることにより通信を開始して接続される。なお、近接無線通信部を用いて接続させる場合、必ずしも近接無線通信部同士を接触させる必要はない。近接無線通信部は一定の距離だけ離れていても通信することができるため、互いの機器を接続するためには、近接無線通信可能な範囲まで近づければよい。以下の説明では、この近接無線通信可能な範囲まで近づけることを、近接させる、とも記載する。
【００２４】
また、互いの近接無線通信部が近接無線通信不可能な範囲にあれば、通信は開始されない。また、互いの近接無線通信部が近接無線通信可能な範囲にあって、デジタルカメラ１００同士が通信接続されている際に、互いの近接無線通信部１１３が近接無線通信不可能な範囲に離れてしまった場合は、通信接続が解除される。なお、近接無線通信部１１３が実現する非接触近接通信はＮＦＣに限られるものではなく、他の無線通信を採用してもよい。例えば、近接無線通信部１１３が実現する非接触近接通信として、ＩＳＯ／ＩＥＣ  １４４４３の規格に従った非接触近接通信を採用してもよい。
【００２５】
本実施形態では、接続部１１１により実現される通信の通信速度は、後述の近接無線通信部１１３により実現される通信の通信速度よりも速い。また、接続部１１１により実現される通信は、近接無線通信部１１３による通信よりも、通信可能な範囲が広い。その代わり、近接無線通信部１１３による通信では、通信可能な範囲の狭さにより通信相手を限定することができるため、接続部１１１により実現される通信で必要な暗号鍵の交換等の処理を必要としない。すなわち、接続部１１１を用いるよりも手軽に通信することができる。
【００２６】
なお、本実施形態におけるデジタルカメラ１００の接続部１１１は、インフラストラクチャモードにおけるアクセスポイントとして動作するＡＰモードと、インフラストラクチャモードにおけるクライアントとして動作するＣＬモードとを有している。そして、接続部１１１をＣＬモードで動作させることにより、本実施形態におけるデジタルカメラ１００は、インフラストラクチャモードにおけるＣＬ機器として動作することが可能である。デジタルカメラ１００がＣＬ機器として動作する場合、周辺のＡＰ機器に接続することで、ＡＰ機器が形成するネットワークに参加することが可能である。また、接続部１１１をＡＰモードで動作させることにより、本実施形態におけるデジタルカメラ１００は、ＡＰの一種ではあるが、より機能が限定された簡易的なＡＰ（以下、簡易ＡＰ）として動作することも可能である。デジタルカメラ１００が簡易ＡＰとして動作すると、デジタルカメラ１００は自身でネットワークを形成する。デジタルカメラ１００の周辺の装置は、デジタルカメラ１００をＡＰ機器と認識し、デジタルカメラ１００が形成したネットワークに参加することが可能となる。上記のようにデジタルカメラ１００を動作させるためのプログラムは不揮発性メモリ１０３に保持されているものとする。
【００２７】
なお、本実施形態におけるデジタルカメラ１００はＡＰの一種であるものの、ＣＬ機器から受信したデータをインターネットプロバイダなどに転送するゲートウェイ機能は有していない簡易ＡＰである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネットなどのネットワークに転送することはできない。
【００２８】
以上がデジタルカメラ１００の説明である。
【００２９】
＜スマートフォン２００の内部構成＞
図２は、本実施形態の通信装置の一例であるスマートフォン２００の構成例を示すブロック図である。なお、ここでは通信装置の一例としてスマートフォンについて述べるが、通信装置はこれに限られない。例えば通信装置は携帯型のメディアプレーヤや、いわゆるタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもよい。
【００３０】
制御部２０１から近接無線通信部２１３においては、デジタルカメラ１００の制御部１０１から近接無線通信部１１３と同等であるため説明は省略する。
【００３１】
公衆網通信部２１４は、公衆無線通信を行う際に用いられるインターフェースである。スマートフォン２００は、公衆網通信部２１４を介して、他の機器と通話することができる。この際、制御部２０１はマイク２１５およびスピーカ２１６を介して音声信号の入力と出力を行うことで、通話を実現する。本実施形態では、公衆網通信部２１４はアンテナであり、制御部２０１は、アンテナを介して、公衆網に接続することができる。なお、接続部２１１および公衆網通信部２１４は、一つのアンテナで兼用することも可能である
以上がスマートフォン２００の説明である。
【００３２】
＜デジタルカメラを外部装置から制御するＡＰＩの構成＞
図３は、外部装置からデジタルカメラ１００を制御するためのアプリケーションプログラミングインターフェース（ＡＰＩ）の例を示す図である。本実施形態のデジタルカメラ１００は、スマートフォン２００などの外部装置から利用可能なＡＰＩを公開しているものとする。外部装置の設計者は、公開されたＡＰＩを用いてデジタルカメラ１００に要求を送信するよう実装することにより、デジタルカメラ１００の動作制御や、デジタルカメラ１００からのデバイス情報やコンテンツデータファイルの取得を実現できる。
【００３３】
デジタルカメラ１００の不揮発性メモリ１０３にはＡＰＩがプログラムとして予め保存されており、接続部１１１を介して外部装置との通信が確立すると、制御部１０１はＡＰＩを作業用メモリ１０４に展開し、外部装置からＡＰＩがリクエストされるのを待つ。制御部１０１が外部装置からＡＰＩがリクエストされたことを検知すると、リクエストされたＡＰＩの種類に応じて処理を実行し、その結果をレスポンスとして外部装置に返す。なお、ＡＰＩはデジタルカメラ１００が規定した通信プロトコル上で実行され、外部装置は規定された通信プロトコルを用いてデジタルカメラ１００と通信を行い、ＡＰＩをリクエストする。なお、本実施形態では、ＨＴＴＰを用いてＡＰＩのリクエストおよび応答が実行されることを想定して説明するが他の通信プロトコルを用いても実施可能である。なお、ＨＴＴＰは公知の通信プロトコルであるため、その詳細についての説明は割愛する。
【００３４】
ＡＰＩのリクエストは、外部装置がＨＴＴＰリクエストボディにＡＰＩ名と必要な引数をテキストで記述し、ＧＥＴメソッドやＤＥＬＥＴＥメソッド、ＰＯＳＴメソッド等のＨＴＴＰメソッドを用いてデジタルカメラ１００に送信することで実現できる。また、リクエストされたＡＰＩの実施結果の返送は、制御部１０１がＨＴＴＰレスポンスボディに付加して外部装置に返送することで実現できる。
【００３５】
図３に示すＡＰＩリスト３００は、デジタルカメラ１００が提供（公開）するＡＰＩの種類とその内容を示している。なお、図３では便宜上４つのＡＰＩについて示しているが、公開ＡＰＩの数は４つに限定されない。また、図３はデジタルカメラ１００とスマートフォン２００の通信をＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）で実現した場合の例を示しているが、他の通信プロトコルでも同様に実現可能である。
【００３６】
ＡＰＩ３０１（ｈｔｔｐ：／／ｘｘｘ／ｄｅｖｉｃｅｉｎｆｏ）は、デジタルカメラ１００の製品情報を外部装置が取得できるようにするためのＡＰＩである。このＡＰＩをＧＥＴメソッドでデジタルカメラ１００にリクエストすることにより、デジタルカメラ１００の製品名やファームウェアバージョン、ＭＡＣアドレス、シリアルナンバー等の製品情報をレスポンスとして取得できる。なお、製品名とは、デジタルカメラ１００の製品名、ファームウェアバージョンとは、不揮発性メモリ１０３に保存された、デジタルカメラ１００を制御するためのプログラムのバージョン番号である。シリアルナンバーとは、デジタルカメラ１００の個体識別が可能な一意の番号である。
【００３７】
ＡＰＩ３０２（ｈｔｔｐ：／／ｘｘｘ／ｗｉｆｉｃｏｎｎｅｃｔｉｏｎ）は、デジタルカメラ１００のＷｉＦｉ接続を制御するためのＡＰＩである。ＷｉＦｉ接続の制御の例としては、現在使用しているＷｉＦｉ接続を切断する（ｄｉｓｃｏｎｎｅｃｔ）、現在使用しているＷｉＦｉ接続を切断して新たな接続設定で再起動する（ｒｅｓｔａｒｔ）などがある。このＡＰＩをＰＯＳＴメソッドでリクエストデータとともに、デジタルカメラ１００にリクエストする。リクエストデータとは、例えば図３の”ｍｅｔｈｏｄ／ｒｅｑｕｅｓｔ”列に記載したようなＪＳＯＮ形式のデータをリクエストボディに含めたデータある。ＪＳＯＮ形式ではオブジェクト全体を”｛｝”でくくり、ｋｅｙ（図３の例では”ａｃｔｉｏｎ”）と、ｖａｌｕｅ（図３の例では”ｒｅｓｔａｒｔ”）を”ｋｅｙ：ｖａｌｕｅ”の形式で表記する。クライアントは制御したい処理をｖａｌｕｅに入れる。デジタルカメラ１００は受け取ったリクエストボディを解析して、リクエストされた制御内容を把握し、２００  ＯＫをレスポンスとして返却してから制御を実行する。ＷｉＦｉ接続の制御実行後ではレスポンスを返せなくなるため、先にレスポンスを返している。
【００３８】
ＡＰＩ３０３（ｈｔｔｐ：／／ｘｘｘ／ｗｉｆｉｓｅｔｔｉｎｇｓ）は、デジタルカメラ１００の記録媒体１１０に保存されている接続設定の一覧を取得できるＡＰＩである。このＡＰＩをＧＥＴメソッドでデジタルカメラ１００にリクエストすることにより、デジタルカメラ１００は保存されている接続設定をまとめてレスポンスとして返却する。図３の例では、３つの接続設定を（”ｗｉｆｉｓｅｔｔｉｎｇ＿ｓｅｔ１”，  ”ｗｉｆｉｓｅｔｔｉｎｇ＿ｓｅｔ２”，  ”ｗｉｆｉｓｅｔｔｉｎｇ＿ｓｅｔ３”）返却している。
【００３９】
ＡＰＩ３０４（ｈｔｔｐ：／／ｘｘｘ／ｗｉｆｉｓｅｔｔｉｎｇｓ／ｓｅｔ１）は、デジタルカメラ１００の記録媒体１１０に保存されている複数の接続設定の中のひとつの接続設定を制御できるＡＰＩである。”／ｓｅｔ１”が制御する対象を示しており、この場合、ＡＰＩ３０３で取得した接続設定一覧のうち”ｗｉｆｉｓｅｔｔｉｎｇｓ＿ｓｅｔ１”が対象となる。このＡＰＩをＧＥＴメソッドでデジタルカメラ１００にリクエストすることにより、デジタルカメラ１００は保存されている対象の接続設定のみをレスポンスとして返却する。ＤＥＬＥＴＥメソッドでリクエストした場合、デジタルカメラ１００は接続設定の初期値を生成し、対象の接続設定を上書きし、２００  ＯＫをレスポンスとして返却する。ＰＯＳＴメソッドでリクエストした場合、デジタルカメラ１００はリクエストデータの内容に応じて接続設定を生成し、対象の接続設定を上書きし、２００  ＯＫをレスポンスとして返却する。このとき、デジタルカメラ１００は、リクエストされた内容に必要最低限のパラメータが揃っているか否かの確認は行うが、そのリクエストから生成された接続設定で接続可能か否かの確認は行わない。生成される接続設定の内容は後述する。
【００４０】
なお、ここで説明したＡＰＩはデジタルカメラ１００が公開するＡＰＩの一例であり、ここで説明した以外のＡＰＩが公開されたり、説明したＡＰＩの１つ以上が公開されなくてもよい。
【００４１】
＜接続設定の生成＞
続いて、接続設定の生成手順について説明する。
【００４２】
図４（ａ）〜図４（ｈ）はデジタルカメラ１００を直接操作して接続設定を生成する場合の、表示部１０６に表示される設定画面の例を示している。また、図５（ａ）〜図５（ｃ）はスマートフォン２００を操作して接続設定を生成し、デジタルカメラ１００に保存する場合の、表示部２０６に表示される設定画面の例を示している。ユーザは、デジタルカメラ１００を、図４（ａ）〜図４（ｈ）に示す画面に沿って操作することで、接続設定を生成することができる。更に、ユーザは、スマートフォン２００を図５（ａ）〜図５（ｃ）に示す画面に沿って操作することで、接続設定を生成することもできる。
【００４３】
図６は接続設定の生成の流れを示したシーケンス図である。このシーケンスに示す処理の説明では、デジタルカメラ１００に接続設定が保存されていない状態からスタートした場合を例に挙げて説明する。まず、デジタルカメラ１００を操作して接続設定を生成する場合について説明する。
【００４４】
ステップＳ６０１において、ユーザは通信メニューを表示させるようデジタルカメラ１００の操作部１０５を操作し、「接続設定」の画面を表示する。例えば、図４（ａ）のような「接続設定」の画面を表示する。「接続」メニュー４０１はデジタルカメラ１００に保存済みの接続設定を用いて接続処理およびＷｅｂＡＰＩ機能の起動を開始する際に選択する。なお、選択の際にユーザが操作する操作部１０５は、例えば電子ダイヤルの回転によってフォーカス枠を操作する。この場合、フォーカス枠で囲まれているメニューが選択されている状態となる。また、タッチパネルによりメニューが表示されている領域をタッチすることで選択してもよい。以下の説明でのメニューやＯＫボタンの選択も同様である。
【００４５】
図４（ａ）で「接続」メニュー４０１が選択されると、図４（ｈ）のような保存済み接続設定一覧画面に遷移する。ユーザは一覧から使用する接続設定を選択することができる。
【００４６】
図４（ａ）の「接続設定の追加」メニュー４０２はデジタルカメラ１００を直接操作して接続設定を生成する際に使用する。「接続設定の追加」メニュー４０２を選択すると、画面の指示に従って必要な情報を入力することで、接続設定を生成する処理が開始する。ユーザは、図４（ｂ）から図４（ｇ）まで順次表示される接続設定を入力する画面を介して設定可能な設定値を選択していくことで所望の接続設定を生成することができる。図４（ｂ）において、ユーザは接続に使用するＳＳＩＤを入力する。ＳＳＩＤ入力枠４０５を選択すると、ソフトウェアキーボードが表示され、ＳＳＩＤを入力することができる。また、ＳＳＩＤを入力した状態でＯＫを選択すると、図４（ｃ）に遷移する。図４（ｃ）では接続方式を選択できる。接続方式を選択した状態でＯＫを選択すると、図４（ｄ）に遷移する。図４（ｄ）では認証方式を選択できる。認証方式を選択した状態でＯＫを選択すると、図４（ｅ）に遷移する。図４（ｅ）では暗号方式を選択できる。暗号方式を選択した状態でＯＫを選択すると、図４（ｆ）に遷移する。図４（ｆ）ではＴＣＰ／ＩＰの設定ができる。ＴＣＰ／ＩＰの設定を入力した状態でＯＫを選択すると、図４（ｇ）に遷移する。図４（ｇ）では生成した接続設定を保存するか否かの確認を行う。ＯＫを押下すると接続設定が保存される。このとき生成した接続設定での接続確認は行われない。すなわち、保存された設定が実際に接続できるのかどうかを確認するための、試行的な接続は実行されない。
【００４７】
以上のように、順次表示される画面に従って必要な情報を入力することで、接続設定を生成することができる。
【００４８】
保存された接続設定は、図４（ａ）の「接続設定の編集」メニュー４０３を選択することで、編集することができる。
【００４９】
また、「自動接続」メニュー４０４にて自動接続機能の有効／無効を設定できる。自動接続機能とは、デジタルカメラ１００の電源投入時に保存済みの接続設定のなかで最も優先度の高い接続設定を使用して、自動的に接続処理を開始する機能である。
【００５０】
図６の説明に戻る。
【００５１】
ステップＳ６０２において、ユーザは４０２「接続設定の追加」を選択し、図４（ｂ）に示すような接続設定の追加画面を表示する。
【００５２】
そして、ステップＳ６０３において、ユーザは上述したように接続設定を図４（ｂ）〜図４（ｇ）の画面に沿って入力を行い、生成した設定を保存する。
【００５３】
このときデジタルカメラ１００に保存される接続設定のデータ構造について説明する。
【００５４】
図７はデジタルカメラ１００の不揮発性メモリ１０３に保存される接続設定のデータ構造について示した図である。不揮発性メモリ１０３には接続設定を保存するための領域７０１が設定されており、この領域７０１に接続設定が保存される。図７の例では、この領域に接続設定ＳＥＴ１、ＳＥＴ２、ＳＥＴ３の合計３つの接続設定を保存できる。それぞれの接続設定には、図４で入力した無線設定、ＴＣＰ／ＩＰ設定のほかに、優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）が設定される。ＣｏｎｎｅｃｔＣｏｕｎｔは整数であり、それぞれの接続設定のＣｏｎｎｅｃｔＣｏｕｎｔを比較して、数値の大きいものが優先度が高いと判断する。なお、既に保存されている接続設定を用いて論理接続が完了した場合、その接続設定の優先度を高くするために、論理接続の完了時に他の接続設定のＣｏｎｎｅｃｔＣｏｕｎｔより大きい数字を設定して保存し直す。また、新たに追加した接続設定であっても優先度が低く設定される場合は、ＣｏｎｎｅｃｔＣｏｕｎｔを０と設定し保存する。この保存時の優先度は自動的に設定される。
【００５５】
対向機器との論理接続に成功した接続設定は次回も接続できる可能性が高い。接続設定の生成時に対向機器との接続を確認してから保存する場合や、保存済みの接続設定を用いて論理接続に成功した場合は、次回も接続できる可能性が高いとしてＣｏｎｎｅｃｔＣｏｕｎｔを最大に設定する。デジタルカメラの起動時に自動的に接続処理を開始させる場合は、ＣｏｎｎｅｃｔＣｏｕｎｔが最大の接続設定を使用することで、対向機器と接続できる可能性の最も高い接続設定で起動することができる。逆に、対向機器との論理接続確認を行わず接続設定の生成をした場合、次回接続できる可能性が低いとしてＣｏｎｎｅｃｔＣｏｕｎｔを最小に設定する。これから利用する場所に向かう前に、これから利用する場所のネットワーク環境に接続させるための接続設定を事前に生成する場合など、論理接続の確認を行わない場合も存在する。このようにして生成した接続設定はＣｏｎｎｅｃｔＣｏｕｎｔを最小に設定する。ＣｏｎｎｅｃｔＣｏｕｎｔを最小にすることで、起動時の自動接続処理で追加した接続設定が使用されず、無駄な接続処理を行うことがない。
【００５６】
また、自動接続の設定を保存するための領域７０２には前述した自動接続機能の有効／無効の設定が保存される。
【００５７】
図６の説明に戻る。
【００５８】
ステップＳ６０４において、制御部１０１はユーザが生成した接続設定をＳＥＴ１として保存する。接続設定を保存する場所（ＳＥＴ）はユーザに指定させてもよいし、使用していない場所をデジタルカメラ側で自動的に選択してもよい。生成した接続設定（ＳＥＴ１）は接続確認していない。そのため、実際には接続できない設定である可能性を考慮して、ＣｏｎｎｅｃｔＣｏｕｎｔが０として保存される。
【００５９】
以上の手順によって、ユーザがデジタルカメラ１００を用いて設定した接続設定が保存される。
【００６０】
次に、保存した接続設定を用いて実際に接続処理を実行する手順について説明する。
【００６１】
ステップＳ６０５において、ユーザは接続設定画面から「接続」メニュー４０１を線テクし、接続設定一覧画面（図４（ｈ））を表示する。
【００６２】
ステップＳ６０６において、ユーザは先ほど作成した接続設定（ＳＥＴ１）を選択する。
【００６３】
ステップＳ６０７において、制御部１０１はユーザが指定した接続設定（ＳＥＴ１）を用いてＷｉＦｉ接続およびＴＣＰ／ＩＰの設定を行い、ＷｅｂＡＰＩ機能を起動する。デジタルカメラ１００はＷｅｂＡＰＩを起動したまま、クライアント（スマートフォン２００）からのアクセスを待機する。
【００６４】
ステップＳ６０８において、ユーザはスマートフォン２００を操作して、デジタルカメラ１００と同じＷｉＦｉネットワークに接続する。
【００６５】
ステップＳ６０９において、デジタルカメラ１００とスマートフォン２００はＷｉＦｉ接続を行う。ＷｉＦｉ接続が完了すると、ユーザはステップＳ６１０において、デジタルカメラ１００が起動するＷｅｂＡＰＩへのアクセスを開始する。ＷｅｂＡＰＩへのアクセスはスマートフォンに保存された専用アプリを用いてもよいし、Ｗｅｂブラウザを用いてもよい。本実施形態では専用アプリを用いた場合について説明する。ＷｅｂＡＰＩへのアクセスを行うと、ステップＳ６１１において、ＷｅｂＡＰＩが用意するＡＰＩ（ＵＲＬ）に対し、リクエストが実行される。リクエストを受けたデジタルカメラ１００はアクセスされたＡＰＩに応じた処理を行い、ステップＳ６１２においてレスポンスを返す。
【００６６】
ステップＳ６１１とステップＳ６１２の応答をもって、ステップＳ６１３において、デジタルカメラ１００とスマートフォン２００は論理接続完了したと判断される。
【００６７】
ステップＳ６１４において、今回使用された接続設定（ＳＥＴ１）以外の保存済み接続設定からＣｏｎｎｅｃｔＣｏｕｎｔの最大値を取得する。
【００６８】
そして、ステップＳ６１５において、接続設定（ＳＥＴ１）のＣｏｎｎｅｃｔＣｏｕｎｔに最大値＋１の値を設定し、接続設定（ＳＥＴ１）を保存する。ここで、接続設定（ＳＥＴ１）以外の設定はまだ保存されていないため、接続設定（ＳＥＴ１）のＣｏｎｎｅｃｔＣｏｕｎｔには１が設定される。
【００６９】
以上の手順によって、ユーザがデジタルカメラ１００を用いて設定した接続設定を用いて実際に接続が確立された。これにより、Ｓ６０４にて保存した接続設定は、保存したタイミングよりも優先度が高い状態に保存しなおされることになる。
【００７０】
次に、デジタルカメラ１００を制御するための専用アプリを用いて、スマートフォン２００からデジタルカメラ１００の無線設定を生成する場合について説明する。
【００７１】
まず、専用アプリについて説明する。図５（ａ）〜図５（ｃ）はデジタルカメラ１００を制御するための専用アプリの画面の例を示している。図５（ａ）は専用アプリのＴｏｐ画面を表示しており、配置されている操作ボタンを選択すると、デジタルカメラ１００に用意されているＡＰＩを呼び出して実行する。操作ボタン５０１はＡＰＩ３０２に対応しており、ｖａｌｕｅを”ｄｉｓｃｏｎｎｅｃｔ”としてリクエストをＰＯＳＴする。これに応じて、デジタルカメラ１００はＷｉＦｉ接続を切断する。操作ボタン５０２はＡＰＩ３０２に対応しており、ｖａｌｕｅを”ｒｅｓｔａｒｔ”としてリクエストをＰＯＳＴする。これに応じて、デジタルカメラ１００はＷｉＦｉ接続を切断し、優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）の最も高い接続設定で再接続する。操作ボタン５０３を選択すると、ＡＰＩ３０３を実行し、デジタルカメラ１００に保存されている接続設定を取得し、図５（ｂ）に遷移する。図５（ｂ）はデジタルカメラ１００に保存されている接続設定の表示および変更ができる画面である。操作ボタン５０４はＡＰＩ３０４のＤＥＬＥＴＥメソッドに対応している。このボタンを選択することで保存済みの接続設定（ＳＥＴ１）を初期化することができる。各パラメータの右側には設定値変更ウィンドウが表示されるボタン５０５が設置されている。図５（ｃ）は設定値変更ウィンドウが表示された様子を示している。操作ボタン５０５を押下すると、該当するパラメータ（ｍｅｔｈｏｄ）の変更ウィンドウ５０６が表示される。変更ウィンドウ５０６には変更可能なパラメータの選択肢が表示され、Ｓｅｔを選択することで、専用アプリはリクエストデータを生成し、ＡＰＩ３０４のＰＵＴメソッドを実行する。
【００７２】
図６の説明に戻る。
【００７３】
ステップＳ６１６において、ユーザはスマートフォン２００を操作し、デジタルカメラ１００を制御するための専用アプリの画面から操作ボタン５０３の「ＷｉＦｉＳｅｔｔｉｎｇｓ」を選択する。
【００７４】
ステップＳ６１７において、ユーザは専用アプリの画面から接続設定（ＳＥＴ２）の設定値を入力しＳｅｔを押下する。
【００７５】
ステップＳ６１８において、専用アプリはユーザが入力した設定を基に接続設定を変更するためのリクエストデータを生成し、ステップＳ６１９において、デジタルカメラ１００が用意するＡＰＩ３０４を実行する。
【００７６】
ステップＳ６２０において、デジタルカメラ１００はスマートフォン２００からのリクエストを解析し、リクエストデータから接続設定（ＳＥＴ２）を生成する。なお、この場合も、Ｓ６０４のように試験的な接続は行われない。
【００７７】
ステップＳ６２１において、今回生成した接続設定（ＳＥＴ２）以外の保存済み接続設定からＣｏｎｎｅｃｔＣｏｕｎｔの最大値を取得する。
【００７８】
そして、ステップＳ６２２において、接続設定（ＳＥＴ２）のＣｏｎｎｅｃｔＣｏｕｎｔに最大値＋１の値を設定し、接続設定（ＳＥＴ２）を保存する。ここで、ＣｏｎｎｅｃｔＣｏｕｎｔの最大値は接続設定（ＳＥＴ１）で設定されている１であるから、接続設定（ＳＥＴ２）のＣｏｎｎｅｃｔＣｏｕｎｔには１を加えた２が設定される。これにより、ＡＰＩから生成した接続設定（ＳＥＴ２）が、ステップＳ６１５で保存された、最後に接続で使用した接続設定（ＳＥＴ１）よりも高い優先度が設定された。このように、スマートフォンからのＡＰＩを介した操作によって保存される接続設定（ＳＥＴ２）は、Ｓ６０４と同様に実際の接続が行われないにもかかわらず、実際に使用した接続設定（ＳＥＴ１）よりも高い優先度に設定される。このようにするのは、以下の理由に拠る。すなわち、スマートフォンからの遠隔での接続設定では、デジタルカメラ１００がユーザの手元にない可能性も考えられる。そのため、優先度を接続設定（ＳＥＴ１）よりも低くしてしまうと、例えば自動接続機能がＯＮの状態でＡＰＩ３０２によって再起動させた際に、接続設定（ＳＥＴ１）を用いての自動接続機能が実行されてしまう。この動作は、スマートフォンからのＡＰＩを介した操作によって接続設定（ＳＥＴ２）を保存した場合のユーザの意図には沿っていない可能性が高く、接続が確立できない虞がある。そこで、本実施形態のデジタルカメラ１００は、ＡＰＩを介したリモート操作によって接続設定を保存した場合は、実際に接続を確立した接続設定よりも優先度を高く設定する。これにより、よりユーザの意図に沿った動作を実現できる。
【００７９】
最後に、ステップＳ６２３において、デジタルカメラ１００はスマートフォン２００に対してレスポンスを返して、ＡＰＩからの接続設定の生成の処理は終わる。
【００８０】
次に、ＡＰＩでＷｉＦｉ接続を切断する処理について説明する。
【００８１】
ステップＳ６２４において、ユーザは専用アプリから操作ボタン５０１「ＤｉｓＣｏｎｎｅｃｔ」を押下する。
【００８２】
ステップＳ６２５において、専用アプリはリクエストを生成し、ステップＳ６２６において、デジタルカメラ１００が用意するＡＰＩ３０２を実行する。
【００８３】
ステップＳ６２７において、デジタルカメラ１００はスマートフォン２００からのリクエストを解析し、ＷｅｂＡＰＩ終了の準備を行う。
【００８４】
ステップＳ６２８において、デジタルカメラ１００はスマートフォン２００に対してレスポンスを返し、ステップＳ６２９において、デジタルカメラ１００はＷｅｂＡＰＩの終了処理およびＷｉＦｉ接続の切断を行う。ＡＰＩでＷｉＦｉ接続を切断する処理に関しては、接続設定の優先度の変更は行われない。
【００８５】
次に、再びカメラを直接操作して、接続設定の生成を行う処理について説明する。
【００８６】
上述したステップＳ６０１からステップＳ６０３と同様に、ユーザはステップＳ６３０からステップＳ６３２において、「接続設定」の画面に沿って接続設定を生成する。
【００８７】
ステップＳ６３３において、ステップＳ６０４と同様に、制御部１０１はユーザが生成した接続設定を保存領域が空いている領域に接続設定（ＳＥＴ３）として保存する。生成した接続設定（ＳＥＴ３）は接続確認していないため、ＣｏｎｎｅｃｔＣｏｕｎｔを０として保存される。
【００８８】
以上の操作によって保存されたそれぞれの接続設定のＣｏｎｎｅｃｔＣｏｕｎｔは以下のようになっている。最後に接続処理に使用した接続設定（ＳＥＴ１）が１、接続処理中にＡＰＩから生成した接続設定（ＳＥＴ２）が２、デジタルカメラを直接操作して生成し、接続処理に使用していない接続設定（ＳＥＴ３）が０である。このように、ＡＰＩから生成した接続設定（ＳＥＴ２）の優先度が高く、デジタルカメラを直接操作して生成し、接続処理に使用していない接続設定（ＳＥＴ３）の優先度が低くなっていることが確認できる。
【００８９】
＜デジタルカメラ１００の動作＞
図８は本実施形態におけるデジタルカメラ１００の動作を示すフローチャートである。本フローチャートに示す処理は、デジタルカメラ１００の制御部１０１が入力信号やプログラムに従い、デジタルカメラ１００の各部を制御することにより実現される。また、本フローチャートは、デジタルカメラ１００の電源をオンにすることに応じて開始される。      
【００９０】
まず、電源がオンとなったことに応じて開始される自動接続処理のフローについて説明する。
【００９１】
ステップＳ８０１において、制御部１０１は接続設定を保存するための領域７０１に接続設定が保存されているか否かを確認する。保存されていない場合、ステップＳ８１５に進む。保存されている場合、ステップＳ８０２へ進む。
【００９２】
まず、保存されている場合について説明する。
【００９３】
ステップＳ８０２において、制御部１０１は自動接続の設定を保存するための領域７０２を確認する。自動接続する設定の場合、ステップＳ８０３へ進む。自動接続しない設定の場合、ステップＳ８１２へ進む。
【００９４】
ステップＳ８０３において、制御部１０１は接続設定を保存するための領域７０１に保存されている接続設定の優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）を確認し、最も高い優先度の接続設定を選択する。
【００９５】
ステップＳ８０４において、制御部１０１は選択された接続設定で接続処理を開始する。
【００９６】
ステップＳ８０５において、制御部１０１は接続処理が成功したか否かの確認をする。接続処理が成功した場合は、ステップＳ８０６に進む。接続処理が成功していない場合は、繰り返し接続処理を継続する。ここで、接続処理は処理時間に閾値を設けて、閾値以内に接続が成功しなかった場合、タイムアウトとして処理を終了してもよい。すなわち、接続を開始してから一定時間が経過しても接続が成功しなかった場合は処理を終了する。
【００９７】
ステップＳ８０６において、制御部１０１はＷｅｂＡＰＩ機能を起動する。
【００９８】
ステップＳ８０７において、制御部１０１は論理接続に成功したか否かを確認する。ＷｅｂＡＰＩ機能にスマートフォン２００からアクセスされた場合、論理接続成功とする。ＷｅｂＡＰＩにＤｉｇｅｓｔ認証等のユーザ認証を設けている場合には、認証成功したことを以って論理接続成功としてもよい。論理接続に成功した場合はステップＳ８０８へ進む。論理接続に成功していない場合は、繰り返し論理接続の確認を続ける。ここで、論理接続の確認処理は処理時間に閾値を設けて、閾値以内に論理接続が成功しなかった場合、タイムアウトとして処理を終了してもよい。
【００９９】
ステップＳ８０８において、制御部１０１は接続設定を保存するための領域７０１に保存されている接続設定を優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）を確認する。そして、最大のＣｏｎｎｅｃｔＣｏｕｎｔに１を加えたＣｏｎｎｅｃｔＣｏｕｎｔを現在使用している接続設定に保存する。こうすることで、最後に論理接続した接続設定の優先度を高くすることができる。
【０１００】
自動接続処理のフローの説明は以上である。
【０１０１】
続いて、ＡＰＩを介したリモートでの接続設定について説明する。
【０１０２】
接続後、ステップＳ８０９では、制御部１０１は、ＡＰＩを介した接続設定を生成する要求を受け付けたか否かを判断する。受け付けなかった場合、接続を維持したまま処理を終了する。その後接続を介したサービスが実行される。一方、ＡＰＩを介した接続設定を生成する要求を受け付けたと判断した場合、処理はステップＳ８１０に進む。
【０１０３】
ステップＳ８１０では、制御部１０１は、要求に従って接続設定を生成する。続くステップＳ８１１では、制御部１０１は、Ｓ８１０で生成された接続設定の優先度を最大にして保存する。これにより、リモートで生成された接続設定が最も優先度が高い状態になる。
【０１０４】
次に、ユーザが任意に接続設定を選択した場合のフローの説明をする。
【０１０５】
ステップＳ８０２で自動接続しないと判断された場合、ステップＳ８１２において、制御部１０１は、ユーザから、表示部１０６に表示される接続設定の画面で、「接続」メニュー４０１が選択されたか否かを判断する。選択されていないと判断した場合、処理はステップＳ８１５に進む。ステップＳ８１５以降の処理については後述する。一方、選択されたと判断した場合ステップＳ８１３へ進む。
【０１０６】
ステップＳ８１３において、制御部１０１は表示部１０６に接続設定一覧画面を表示する。図４（ｈ）は接続設定一覧画面の例である。接続設定一覧画面は、接続設定を保存するための領域７０１に保存されている接続設定を優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）の高い順番に表示している。
【０１０７】
ステップＳ８１４において、制御部１０１は、ユーザから、接続設定一覧からの任意の接続設定の選択を受け付ける。その後、処理はステップＳ８０４に進む。制御部１０１は選択された接続設定を基に、ステップＳ８０４において、接続処理を開始する。ステップＳ８０４以降の処理は上述したとおりである。
【０１０８】
次に、ステップＳ８１５以降の処理について説明する。
【０１０９】
ステップＳ８１５では、制御部１０１は、接続設定の追加をユーザ操作によって指示されたか否かを判断する。指示されていないと判断した場合、処理はＳ８０１に戻る。一方、指示されたと判断した場合、処理はステップＳ８１６に進む。
【０１１０】
ステップＳ８１６では、制御部１０１は、図４（ａ）〜図４（ｇ）の画面の手順に沿ってユーザ操作を受け付けることによって、接続設定を生成する。
【０１１１】
そして、続くステップＳ８１７で、優先度を最低で保存する。その後、処理はステップＳ８０１に戻る。
【０１１２】
以上がステップＳ８１５以降の処理の説明である。
【０１１３】
以上、図８を用いて、本実施形態におけるデジタルカメラ１００の処理について説明した。
【０１１４】
なお、本実施形態では、図３で説明したＡＰＩ３０１〜３０６をＡＰＩサービスとして提供することを前提に説明したが、ＡＰＩサービスで提供するＡＰＩの種類はこれらに限定されない。例えば、「リモート撮影をする」および「カメラの設定をする」等の連係動作を実現するためのＡＰＩが提供されてもよい。新たなＡＰＩの提供はデジタルカメラ１００で実行するＡＰＩプログラムの追加により実現可能である。
【０１１５】
以上説明したように本実施形態によれば、複数の接続設定を保存可能な電子機器において、接続設定に優先度を設け、接続設定の生成方法に応じて優先度を制御することで、ユースケースに応じてユーザの意図に沿った接続設定を利用することができる。
【０１１６】
また、スマートフォン２００（対向機器）で生成した接続設定をデジタルカメラ１００に保存する際、優先度を高く設定することで、デジタルカメラ１００の再起動時にその接続設定を優先的に選択させることができる。これを利用することで、遠隔操作でデジタルカメラ１００の接続設定を変更することが可能となる。
【０１１７】
［第二の実施形態］
第一の実施形態では、スマートフォン２００（対向機器）で生成した接続設定をデジタルカメラ１００に保存する際、優先度を高く設定することで、デジタルカメラ１００の接続設定を遠隔から変更することが可能となった。
【０１１８】
しかし、スマートフォン２００で生成した接続設定は、実際に接続確認を行ってはおらず、確実に接続成功する保証はない。デジタルカメラ１００が直接操作不可能な場所に設置されている場合、対向機器と通信できないような接続設定に変更されると、制御が不可能になってしまう。
【０１１９】
第二の実施形態では、このように対向機器と通信できないような接続設定に変更されてしまった場合の復帰方法について説明する。
【０１２０】
接続設定ごとの論理接続の成功の有無を示す情報をデジタルカメラ１００に保存し、接続または論理接続に成功できない場合は、論理接続の成功の有無に応じて処理を変える。過去に論理接続に成功した事のある接続設定の場合は、対向機器と接続できる可能性が高いとして、繰り返し接続または論理接続を待ち続ける。過去に論理接続に成功のした事のない接続設定の場合は、対向機器と接続できる可能性が低いとして、接続処理を終了する。接続処理終了後は次に優先度の高い接続設定を選択し、再び接続処理を開始する。これを繰り返すことで、対向機器から保存された接続設定で接続できなくても、最終的に対向機器との通信で使用していた接続設定に戻ることができる。
【０１２１】
＜デジタルカメラ１００の動作＞
図９は本実施形態におけるデジタルカメラ１００の処理を取り出して示したフローチャートである。デジタルカメラ１００の電源投入時からスマートフォン２００と論理接続するまでのフローが示されている。
【０１２２】
本フローチャートにおいて、図８と同様の処理については同じ番号を付してあり、それらについての説明は省略する。
【０１２３】
ステップＳ８０８において、選択された接続設定で、対向機器と論理接続成功した場合、ステップＳ９１２へ進む。
【０１２４】
ステップＳ９１２において、制御部１０１は対向機器との接続に使用した接続設定の論理接続結果を保存する。論理接続結果とは各接続設定ごとの論理接続の成功の有無を示す情報である。接続設定生成時は「論理接続成功なし」と保存し、一度でも論理接続に成功すると「論理接続成功あり」と保存する。論理接続結果の保存領域は、領域７０１の各接続設定ごとに持たせてもよいし、不揮発性メモリ１０３に別の論理接続結果保存情報領域を用意してもよい。また、論理接続した対向機器の個別情報を記憶させ、特定の機器からの論理接続結果として保存してもよい。
【０１２５】
ステップＳ８０７において、スマートフォン２００との論理接続の成功を確認できない場合、ステップＳ９１３へ進む。
【０１２６】
ステップＳ９１３において、制御部１０１は現在使用している接続設定の論理接続結果を確認する。過去に論理接続成功した事のある場合は、接続できる可能性が高いとして、ステップＳ８０７へ戻り、引き続きスマートフォン２００からのアクセスを待つ。過去に論理接続成功した事のない場合は、接続できる可能性が低いとして、ステップＳ９１５まで進む。
【０１２７】
ステップＳ９１５において、制御部１０１は接続処理を一度終了し、接続設定を保存するための領域７０１に保存されている接続設定の優先度（ＣｏｎｎｅｃｔＣｏｕｎｔ）を確認し、前回使用していた接続設定の次に優先度の高い接続設定を選択する。接続設定を選択すると、ステップＳ８０４へ進み、繰り返し接続処理を開始する。ステップＳ９１５において、次に優先度の高い接続設定が無い場合や、次に選択された接続設定の優先度が閾値以下の場合、処理を終了してもよい。
【０１２８】
また、ステップＳ８０５において、接続成功が確認できなかった場合も、ステップＳ９１４へ進み、Ｓ９１３と同様の処理を行う。
【０１２９】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【０１３０】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2020108035.tif 000003
【図２】
2020108035.tif 000004
【図３】
2020108035.tif 000005
【図４】
2020108035.tif 000006
【図５】
2020108035.tif 000007
【図６】
2020108035.tif 000008
【図７】
2020108035.tif 000009
【図８】
2020108035.tif 000010
【図９】
2020108035.tif 000011