JP6351222B2 - 情報処理装置およびその制御方法、プログラム - Google Patents

情報処理装置およびその制御方法、プログラム Download PDF

Info

Publication number
JP6351222B2
JP6351222B2 JP2013168338A JP2013168338A JP6351222B2 JP 6351222 B2 JP6351222 B2 JP 6351222B2 JP 2013168338 A JP2013168338 A JP 2013168338A JP 2013168338 A JP2013168338 A JP 2013168338A JP 6351222 B2 JP6351222 B2 JP 6351222B2
Authority
JP
Japan
Prior art keywords
server
data
information processing
processing apparatus
digital camera
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.)
Active
Application number
JP2013168338A
Other languages
English (en)
Other versions
JP2015036899A (ja
Inventor
洋行 鳥飼
洋行 鳥飼
あゆみ 鈴木
あゆみ 鈴木
滋之 三谷
滋之 三谷
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 JP2013168338A priority Critical patent/JP6351222B2/ja
Priority to EP14836114.0A priority patent/EP3033683B1/en
Priority to US14/910,944 priority patent/US9848225B2/en
Priority to PCT/JP2014/071506 priority patent/WO2015022997A1/en
Publication of JP2015036899A publication Critical patent/JP2015036899A/ja
Application granted granted Critical
Publication of JP6351222B2 publication Critical patent/JP6351222B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本発明は情報処理装置およびその制御方法、プログラムに関する。
無線通信機能を搭載したデジタルカメラやデジタルビデオカメラが知られている(特許文献1)。このようなデジタルカメラやデジタルビデオカメラは、無線通信機能を用いてネットワークに接続し、ネットワーク上のサーバに撮影した画像データをアップロードすることが可能である。
サーバにアップロードされた画像データは、サーバを通じてネットワークストレージに保存され、ネットワークストレージにアクセス可能なユーザによって閲覧や共有されたりすることができる。また、サーバからユーザのPC等に転送され、PCにバックアップされることもできる。
サーバからユーザのPCへの転送は、例えばユーザのPCにデータ転送サービス用の専用アプリケーション(転送サービスアプリケーション)をインストールすることで自動化することができる。転送サービスアプリケーションは例えば、起動されている状態で定期的にサーバに対して新着画像データの有無を問い合わせ、新着画像データがあればサーバにダウンロードを要求するように構成することができる。
特開2003-319309号公報
一方、無線通信機能を有する、あるいは無線ネットワークに接続可能なPCも知られている。従って、無線通信機能を有するデジタルカメラやデジタルビデオカメラがサーバを介さず直接通信可能なPCに画像データを転送することも可能である。
このように、通信機能を有する装置(通信装置)から、ネットワークを介して外部装置にデータを転送する場合、サーバ等が存在する他のネットワークを経由するルートと、他のネットワークを経由しないルートが存在する。つまり、転送先の外部装置から見た場合、同じ通信装置からの画像データが、サーバを経由して届く場合と、通信装置から直接届く場合がある。
このような環境において外部装置で稼動させる転送サービスアプリケーションは、2つのルートで到来するデータを適切に取り扱う必要がある。例えば、データ転送サービスが特定のユーザにのみ提供される場合や、予め関連付けがなされた通信装置にのみ提供される場合、サーバを介さない通信を要求する通信装置の要求を受け入れて良いかどうかを判定する必要がある。また、別の例としては、サーバへの新着画像データの有無だけでなく、画像データを直接転送可能な通信機器の存在有無についても定期的に調べる必要がある。さらに別の例としては、サーバからさらに他のサーバに転送を行う設定が可能な場合、受信したデータがサーバでの転送対象であれば、サーバにアップロードする必要がある。
本発明はこのような従来技術の課題に鑑みてなされたものであり、その目的の1つは、通信装置から異なる複数のルートのいずれかを通じてデータを受信可能な情報処理装置およびその制御方法において、受信ルートに応じた適切なデータ処理を実現することにある。
上述の目的は、第1のネットワーク上に存在する第1のデバイスおよび、第1のネットワークとは異なる第2のネットワーク上に存在する第2のデバイスと通信可能な情報処理装置であって、第1のネットワーク上で、第1のデバイスを探索する探索手段と、探索手段により、第1のデバイスが検出された場合、第1のデバイスから、第1のデバイスにおける未送信データとして送信されたデータを第1のネットワーク上で受信する第1の受信手段と、第2のデバイスに、第1のデバイスから第1のデバイスにおける未送信データとして第2のデバイスに既に送信され、第2のデバイスにより保持されているデータであって、情報処理装置に転送されるべきデータの有無を確認する確認手段と、情報処理装置に転送されるべきデータがある場合、第2のデバイスから情報処理装置に転送されるべきデータを受信する第2の受信手段と、を有し、探索手段による探索は、第2の受信手段がデータを受信している際にも実行され、第2の受信手段がデータを受信している際に第1のデバイスが検出された場合には、第2の受信手段によるデータの受信処理中であっても、第1の受信手段によるデータの受信を優先することを特徴とする情報処理装置によって達成される。
本発明によれば、通信装置から異なる複数のルートのいずれかを通じてデータを受信可能な情報処理装置およびその制御方法において、受信ルートに応じた適切なデータ処理を実現することができる。
実施形態に係る通信装置の一例としてのデジタルカメラの機能構成例を示すブロック図 実施形態に係る情報処理装置を実現可能なパーソナルコンピュータの機能構成例を示すブロック図 第1の実施形態における、デジタルカメラ、PC、およびサーバの接続形態を模式的に示す図 第1の実施形態におけるペアリング情報の例を示す図 第1の実施形態における、デジタルカメラとPCとのペアリング処理のうち、PC側の処理を示すフローチャート 第1の実施形態におけるPCが、デジタルカメラの送信するデータを受信するために実行する処理の概要を示すフローチャート 第1の実施形態におけるデジタルカメラ、PC、およびサーバ間でのデータ転送処理のシーケンス図 第1の実施形態におけるデジタルカメラが、PCもしくはサーバへデータ転送する際の処理を示したフローチャート 第1の実施形態におけるPCの画像受信処理を示すフローチャート 第1の実施形態におけるPCの状態遷移図 第2の実施形態における、デジタルカメラ、PC、サーバ、およびフォトストレージサービスのサーバの接続形態を模式的に示す図 第2の実施形態における、フォトストレージサービスへの自動画像転送機能の設定画面の例を示す図 第2の実施形態におけるPCが、デジタルカメラの送信するデータを受信するために実行する処理の概要を示すフローチャート 図13に示した本実施形態のPCの処理のうち、特にアップロードリストを生成するまでの処理に関する工程をさらに詳細に示すフローチャート 第2の実施形態におけるPCが生成するアップロードリストのデータ構造例を示す図 第2の実施形態におけるPCのアップロード処理を示すフローチャート 第2の実施形態における、サーバからフォトストレージサービスのサーバへの自動転送処理の動作を示すフローチャート 第3の実施形態におけるPCが、アップロード対象の画像ファイルの一覧とアップロード状況を表示する画面の例を示す図
以下、本発明の例示的な実施形態について、添付図面を用いて詳細に説明する。
なお、以下に説明する実施形態は、本発明の実現手段の単なる例示であり、本発明が適用される装置の具体的な構成や各種条件によって適宜修正又は変更されてもよい。また、各実施形態を適宜組み合せることも可能である。
●(第1の実施形態)
<デジタルカメラの構成>
以下の説明では、データ転送元である通信装置の一例としての、無線通信機能を有するデジタルカメラについて説明する。なお、無線通信機能を有し、データを転送可能な任意の装置に本発明は適用可能である。このような端末としては例えば携帯電話機、パーソナルコンピュータ、タブレット端末、ゲーム機などがあるが、他の機器であってもよい。
図1は、本実施形態に係るデジタルカメラ100の機能構成例を示すブロック図である。制御部101は、例えば、CPU(MPU)、メモリ(DRAM、SRAM)などからなり、各種処理(プログラム)を実行してデジタルカメラ100の各ブロックを制御したり、各ブロック間でのデータ送信を制御したりする。また制御部101は、ユーザからの操作を受け付ける操作部102からの操作信号に応じて、デジタルカメラ100の各ブロックを制御する。
操作部102は、例えば、電源ボタン、ズーム調整ボタン、オートフォーカスボタンなどの撮影に関連する各種操作を入力するスイッチ類からなる。また、メニュー表示ボタン、決定ボタン、その他カーソルキー、ポインティングデバイス、タッチパネル等で構成することが可能であり、ユーザによりこれらのキーやボタンが操作されると制御部101に操作信号を送信する。さらに操作部102はレリーズボタンを含み、レリーズボタンはいわゆる半押し状態で押下されるスイッチ(SW1)と、いわゆる全押し状態で押下されるスイッチ(SW2)とを有する。SW1の押下により撮影準備指示が出力され、SW2の押下により撮影指示が出力される。撮影準備動作には、自動焦点検出(AF)、自動露出制御(AE)などが含まれる。なお、本実施形態では、静止画撮影のためのレリーズボタンと動画撮影のためのレリーズボタンとを共用しているが、別のボタンとすることも可能である。
バス103は、各種データ、制御信号、指示信号などをデジタルカメラ100の各ブロックに送るための汎用バスである。
撮像部110は、撮像レンズにより取り込まれた被写体の光学像の光量を、絞りにより制御し、CCDイメージセンサやCMOSイメージセンサ等の撮像素子により画像信号に変換する。
また、音声入力部120は、例えば、内蔵された無指向性のマイクまたは音声入力端子を介して接続された外部マイク等により、デジタルカメラ100の周囲の音声を集音する。
メモリ104は、例えばRAM(Random Access Memory)や書き換え可能な不揮発性メモリであって、画像信号および音声信号、デジタルカメラ100の設定情報などを一時的に記憶する。
記録媒体141は、デジタルカメラ100に接続可能な記録媒体である。記録媒体141は、デジタルカメラ100で生成した各種データなどを記録することができる。記録媒体141の例としては、例えばハードディスク、光ディスク、書き換え可能な不揮発性半導体メモリなどがあげられる。本実施形態では、いわゆるメモリカードと呼ばれる、デジタルカメラ100に装着可能な書き換え可能な不揮発性半導体メモリ装置を記録媒体141として用いるものとする。
映像出力部150は、例えば映像出力端子からなり、接続された外部ディスプレイ等に映像を表示させるために画像信号を送信する。また、映像出力部150と後述する音声出力部151は統合された1つの端子、例えばHDMI(登録商標)端子のような端子であってもよい。
音声出力部151は、例えば音声出力端子からなり、接続されたイヤホンやスピーカなどから音声を出力させるために音声信号を送信する。また、音声出力部151は、デジタルカメラ100に内蔵されてもよい。
通信部152は外部デバイスとの間でシリアルまたはパラレル通信によるデータの送受信を有線または無線で行う。通信部152が用いることのできる通信インタフェースの例としては、RS232C、USB、IEEE1394、P1284、SCSI、モデム、LAN、IEEE802.11xなどがある。また、通信部152は通信インタフェースに応じた通信プロトコルを実行することで、外部デバイスとデータを送受信することが可能である。通信プロトコルの一例として、HTTP(Hyper Text Transfer Protocol)やPTP−IP(Picture Transfer Protocol over IP)などが挙げられる。ここで例示した通信インタフェースおよび通信プロトコルは周知であるため、その詳細に関する説明は割愛する。なお、記憶媒体141が通信部152の機能を備えていてもよい。
表示部130は、記録媒体141に記録された画像データや、各種メニューなどのGUIを表示する。表示部130は例えば、液晶ディスプレイ、有機ELディスプレイ等を用いることができる。
<パーソナルコンピュータ(PC)の構成>
以下の説明では、本発明の実施形態に係るユーザ端末およびサーバを実現可能な情報処理装置の一例として、静止画や動画が取り込み可能なパーソナルコンピュータ(PC)について説明する。なお、タブレット型PCやスマートフォンも情報処理装置の一例である。
図2は、本実施形態に係るPC200の機能構成例を示すブロック図である。
PC200は、表示部201と、操作部202と、CPU203と、一次記憶装置204と、二次記憶装置205と、通信装置206とを有している。
各構成の基本的な機能はデジタルカメラ100と同様であるから、ここでは詳細な説明は省略する。表示部201には液晶ディスプレイや有機ELディスプレイ等を用いることができる。また表示部201はPC200が備える必要はなく、PC200は表示部201の表示を制御する表示制御機能を有していればよい。一次記憶装置204は例えばRAM(Random Access Memory)や書き換え可能な不揮発性メモリであり、PCの設定値を保持したり、CPU203が実行するプログラムを保持および展開したり、CPU203のワークエリア等として利用される。二次記憶装置205はHDDや磁気テープドライブなどの磁気記録装置、DVD、CD、BD、MOなどの光または光磁気メディアを用いる記憶装置、SSDなど不揮発性半導体メモリを用いた記憶装置である。二次記憶装置205は、各種アプリケーション(OSを含む)やユーザデータなどの保存に用いられる。
CPU203は、一次記憶装置204に展開したプログラム(OS、アプリケーション等)を実行し、PC200の各ブロックを制御する。CPU203はまた、ユーザからの操作を受け付ける操作部202からの操作信号に応じて各ブロックを制御する。操作部202としては、キーボードやマウス、またタッチパネルなどが一般的に用いられるが、これらに限定されない。
通信装置206はデジタルカメラ100の通信部152と同様、所定の規格に応じた通信インタフェースおよび通信プロトコルを用いて外部デバイスとデータ通信する。なお、通信部152および通信装置206は、複数種の通信インタフェースを有し、通信インタフェースに応じた通信プロトコルでの通信が可能である。本実施形態では、通信装置206はローカルエリアネットワーク(LAN)上のデバイスと、インターネットなどのワイドエリアネットワーク(WAN)上のデバイスとの両方と通信可能であるように構成される。なお、LANとWANは2つの異なるネットワークの例であり、通信装置206はデータの送信元デバイスがアクセス可能な第1のネットワークと、データ転送サービスを提供するサーバが存在する第2のネットワークとの両方に接続可能であれば良い。
なお、実施形態に係るサーバおよびユーザ端末はいずれも図2に示したパーソナルコンピュータによって実現可能であるが、以下の説明においては便宜上、「PC」はユーザ端末を意味するものとして用い、サーバとして機能するPCは「サーバ」と呼ぶ。
<接続形態の概要>
図3は、本実施形態における、デジタルカメラ100、PC200a、およびサーバ200bの接続形態を模式的に表した図である。本実施形態では、デジタルカメラ100内のデータがWAN(インターネット)およびサーバ200bを介してPC200aに到達する経路と、サーバ200bを介さずにLAN上でPC200aに到達する経路のいずれかを利用可能である。このようなデータ通信を実現するために、カメラとPCをサーバに機器登録するとともに、同一ユーザに関連付けて管理するための通信フェーズと、カメラからデータを転送する通信フェーズがある。
図3(a)は、デジタルカメラとPCをサーバに機器登録(ペアリング)するための通信フェーズを模式的に示している。本実施形態では、デジタルカメラ100をサーバ200bにペアリングするための通信301と、PC200aをサーバ200bにペアリングするための通信302とを、ユーザがサーバ200bにログインしている状態で行う。サーバ200bは、PC200aの情報とデジタルカメラ100の情報をユーザアカウントと関連付けて管理することにより、PC200aとデジタルカメラ100を同一ユーザの機器として認識ことができる。
デジタルカメラ100のユーザは、サーバ200bが提供するサービスを利用するために、ユーザアカウントを作成する必要がある。ユーザアカウントの作成は例えばPC200aのウェブブラウザアプリケーション(ブラウザ)でサーバ200bのユーザアカウント生成用URLにアクセスすることで、ブラウザに表示される画面に所定のユーザ情報を入力することで実行される。サーバ200bは作成したユーザアカウントにユーザ情報(ユーザID,ログインパスワード,個人情報など)を登録する。
サーバ200bへのデジタルカメラ100のペアリングは、デジタルカメラ100をサーバ200bにアクセス可能な機器として登録する処理である。ペアリングの際にサーバ200bに登録するデジタルカメラ100の情報をログイン中のユーザのユーザアカウントと関連付けることで、デジタルカメラ100をユーザアカウントに登録することができる。
具体的な手順について説明する。ここでは、デジタルカメラ100がネットワーク(例えばインターネット)を通じてサーバ200bと通信可能な状態にあるものとする。例えばサーバ200bがデジタルカメラ100に要求することにより、デジタルカメラ100は自身の情報をサーバ200bに送信する。ここで送信する情報には、機種名や、デジタルカメラを一意に識別するための個体情報の一例としてのUUID(Universally Unique Identifier)もしくはGUID (Globally Unique Identifier)などが含まれる。
サーバ200bはデジタルカメラ100の情報を取得すると、デジタルカメラ100に固有なAlias IDと、デジタルカメラ100がサーバ200bのアクセス認証処理に使用するためのAccess IDとAccess Passwordを発行する。デジタルカメラ100は、その後サーバ200bにアクセスする際に用いるため、Alias ID、Access ID、およびAccess Passwordをメモリ104の不揮発性領域に保存する。ここで、Alias IDは、デジタルカメラ100の情報と、ユーザアカウントとに関連付けてサーバ200bが生成する、デジタルカメラ100を一意に特定可能な固有情報である。そのため、デジタルカメラ100からAlias IDを受信すれば、サーバ200bは通信元のデジタルカメラを一意に特定することができる。
サーバ200bは、デジタルカメラ100の識別情報(例えばGUIDやAlias ID)をユーザアカウントと関連付けて登録する。
一方、PC200aとサーバ200bの間では、予め、通信301によってサーバ200bとデジタルカメラ100との間でペアリング処理がなされた状態で、PCとサーバとのペアリング処理を行うための通信302を以下の通り行う。
なお、ペアリング処理に先立ち、ユーザは自身の登録済みアカウントを用いてサーバ200bにログインする。ログインの方法に制限は無いが、例えばPC200aで稼動する転送サービスアプリケーションのブラウザ機能によってサーバ200bのURLにアクセスし、表示されたログイン画面にユーザIDとパスワードを入力する方法であってよい。ログインが正常に終了して転送サービスアプリケーションに表示される例えばサービスメニュー画面から、PC登録をユーザが指示すると、サーバ200bは転送サービスアプリケーションを通じてPC200aの情報を取得する。
ここでPC200aから送信する情報は、PC200aの名称と、PC200aを一意に識別するための個体情報としてのGUID(PC GUID)である。このGUIDは、PC固有のシリアル番号でも良いし、転送サービスアプリケーションのインストール時に生成した文字列でも良いが、PCを一意に識別できる必要がある。サーバ200bはPC200aの情報を取得すると、デジタルカメラ100のペアリング処理時と同様に、PC200a専用のAlias IDと、PC200aがその後サーバ200bへアクセスする際の認証処理に使用するためのAccess IDとAccess Passwordを発行する。Alias IDは、PC200aの情報と、ログイン中のユーザアカウントに関連付けてサーバが生成するため、PC200aを一意に特定可能な情報である。従ってサーバ200bはPC200aからAlias IDを受信すると、PC200aを一意に特定することができる。
サーバ200bは、PC200aの識別情報(例えばGUIDやAlias ID)をユーザアカウントと関連付けて登録する。
以上の処理により、同じユーザアカウントにデジタルカメラ100とPC200aの双方が関連付けられ、両者が同一ユーザに関する機器としてサーバ200bに管理されるようになる。
図3(b)は、デジタルカメラ100からPC200aへ画像データを送信する際の2通りの経路を示している。本実施形態においては、デジタルカメラ100からサーバ200bを経由してPC200aへ画像データを送信する経路には、サーバ200bを経由する経路(サーバ経由転送)と、サーバ200bを経由しない経路(直転送)がある。
デジタルカメラ100の制御部101は、操作部102を通じてバックアップ処理の実行がユーザから指示された際、接続中のネットワーク上にペアリング済みのPCが存在するか探索する。そして、制御部101は、ペアリング済みのPCが発見されればそのPCに直転送を行うことを決定し、PC200aへ通信303によって直接データを送信する。
一方、所定時間探索しても接続中のネットワーク上にペアリング済みのPCが発見できない場合、制御部101はサーバ経由転送を行うことを決定する。そして、制御部101は通信304によってサーバ200bへデータを送信する。また、PC200aでは周期的にサーバ200bに新規データの有無を問い合わせ、新規データが存在すればサーバ200bから通信305によってダウンロードする。このように、サーバ経由転送において通信304と通信305は非同期である。
なお、接続中のネットワーク上にペアリング済みのPCが存在するかどうかの探索は、公知のディスカバリプロトコル、例えばUPnPやBonjourを用いて行うことができる。具体的にはネットワーク上でPCを探索し、見つかったPCから取得した情報(ディスクリプションやTXTレコード)に含まれるAlias IDに基づいてそのPCがペアリング済みPCかどうか判定すればよい。なお、この判定方法は一例であり、他の方法を用いてもよい。
デジタルカメラ100が接続中のネットワーク上にペアリング済みのPC200aが接続していることが判明した場合、制御部101は直転送の実行を決定し、高速なデータ送信を実現する。一方、ペアリング済みのPCが同一ネットワーク上で見つからなかった場合、制御部101は、サーバ経由転送の実行を決定する。そのため、ペアリング済みのPC200aが起動していない場合や別のネットワーク上に存在する場合(例えばデジタルカメラ100がPC200aと離れた位置に存在する場合)においても、デジタルカメラ100はデータをPC200aに送信することができる。
図4(a)は、図3(a)の通信301によってデジタルカメラ100をサーバ200bにペアリングしたことにより、デジタルカメラ100およびサーバ200bに記憶されるペアリング情報の例を示す。
Camera Nameは、デジタルカメラ100のモデル名(機種名)であり、カメラ情報としてデジタルカメラ100からサーバ200bへ送信された情報である。サーバ200bは、ユーザアカウントに登録された機器を提示する際にこの情報を用いることができる。
Camera GUIDは、デジタルカメラ100を一意に識別するための個体情報の一例であり、他の情報であってもよい。GUIDもまたカメラ情報としてデジタルカメラ100からサーバ200bへ送信された情報である。
Camera Alias IDは、登録(ペアリング)されたデジタルカメラ100に対してサーバ200bがユーザアカウント情報を考慮して付与した固有情報であり、サーバ200bとペアリングされている機器間で重複しない情報である。Camera Alias IDによってサーバ200bはデジタルカメラ100を一意に識別することができる。
Access IDは、サーバ200bにデジタルカメラ100がペアリングされた際にサーバ200bが発行する情報であり、デジタルカメラ100がサーバ200bと通信するときに使用する認証IDである。デジタルカメラ100はこのAccess IDと後述するAccess Passwordを組み合わせて使用することで、サーバ200bから通信を許可される。また、サーバ200bが送信元のカメラを特定する情報として用いることができる。
Access Passwordは、Access ID同様、デジタルカメラ100がペアリングされた際にサーバ200bが発行する情報であり、デジタルカメラ100がサーバ200bと通信するときに使用する認証パスワードである。
図4(b)は、図3(a)の通信302によってPC200aをサーバ200bにペアリングしたことにより、PC200aおよびサーバ200bに記憶されるペアリング情報の例を示す。
PC Nameは、PC200aの名称(例えば「xxのコンピュータ」など)であり、PC情報としてデジタルカメラ100からサーバ200bへ送信された情報である。サーバ200bは、ユーザアカウントに登録された機器を提示する際にこの情報を用いることができる。
PC GUIDは、PC200aを一意に識別できる情報であり、PC情報としてデジタルカメラ100からサーバ200bへ送信された情報である。PC固有のシリアル番号(例えばイーサネット(登録商標)のMACアドレスを利用した値)でも良いし、転送サービスアプリケーションのインストール時に生成した文字列でも良い。
PC Alias IDは、登録(ペアリング)されたPC200aに対してサーバ200bがユーザアカウント情報を考慮して付与した固有情報であり、サーバ200bとペアリングされている機器間で重複しない情報である。PC Alias IDによってサーバ200bはPC200aを一意に識別することができる。
Access IDおよびAccess Passwordは、サーバ200bにPC200aがペアリングされた際にサーバ200bが発行する情報であり、PC200aがサーバ200bと通信するときに使用する認証IDおよび認証パスワードである。PC200aはこのAccess IDとAccess Passwordを組み合わせて使用することで、サーバ200bから通信を許可される。また、サーバ200bが送信元のPCを特定する情報として用いることができる。
次に、デジタルカメラ100とPC200aとのペアリング処理について説明する。
図5は本実施形態における、デジタルカメラ100とPC200aとのペアリング処理における、PC200a側の処理を示すフローチャートである。なお、デジタルカメラ100とサーバ200bのペアリング処理は済んでいるものとする。
本実施形態において、デジタルカメラ100とPC200aとの間のペアリング処理は、例えば両者をUSBケーブルなどで直接接続してデジタルカメラ100をPC200aに登録するものとは異なる。実際にはPC200aがサーバ200bとペアリング済みのデジタルカメラのペアリング情報を取得して保存することでペアリングを行う。これは、本実施形態においてはサーバ200bがデータ転送サービスを提供しており、PC200aはサーバ200bとペアリング済みのデジタルカメラとのみペアリングを行うからである。もちろん、別の実施形態ではPC200aにUSBケーブルなどでデジタルカメラ100を直接接続してペアリングを行っても良い。この場合、CPU203はデジタルカメラ100から取得したカメラ情報に含まれるDevice Alias IDをサーバ200bに問い合わせ、サーバ200bとペアリング済みかを確認してもよい。そして、ペアリング済みであればCPU203はサーバ200bからペアリング情報を取得して例えば二次記憶装置205(記憶手段)に保存する。
まず、S501でCPU203は、通信装置206を通じてサーバ200bにログインする。サーバ200bへのログイン時にCPU203は、ペアリング情報に含まれるAccess IDおよびAccess Passwordを用いる。また、必要に応じて、ユーザログインを要求する。この場合、ユーザはアプリケーション画面にアカウント情報(ユーザID、パスワード)を入力する。
S502でCPU203は、ログインユーザのアカウントに関連づけてサーバ200bに管理されている、サーバ200bとペアリング済みの機器のペアリング情報のリストをサーバ200bから取得する。より具体的にはCPU203はペアリング済み機器のうちカメラに関するリストを取得する。リストには例えば、図4(a)に示したペアリング情報のうち、デジタルカメラのモデル名(Camera Name)、GUID(Camera GUID)、およびAlias ID(Camera Alias ID)が含まれる。
取得したリストに複数のデジタルカメラの情報が含まれている場合、CPU203はS503で、表示部201にそれらデジタルカメラの情報を選択可能に一覧表示し、ペアリングするデジタルカメラの選択をユーザに促す。なお、この際、CPU203はペアリング済みのデジタルカメラの情報を表示しないようにしてもよい。ユーザは操作部202を通じて所望のデジタルカメラを選択する。また、取得したリストに1つのデジタルカメラの情報が含まれている場合、CPU203はそのデジタルカメラが選択されたものとしてS503の処理をスキップすることができる。
S504にて、CPU203は選択されたデジタルカメラとのペアリングをサーバ200bに対して要求する。この要求を受け、サーバ200bは指定されたデジタルカメラのペアリング情報401(図4(a))をPC200aに送信する。PC200aはS505で、受信したデジタルカメラのペアリング情報を管理情報として例えば二次記憶装置205に保存して処理を終了する。
このように、PC200aはサーバ200bとペアリング済みのデジタルカメラのペアリング情報を取得し、保存することによってデジタルカメラ100との間のペアリングを実行する。
<送信処理>
図6は、本実施形態におけるPC200aが、デジタルカメラ100の送信するデータを受信するために実行する処理の概要を示すフローチャートである。上述の通り、本実施形態でデジタルカメラ100は、データをPC200aに送信する場合、サーバ経由転送を利用する場合と直転送を利用する場合がある。そのため、PC200aはどちらのルートで送信されたデータであっても適切に受信することができるように動作する必要がある。
図6に示す処理は、PC200aにインストールされた、サーバ200bが提供する転送サービスアプリケーションをCPU203が二次記憶装置205から一次記憶装置204に読み出して実行することによって実施される。
S601で、CPU203は、PC200aにデジタルカメラが1台でもペアリングされているか、記憶されているペアリング情報を元に判定する。1台もデジタルカメラがペアリングされていない場合、すなわちペアリング情報が記憶されていない場合、CPU203はS606へ処理を進める。一方、ペアリング済みのデジタルカメラが1台でもあれば、CPU203はS602に処理を進める。
S602でCPU203は、ペアリング済みのデジタルカメラの中に、PCへの直転送機能を持つものが含まれるかどうかを判定する。この判定は、ペアリング済みのデジタルカメラの機種名から行っても良いし、他の方法を用いても良い。例えば、サーバ200b(第2のデバイス)において、直転送に対応したデジタルカメラと未対応のデジタルカメラとでペアリング情報の管理方法やペアリング情報の形式が異なる場合には、その情報を用いて判断しても良い。
S602でCPU203は、直転送に対応したデジタルカメラがペアリング済みである場合にはS603に処理を移し、ペアリング済みのデジタルカメラに直転送に対応したものが含まれていない場合にはS606に処理を移行させる。
S603でCPU203は、通信装置206が接続しているローカルエリアネットワークに対してデバイスサーチ命令を送信し、直転送に対応したペアリング済みデジタルカメラ(第1のデバイス)が存在するか探索する。後述するように、CPU203は、直転送に対応したデジタルカメラがLAN上のデバイス探索で見つかった場合、そのデジタルカメラがペアリング済みであるか(あるいはペアリングが有効であるか)を、WAN上のサーバ200bに問い合わせてよい。
S604でCPU203は、S603における探索でLAN上にペアリング済みかつ直転送に対応したデジタルカメラの存在を検出すると、S605でデジタルカメラと通信して、デジタルカメラ内の未取得のデータ(静止画像、動画像、音声等)を受信する。ここで、CPU203は第1の受信手段として機能する。受信したデータをCPU203は例えば二次記憶装置205に保存し、待機状態に戻る。
一方、S604において、S603の探索でLAN上にペアリング済みかつ直転送に対応したデジタルカメラの存在が検出できなかった場合には、CPU203は、サーバ200bに未転送データの有無を問い合わせ、あれば取得する処理をS606以降で実施する。なお、図6では表現できていないが、処理をS608に移した後も、CPU203はS603の探索処理を継続(並行)して実行している。
本実施形態において転送サービスアプリケーションは、その稼働中1分ごとにWAN上のサーバ200bをポーリングするように設定されている。そのため、S606でCPU203は、前回のポーリングから1分(以上)経過したか判定し、経過していればポーリングをサーバに対して行う(S607)。
具体的にはCPU203はS607においてサーバ200bに未転送データのリストを要求する。サーバ200bはデジタルカメラ100から転送されたデータのうち、PC200aに転送されていないものをリスト管理している。従って、CPU203はこのリストに1つ以上のデータが含まれているかどうかによって、未転送データの存在有無を判別できる(S608)。なお、未転送データの有無の判定は他の方法で行っても良い。
S608で第2の受信手段としてのCPU203はサーバ200bに未転送のデータがあると判定すると、S609でリストに含まれる情報を用いてサーバ200bにデータを要求し、未転送のデータを受信する。そして、CPU203は、受信したデータを例えば二次記憶装置205に保存してS601に処理を戻す。
CPU203は、S606でポーリング間隔が経過していない場合と、S608で未転送データが存在しないと判定された場合もまた、S601に処理を戻す。
なお、S606からS609までの処理中に、LAN上にペアリング済みかつ直転送に対応したデジタルカメラの存在が検出された場合、CPU203は実行中の処理を中断し、S605に処理を移行させる。そして、CPU203は、見つかったデジタルカメラから直転送されるデータを受信する。
S609におけるデータの受信を中断した場合、CPU203は途中で受信が中断されたデータは破棄し、直転送によるデータの受信の終了後に再度サーバ200bからデータを取得する。S609の処理において、CPU203は正常に受信が完了したデータについては、サーバ200bに完了を通知する。この通知を受けてサーバ200bは受信完了の通知を受けたデータをリストから削除する。従って、受信が中断したデータについてはリストに残ったままであるため、次回のポーリング時に未転送データとしてPC200aが再取得可能である。
なお、S606からS609までの処理中に、LAN上にペアリング済みかつ直転送に対応したデジタルカメラの存在が検出された場合、現在受信中のデータについては最後まで受信を継続してから、処理をS605に移行させても良い。
図7は、本実施形態における、デジタルカメラ100、PC200a、およびサーバ200bの間でのデータ転送処理のシーケンス図である。
PC200aのCPU203は、転送サービスアプリケーションの稼動中には常に図6の処理を実行している。つまり、定期的にWAN上のサーバ200bにポーリングを行うとともに、ペアリング済みかつ直転送対応のデジタルカメラが現れたかどうかを判定するため、接続中のLANでデバイス探索を行っている(S701)。デバイス探索はプロトコルに応じた方法で実行され、例えばUpnPではSearch命令の発行を行う。
デジタルカメラ100の制御部101は、操作部102を通じてユーザからバックアップ処理の実行が指示されると、記録媒体141に、バックアップされていないファイル、つまり未転送データが存在するかを確認する(S702)。なお、バックアップ対象のデータ種別は別途設定可能であってよい。ここでは便宜上画像データファイルが転送対象であるものとするが、転送処理はデータ種別に依存せず、他の任意のデータファイルにも同様に適用可能である。また、制御部101は、転送したファイルには転送済みであることを示す情報を付加したり、ファイル毎に転送済みか未転送かを管理するテーブルなどを用いたりして、記録媒体141のファイルが未転送かどうかを判定することができる。
その後、制御部101は通信部152を通じ、接続中のローカルエリアネットワークに対して自身の存在を通知する広告命令(例えばUPnPのAdvertise命令)を発行する(S703)。同時に制御部101は、接続中のローカルエリアネットワークに対してデバイス探索命令(例えばUpnPのSearch命令)を実行し、ネットワーク上の他のデバイスからの応答を待機する(S704)。
PC200aのCPU203は、デジタルカメラ100からの広告命令を受信する(S705)か、S701で発行したUPnPのSearch命令に対するデジタルカメラ100の応答を受信する(S706)ことで、デジタルカメラ100の出現を検知する。
CPU203は、出現を検知したデジタルカメラ100に対し、デバイス情報の取得要求(Get Device Description)を送信する。CPU203は、デジタルカメラ100から取得したデバイス情報(Response (XML))から、デジタルカメラ100が直転送に対応していることが判別できた場合のみ、後のペアリング確認処理へ進む。デジタルカメラ100が直転送に対応していることが判別できなかった場合、他のデバイスからの応答を待つ。
ここでは、デジタルカメラ100が直転送に対応している(直転送機能を有する)と判別されたものとする。そしてPC200aのCPU203は、PC200aに割り当てられたAlias IDと、取得したデバイス情報に含まれるデジタルカメラ100のAlias IDを用いて、サーバ200bにペアリング状態の確認要求を行う(S707)。
なお、取得したデバイス情報に含まれるデジタルカメラ100のAlias IDが、二次記憶装置205に保存されているペアリング情報に含まれている場合、デジタルカメラ100はペアリング済みである。従って、本来、サーバ200bへの確認要求を行う必要はない。ただし、ペアリングがすでにサーバ200b側への手続で解除されている可能性があるため、最新のペアリングの有効性を確認する意味で本実施形態では確認要求を行っている。別の実施形態では、デジタルカメラ100のAlias IDを含んだペアリング情報が保存されている場合、保存されてから所定期間以上経過している場合にのみサーバ200bに確認要求して、ペアリングの有効性を確認するように構成しても良い。この場合、PC200aのCPU203はペアリング済みであることが確認されたらペアリング情報の保存時刻に関する情報を更新し、ペアリングされていない(解除された)ことが確認されたら二次記憶装置205からペアリング情報を削除してよい。
サーバ200bのCPU203は、PC200aのログインユーザのアカウント情報に関連付けられたペアリング情報に含まれるAlias IDのうち、PC200aから送信されたデジタルカメラ100のAlias IDと一致するものがあるか調べる。そして、サーバ200bのCPU203は一致するものがあれば、デジタルカメラ100がPC200aのログインユーザに関連付けられていると判定する。サーバ200bのCPU203は判定結果をPC200aに通知する(S708)。
PC200aのCPU203は、デジタルカメラ100がペアリング済みのデバイスであることが確認されたら、上述の通りデジタルカメラ100のペアリング情報をサーバ200bから取得し、二次記憶装置205に保存する。また、CPU203は、接続中のローカルエリアネットワークに対して自身の存在を通知する広告処理を行う(例えばUPnPのAdvertise命令を発行する(S709))。見つかったデジタルカメラ100がペアリングされていないデバイスであると判断された場合には、Advertise命令を実行せずに終了する。
デジタルカメラ100の制御部101は、PC200aからのAdvertise命令を受信することでPC200aの出現を検知すると、PC200aに対してデバイス情報の取得要求(Get Device Description)を送信する(S710)。この時点でPC200aとデジタルカメラ100は互いにローカルエリアネットワーク上で検知しあい、両者間の通信が可能になる。制御部101は取得したデバイス情報から、PC200aが直転送に対応したPCであることを判断した場合のみ、後の画像転送処理へ進む。ここでは、PC200aが直転送に対応したPCであると判別されたものとする。
本実施形態では、PC200aがデジタルカメラ100に対してHTTPのクライアントとして画像ファイルの取得要求を行うことで画像転送処理を実現する。そのため、画像転送処理の最初に制御部101は、PC200aがHTTPクライアントとして通信できるよう、HTTPサーバアプリケーションを起動する(S711)。また、制御部101は、S702で検出した未転送画像ファイルのリストを作成する(S712)。
PC200aのCPU203は、デジタルカメラ100に対して、未転送画像リストの取得要求を送信する(S713)。CPU203は、デジタルカメラ100から取得した未転送画像リストに記載された、未転送画像を特定する情報をもとに、デジタルカメラ100に対して画像ファイルの取得要求を送信する(S714)。これに対し制御部101は、要求された画像ファイルをPC200aに送信する(S715)。
CPU203は、画像ファイルの受信が正常に完了したら、デジタルカメラ100に対して受信完了の通知を行う(S716)。制御部101は受信完了通知を受信すると、対象の画像ファイルは転送済みであるとして未転送画像リストから削除する。また、制御部101は、転送済みファイルであることが識別できるような情報を画像ファイルに付与しても良い。
未転送画像リストに記載されたすべての画像ファイルの取得を完了すると、PC200aのCPU203は改めてデジタルカメラ100に対して未転送画像リストの取得要求を行う(S713)。先に未転送画像リストを取得してから撮影が行われた場合など、未転送画像が追加されていれば、CPU203はその画像ファイルを取得する。未転送画像リストを参照して、未転送画像ファイルが無いと判断した場合、CPU203は転送完了の通知をデジタルカメラ100に対して行う(S717)。
制御部101は転送完了通知を受信すると、HTTPサーバアプリケーションを終了し(S718)、さらに、S703およびS704で開始した広告処理および探索処理を終了する(S719)。PC200aのCPU203も同様に、S709で開始した広告処理を終了する(S720)。
以上で、デジタルカメラ100がユーザからバックアップ処理の実行を指示された際の一連の処理は終了する。
引き続き、デジタルカメラ100とPC200aそれぞれの処理については、図8と図9のフローチャートを用いて説明する。
図8は、本実施形態におけるデジタルカメラ100が、PC200aもしくはサーバ200bへデータ転送する際の処理を示したフローチャートである。図7ではPC200aに直転送する場合のみを説明したが、図8ではサーバ経由転送を含めた全体の処理を示している。
S801で制御部101は、記録媒体141に、バックアップされていないファイル、つまり未転送画像ファイルがあるかどうか調べる。本実施形態のデジタルカメラ100では、未転送画像かどうかは、ファイルに記録されるフラグにより管理しているが、この管理方法に限定されるものではない。
制御部101は、未転送画像ファイルが存在しない場合は処理を終了するが、存在している場合は、S802に処理を移す。
S802で制御部101は、接続中のローカルエリアネットワークに対する広告処理を行う(例えばUPnPのAdvertise命令を発行する)。
S803で制御部101は、接続中のローカルエリアネットワークに対するデバイス探索処理を行う(例えばUpnPのSearch命令を発行する)。デバイス探索命令に対して応答したデバイスがあれば、制御部101はデバイス情報を取得し、本機能に対応したPCであるかどうかを、デバイス情報に含まれる例えば機種名や能力情報などに基づいて判定する。
制御部101は、デバイス探索命令に対し、直転送に対応したPCからの応答を所定時間(たとえば10秒)待つ(S804,S808)。直転送に対応したPCからの応答が所定時間内になければ(S808,Yes)、制御部101は転送ルートを直転送からサーバ経由転送に切り替え、サーバへの転送処理を開始する。
S809およびS810で制御部101は、S803とS802で開始したデバイス探索処理および広告処理を終了させる。そして、S811で制御部101はサーバ経由転送処理を行う。このとき、デジタルカメラ100はHTTPクライアントとして、HTTPサーバーとして機能するサーバ200bへの画像送信処理を開始する。サーバ経由転送は、デジタルカメラ100がペアリング済みのサーバ200bに対して未転送画像ファイルを送信する処理であるが、本発明とは直接関係が無いのでその詳細についての説明は省略する。
一方、S804で、所定時間内に直転送に対応したPC200aの出現が検知された場合、制御部101はS805でPC200aへ直転送による画像転送処理を実行する。図7を用いて説明したように、直転送による画像転送処理では、制御部101はPC200aからの要求に応じて、未転送画像リストの送信、指定された未転送画像ファイルの送信などを行う。このとき、デジタルカメラ100はHTTPサーバとして振る舞い、HTTPのクライアントとして振る舞うPC200aが未転送画像ファイルをデジタルカメラ100に要求することで画像転送を実現する。PC200への直転送による画像転送処理が終了すると、制御部101は、S806およびS807で、S803とS802で開始したデバイス探索処理および広告処理を終了させ、全体の処理を終了する。
図9は、本実施形態におけるPC200aの処理を示すフローチャートであり、図7で説明した処理に対応している。
S901からS902までは直転送機能に対応したデジタルカメラの出現を検出するまでのフェーズである。
PC200aにおいては、転送サービスアプリケーションが稼動しているものとする。従って、上述の通り、定期的にサーバ200bにポーリングを行うとともに、ペアリング済みかつ直転送対応のデジタルカメラが現れたかどうかを判定するため、接続中のローカルエリアネットワークでデバイス探索を行っている(S901)
ネットワーク上でデバイスが見つかると、CPU203は見つかったデバイスからデバイス情報を取得し、デバイス情報に含まれる機種名や能力情報に基づいて、デバイスが直転送に対応したカメラかどうか確認する(S705〜S706に対応)。
S902で、ローカルエリアネットワーク上に直転送に対応したカメラが見つからない場合、CPU203は処理をS901に戻し、デバイス探索処理を継続する。
S903からS904まではペアリング確認のフェーズである。
S903でCPU203はローカルエリアネットワーク上で見つかった、直転送に対応したカメラが、同じユーザに関連付けられたペアリング済みのカメラかどうかをサーバ200aに問い合わせる(S707に対応)。
サーバ200bから、見つかったカメラがペアリング済みのデバイスであることが確認された旨の通知を受信すれば(S904,Yes)、CPU203はS905以降の画像受信のフェーズを実行する。
一方、見つかったカメラがペアリング済みのデバイスでない旨の通知を受信した場合(S904,No)、CPU203は処理をS901へ戻し、ローカルエリアネットワーク上のデバイス探索を継続する。
S905でCPU203は、ローカルエリアネットワーク上で広告処理を行い、直転送に対応し、かつペアリング済みのカメラ(デジタルカメラ100)との無線接続を図る(S709〜S710に対応)。CPU203は、デジタルカメラ100との無線接続が確立されたら、S713〜S717で説明したようにHTTPクライアントとして振る舞い、HTTPサーバとして振る舞うデジタルカメラ100から未転送画像ファイルを取得する(S906)。
S907でCPU203は、デジタルカメラ100との間の無線接続を切断し、処理をS901の待機状態に戻る(S720に対応)。
図10は、本実施形態におけるPC200aの状態遷移図である。
本実施形態でPC200aは、初期状態ではペアリング済みのカメラが存在しない未設定状態1001である。未設定状態1001でサーバ200bに接続し、図5のフローチャートを用いて説明したカメラとのペアリング処理が行われると、待機中状態1002に遷移する。転送サービスアプリケーションの起動時にペアリング済みカメラのペアリング情報が存在している場合には、当初から待機中状態1002となる。
待機中状態1002でPC200aは、ローカルエリアネットワークに対しては直転送に対応し、かつペアリング済みカメラの探索処理を、外部ネットワーク(サーバ200bが存在するネットワーク)に対してはサーバ200bへのポーリング処理を並行して行う。
サーバ200bへのポーリングにより、新着(未転送)画像ファイルがサーバ200bに存在していることを検知すると、PC200aは「サーバから画像受信」状態1003に遷移する。この状態においてCPU203は、サーバ200bにある新着画像ファイルの受信処理を実行する。
待機中状態1002において、直転送に対応し、かつペアリング済みカメラがローカルエリアネットワーク上で検出されると、PC200aは「カメラから画像受信」状態1004に遷移する。この状態ではCPU203が、デジタルカメラ100から送信される未転送画像ファイルを全て受信する。
「サーバから画像受信」状態1003、もしくは、「カメラから画像受信」状態1004での処理が終了すると、いずれの場合も、PC200aは待機中状態1002に遷移する。
なお、上述の通り、「サーバから画像受信」状態1003においても、ローカルエリアネットワーク上でのデバイス探索は継続実施している。そして、直転送に対応し、かつペアリング済みカメラがローカルエリアネットワーク上で検出されると、ただちに、「カメラから画像受信」状態1004に遷移する。つまり、本実施形態のPC200aにおいては、「サーバから画像受信」状態1003よりも、「カメラから画像受信」状態1004の方が優先度が大きい。
以上説明したように、本実施形態によれば、デバイス(例えばモバイル端末)から、直接転送されるルートと、サーバを経由して転送されるルートでデータが転送される可能性がある場合でも、適切にデータを受信できる情報処理装置を実現できる。
特に、サーバからデータを受信中でも直接転送機能を有するデバイスの探索を継続し、直接転送機能を有するデバイスが見つかった場合にはサーバからのデータ受信よりもデバイスからの直接転送を優先するので、デバイスを待たせることがなく、使い勝手がよい。一方、直接転送機能を有するデバイスが見つからない場合にはサーバに存在する未転送データの受信処理を行うため、サーバ経由のルートで転送されたデータも遅滞なく受信することができる。
●(第2の実施形態)
第1の実施形態では、デジタルカメラ100内のデータを所定の宛先機器にバックアップするデータ転送サービスにおいて、直接転送とサーバ経由の転送を利用可能とする技術について説明した。本実施形態では、データ転送サービスにおいて、所定の宛先機器とは異なる、ネットワーク上の機器にデータを自動転送する機能を追加するための技術に関する。
<接続形態の概要>
図11は、図3と同様に、本実施形態における、デジタルカメラ100、PC200a、およびサーバ200b、さらにフォトストレージサービスのサーバ200cの接続形態を模式的に表した図である。本実施形態において、これら4つのデバイス間のデータ送受信は、図11(a)〜(c)に示す3つのフェーズを有する。
図11(a)は、図3(a)で説明した第1の実施形態の接続形態に、サーバ200bとフォトストレージサービスのサーバ200cとの間の連携設定1101が追加された形態である。
連携設定1101は、デジタルカメラ100がサーバ200bへ送信したデータの宛先機器として、PC200aのみではなく、インターネット上のフォトストレージサービスのサーバ200cも利用可能とするための設定である。連携設定1101は、サーバ200bからフォトストレージサービスのサーバ200cへ画像を送信することができるようにするため、サーバ200bおよび200cが互いにユーザアカウントにログインして、アクセスを許可するためのものである。アクセス許可は具体的には、クライアント認証やOAuthなどの方法で提供される。
図11(b)は、図3(a)で説明した第1の実施形態の接続形態に、サーバ200bからフォトストレージサービスのサーバ200cへの画像通信1102が追加された形態である。これは、デジタルカメラ100がサーバ200bへ送信したデータが、PC200aのみではなく、インターネット上のフォトストレージサービスのサーバ200cへも転送されることを示している。
図11(c)は、本実施形態に特有の接続形態を示している。具体的には、デジタルカメラ100からPC200aへ直転送機能を用いた画像送信303で送信されたデータをPC200aがサーバ200bへ送信し、サーバ200bがさらにサーバ200cへ画像送信1102によって送信するものである。
これは、サーバ経由転送ではなく、デジタルカメラ100からPC200aへ直転送したデータを、フォトストレージサービスのサーバ200cまで転送する処理である。
図12は本実施形態における、フォトストレージサービスへの自動画像転送機能の設定画面の例を示す図である。図12(a)に示す設定画面1201は、PC200aで稼動する転送サービスアプリケーションの一部機能として用意される。本実施形態では設定画面1201を専用アプリケーションの一部の機能として提供するが、サーバ200bがデータ転送サービスの設定用ウェブページとして提供しても良い。この場合PC200aにおけるウェブブラウザ機能を有する任意のアプリケーションのみならず、サーバ200bにアクセス可能な任意のデバイス(例えばスマートフォンなど)も設定画面1201を提供しうる。いずれの場合も、設定画面1201で設定された情報はすべてサーバ200bで管理されるものとする。
設定画面1201は、フォトストレージ(オンラインアルバム)サービスに関する転送先のサーバ200cを選択するための操作部1202を有し、本実施形態では予め定められた3種類のサーバ(サービス)から1つ以上を選択可能である。
予め定められた3つの転送先サーバに対応して設けられたチェックボックス1203、1204、1205は、チェック状態にあるものは転送先サーバとして利用することを、非チェック状態のもの利用しないことを表す。
チェックボックス1203、1204、1205は転送先サーバごとに設けられているので、複数の転送先サーバへの転送を指定することも可能である。
転送サーバごとに設けられた詳細設定ボタン1206、1207、1208は夫々の転送先サーバの詳細設定を指定するための詳細設定画面1211(後述)を表示するためのボタンであり、対応するチェックボックスがチェック状態の場合のみ有効化される。
図では、非チェック状態にあるチェックボックス1205に対応する詳細設定ボタン1208は無効化され、チェック状態のチェックボックス1203,1204に対応する詳細設定ボタン1206,1207は有効化されている。
OKボタン1209は、表示されている設定状態を現在の設定に反映して設定画面1201を閉じるボタン、キャンセルボタン1210は表示されている設定状態を現在の設定に反映せずに設定画面1201を閉じるボタンである。
図12(b)は、詳細設定ボタン1206の押下により起動される詳細設定画面1211の例を示す図である。他の詳細設定ボタンが押下された場合、対応するサーバに応じた項目の詳細設定画面が表示される。
1212には詳細設定パネルが関連付けられている転送先サーバ200cを識別するための情報が記載される。
転送先サーバにアクセスするために必要となるアカウント情報の入力エリア1213は、アカウントIDの入力エリア1214と、パスワードの入力エリア1215を有する。
なお、パスワードの入力エリア1215に入力された文字は、セキュリティ保持のために伏せ字でエコーバックされる。
転送対象ファイルの種類を指定するための選択エリア1216には、サーバ(サービス)が対応しているファイルの種類のうち、自動転送するファイルの種類を指定するためのチェックボックス1217、1218、1219、1220が設けられている。これらのチェックボックス1217〜1220で指定されたファイルの種類が、該当するサーバに転送されるファイルの種類として設定される。それぞれのチェックボックスは独立しているため、同時に複数のファイルの種類を任意の組み合わせで指定することが可能である。
転送先のサービスが対応しているファイルの種類は、サーバ200bの管理者が事前に手動で設定しても良いし、サーバ200bが各サービスのサーバ200cに問い合わせて取得しても良い。
OKボタン1221は、表示されている設定状態を現在の設定に反映して詳細設定画面1211を閉じるボタン、キャンセルボタン1222は表示されている設定状態を現在の設定に反映せずに詳細設定画面1211を閉じるボタンである。
<送信処理>
図13は、本実施形態におけるPC200aの動作を示したフローチャートであり、図6と同様の処理については同じ参照数字を付して重複する説明は省略する。S601〜S609については第1の実施形態と基本的に同一の処理を実行する。
ただし、本実施形態のPC200aは、直転送に対応したデジタルカメラのペアリング状況に関してについてサーバ200bに確認要求する際、フォトストレージサービスのサーバ200cへの自動転送に関する設定内容をサーバ200bから取得する。そして、PC200aは、その後デジタルカメラ100から直転送された画像ファイルに関し、この時点で取得した設定内容に従ってサーバ200bへのアップロードを実施する。サーバ200bは、PC200aから自動転送された画像ファイルを、自動転送設定に従ってフォトストレージサービスのサーバ200cへさらに転送する。
上述のように、本実施形態において自動転送設定はサーバ200bで管理され、その設定および変更は、サーバ200bにログイン可能な任意のデバイスにより、任意のタイミングで実施されうる。例えば、ユーザがデジタルカメラ100から直転送機能を用いてPC200aにフォトストレージサービスのサーバ200cに自動転送されるべき画像ファイルを送信したとする。そして、PC200aがその画像ファイルをサーバ200bにアップロードする前に、スマートフォンやタブレット端末からサーバ200bにユーザがアクセスし、自動転送設定の内容を変更したとする。この場合、サーバ200bがPC200aから画像ファイルをアップロードされた時点での自動転送設定に基づいて自動転送処理を行うと、直転送したタイミングでユーザが意図していたものとは異なる自動転送処理が行われる可能性がある。そのため、本実施形態では、直転送によってPC200aがデジタルカメラ100から受信した画像ファイルについては、カメラが直転送に対応しており、かつペアリングが有効であると判別された時点における自動転送設定に基づいて処理されるようにする。あるいは、デジタルカメラ100から直転送の要求があった時点でサーバ200bから自動転送設定の内容を取得するようにしても良い。こうすることで、デジタルカメラ100がLANで探索されてから、実際に直転送が開始されるまでの間に自動転送設定が変更された場合に生じうる問題を防止できる。
従って、サーバ200bはデジタルカメラ100から直接受信した画像ファイルについてはその時点における自動転送設定を関連付けておき、その後の自動転送処理に用いる。また、PC200aはペアリングの有効性を確認した際にサーバ200bから取得した自動転送設定の内容を、画像ファイルをアップロードする際にサーバ200bに送信する。サーバ200bはPC200aから受信した自動転送設定の内容に従って、PC200aからアップロードされた画像ファイルのサーバ200cへの自動転送処理を実行する。
S1304でCPU203は、フォトストレージサービスのサーバ200cへの自動転送設定が有効かどうかを、サーバ200bから取得した設定内容に基づいて判別する。また、CPU203は、自動転送設定が有効であれば、S1305でさらに、S605で受信した画像ファイルが自動転送対象の種類に該当するかどうかを判別する。
自動転送設定が有効であり、かつ受信した画像ファイルが自動転送対象に該当する場合、CPU203はS1306で、S605で受信した画像ファイルを特定可能な情報を、自動転送対象の画像ファイルのリスト(アップロードリスト)に追加する。画像ファイルを特定可能な情報としては例えば、画像ファイルを保存した二次記憶装置205のファイルパスであってよい。アップロードリストが生成されていなければ、CPU203は新たに生成する。
一方、自動転送設定が無効であれば、CPU203はアップロードリストを生成しない。また、自動転送設定が有効であっても受信した画像ファイルが自動転送対象に該当しない場合、CPU203はS605で受信した画像ファイルを特定可能な情報をアップロードリストに追加しない。
直転送に対応し、ペアリングが有効なカメラが見つからずにサーバ200bのポーリングを行った場合で、サーバ200bに未転送画像ファイルがなかった場合、本実施形態のPC200aは自動転送処理を行う。
S1310でCPU203は、アップロードリストを参照し、自動転送対象ファイルを特定するファイルパスなどの情報が記録されているか確認する。アップロードリストが存在しない場合や、アップロードリストにファイルを特定する情報が記載されていない場合、CPU203は処理をS601に戻し、アップロードリストにファイルを特定する情報が記録されている場合には処理をS1311へ進める。
S1311で送信手段としてのCPU203は、アップロードリストに記録されているファイルをサーバ200bへアップロードして、すべての画像をアップロード後、処理をS601に戻す。
なお、本実施形態においても第1の実施形態と同様、サーバ200bから画像ファイルを受信している際や、サーバ200bに画像ファイルを自動転送(アップロード)している際にもデバイス探索処理を実行する。そして、ネットワーク上にペアリング済みかつ直転送に対応したデジタルカメラの存在が検出された場合、CPU203は実行中の処理を中断し、S605に処理を移行させる。そして、CPU203は、見つかったデジタルカメラから直転送されるデータを受信する。
S1311におけるアップロードを中断した場合、CPU203は途中でアップロードが中断されたデータはアップロードリスト上で未転送の状態で管理することで、次回のアップロード処理時に再アップロードされる。
なお、本実施形態においても、S609およびS1311の処理中に、ネットワーク上にペアリング済みかつ直転送に対応したデジタルカメラの存在が検出された場合、実行中の受信またはアップロードが完了してから、処理をS605に移行させても良い。
図14は、図13に示した本実施形態のPC200aの処理のうち、特にアップロードリストを生成するまでの処理に関する工程をさらに詳細に示すフローチャートである。図14のうち、図9と同様の処理については同じ参照数字を付して説明を省略する。
S1405でCPU203は、S903およびS904の処理で、デバイス探索処理で見つかった、直転送に対応したデジタルカメラ100のペアリングの有効性が確認されたら、フォトストレージサービスのサーバへの転送設定をサーバ200bから取得する。
その後、S1408でCPU203は、S1405で取得したフォトストレージのサーバへの転送設定を参照し、自動転送設定が有効で、かつS906で受信した画像ファイルが転送対象の種類に該当するか否かを判断する。両方の条件を満たせば、CPU203はS906で受信した画像ファイルを特定する情報をアップロードリストに追加する。
図15は本実施形態においてPC200aが生成するアップロードリストのデータ構造例を示す図である。
本実施形態において、アップロードリスト1501はXMLなどの文字列情報あるいはバイナリデータによるデータブロックとして記述することができる。1502以降はアップロードリストを構成するデータ要素である。
1502はリスト作成日時であり、当該リスト情報が作成された日時によるタイムスタンプである。具体的にはPC200aにデジタルカメラ100から画像ファイルの転送を開始した(または画像ファイルの受信開始時のPC200aの)時刻を示している。
リスト作成日時1502は例えば、自動転送処理においてアップロードを行うファイルに時期的な制限を付加する場合などに用いることができる。
1503はCamera Alias IDであり、デジタルカメラ100に対してサーバ200bが付与した固有情報である。
1504はデジタルカメラ100のAccess IDであり、サーバ200bとデジタルカメラ100との間にペアリングが設定された時点で発行される。デジタルカメラ100がサーバ200bと通信するときに使用する認証IDである。デジタルカメラ100はこの認証IDを使用することで、サーバ200bに通信を許可される。また、送信元のデジタルカメラ100を特定する情報としても用いられる。
1505はAccess Passwordであり、これも、サーバ200bとデジタルカメラ100との間にペアリングが設定された時点でサーバ200bから発行される。デジタルカメラ100がサーバと通信するときに使用する認証パスワードである。
データ転送アプリケーションがAccess ID1504およびAccess Password1505をサーバ200bに送信することで、サーバ200bはデジタルカメラ100を一意的に特定しつつ、アクセス許可をするための認証をすることができる。
1506、1507、1508は、自動転送対象の画像ファイルを特定する画像ファイル情報である。画像ファイル情報は自動転送対象のファイル数Nに等しい数記録される。図15で1506は先頭の画像ファイル情報、1507は任意の途中n(n>1)番目の画像ファイル情報、108は最終のN(>n)番目の画像ファイル情報である。
個々の画像ファイル情報は、対応する画像ファイルをアップロードする際に使用するための複数の情報を含んだ情報ブロック1509である。
1510はファイル名であり、サーバ200cに画像を送信する際に保存用データとして用いられる。
1511は画像ファイルの二次記憶装置205の保存位置を示すファイルパスであり、画像ファイルをアップロードする際の元データの場所を識別するために使用される。
1512は画像ファイルのユニークIDであり、同じ画像が繰り返し何度も使用されることを防ぐために、画像生成時にデジタルカメラ100により発番された情報を所持しておく。
1513はファイルの種類であり、自動転送対象ファイルの種類に応じて定義された識別子が使用される。ファイルの種類は、画像ファイルの拡張子であってもよい。
1514はファイルサイズであり、アップロードする際のデータサイズのバイト数である。
ファイルサイズ1514はアップロードするファイルがすべて正しく転送されたことを確認するための指標としても使用される。
なお、画像ファイル情報の情報ブロック1509の内容は図15に示した例に限定されるものではなく、PC200aからの自動転送処理に使用する任意の情報を含めることができる。
図16は、図13のS1310およびS1311に対応する、PC200aのアップロード処理をより詳細に示したフローチャートである。
S1601でCPU203は、アップロードリストがあればそれを一次記憶装置204に読み込み、処理をS1602へ進める。なお、アップロードリストがなければ、自動転送処理が無効であるか、自動転送対象となる画像ファイルが存在しないことを意味するため、CPU203は処理を終了する。
S1602でCPU203は、アップロードリストに画像ファイル情報が記載されていない場合には、処理を終了するが、アップロードリストに画像ファイル情報が記録されている場合には処理をS1603へ進める。
S1603でCPU203は、アップロードリストに記録された自動転送対象の画像ファイルの数に等しい回数のループ処理を開始する。
S1604でCPU203は、画像ファイルのアップロードを受け付けてもらうために、サーバ200bに、アップロードする画像ファイルに関する情報を送信し、処理をS1605へ進める。この際、CPU203は、サーバ200bから取得した自動転送設定の内容をサーバ200bに送信する。
S1605でCPU203は、画像ファイルをサーバ200bへアップロードし、処理をS1606へ進める。
S1606でCPU203は、サーバ200bから正常に受信完了した通知を受けた画像ファイルに関する画像ファイル情報をアップロードリストから削除し、処理をS1607へ進める。
S1607でCPU203は、アップロードリストに記載された画像ファイル情報が無くなるまでループを完了したら処理を終了する。
なお、S1604およびS1605において、PC200aからサーバ200bに画像ファイルをアップロードする際、CPU203はデジタルカメラ100がサーバ経由転送でサーバ200bにアクセスするときに使用する認証情報を使用する。この認証情報とは、図4に示したデジタルカメラ100のAccess IDとAccess Passwordである。デジタルカメラ100の認証情報を使用してPC200aがサーバ200bに認証を受けることで、サーバ200bは、PC200a経由で受信した画像ファイルを、デジタルカメラ100から直接受信したファイルと同様にサーバ200cへ転送可能となる。また、上述したように、サーバ200bはPC200aから受信した自動転送設定の内容に従って、PC200aがアップロードした画像ファイルの自動転送処理を実行する。
ただし、PC200からサーバ200bにアップロードする画像ファイルには、デジタルカメラ100から直接サーバ200bに送信する画像ファイルと区別できる情報を含める。これは、サーバ200bが、PC200経由で受信した画像ファイルを、デジタルカメラ100から直接受信した画像ファイルと誤認識して、未転送画像リストに含めることを回避するためである。サーバ200bはPC200からアップロードされた画像ファイルを除外して未転送画像リストを生成する。これにより、PC200aがアップロードした画像ファイルを未転送画像ファイルとして受信することを回避できる。
図17は、サーバ200bが、自動転送設定に基づいてフォトストレージサービスのサーバ200cに画像ファイルを転送する処理の概要を示すフローチャートである。
サーバ200bのCPU203は、直接、あるいはPC200aを経由して受信した、デジタルカメラ100の画像ファイルについて、それらがデジタルカメラ100から送信された時点における自動転送設定に応じた転送対象リストを生成する。例えば、デジタルカメラ100から直接画像ファイルを受信するごとに自動転送設定を参照し、転送設定が有効かつ画像ファイルの種類が転送対象の種類に該当すれば、転送先のサーバ200cごとの転送対象リストに、画像ファイルを特定する情報を追加する。また、PC200aから受信した画像ファイルについては、その全てが自動転送対象であるから、PC200aから受信した自動転送設定のうち、転送先のサーバもしくはサービスに関する情報を参照して転送対象リストを生成する。そして、所定の周期で転送対象リストを参照し、自動転送すべき画像ファイルが存在する場合には、以下の自動転送処理を実行する。
S1701において、サーバ200bのCPU203(以下、単にサーバ200bという)は、自動転送対象リストが存在するフォトストレージサービスのサーバ200cを特定する。
S1703においてサーバ200bは、図12(b)に示した詳細設定で設定された認証情報を用いて、自動転送先のサーバ200cにログインする。
S1705においてサーバ200bは、自動転送対象リストに含まれる情報に基づいて、サーバ200bの二次記憶装置205から画像ファイルを読み出し、サーバ200cへ転送する。
S1707においてサーバ200bは、自動転送対象リストに含まれる情報に対応する全ての画像ファイルの転送が終了すると、自動転送処理を終了する。複数の転送先が指定されている場合、転送先ごとの転送対象リストに応じて同様の処理を繰り返し実行する。
以上説明したように、本実施形態においては、データ転送サービスを提供するサーバを介して、他のサービスを提供する外部サーバにデータを自動転送することを可能にしたので、より使い勝手のよいサービスを提供できる。
また、デジタルカメラからデータが送信された時点における設定に基づいて、外部サーバへの自動転送処理を実行するので、自動転送処理の実行前に自動転送設定が変更されても、当初の意図通りの自動転送処理を実施することができる。
●(第3の実施形態)
第3の実施形態は、第2の実施形態において、直転送によりPC200aが受信した画像ファイルの自動転送処理が確実に行われるようにするための構成に特徴を有する。自動転送処理が有効に設定されている場合、ユーザは、PC200aに存在する画像ファイルについては、直転送でPC200aに送信したものか、サーバ経由かでPC200aに送信したものかを意識することなく、自動転送されているものと認識しうる。しかし、実際にはPC200aからサーバ200bへのアップロードが完了していない可能性がある。
ユーザが、フォトストレージサービスのサーバ200cに自動転送されたものと認識して、PC200aからサーバ200bへのアップロードが完了していない画像ファイルをPC200aから削除してしまうと、問題が生じる可能性がある。特に、デジタルカメラ100の記録媒体141から画像ファイルが削除されている場合には、画像ファイルが失われることになり得る。
そのため、本実施形態では、PC200aに直転送された画像ファイルについて、サーバ200bへのアップロードが完了しているかどうかを管理し、アップロードが未完了の画像ファイルについては保護するか、削除指示があった場合に警告を行う。これにより、アップロード前に画像ファイルが削除されることを防止し、確実な自動転送処理の実行を実現する。
図18は本実施形態のPC200aが、アップロード対象の画像ファイルの一覧とアップロード状況を表示する画面の例を示す図である。
この画面は、転送サービスアプリケーションのメニュー内などに配置されたボタンなどから指示された際にCPU203が生成して表示部201に表示させる。CPU203は図16のS1605で画像ファイルのサーバ200bへのアップロードが正常に完了すると、S1606で「アップロードリスト」から対応する画像ファイルパスを削除する。この際、削除した画像ファイルパスを記載した「アップロード済みリスト」を作成する。
そして、CPU203は、「アップロードリスト」と「アップロード済みリスト」を照らし合わせて、図18の画面を生成する。アップロードが完了していない画像のステータスには「未送信」と表示し、完了した画像には「送信済」と表示する。また、CPU203は、アップロードが未完の画像ファイルのうち、「アップロードリスト」に記載された画像ファイルパスに該当する画像ファイルが存在しない場合には「不明」と表示する。これにより、アップロードが完了した画像ファイルと完了していない画像ファイルの情報、ファイルパスに存在せずアップロードできない状態の画像ファイルをユーザが把握することを可能にする。
なお、本実施形態では、ステータス「不明」となる画像ファイルをなるべく生じさせないように、「アップロードリスト」に記載された画像ファイルが他の場所に移動されたり、削除されたりして、アップロードできなくなることを防ぐようにする。
具体的には例えば、図13のS1308において、デジタルカメラ100から画像を受信し、「アップロードリスト」に画像ファイルパスを記載した後、CPU203は「アップロードリスト」に記載された画像ファイルの属性情報を変更し、ロックする。一方、図16のS1605で、アップロードが正常に完了したら、CPU203は二次記憶装置205に保存されている画像ファイルのロックを解除する。
PC200aからサーバ200bへのアップロードを確実に実行するため、アップロードが完了していない画像ファイルを保護する方法は、「アップロードリスト」に記載された画像ファイルをロックする方法に限定されない。
その他の方法の一例として、アップロードが完了するまで該当の画像ファイルを監視しておき、ユーザが削除や移動させようとした場合に警告表示を行うようにしても良い。警告しても削除や移動を行った場合には、図1の画面表示時に「不明」のステータス表示を行う。また、図16のS1605で画像ファイルを送信する際には無視する。
別の方法として、画像ファイルを予め保存フォルダから別の場所、例えばユーザによって操作されにくい、二次記憶装置205内に用意した隠しフォルダにコピーし、「アップロードリスト」には隠しフォルダのパスを記載するようにしても良い。アップロードが完了したら、隠しフォルダや「アップロードリスト」から削除する。ただしこの場合、ユーザには隠しフォルダを意識させないために、図1の画面に表示する画像ファイルパスには元の保存フォルダパスを表示する。そのため、「アップロードリスト」に、隠しフォルダの画像パスと元の保存フォルダパスを関連付けて保存する。また、同様の理由で「アップロード済みリスト」にも元の保存フォルダのパスを記録する。
さらに別の方法として、アップロードが完了するまで画像ファイルを監視し、ユーザが削除や移動させようとした場合に隠しフォルダにコピーしてその後のアップロードに利用してもよい。この場合、隠しフォルダにコピーした時点で、アップロードリストのファイルパスを更新する。
また、デジタルカメラ100から画像ファイルを受信した日時を記録しておき、規定日数以内にアップロードを実行できるように定期的に警告表示を行ってもよい。例えば、「設定された画像のサーバへの自動アップロード期限は、あと30日です。インターネットに接続してアップロードできる状態にしてください。」といった表示をPC200aの起動時にポップアップ表示させてもよい。このように警告表示を行うことで、普段インターネットに接続していない環境でも接続を促し、アップロードが実行されるようになる。
ただし規定日数が経過してもアップロードが実行されなかった場合には、該当の画像ファイルパス情報を「アップロードリスト」から削除する。また、画像ファイルのロックや監視の解除、あるいは、隠しフォルダにコピーした画像の削除など、画像ファイルの保護を解除する。こうすることで、特に隠しフォルダに画像をコピーする場合には、二次記憶装置205の空き容量を圧迫し続けることがない。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (8)

  1. 第1のネットワーク上に存在する第1のデバイスおよび、前記第1のネットワークとは異なる第2のネットワーク上に存在する第2のデバイスと通信可能な情報処理装置であって、
    前記第1のネットワーク上で、前記第1のデバイスを探索する探索手段と、
    前記探索手段により、前記第1のデバイスが検出された場合、前記第1のデバイスから、前記第1のデバイスにおける未送信データとして送信されたデータを前記第1のネットワーク上で受信する第1の受信手段と、
    記第2のデバイスに、前記第1のデバイスから前記第1のデバイスにおける未送信データとして前記第2のデバイスに既に送信され、前記第2のデバイスにより保持されているデータであって、前記情報処理装置に転送されるべきデータの有無を確認する確認手段と、
    前記情報処理装置に転送されるべきデータがある場合、前記第2のデバイスから前記情報処理装置に転送されるべきデータを受信する第2の受信手段と、を有し、
    前記探索手段による前記探索は、前記第2の受信手段が前記データを受信している際にも実行され、前記第2の受信手段が前記データを受信している際に前記第1のデバイスが検出された場合には、前記第2の受信手段によるデータの受信処理中であっても、前記第1の受信手段によるデータの受信を優先することを特徴とする情報処理装置。
  2. 前記第1のデバイスが、前記第1のネットワーク上で前記情報処理装置にデータを送信する機能を有し、かつ前記情報処理装置のユーザと関連付けされたデバイスであることを特徴とする請求項1記載の情報処理装置。
  3. 前記探索手段は、前記第1のネットワーク上で前記情報処理装置にデータを送信する機能を有するデバイスが前記第1のネットワーク上で検出された場合、該デバイスが前記情報処理装置のユーザに関連付けされたデバイスであるかどうかを前記第2のデバイスに問い合わせ、該デバイスが前記情報処理装置のユーザに関連付けされたデバイスである場合に、前記第1のデバイスが検出されたものとすることを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記第1のデバイスの情報を保存する記憶手段をさらに有し、
    前記記憶手段に前記第1のデバイスの情報が存在しない場合、前記探索手段による探索を行わないことを特徴とする請求項2または請求項3に記載の情報処理装置。
  5. 前記探索手段は、前記記憶手段に情報が保存されたデバイスが前記第1のネットワーク上で検出された場合、前記情報処理装置のユーザとの関連付けの有効性を前記第2のデバイスに問い合わせ、前記情報処理装置のユーザとの関連付けが有効である場合に、前記第1のデバイスが検出されたものとすることを特徴とする請求項4記載の情報処理装置。
  6. 前記第2の受信手段が前記データを受信している際に前記第1のデバイスが検出された場合、前記第2の受信手段による受信を中断し、前記第1の受信手段による受信を開始することを特徴とする請求項1から請求項5のいずれか1項に記載の情報処理装置。
  7. 第1のネットワーク上に存在する第1のデバイスおよび、前記第1のネットワークとは異なる第2のネットワーク上に存在する第2のデバイスと通信可能な情報処理装置の制御方法であって、
    探索手段が、前記第1のネットワーク上で、前記第1のデバイスを探索する探索工程と、
    前記探索工程により、前記第1のデバイスが検出された場合、第1の受信手段が前記第1のデバイスから、前記第1のデバイスにおける未送信データとして送信されたデータを前記第1のネットワーク上でデータを受信する第1の受信工程と、
    確認手段が、前記第2のデバイスに、前記第1のデバイスから前記第1のデバイスにおける未送信データとして前記第2のデバイスに既に送信され、前記第2のデバイスにより保持されているデータであって、前記情報処理装置に転送されるべきデータの有無を確認する確認工程と、
    前記情報処理装置に転送されるべきデータがある場合、第2の受信手段が前記第2のデバイスから前記情報処理装置に転送されるべきデータを受信する第2の受信工程と、を有し、
    前記探索工程は前記第2の受信工程と並行して実行され、前記第2の受信工程で前記データを受信している際に前記第1のデバイスが検出された場合には、前記第2の受信工程でデータの受信処理中であっても、前記第1の受信工程でのデータの受信処理を優先することを特徴とする情報処理装置の制御方法。
  8. コンピュータを、請求項1から請求項6のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
JP2013168338A 2013-08-13 2013-08-13 情報処理装置およびその制御方法、プログラム Active JP6351222B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013168338A JP6351222B2 (ja) 2013-08-13 2013-08-13 情報処理装置およびその制御方法、プログラム
EP14836114.0A EP3033683B1 (en) 2013-08-13 2014-08-11 Information processing apparatus, control method therefor, and program
US14/910,944 US9848225B2 (en) 2013-08-13 2014-08-11 Information processing apparatus, control method therefor, and program
PCT/JP2014/071506 WO2015022997A1 (en) 2013-08-13 2014-08-11 Information processing apparatus, control method therefor, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013168338A JP6351222B2 (ja) 2013-08-13 2013-08-13 情報処理装置およびその制御方法、プログラム

Publications (2)

Publication Number Publication Date
JP2015036899A JP2015036899A (ja) 2015-02-23
JP6351222B2 true JP6351222B2 (ja) 2018-07-04

Family

ID=52687362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013168338A Active JP6351222B2 (ja) 2013-08-13 2013-08-13 情報処理装置およびその制御方法、プログラム

Country Status (1)

Country Link
JP (1) JP6351222B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109145615B (zh) * 2016-02-17 2020-08-25 青岛海信移动通信技术股份有限公司 一种基于人脸识别的图像保护方法及装置
CN105847243B (zh) * 2016-03-18 2021-02-26 北京小米移动软件有限公司 访问智能摄像头的方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007036911A (ja) * 2005-07-29 2007-02-08 Sony Ericsson Mobilecommunications Japan Inc 携帯端末装置、ネットワーク放送受信プログラム及びネットワーク放送受信方法
KR100765791B1 (ko) * 2006-07-13 2007-10-12 삼성전자주식회사 콘텐트 관리 방법 및 장치
JP2009087040A (ja) * 2007-09-28 2009-04-23 Fujifilm Corp マルチメディアデータの自動取得方法、マルチメディアデータ再生装置、およびマルチメディアデータの自動取得システム
JP2012090150A (ja) * 2010-10-21 2012-05-10 Kyocera Corp 携帯通信端末、アップロード制御プログラムおよびアップロード制御方法
JP5724602B2 (ja) * 2011-05-10 2015-05-27 オンキヨー株式会社 受信装置
JP2013097410A (ja) * 2011-10-28 2013-05-20 Olympus Imaging Corp 画像収集方法

Also Published As

Publication number Publication date
JP2015036899A (ja) 2015-02-23

Similar Documents

Publication Publication Date Title
EP3033683B1 (en) Information processing apparatus, control method therefor, and program
CN103685460B (zh) 信息处理系统和信息处理方法以及中继装置和中继方法
RU2593272C2 (ru) Устройство обработки информации и способ управления таким устройством
US9319623B2 (en) Imformation processing apparatus and information processing system
JP2016534607A (ja) 拡張可能なビデオクラウドサービスのためのシステムおよび方法
EP2958309B1 (en) Display system, display method, and computer program
JP6029300B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5917103B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP6351222B2 (ja) 情報処理装置およびその制御方法、プログラム
JP6351221B2 (ja) 情報処理装置およびその制御方法、プログラム
US9456091B2 (en) Devices and methods for performing operations on image data stored in an external storage device
US9086723B2 (en) Image processing apparatus and control method for determining and associating private information with an image
JP5469842B2 (ja) コンテンツ送信装置、コンテンツ受信装置
JP5343453B2 (ja) コンテンツファイル管理システム
JP6452458B2 (ja) データ管理装置、データ管理方法、およびプログラム
US20170302879A1 (en) Communication apparatus, control method thereof, information processing apparatus, and recording medium
JP6157115B2 (ja) 撮像装置、その制御方法及びプログラム
TW201629831A (zh) 資訊處理裝置及程式
JP6669402B2 (ja) 通信装置、システム、情報処理方法及びプログラム
KR102592480B1 (ko) 정보 처리 장치, 저장 매체, 및 제어 방법
JP6939220B2 (ja) データ解析プログラム、データ解析方法、およびデータ解析装置
JP2018010419A (ja) 通信装置およびその制御方法、プログラム
JP2010178230A (ja) 撮像装置および管理装置
JP2017192069A (ja) 通信装置およびその制御方法、プログラム
JP2012034223A (ja) 記録再生装置及び記録再生装置の制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180605

R151 Written notification of patent or utility model registration

Ref document number: 6351222

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151