(57)【要約】【課題】複数のサーバに対し、同一のファイルに基づく画像や文書をアップロードする場合における利便性が向上された情報処理装置、情報処理プログラム、および情報処理方法を提供すること。【解決手段】本発明によれば、少なくとも１の画像ファイルまたは文書ファイルが、第１ファイル送信手段によって、複数のサーバのうち、１のサーバに送信される。第１ファイル送信手段によりファイルが送信されたサーバから、当該第１ファイル送信手段により送信したファイルが取得される。そのように取得されたファイルが、第２ファイル送信手段によって、複数のサーバのうち、第１ファイル送信手段によるファイルが送信された１のサーバとは異なるサーバに送信される。よって、同一のファイルに基づく画像や文書を、複数のサーバに対し容易にアップロードでき、利便性に優れる。【選択図】図１
2014048872.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、少なくとも画像ファイルまたは文書ファイルを格納可能な複数のサーバと通信可能な情報処理装置であって、
少なくとも１の画像ファイルまたは文書ファイルを取得する第１ファイル取得手段と、
前記第１ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、１のサーバに送信する第１ファイル送信手段と、
前記第１ファイル送信手段によりファイルを送信した前記１のサーバから、前記第１ファイル送信手段により送信したファイルを取得する第２ファイル取得手段と、
前記第２ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、前記１のサーバとは異なるサーバに送信する第２ファイル送信手段と、
を備えていることを特徴とする情報処理装置。
【請求項２】
前記第１ファイル送信手段により前記１のサーバに送信されるファイルを識別可能な識別情報を記憶部に記憶する記憶制御手段を備え、
前記第２ファイル取得手段は、前記第１ファイル送信手段によりファイルを送信した前記１のサーバに対し、前記記憶制御手段により記憶部に記憶された前記識別情報を指定して、当該識別情報により識別されるファイルを取得することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記複数のサーバは、本情報処理装置から送信される縮小指示に応じて、当該縮小指示に関連付けられたファイルに対し、縮小処理を実行可能なサーバを含み、
前記第１ファイル送信手段は、前記複数のサーバのうち、前記縮小処理を実行可能な１のサーバに、前記第１ファイル取得手段により取得されたファイルと縮小指示とを送信し、
前記第２ファイル取得手段は、前記第１ファイル送信手段によりファイルを送信した前記１のサーバにおいて、前記第１ファイル送信手段により送信されたファイルに対して、当該ファイルと共に送信された縮小指示に基づく縮小処理が施されたファイルを取得することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記縮小処理による縮小後のファイルサイズを取得するサイズ取得手段を備え、
前記第１ファイル送信手段は、前記複数のサーバのうち、前記縮小処理を実行可能な１のサーバに、前記第１ファイル取得手段により取得されたファイルと、当該ファイルを前記サイズ取得手段により取得したファイルサイズに縮小させる縮小指示とを送信することを特徴とする請求項３記載の情報処理装置。
【請求項５】
複数のサーバ各々に対応付けて記憶部に記憶されている、各サーバにおける前記縮小処理により縮小可能なファイルサイズに基づいて、当該複数のサーバのうち、前記縮小処理を実行可能であり、前記縮小処理により最小のファイルサイズに縮小可能な１のサーバを選択する第１サーバ選択手段を備え、
前記第１ファイル送信手段は、前記第１サーバ選択手段により選択された１のサーバに、前記第１ファイル取得手段により取得されたファイルと、当該ファイルを前記最小のファイルサイズに縮小させる縮小指示とを送信することを特徴とする請求項３記載の情報処理装置。
【請求項６】
複数のサーバに対応付けて記憶部に記憶されている、各サーバに送信可能なファイルサイズに基づいて、当該複数のサーバのうち、送信可能なファイルサイズが最大である１のサーバを選択する第２サーバ選択手段を備え、
前記第１ファイル送信手段は、前記第２サーバ選択手段により選択された１のサーバに、前記第１ファイル取得手段により取得されたファイルを送信することを特徴とする請求項１から５のいずれかに記載の情報処理装置。
【請求項７】
前記各サーバに送信可能なファイルサイズに基づいて、前記第１または第２ファイル取得手段により取得されたファイルのファイルサイズが、前記第１または第２ファイル送信手段による送信先のサーバへ送信可能なファイルサイズより大きいか否かを判断するサイズ判断手段と、
前記サイズ判断手段により前記取得されたファイルのファイルサイズが送信先のサーバへ送信可能なファイルサイズより大きいと判断された場合、当該ファイルを送信可能なファイルサイズ以下に縮小する縮小手段と、を備え、
前記第１または第２ファイル送信手段は、前記縮小手段による縮小が行われた場合、縮小されたファイルを送信対象のファイルとすることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記第２ファイル送信手段によるファイルの送信に失敗した場合、当該送信に失敗したファイルと同一ファイル名のファイルであって、所定値以下のファイルサイズを有するファイルを、当該ファイルの送信に失敗したサーバに送信する第３ファイル送信手段と、
通信可能なサーバから、ファイルサイズが前記所定値以下であるファイルを抽出する抽出手段と、
前記通信可能なサーバのうち何れかのサーバに、前記抽出手段により抽出されたファイルのファイル名と同一のファイル名を有し、かつ、前記所定値より大きいファイルサイズを有する置換対象ファイルが格納されているかを判断する格納判断手段と、
前記格納判断手段により前記置換対象ファイルが前記通信可能なサーバのうち何れかのサーバに格納されていると判断された場合、当該置換対象ファイルを格納するサーバから、当該置換対象ファイルを取得する第３ファイル取得手段と、
前記第３ファイル取得手段により取得した前記置換対象ファイルを、前記送信に失敗したサーバに送信し、当該サーバに格納されている前記送信に失敗したファイルと同一ファイル名のファイルであって、前記所定値以下のファイルサイズを有するファイルと置換させる第４ファイル送信手段と、を備えていることを特徴とする請求項１から７のいずれかに記載の情報処理装置。
【請求項９】
前記第１ファイル取得手段は、本情報処理装置に装着されている着脱可能な記憶媒体に記憶されているファイルを取得し、
前記記憶媒体が装着されている場合、前記第１ファイル送信手段によるファイルの送信が完了したことを条件として、本情報処理装置から前記記憶媒体の脱抜が可能である旨を示す報知を実行する報知手段を備えていることを特徴とする請求項１から８のいずれかに記載の情報処理装置。
【請求項１０】
ネットワークを介して、少なくとも画像ファイルまたは文書ファイルを格納可能な複数のサーバと通信可能な情報処理装置のコンピュータが実行可能な情報処理プログラムであって、
少なくとも１の画像ファイルまたは文書ファイルを取得する第１ファイル取得手段と、
前記第１ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、１のサーバに送信する第１ファイル送信手段と、
前記第１ファイル送信手段によりファイルを送信した前記１のサーバから、前記第１ファイル送信手段により送信したファイルを取得する第２ファイル取得手段と、
前記第２ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、前記１のサーバとは異なるサーバに送信する第２ファイル送信手段として、
前記コンピュータを機能させることを特徴とする情報処理プログラム。
【請求項１１】
ネットワークを介して、少なくとも画像ファイルまたは文書ファイルを格納可能な複数のサーバと通信可能な情報処理装置が行う情報処理方法であって、
少なくとも１の画像ファイルまたは文書ファイルを取得する第１ファイル取得ステップと、
前記第１ファイル取得ステップにより取得されたファイルを、前記複数のサーバのうち、１のサーバに送信する第１ファイル送信ステップと、
前記第１ファイル送信ステップによりファイルを送信した前記１のサーバから、前記第１ファイル送信ステップにより送信したファイルを取得する第２ファイル取得ステップと、
前記第２ファイル取得ステップにより取得されたファイルを、前記複数のサーバのうち、前記１のサーバとは異なるサーバに送信する第２ファイル送信ステップと、
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理プログラム、および情報処理方法に関する。
【背景技術】
【０００２】
近年、ＹｏｕＴｕｂｅ（登録商標）、Ｆｌｉｃｋｒ（登録商標）、およびＰｉｃａｓａ（登録商標）など、インターネット上の共有空間であるウェブサービスの多様化に伴い、複数のウェブサービスを利用するユーザが増えている。特許文献１には、複数のウェブサービスに対して、予め指定されたフォルダ内の更新されたファイルを随時アップロードする自動アップロード方法が記載されている。具体的に、特許文献１には、当該フォルダが複数のウェブサービスに対応する場合、更新されたファイルのタイプに応じて決定した１のウェブサービスに、当該更新されたファイルをアップロードする旨が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１７０５１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数のウェブサービスを利用する形態として、例えば、友人とファイルを共有するためのウェブサービスＡ、ユーザ自身が所有する画像データなどの各種ファイルを格納するデータベースとして使用するためのウェブサービスＢなど、使用目的に応じて複数のウェブサービスを利用する場合がある。係る場合、同一のファイルを複数のウェブサービスにアップロードすることが想定される。例えば、ユーザは、撮影した画像データを、友人と共有するためにウェブサービスＡにアップロードするとともに、自身のデータベースに格納するためにウェブサービスＢにアップロードすることが想定される。
【０００５】
しかしながら、特許文献１に記載される自動アップロード方法は、複数のウェブサービスにおける各サーバに対して、同一のファイルをアップロードする場合については考慮されておらず、同一のファイルを、複数のウェブサービス、すなわち、複数のサーバに容易にアップロードできない。
【０００６】
本発明は、上述した事情を鑑みてなされたものであり、複数のサーバに対し、同一のファイルに基づく画像ファイルや文書ファイルをアップロードする場合における利便性が向上された情報処理装置、情報処理プログラム、および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するために、本発明の情報処理装置は、ネットワークを介して、少なくとも画像ファイルまたは文書ファイルを格納可能な複数のサーバと通信可能な情報処理装置であって、少なくとも１の画像ファイルまたは文書ファイルを取得する第１ファイル取得手段と、前記第１ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、１のサーバに送信する第１ファイル送信手段と、前記第１ファイル送信手段によりファイルを送信した前記１のサーバから、前記第１ファイル送信手段により送信したファイルを取得する第２ファイル取得手段と、前記第２ファイル取得手段により取得されたファイルを、前記複数のサーバのうち、前記１のサーバとは異なるサーバに送信する第２ファイル送信手段と、を備えている。
【０００８】
なお、本発明は、情報処理システム、情報処理装置を制御する制御装置、情報処理方法、情報処理プログラム、情報処理プログラムを記録する記録媒体等の種々の態様で構成することができる。
【発明の効果】
【０００９】
請求項１記載の情報処理装置によれば、第１ファイル取得手段により取得された、少なくとも１の画像ファイルまたは文書ファイルが、第１ファイル送信手段によって、複数のサーバのうち、１のサーバに送信される。次に、第１ファイル送信手段によりファイルが送信されたサーバから、当該第１ファイル送信手段により送信したファイルが、第２ファイル取得手段により取得される。そして、第２ファイル取得手段により取得されたファイルが、第２ファイル送信手段によって、複数のサーバのうち、第１ファイル送信手段によるファイルが送信された１のサーバとは異なるサーバに送信される。よって、同一のファイルに基づく画像や文書を、複数のサーバに対し容易にアップロードできる。また、第１ファイル取得手段により取得されるファイルが本情報処理装置に着脱可能に装着可能な記憶媒体に記憶されている場合、第１ファイル送信手段によるファイルの送信が完了すれば、記憶媒体を脱抜しても、他のサーバにファイルをアップロードすることができるので、ユーザは、全てのサーバに対するファイルのアップロードが完了することを待たずに記憶媒体を、脱抜することができ、記憶媒体の管理を行い易い。
【００１０】
請求項２記載の情報処理装置によれば、請求項１が奏する効果に加え、次の効果を奏する。第１ファイル送信手段により１のサーバに送信されるファイルを識別可能な識別情報が記憶部に記憶されるので、第２ファイル取得手段によるファイルの取得を、ユーザ入力などを行うことなく自動的に行うことができる。
【００１１】
請求項３記載の情報処理装置によれば、請求項１または２が奏する効果に加え、次の効果を奏する。第２ファイル取得手段は、第１ファイル送信手段によりファイルを送信した１のサーバにおいて、第１ファイル送信手段により送信されたファイルに対して、当該ファイルと共に送信された縮小指示に基づく縮小処理が施されたファイルを取得する。ファイルのサイズが縮小されたことにより、通信速度を速めることができるので、同一のファイルに基づく画像や文書を複数のサーバにアップロードする場合に要する通信時間が長くなることを防止できる。
【００１２】
請求項４記載の情報処理装置によれば、請求項３が奏する効果に加え、次の効果を奏する。第１ファイル送信手段は、複数のサーバのうち、縮小処理を実行可能な１のサーバに、第１ファイル取得手段により取得されたファイルと、当該ファイルを、サイズ取得手段により取得したファイルサイズに縮小させる縮小指示とを送信する。よって、第１ファイル取得手段により取得されたファイルを、サイズ取得手段により取得したファイルサイズに縮小することができる。
【００１３】
請求項５記載の情報処理装置によれば、請求項３が奏する効果に加え、次の効果を奏する。複数のサーバ各々に対応付けて記憶部に記憶されている、各サーバにおける縮小処理により縮小可能なファイルサイズに基づいて、当該複数のサーバのうち、前記縮小処理を実行可能であり、前記縮小処理により最小のファイルサイズに縮小可能な１のサーバが選択される。そして、第１ファイル送信手段は、当該選択された１のサーバに、第１ファイル取得手段により取得されたファイルと、当該ファイルを当該最小のファイルサイズに縮小させる縮小指示とを送信する。よって、第２ファイル取得手段によるファイルの取得、および、第２ファイル送信手段によるファイルの送信は、当該最小のファイルサイズで行われることになるので、同一のファイルに基づく画像や文書を複数のサーバにアップロードする場合に要する通信時間を短縮できる。
【００１４】
請求項６記載の情報処理装置によれば、請求項１から５のいずれかが奏する効果に加え、次の効果を奏する。複数のサーバに対応付けて記憶部に記憶されている、各サーバに送信可能なファイルサイズに基づいて、当該複数のサーバのうち、送信可能なファイルサイズが最大である１のサーバが、第２サーバ選択手段によって選択される。そして、第１ファイル送信手段は、当該選択された１のサーバに、第１ファイル取得手段により取得されたファイルを送信する。よって、第１ファイル取得手段により取得したファイルのサイズにできるだけ近いファイルサイズで当該ファイルをサーバにアップロードすることができる。また、同一のファイルに基づく画像や文書の送信先とする複数のサーバのうち、第１ファイル送信手段による送信先のサーバ以外のサーバにも、できるだけ大きなファイルサイズでファイルをアップロードすることができる。これにより、例えば、ファイルが画像ファイルである場合には、ファイルサイズの縮小による画質の劣化をできるだけ防ぐことができる。
【００１５】
請求項７記載の情報処理装置によれば、請求項６が奏する効果に加え、次の効果を奏する。記憶部に記憶される各サーバに送信可能なファイルサイズに基づいて、第１または第２ファイル取得手段により取得されたファイルのファイルサイズが、第１または第２ファイル送信手段による送信先のサーバへ送信可能なファイルサイズより大きいか否かが、サイズ判断手段により判断される。このとき、取得されたファイルのファイルサイズが送信先のサーバへ送信可能なファイルサイズより大きいと判断された場合、当該ファイルが、縮小手段により、当該送信可能なファイルサイズ以下に縮小される。縮小手段による縮小が行われた場合、縮小されたファイルが、第１または第２ファイル送信手段による送信対象のファイルとされる。よって、ファイルのファイルサイズが大き過ぎることが原因で、ファイルがサーバにアップロードできなくなることを防止できる。
【００１６】
請求項８記載の情報処理装置によれば、請求項１から７のいずれかが奏する効果に加え、次の効果を奏する。第２ファイル送信手段によるファイルの送信に失敗した場合、当該送信に失敗したファイルと同一ファイル名のファイルであって、所定値以下のファイルサイズを有するファイルが、当該ファイルの送信に失敗したサーバに送信される。一方、通信可能なサーバから、ファイルサイズが所定値以下であるファイルが、抽出手段により抽出される。そして、通信可能なサーバのうち何れかのサーバに、抽出手段により抽出されたファイルのファイル名と同一のファイル名を有し、かつ、所定値より大きいファイルサイズを有する置換対象ファイルが格納されているかが判断される。このとき、当該置換対象ファイルが通信可能なサーバのうち何れかのサーバに格納されていると判断された場合、当該置換対象ファイルを格納するサーバから、当該置換対象ファイルが取得され、取得された置換対象ファイルが、前記送信に失敗したサーバに送信し、当該サーバに格納されている前記送信に失敗したファイルと同一ファイル名のファイルであって、所定値以下のファイルサイズを有するファイルと置換される。よって、ファイルのアップロードに失敗した場合に、他のサーバに該当するファイルがあれば、自動的に再アップロードすることができる。また、画像ファイルのアップロードに失敗した場合には、小さなファイルサイズのファイルがアップロードされるので、アップロードの失敗がサーバの容量が原因である場合であっても、ファイルサイズが小さいので、元の画像ファイルと同ファイル名の画像ファイルをアップロードできる。
【００１７】
請求項９記載の情報処理装置によれば、請求項１から８のいずれかが奏する効果に加え、次の効果を奏する。第１ファイル取得手段により取得されるファイルを記憶する記憶媒体が本情報処理装置に装着されている場合には、第１ファイル送信手段によるファイルの送信が完了したことを条件として、本情報処理装置から当該記憶媒体の脱抜が可能である旨を示す報知が実行される。よって、ユーザは、記憶媒体を脱抜できるタイミングを知ることができ、利便性が良い。
【００１８】
請求項１０記載の情報処理プログラムによれば、請求項１記載の情報処理装置と同様の効果を奏する。請求項１１記載の情報処理方法によれば、請求項１記載の情報処理装置と同様の効果を奏する。
【図面の簡単な説明】
【００１９】
【図１】ＭＦＰの構成を示すブロック図である。
【図２】サービス情報テーブルの内容を模式的に示す図である。
【図３】アップロード処理を示すフローチャートである。
【図４】アップロード処理を示すフローチャートである。
【図５】同期チェック処理を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、本発明の情報処理装置の一実施形態である多機能周辺装置（ＭＦＰ）１０の構成を示すブロック図である。詳細は後述するが、本実施形態のＭＦＰ１０は、同一のファイルに基づく画像や文書を、ネットワーク８００上に設けられた複数のウェブサービス（以下、単に「サービス」と称す）５００にアップロードする場合における利便性が向上されている。
【００２１】
ＭＦＰ１０には、ＣＰＵ１１、フラッシュメモリ１２、ＲＡＭ１３、ＬＣＤ１６、タッチパネル１７、スキャナ１８、プリンタ１９、ＮＣＵ２０、モデム２１、メモリカードインターフェイス（メモリカードＩ／Ｆ）２２と、ＵＳＢインターフェイス（ＵＳＢ＿Ｉ／Ｆ）２３、ネットワークインターフェイス（ネットワークＩ／Ｆ）２４と、リアルタイムクロック（ＲＴＣ）２５とが主に設けられている。ＣＰＵ１１、フラッシュメモリ１２、ＲＡＭ１３は、バスライン２６を介して互いに接続されている。また、ＣＰＵ１１、フラッシュメモリ１２、およびＲＡＭ１３が接続されたバスライン２６と、各部１６〜２５とは、入出力ポート２７を介して互いに接続されている。
【００２２】
ＣＰＵ１１は、フラッシュメモリ１２に記憶される固定値やプログラム、ＲＡＭ１３に記憶されているデータ、或いは、ＮＣＵ２０を介して送受信される各種信号に従って、ＭＦＰ１０が有している各機能の制御や、入出力ポート２７と接続された各部を制御する。
【００２３】
フラッシュメモリ１２は、不揮発性のメモリである。フラッシュメモリ１２ａには、ＭＦＰ１０の動作を制御する制御プログラム１２ａが格納される。後述する図３〜図５のフローチャートに示す各処理は、制御プログラム１２ａに従ってＣＰＵ１１により実行される。フラッシュメモリ１２には、ＭＦＰ１０が利用可能なサービス５００に関する情報が記憶されたサービス情報テーブル１２ｂが格納される。なお、サービス情報テーブル１２ｂの詳細については、図２を参照して後述する。
【００２４】
また、フラッシュメモリ１２には、サービス情報テーブル１２ｂに記憶されている各サービス５００について、各サービス５００のサービス事業者から提供されているＡＰＩを利用するサービス利用プログラム（図示せず）が格納されている。ＭＦＰ１０は、かかるサービス利用プログラムを利用することによって、各サービス５００に対し、画像ファイルのアップロードまたはダウンロードを実行できる。また、フラッシュメモリ１２には、各サービス５００について、そのサービス５００を利用するための利用ＩＤなどのアカウント情報が格納される。
【００２５】
ＲＡＭ１３は、ＣＰＵ１１が制御プログラム１２ａを実行するにあたり、各種のデータを一時的に記憶するためのテンポラリエリアを有する書換可能な揮発性のメモリである。ＲＡＭ１３のテンポラリエリアには、アップロードリスト１３ａが記憶される。アップロードリスト１３ａは、ＣＰＵ１１が後述するアップロード処理を実行する場合に、ユーザがアップロード対象として選択した画像ファイルのリストである。また、ＲＡＭ１３には、サービス５００へ画像ファイルをアップロードする場合のモードが格納される。ＭＦＰ１０には、当該モードとして、画質を優先する画質優先モードと、アップロード速度を優先する速度優先モードとが設けられており、ユーザは、画質優先モードまたは速度優先モードのいずれかのモードを、タッチパネル１７などを操作することによって設定できる。
【００２６】
ＬＣＤ１６は液晶表示装置である。ＬＣＤ１６の画面には、タッチパネル１７がＬＣＤ１６に重ねて設けられる。タッチパネル１７は、例えば、指や棒などの指示物がＬＣＤ１６の画面に対してタッチ又は近づいた場合に、タッチ又は近づいた位置を検知し、検知した位置をＭＦＰ１０に入力する。スキャナ１８は、原稿を読み取ってスキャンデータに変換する。プリンタ１９は、画像データに基づく画像を記録用紙に印刷する。モデム２１は、ＦＡＸ送信時には送信すべき画像データを、電話回線網（図示せず）に伝送可能な信号に変調してＮＣＵ２０を介して送信し、または、電話回線網からＮＣＵ２０を介して入力された信号を画像データに復調する。ＮＣＵ２０は、図示されない電話回線網とＭＦＰ１０との間を接続するものであり、モデム２１からの指示に従って、回線を閉結または切断することにより、電話回線網との間の接続状態を制御する。ＲＴＣ２５は、日付および時刻を計時するための回路である。
【００２７】
メモリカードＩ／Ｆ２２は、不揮発性のメモリカードＭＣが装着されるインターフェイスであり、メモリカードＭＣに対するデータの書き込み又は読み出しを制御する。ＵＳＢ＿Ｉ／Ｆ２３は、ＵＳＢケーブルを介して、例えば、パーソナルコンピュータやハードディスクなどの他の装置や、ＵＳＢメモリなどの記憶媒体を通信可能に接続するための装置であり、周知の装置で構成される。ネットワークＩ／Ｆ２２は、ＭＦＰ１０をインターネット８００やＬＡＮ回線（図示せず）に接続するためのインターフェイスである。ネットワークＩ／Ｆ２２を介してインターネットに接続されたＭＦＰ１０は、各種のサービス５００に通信可能に接続することができる。
【００２８】
サービス５００は、サービス事業者が提供するウェブサービスであり、例えば、Ｐｉｃａｓａ（登録商標）、Ｆａｃｅｂｏｏｋ（登録商標）、Ｆｌｉｃｋｒ（登録商標）、Ｅｖｅｒｎｏｔｅ（登録商標）などである。具体的に、サービス５００は、周知のウェブサーバから構成される。サービス５００は、インターネット８００に接続されたＭＦＰ１０などの端末とＨＴＴＰまたはＨＴＴＰＳによる通信を行い、当該端末に対し、ファイル格納サービスなどの所定のサービスを提供する。図１に示す例では、サービス５００として、６つのウェブサービス、すなわち、サービスＡ５００ａと、サービスＢ５００ｂと、サービスＣ５００ｃと、サービスＤ５００ｄと、サービスＥ５００ｅと、サービスＦ５００ｆとを例示したが、サービス５００の数としては、適宜の数を採用できる。
【００２９】
図２は、上述したサービス情報テーブル１２ｂの内容を模式的に示す図である。図２に示すように、サービス情報テーブル１２ｂには、記憶領域１２ｂ１〜１２ｂ５が設けられ、１のサービス５００毎に、各記憶領域１２ｂ１〜１２ｂ５に設定値が格納される。記憶領域１２ｂ１には、１のサービス５００を特定するサービス番号が格納される。図２に示す例では、６つのサービス５００のそれぞれに対し、１〜６のサービス番号が割り当てられている。記憶領域１２ｂ２には、各サービス番号に対応するサービス５００のサービス名が格納される。図２に示す例では、サービス番号１〜６に対し、それぞれ、サービスＡ〜Ｆがサービス名として格納されている。なお、サービスＡ〜Ｆというサービス名のサービス５００は、それぞれ、サービスＡ５００ａ、サービスＢ５００ｂ、サービスＣ５００ｃ、サービスＤ５００ｄ、サービスＥ５００ｅ、およびサービスＦ５００ｆに対応する。
【００３０】
記憶領域１２ｂ３には、各サービス番号に対応するサービス５００に対し、ファイルサイズを指定してファイルの記憶ができるか否かを示す情報、例えば、フラグの値が格納される。図２に示す例では、ファイルサイズを指定してファイルの記憶ができることを示す情報が記憶領域１２ｂ３に記憶されている場合には「可」を表記し、そうでない場合には「不可」と表記している。よって、図２に示す例によれば、サービス番号１，３，４により特定されるサービス５００、すなわち、サービスＡ５００ａ、サービスＣ５００ｃ、およびサービスＤ５００ｄに対しては、ファイルサイズを指定してファイルを記憶できる。ファイルサイズを指定してファイルを記憶できるサービス５００（５００ａ，５００ｃ，５００ｄ）は、アップロードした画像ファイルを指定されたファイルサイズに縮小できるサービスである。一方、それ以外のサービス番号により特定されるサービス５００、すなわち、サービスＢ５００ｂ、サービスＥ５００ｅ、およびサービスＦ５００ｆに対しては、ファイルサイズを指定してファイルを記憶することができない。
【００３１】
記憶領域１２ｂ４には、各サービス番号に対応するサービス５００に格納可能なファイルサイズのうち、最小のファイルサイズが格納される。記憶領域１２ｂ４には、ファイルサイズを指定してファイルの記憶ができることを示す情報が記憶領域１２ｂ３に記憶されている場合に、設定値が格納される。よって、図２に示す例では、サービス番号１，３，４により特定されるサービス５００に対しては、記憶領域１２ｂ４に設定値が格納されているが、サービス番号２，５，６により特定されるサービス５００に対しては、記憶領域１２ｂ４に設定値が格納されていない。記憶領域１２ｂ５には、各サービス番号に対応するサービス５００について、アップロード（送信）可能な最大のファイルサイズが格納される。
【００３２】
上述したサービス情報テーブル１２ｂは、ＭＦＰ１の製造メーカにより作成されたものがデフォルトとしてフラッシュメモリ１２に格納される。格納されるサービス５００の増減や、各サービス５００に対応する記憶領域１２ｂ１〜１２ｂ５の設定値は、メーカが必要に応じて提供する更新情報に基づいて随時更新される。
【００３３】
図３及び図４は、制御プログラム１２ａに従い、ＣＰＵ１１が実行するアップロード処理を示すフローチャートである。本処理は、メモリカードＭＣがメモリカードＩ／Ｆ２２に装着された状態で、ユーザがタッチパネル１７などから入力した画像アップロードの実行指示を、ＣＰＵ１１が受け付けた場合に開始される。まず、ＣＰＵ１１は、ステップＳ３０１（以下、ステップを省略）において、ＣＰＵ１１は、メモリカードＩ／Ｆ２２に装着されているメモリカードＭＣから画像データ（画像ファイル）を取得する。
【００３４】
次に、ＣＰＵ１１は、取得した画像データに基づく画像をＬＣＤ１６に表示させる（Ｓ３０２）。ユーザは、ＬＣＤ１６に表示された画像の中から、アップロードを所望する１または複数の画像を選択する。ユーザが１または複数の画像を選択した状態で当該選択を確定させる確定指示を入力したことを、ＣＰＵ１１が受け付けた場合（Ｓ３０３：Ｙｅｓ）、処理をＳ３０４に移行する。一方、当該確定指示の入力を、ＣＰＵ１１が受け付けていない場合（Ｓ３０３：Ｎｏ）、ＣＰＵ１１は、処理をＳ３０３に戻し、ユーザが確定指示を入力することを待機する。
【００３５】
Ｓ３０４において、ＣＰＵ１１は、選択された１または複数の画像について、選択された各画像のファイル名をユニークなファイル名に変換し、ファイル名が変換された画像ファイルをアップロードリスト１３ａに設定する。ユニークなファイル名としては、例えば、画像ファイルの当初のファイル名の後ろに、ＲＴＣ２５から取得した日付を、アンダーバーを介して付加したファイル名や、画像ファイルの当初のファイル名の後ろに、通算の数値を付加したファイル名などが例示される。次に、ＣＰＵ１１は、サービス情報テーブル１２ｂに記憶されている全てのサービス５００のサービス名をＬＣＤ１６に一覧表示させる（Ｓ３０５）。ユーザは、ＬＣＤ１６に表示されたサービス名を参照し、アップロード先として使用する１又は複数のサービス５００を選択する。ユーザが１または複数のサービス５００を選択した状態で当該選択を確定させる確定指示を入力したことを、ＣＰＵ１１が受け付けた場合（Ｓ３０６：Ｙｅｓ）、選択されたサービス５００を示す情報をＲＡＭ１３に記憶し、処理をＳ３０７に移行する。なお、選択されたサービス５００のうち、アカウント情報がフラッシュメモリ１２に格納されていないサービスが存在する場合、ＣＰＵ１１は、ユーザにアカウント情報を入力させた後、処理をＳ３０７に移行する。ユーザが入力したアカウント情報は、該当するサービス５００に対応づけてフラッシュメモリ１２に記憶される。一方、Ｓ３０６において、当該確定指示の入力を、ＣＰＵ１１が受け付けていない場合（Ｓ３０６：Ｎｏ）、ＣＰＵ１１は、処理をＳ３０７に戻し、ユーザが確定指示を入力することを待機する。
【００３６】
Ｓ３０７において、ＣＰＵ１１は、ＲＡＭ１３を参照し、設定されているモードが、画質優先モードであるか、速度優先モードであるかを判断する。設定されているモードが画質優先モードであるとＣＰＵ１１が判断した場合（Ｓ３０７：画質優先モード）、ＣＰＵ１１は、サービス情報テーブル１２ｂを参照し、ユーザが選択したサービス５００のうち、アップロード可能なファイルサイズが最も大きいサービス５００を、第１使用サービスに設定する（Ｓ３０８）。つまり、ＣＰＵ１１は、記憶領域１２ｂ５に格納されている設定値が最大であるサービス５００を、第１使用サービスに設定する。なお、Ｓ３０８において、ユーザが選択したサービス５００の中に、アップロード可能なファイルサイズが最も大きいサービス５００が複数存在する場合、ＣＰＵ１１は、所定のルールに従い決定される１のサービス５００、例えば、記憶領域１２ｂ１に格納されるサービス番号が最も小さいサービス５００を、第１使用サービスに設定する。一例として、図２に示すサービス情報テーブル１２ｂに記憶されている全てのサービス５００（５００ａ〜５００ｆ）が選択された場合、Ｓ３０８では、サービス５００ａ〜５００ｆのうち、記憶領域１２ｂ５に格納されている設定値が最大であるサービスＣ５００ｃが第１サービスに設定される。
【００３７】
次に、ＣＰＵ１１は、アップロードリスト１３ａに設定されている全ての画像ファイルを、第１使用サービスにアップロードする（Ｓ３０９）。具体的に、Ｓ３０９において、ＣＰＵ１１は、第１使用サービスに対応するサービス利用プログラムに従い、フラッシュメモリ１２に記憶されているアカウント情報を含むアップロード先ＵＲＬ要求を、第１使用サービスに送信し、当該要求に基づいて第１使用サービスから返信されたアップロード先ＵＲＬと、アップロードリスト１３ａに設定されている全ての画像ファイルのバイナリデータとを含むアップロードメッセージを第１使用サービスに送信する。
【００３８】
なお、第１使用サービスが、ファイルサイズを指定してファイルの記憶ができるサービス５００である場合、Ｓ３０９において、ＣＰＵ１１は、第１使用サービスにアップロード可能な最大のファイルサイズを指定する情報をアップロードメッセージに組み込む。これにより、アップロードリスト１３ａに設定されている全ての画像ファイルは、第１使用サービスにアップロード可能な最大のサイズで当該サービスに記憶される。なお、アップロードリスト１３ａに設定されている全ての画像ファイルのうち、第１使用サービスにアップロード可能な最大サイズより大きな画像ファイルがあれば、ＣＰＵ１１は、当該画像ファイルを第１使用サービスにアップロード可能な最大サイズまたはそれ以下のサイズに縮小してから、アップロードメッセージに組み込む。よって、画像ファイルのファイルサイズが大き過ぎることが原因で、画像ファイルが所望のサービス５００にアップロードできなくなることを防止できる。
【００３９】
一方、Ｓ３０７において、設定されているモードが速度優先モードであるとＣＰＵ１１が判断した場合（Ｓ３０７：速度優先モード）、ＣＰＵ１１は、サービス情報テーブル１２ｂを参照し、ユーザが選択したサービス５００のうち、格納可能なファイルサイズが最も小さいサービス５００を、第１使用サービスに設定する（Ｓ３１１）。なお、格納可能なファイルサイズが最も小さいサービス５００は、ファイルサイズを指定してファイルの記憶ができるサービス５００のうち、記憶領域１２ｂ４に格納されている設定値、すなわち、格納可能な最小のファイルサイズが最も小さいファイルサイズのサービス５００を、格納可能なファイルサイズが最も小さいサービス５００とする。また、Ｓ３１１において、ユーザが選択したサービス５００の中に、格納可能なファイルサイズが最も小さいサービス５００が複数存在する場合、または、ユーザが選択したサービスに、ファイルサイズを指定してファイルを記憶できるサービスが含まれていない場合、ＣＰＵ１１は、Ｓ３０８の場合と同様に、所定のルールに従い決定される１のサービス５００を第１使用サービスに設定する。一例として、図２に示すサービス情報テーブル１２ｂに記憶されている全てのサービス５００（５００ａ〜５００ｆ）が選択された場合、Ｓ３１１では、サービス５００ａ〜５００ｆのうち、格納可能なファイルサイズが最も小さいサービスＡ５００ａが第１サービスに設定される。
【００４０】
次に、ＣＰＵ１１は、アップロードリスト１３ａに設定されている全ての画像ファイルを、第１使用サービスにアップロードする（Ｓ３１２）。Ｓ３１２において、ＣＰＵ１１は、Ｓ３０９の場合と同様に、画像ファイルのアップロードを行う。なお、第１使用サービスが、ファイルサイズを指定してファイルの記憶ができるサービス５００である場合、Ｓ３１２において、ＣＰＵ１１は、最小のファイルサイズを指定する情報をアップロードメッセージに組み込む。これにより、アップロードリスト１３ａに設定されている全ての画像ファイルは、指定されたファイルサイズに縮小されて第１使用サービスに記憶される。よって、アップロード対象の画像ファイルのファイルサイズが、指定されたファイルサイズより大きい場合、当該画像ファイルは、第１使用サービスにおいて、指定されたファイルサイズに縮小される。なお、アップロードリスト１３ａに設定されている全ての画像ファイルのうち、第１使用サービスにアップロード可能な最大サイズより大きな画像ファイルがあれば、ＣＰＵ１１は、Ｓ３０９の場合と同様に、当該画像ファイルを第１使用サービスにアップロード可能な最大サイズまたはそれ以下のサイズに縮小する。
【００４１】
Ｓ３０９またはＳ３１２の処理によるアップロードが完了すると、ＣＰＵ１１は、メモリカードＩ／Ｆ２２に装着されているメモリカードＭＣを脱抜可能（取り外し可能）である旨を報知させ（Ｓ３１０）、処理を図４のＳ４０１に移行する。Ｓ３１０における報知の態様としては、例えば、メモリカードＩ／Ｆ２２におけるメモリカードＭＣの挿入口であるスロット（図示せず）の近傍に設けたＬＥＤなどの発光部（図示せず）の点灯や、メモリカードＭＣを脱抜可能である旨のメッセージをＬＣＤ１６に表示させることなどが例示される。
【００４２】
Ｓ４０１において、ＣＰＵ１１は、変数ｍを１に設定する。なお、変数ｍは、アップロードリスト１３ａに設定されている全ての画像ファイルのうち、ｍ番目の画像ファイルを指定する変数である。次に、アップロードリスト１３ａに設定されている画像ファイルのうち、未処理の画像ファイルがある場合（Ｓ４０２：Ｎｏ）、ＣＰＵ１１は、第１使用サービスから、アップロードリスト１３ａにおけるｍ番目の画像ファイルをダウンロードする（Ｓ４０３）。具体的に、Ｓ４０３において、ＣＰＵ１１は、第１使用サービスに対応するサービス利用プログラムに従い、アップロードリスト１３ａにおけるｍ番目の画像ファイルのファイル名を指定する情報を含むダウンロード要求を、第１使用サービスに送信し、ｍ番目の画像ファイルを受信する。なお、Ｓ４０２における未処理の画像ファイルとは、Ｓ４０３〜Ｓ４１２の処理が実行されていない画像ファイルである。
【００４３】
次に、ＣＰＵ１１は、変数ｘを１に設定する（Ｓ４０４）。なお、変数ｘは、選択された全てのサービスのうち、ｘ番目のサービスを指定する変数である。次に、選択された全てのサービスへの、第１使用サービスからダウンロードしたｍ番目の画像ファイルのアップロードが未だ完了していないが、ｘ番目のサービスが、第１使用サービスである場合（Ｓ４０５：Ｎｏ，Ｓ４０６：Ｙｅｓ）、第１使用サービスには、画像ファイルが既にアップロードされているので、ＣＰＵ１１は、変数ｘの値に１を加算し（Ｓ４１３）、処理をＳ４０５に戻し、次のアップロード先のサービス５００に対する画像ファイルのアップロード処理を実行する。
【００４４】
一方、第１使用サービスからダウンロードしたｍ番目の画像ファイルのアップロードが未だ完了しておらず、かつ、ｘ番目のサービスが、第１使用サービスでなければ（Ｓ４０５：Ｎｏ，Ｓ４０６：Ｎｏ）、ＣＰＵ１１は、ｍ番目の画像ファイルのファイルサイズが、ｘ番目のサービスにアップロード可能な最大のファイルサイズより大きいかを判断する（Ｓ４０７）。
【００４５】
Ｓ４０７において、ｍ番目の画像ファイルのファイルサイズが、ｘ番目のサービスにアップロード可能な最大のファイルサイズ以下であると、ＣＰＵ１１が判断した場合（Ｓ４０７）、ＣＰＵ１１は、ｍ番目の画像ファイルを、ｘ番目のサービスにアップロードする（Ｓ４１０）。具体的に、Ｓ４１０において、ＣＰＵ１１は、ｘ番目サービスに対応するサービス利用プログラムに従い、Ｓ３０９の場合と同様に、画像ファイルのアップロードを行う。
【００４６】
一方、ｍ番目の画像ファイルのファイルサイズが、ｘ番目のサービスにアップロード可能な最大のファイルサイズより大きいと、ＣＰＵ１１が判断した場合（Ｓ４０７：Ｙｅｓ）、ＣＰＵ１１は、画像ファイルを、ｘ番目のサービスにアップロード可能な最大サイズに縮小し（Ｓ４０９）、処理をＳ４１０に移行し、縮小した画像ファイルをｘ番目のサービスにアップロードする。これにより、画像ファイルのファイルサイズが大き過ぎることが原因で、画像ファイルが所望のサービス５００にアップロードできなくなることを防止できる。
【００４７】
ＣＰＵ１１は、Ｓ４１０の処理後、画像ファイルのアップロードが成功したかを判断する（Ｓ４１１）。各サービス５００は、ＭＦＰ１０からアップロードメッセージを受信した場合、アップロード結果を含むレスポンスメッセージをＭＦＰ１０に返信する。よって、Ｓ４１１において、ＣＰＵ１１は、ｘ番目サービスに対応するサービス利用プログラムに従い、受信したレスポンスメッセージを解析し、アップロード結果から、アップロードが成功したか否かを判断する。Ｓ４１１において、ＣＰＵ１１が、画像ファイルのアップロードが成功したと判断した場合（Ｓ４１１：Ｙｅｓ）、処理をＳ４１３に移行する。
【００４８】
一方、４１１において、ＣＰＵ１１が、画像ファイルのアップロードが失敗したと判断した場合（Ｓ４１１：Ｎｏ）、ＣＰＵ１１は、１０バイト以下の画像ファイルを、処理中の画像ファイル、すなわち、ｍ番目の画像ファイルと同ファイル名でアップロードし（Ｓ４１２）、処理をＳ４１３に移行する。
【００４９】
Ｓ４０５において、選択された全てのサービスへの、ｍ番目の画像ファイルのアップロードが完了した場合（Ｓ４０５：Ｙｅｓ）、ＣＰＵ１１は、変数ｍに１を加算し（Ｓ４１４）、処理をＳ４０２に戻す。Ｓ４０２において、アップロードリスト１３ａに設定されている画像ファイルが全て処理された場合（Ｓ４０２：Ｙｅｓ）、ＣＰＵ１１は、本処理を終了する。
【００５０】
図５は、制御プログラム１２ａに従い、ＣＰＵ１１が実行する同期チェック処理を示すフローチャートである。本処理は、例えば３０分毎などの定期的に開始される処理である。まず、ＣＰＵ１１は、サービス情報テーブル１２ｂに記憶されている全てのサービス５００に対し、ファイルサイズが１０バイト以下の画像ファイルの検索を実行する（Ｓ５０１）。Ｓ５０１において、ＣＰＵ１１1は、フラッシュメモリ１２に記憶されているアカウント情報を用いて、各サービス５００にログインした後、検索を実行する。
【００５１】
Ｓ５０１で行った検索の結果、該当する画像ファイル、すなわち、ファイルサイズが１０バイト以下の画像ファイルがある場合（Ｓ５０２：Ｙｅｓ）、ＣＰＵ１１は、サービス情報テーブル１２ｂに記憶されている全てのサービス５００に対し、検索された画像ファイルと同ファイル名であり、かつ、ファイルサイズが１０バイトより大きい画像ファイルの検索を実行し（Ｓ５０３）、処理をＳ５０４に移行する。一方、Ｓ５０２において、該当する画像ファイルがない場合（Ｓ５０２：Ｎｏ）、ＣＰＵ１１は、Ｓ５０３の処理をスキップして、処理をＳ５０４に移行する。
【００５２】
Ｓ５０３で行った検索の結果、該当するファイル、すなわち、Ｓ５０１において検索された画像ファイルと同ファイル名であり、かつ、ファイルサイズが１０バイトより大きい画像ファイルがある場合（Ｓ５０４：Ｙｅｓ）、ＣＰＵ１１は、該当する画像ファイルを、当該画像ファイルが格納されているサービス５００からダウンロードし（Ｓ５０５）、処理をＳ５０６に移行する。Ｓ５０５において、ＣＰＵ１１は、該当する画像ファイルが格納されているサービスに対応するサービス利用プログラムに従い、Ｓ４０３と同様に、画像ファイルのダウンロードを行う。一方、Ｓ５０４において、該当する画像ファイルがない場合（Ｓ５０４：Ｎｏ）、ＣＰＵ１１は、本処理を終了する。
【００５３】
次に、ＣＰＵ１１は、Ｓ５０５においてダウンロードした画像ファイルを、Ｓ５０１において検索された画像ファイルが格納されたサービス５００にアップロードする（Ｓ５０６）。Ｓ５０６において、ＣＰＵ１１は、Ｓ５０１において検索された画像ファイルが格納されているサービスに対応するサービス利用プログラムに従い、Ｓ３０９の場合と同様に、画像ファイルのアップロードを行う。このとき、Ｓ５０１において検索された画像ファイル、すなわち、ファイルサイズが１０バイト以下の画像ファイルは、Ｓ５０５においてダウンロードした画像ファイルにより上書きされる。ＣＰＵ１１は、Ｓ５０７の処理後、本処理を終了する。
【００５４】
以上説明した通り、本実施形態のＭＦＰ１０によれば、ユーザが選択した画像ファイルを、ユーザが選択した複数のサービス５００にアップロードする場合に、モードに応じて決定された１のサービス５００を第１使用サービスとして決定し、まず、全画像ファイルが当該第１使用サービスにアップロードされる。その後、第１使用サービスから、先にアップロードした画像ファイルがダウンロードされて、ダウンロードされた画像ファイルが、ユーザが選択した複数のサービスのうち、第１使用サービス以外のサービスにアップロードされる。よって、同一のファイルに基づく画像を、複数のサービスに対してアップロードする場合であっても、容易にアップロードを行うことができる。
【００５５】
また、第１使用サービスに画像ファイルがアップロードされた後は、アップロードされた画像ファイルを用いて、他のサービス５００へのアップロードを行うことができるので、アップロード元の画像ファイルを記憶するメモリカードＭＣは、画像ファイルが第１使用サービスにアップロードされた後は、メモリカードＩ／Ｆ２２から脱抜しても他のサービス５００への画像ファイルのアップロードに影響しない。よって、ユーザは、自身が選択した全てのサービス５００に対する画像ファイルのアップロードが完了することを待たずに、メモリカードＭＣをメモリカードＩ／Ｆ２２から脱抜することができる。よって、メモリカードＭＣの管理を行い易く、例えば、メモリカードＩ／Ｆ２２から取り出し忘れたことによるメモリカードＭＣの盗難や紛失を抑制できる。ここで、ＭＦＰ１０によれば、第１使用サービスへの画像ファイルのアップロードが完了した場合に、その旨が報知されるので、ユーザは、メモリカードＭＣを脱抜できるタイミングを最も早いタイミングで知ることができ、利便性が良い。
【００５６】
また、本実施形態のＭＦＰ１０によれば、速度優先モードが選択された場合には、選択されたサービス５００のうち、格納可能なファイルサイズが最小である１のサービス５００が、第１使用サービスとして選択される。よって、第１使用サービスには画像ファイルを最も小さいサイズで記憶させることができる。よって、第１使用サービスからの画像ファイルのダウンロードや、選択された他のサービス５００への画像ファイルのアップロードは、当該最小のファイルサイズで行うことができる。通信速度は、ファイルサイズが小さいほど速くなる傾向があるので、複数のサービス５００への、同一のファイルに基づく画像のアップロードに要する通信時間を短縮できる。一方、本実施形態のＭＦＰ１０によれば、画質優先モードが選択された場合には、選択されたサービス５００のうち、アップロード可能なファイルサイズが最大である１のサービス５００が、第１使用サービスとして選択される。よって、元の画像ファイルのサイズにできるだけ近いファイルサイズで当該画像ファイルを第１使用サービスにアップロードすることができ、ファイルサイズの縮小に伴う画質の劣化を抑制できる。
【００５７】
また、本実施形態のＭＦＰ１０によれば、画像ファイルのアップロードに失敗した場合には、１０バイト以下の小さなファイルサイズの画像ファイルが代わりにアップロードされる構成であるので、ＭＦＰ１０は、利用可能なサービス５００を対象として、１０バイト以下の画像ファイルの有無を検索することによって、アップロードに失敗した画像ファイルの存在を確認できる。また、ＭＦＰ１０は、１０バイト以下の画像ファイルが検索された場合には、利用可能なサービス５００から、当該ファイル名と同名であり、かつ、画像ファイルとして適切な大きさのファイルサイズを有する画像ファイルを検索し、該当ファイルを、１０バイト以下の画像ファイルと置換させるように構成されているので、アップロードに失敗した当初の画像ファイルを自動的に再アップロードすることができる。ここで、画像ファイルのアップロードに失敗した場合には、小さなファイルサイズのファイルをアップロードさせるので、アップロードの失敗がサービス５００の容量が原因である場合であっても、当初のアップロード対象の画像ファイルと同ファイル名の画像ファイルのアップロードが可能となる。
【００５８】
上記実施形態において、ＭＦＰ１０が、情報処理装置の一例である。制御プログラム１２ａが、情報処理プログラムの一例である。サービス５００が、サーバの一例である。インターネット８００がネットワークの一例である。Ｓ３０１の処理が、第１ファイル取得手段、第１ファイル取得ステップの一例である。Ｓ３０９，Ｓ３１２の処理が、第１ファイル送信手段、第１ファイル送信ステップの一例である。Ｓ４０３の処理が、第２ファイル取得手段、第２ファイル取得ステップの一例である。Ｓ４１０の処理が、第２ファイル送信手段、第２ファイル送信ステップの一例である。Ｓ３０４の処理が、記憶制御手段の一例である。Ｓ３１１の処理が、サイズ取得手段及び第１サーバ選択手段の一例である。Ｓ３０８の処理が、第２サーバ選択手段の一例である。Ｓ３０９，Ｓ４０７の処理が、サイズ判断手段の一例である。Ｓ３０９，Ｓ３１２，Ｓ４０９の処理が、縮小手段の一例である。Ｓ４１２の処理が、第３ファイル送信手段の一例である。Ｓ５０１の処理が、抽出手段の一例である。Ｓ５０３の処理が、格納判断手段の一例である。Ｓ５０５の処理が、第３ファイル取得手段の一例である。Ｓ５０６の処理が、第４ファイル送信手段の一例である。Ｓ３１０の処理が、報知手段の一例である。
【００５９】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【００６０】
例えば、上記実施形態では、本発明の情報処理装置として、ＭＦＰ１０を例示したが、インターネット８００上のサービス５００と通信可能に接続できる装置であれば、例えば、スマートフォンやタブレット等の携帯端末や、パーソナルコンピュータや、デジタルカメラなどであっても、図４〜図６のフローチャートに示す各処理をＣＰＵなどの制御装置に実行させるアプリケーションプログラムを搭載することによって、本発明の情報処理装置となり得る。
【００６１】
上記実施形態では、サービス５００にアップロードするファイルとして、画像ファイルを例示して説明したが、これに限らず、各種の文書データ作成ソフトなどにより作成された文書ファイルなど、サービス５００にアップロード可能な種類のファイルであれば、画像ファイル以外の種々のファイルをサービス５００にアップロードする場合においても、本発明を適用できる。また、アップロード対象として選択されるファイルは、上記実施形態のように全て画像ファイルであることに限らず、画像ファイルと画像ファイル以外のファイルとが混在する形態であってもよい。
【００６２】
上記実施形態では、アップロード対象とする画像ファイルとして、メモリカードＭＣに記憶されている画像データ（画像ファイル）を例示したが、これに限らず、スキャナ１８が読み取った原稿のスキャンデータなどであってもよい。アップロード対象をスキャンデータとする場合、アップロード処理（図３，図４）のＳ３０１において、ＣＰＵ１１は、スキャナ１８に原稿を読み取らせることによって、画像データを取得する構成とすればよい。かかる場合、Ｓ３１０において報知する内容を「原稿を取り出して下さい」等にすればよい。あるいは、スキャンデータをアップロードする場合には、Ｓ３１０の処理を省略してもよい。なお、ＭＦＰ１０のような比較的ＲＡＭの容量が小さい装置の場合、スキャンデータをアップロード対象としたときにはＲＡＭが容量不足になる可能性があるので、Ｓ３０１において取得する画像データの数は１であることが好ましく、かかる場合には、アップロードを所望する画像データの数だけ、Ｓ３０１〜Ｓ３０９，Ｓ３１１，Ｓ３１２の処理を繰り返した後、Ｓ３１０以降を実行する構成とすればよい。
【００６３】
また、アップロード対象とする画像ファイルが記憶される記憶媒体は、メモリカードＭＣに限らず、ＵＳＢ＿Ｉ／Ｆ２２に接続されるＵＳＢメモリや、ハードディスクなどに記憶されている画像データであってもよい。
【００６４】
上記実施形態では、ＭＦＰ１０は、画像ファイルのアップロードが失敗した場合、１０バイト以下の画像ファイルをアップロードし、同期チェック処理（図５）を実行する構成とした。これに換えて、ＭＦＰ１０は、画像ファイルのアップロードが失敗した場合、アップロードに失敗した画像ファイルのファイル名と、失敗したアップロード先のサービス５００のサービス名を失敗情報としてＲＡＭ１３に記憶しておき、所定のタイミングで、サービス情報テーブル１２ｂに記憶されている全てのサービス５００に対し、記憶されている失敗情報に基づき、アップロードに失敗した画像ファイルと同ファイル名の画像ファイルを検索する構成としてもよい。そして、該当する画像ファイルがあった場合、ＭＦＰ１０は、当該画像ファイルをダウンロードし、ダウンロードした画像ファイルを、アップロードに失敗したサービス５００にアップロードすればよい。このとき、ＭＦＰ１０は、画像ファイルのアップロードが失敗した場合、アップロードに失敗したサービス５００以外に選択されているサービス５００を示す情報を取得し、失敗情報に含める構成としてもよい。かかる場合、アップロードに失敗した画像ファイルと同ファイル名の画像ファイルを検索する対象とするサービス５００の数を限定することができる。しかし、記憶させた失敗情報は、ＭＦＰ１０の電源が落とされた場合に消失する虞があるので、上記実施形態のように、１０バイト以下の画像ファイルをアップロードすることが好ましい。
【００６５】
上記実施形態では、各サービス５００について、アップロード可能なファイルサイズが記憶されたサービス情報テーブル１２ｂが、ＭＦＰ１０に予め設けられており、ＭＦＰ１０は、当該サービス情報テーブル１２ｂを参照して、選択された各サービス５００にアップロード可能なファイルサイズを取得する構成としたが、各サービス５００にアップロード可能なファイルサイズをユーザに指定させて入力させる構成としてもよい。かかる場合も、サイズ取得手段の一例となり得る。
【００６６】
上記実施形態では、サービス５００として、格納可能な最大のファイルサイズが設けられているサービスを考慮していないが、格納可能な最大のファイルサイズが設けられているサービスがある場合には、当該サービスに対し、アップロード可能な最大のファイルサイズに加え、格納可能な最大のファイルサイズを対応付けてサービス情報テーブル１２ｂに記憶する構成としてもよい。格納可能な最大のファイルサイズが設けられているサービスに対し、アップロード可能な最大のファイルサイズより小さく、かつ、格納可能な最大のファイルサイズより大きいファイルサイズのファイルをアップロードする場合には、格納可能な最大のファイルサイズを指定してアップロードさせればよい。係る場合、当該サービスにおいて、アップロードされたファイルは、指定された最大のファイルサイズに縮小されて記憶される。
【００６７】
上記実施形態では、速度優先モードにおいて、画像ファイルが第１使用サービスに格納可能な最小サイズで記憶されるよう、アップロードメッセージに最小のファイルサイズを指定する情報を組み込んだり、ＭＦＰ１０において縮小した画像ファイルをアップロードしたりする構成としたが、最小のファイルサイズでは画質が劣化し過ぎる虞があるので、速度優先モードの場合には、各サービス５００に格納可能な最小サイズとは無関係に、予め決定されたサイズで、画像ファイルを第１使用サービスに記憶させる構成としてもよい。第１使用サービスに縮小された画像ファイルを記憶させるので、画像ファイルを複数のサービス５００にアップロードする場合に要する通信時間の抑制に有効である。
【００６８】
上記実施形態では、第１使用サービスへの画像ファイルのアップロード後、当該第１使用サービスから画像ファイルをダウンロードする構成としたが、アップロード対象とする画像ファイルの合計サイズがＲＡＭ１３に記憶可能なサイズであるかを判断し、ＲＡＭ１３に記憶可能なサイズである場合には、アップロード対象とする画像ファイルをＲＡＭ１３に記憶させておき、第１使用サービスから画像ファイルをダウンロードすることなく、他のサービス５００にアップロードする構成としてもよい。かかる場合も、第１使用サービスへのアップロードが完了すると、メモリカードＭＣの脱抜が可能となる。
【００６９】
上記実施形態では、第１使用サービスへの画像ファイルのアップロード後、当該第１使用サービスから画像ファイルを１ファイルずつダウンロードし、１の画像ファイルをダウンロードする毎に、当該１の画像ファイルを、選択された他のサービス５００にアップロードする構成としたが、第１使用サービスから全ての画像ファイルをダウンロードし、ダウンロードした画像ファイルを、選択された他のサービス５００にアップロードする構成としてもよい。しかし、第１使用サービスから全ての画像ファイルをダウンロードした場合、ＲＡＭ１３の容量が不足する場合が生じ得るので、上記実施形態のように、１ファイルずつダウンロードすることが好ましい。
【００７０】
上記実施形態では、アップロードリスト１３ａに設定するファイル名をユニークなファイル名としたが、選択された画像のオリジナルなファイル名をアップロードリスト１３ａに設定する構成としてもよい。しかし、選択された画像のオリジナルなファイル名でアップロードした場合、アップロード先のサービス５００に既に同名の画像ファイルが存在する場合に、不都合が生じ得る。また、Ｓ５０３での検索の結果、検索された画像ファイルが、所望する画像ファイル、すなわち、アップロードに失敗した画像ファイルでない場合が生じ得る。よって、アップロードリスト１３ａに設定するファイル名は、ユニークなファイル名にリネームすることが好ましい。
【００７１】
上記実施形態では、第１使用サービスにアップロードした画像ファイルをダウンロードする場合、アップロードリスト１３ａに記憶されたファイル名を指定することによって、対象とする画像ファイルをダウンロードする構成としたが、ユーザが対象とする画像ファイルのファイル名を指定する構成としてもよい。しかし、第１使用サービスから画像ファイルをダウンロードする場合、アップロードリスト１３ａに記憶されたファイル名を利用する方が、ユーザの手間が少なく好ましい。
【００７２】
上記実施形態に記載した数値は一例であり、適宜の値を採用できる。例えば、アップロードに失敗した場合には、１０バイト以下の画像ファイルを再アップロードする構成としたが、この場合、再アップロードする画像ファイルのファイルサイズは、１０バイト以下であることに限らず、数バイト〜１０数バイト程度以下の小さいファイルサイズであればよい。
【００７３】
上記実施形態では、ＭＦＰ１０の製造メーカが準備したサービス情報テーブル１２ｂに記憶されているサービス５００の中から、アップロード先とするサービス５００を選択できる構成としたが、ユーザに、アップロード先とするサービス５００を入力させる構成としてもよい。
【００７４】
上記実施形態では、ＭＦＰ１０は、各サービス５００のサービス事業者から提供されているＡＰＩを利用するサービス利用プログラム（図示せず）を用いて、各サービス５００に対する画像ファイルのアップロードまたはダウンロードを行う構成とした。これに換えて、各サービス５００のサービス事業者から提供されているＡＰＩを利用するサービス利用プログラムが搭載された中継装置、例えば、特開２０１２−９５２８１号に記載される中継装置を用い、ＭＦＰ１０は、当該中継装置を介して、各サービス５００に対する画像ファイルのアップロードまたはダウンロードを行う構成としてもよい。
【符号の説明】
【００７５】
１０          ＭＦＰ
５００        サービス
【図１】
2014048872.tif 000003
【図２】
2014048872.tif 000004
【図３】
2014048872.tif 000005
【図４】
2014048872.tif 000006
【図５】
2014048872.tif 000007