(57)【要約】【課題】ファイルを受信した装置におけるファイルの処理を通信プロトコルに依存することなく制御できる技術を提供する。【解決手段】送信装置４０は、送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定するファイル名設定手段４２と、ファイル名設定手段４２が設定したファイル名を有するファイルを受信装置５０に対して送信する送信手段４６と、を備える。受信装置５０は、送信装置４０から受信したファイルのファイル名に含まれる制御命令に従って、当該ファイルに関する処理を実行するファイル名処理実行手段５４を備える。【選択図】図２
2010191848.tif 000002
【特許請求の範囲】
【請求項１】
通信手段を介して互いに接続された送信装置と受信装置とを備える通信システムであって、
前記送信装置は、
送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定する設定手段と、
前記設定手段が設定したファイル名を有するファイルを前記受信装置に対して送信する送信手段と、を備え、
前記受信装置は、
前記送信装置から受信したファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行する処理実行手段、を備える、
ことを特徴とする通信システム。
【請求項２】
請求項１に記載の通信システムにおいて、
前記送信装置において、
前記設定手段が設定したファイル名中の前記制御命令に従った処理の実行結果を表す情報又は前記ファイル名中の前記制御命令を含むファイルを確認用ファイルとして生成するファイル生成手段をさらに備え、
前記送信手段は、さらに、前記確認用ファイルを前記受信装置に対して送信し、
前記受信装置において、
前記送信装置から受信した前記確認用ファイル中の前記実行結果又は前記確認用ファイル中の前記制御命令に従った処理の実行結果と、前記処理実行手段による処理の実行の結果と、が同一であるか否かを判定する判定手段、をさらに備える、
ことを特徴とする通信システム。
【請求項３】
請求項２に記載の通信システムにおいて、
前記受信装置は、前記確認用ファイル中の前記制御命令に従った処理の実行の結果と、前記処理実行手段による処理の実行の結果と、が同一でないと前記判定手段が判定した場合に、その旨を表す通知情報を含むファイルを前記送信装置に対して送信する通知情報送信手段、をさらに備える、
ことを特徴とする通信システム。
【請求項４】
請求項３に記載の通信システムにおいて、
前記受信装置の前記通知情報送信手段は、前記通知情報を記述した文字列を含むファイル名を有するファイルを前記送信装置に対して送信し、
前記送信装置は、前記受信装置から受信したファイルのファイル名から前記通知情報を取得する取得手段、をさらに備える、
ことを特徴とする通信システム。
【請求項５】
通信手段を介して受信装置に接続された送信装置であって、
送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定する設定手段と、
前記設定手段が設定したファイル名を有するファイルを前記受信装置に対して送信する送信手段と、
を備えることを特徴とする送信装置。
【請求項６】
通信手段を介して受信装置に接続されたコンピュータに、
送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定するステップと、
前記設定するステップで設定されたファイル名を有するファイルを前記受信装置に対して送信するステップと、
を実行させることを特徴とするプログラム。
【請求項７】
通信手段を介して送信装置に接続された受信装置であって、
ファイルに関する処理の内容を記述した制御命令を含む文字列をファイル名として有するファイルを前記送信装置から受信した場合に、当該ファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行する処理実行手段、
を備えることを特徴とする受信装置。
【請求項８】
通信手段を介して送信装置に接続されたコンピュータに、
ファイルに関する処理の内容を記述した制御命令を含む文字列をファイル名として有するファイルを前記送信装置から受信した場合に、当該ファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行するステップ、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、送信装置、受信装置、及びプログラムに関する。
【背景技術】
【０００２】
ネットワークを介して接続された装置間のデータの通信は、互いに共通の通信プロトコル（通信規約）に従ってデータを送受信することで実現される。通信プロトコルには、例えば、ＦＴＰ（File Transfer Protocol）及びＨＴＴＰ（Hypertext Transfer Protocol）などがある。ＦＴＰ及びＨＴＴＰなどのように標準的に用いられる通信プロトコルの仕様は、インターネットにおける通信技術の標準化組織であるＩＥＴＦ（Internet Engineering Task Force）が発行する文書であるＲＦＣに規定されている（非特許文献１，２）。
【０００３】
また、通信プロトコルを用いて、ネットワークに接続された機器の動作を制御する技術が提案されている。例えば、特許文献１には、ＦＴＰを用いて電子機器を制御する技術が開示されている。特許文献１に記載の技術では、ＦＴＰの特定のコマンドと、当該コマンドのファイル名フィールドに書き込まれた特定の文字列と、を解釈し、電子機器に対する命令を生成するコマンド解釈手段をネットワーク上（例えば当該電子機器内）に設ける。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−３５７１３１号公報
【非特許文献】
【０００５】
【非特許文献１】“File Transfer Protocol (FTP)”，RFC 959，IETF
【非特許文献２】“Hypertext Transfer Protocol -- HTTP/1.1”，RFC 2616，IETF
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、１つの装置から他の装置に対してデータのファイルを送信するときに、当該ファイルを受信した装置において当該ファイルに対して所定の処理を実行させることが望まれる場合がある。このような場合、例えば、装置間の通信で用いられる通信プロトコルにおいて実行可能な制御命令を組み合わせて、受信したファイルに対して実行すべき処理の内容を記述したソフトウエアを用いることで、受信したファイルの処理を制御できる。
【０００７】
しかしながら、装置間の通信においては複数の異なる通信プロトコルが用いられることもある。このとき、１つの通信プロトコル上の制御命令を組み合わせて記述されたソフトウエアを、他の通信プロトコルに従って通信されるデータのファイルに対する処理の制御に用いることはできない。よって、複数の異なる通信プロトコルに従った通信が行われる場合に、通信プロトコル上の制御命令を組み合わせて記述されたソフトウエアによりファイルの処理を制御するためには、複数の通信プロトコルのそれぞれについて、当該通信プロトコル上の制御命令を組み合わせたソフトウエアを開発する必要がある。
【０００８】
本発明の目的の１つは、ファイルを受信した装置におけるファイルの処理を、通信プロトコルに依存することなく制御できる技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明の１つの態様の通信システムは、通信手段を介して互いに接続された送信装置と受信装置とを備える通信システムであって、前記送信装置は、送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定する設定手段と、前記設定手段が設定したファイル名を有するファイルを前記受信装置に対して送信する送信手段と、を備え、前記受信装置は、前記送信装置から受信したファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行する処理実行手段、を備える、ことを特徴とすることを特徴とする。
【００１０】
本発明において、「ファイル」とは、送信装置又は受信装置における処理の対象となる情報の一単位を表し、「ファイル名」とは、ファイルを識別可能とするためにファイルに付される名称を表す。
【００１１】
前記送信装置において、前記設定手段が設定したファイル名中の前記制御命令に従った処理の実行結果を表す情報又は前記ファイル名中の前記制御命令を含むファイルを確認用ファイルとして生成するファイル生成手段をさらに備え、前記送信手段は、さらに、前記確認用ファイルを前記受信装置に対して送信し、前記受信装置において、前記送信装置から受信した前記確認用ファイル中の前記実行結果又は前記確認用ファイル中の前記制御命令に従った処理の実行結果と、前記処理実行手段による処理の実行の結果と、が同一であるか否かを判定する判定手段、をさらに備えていてもよい。
【００１２】
また、前記受信装置は、前記確認用ファイル中の前記制御命令に従った処理の実行の結果と、前記処理実行手段による処理の実行の結果と、が同一でないと前記判定手段が判定した場合に、その旨を表す通知情報を含むファイルを前記送信装置に対して送信する通知情報送信手段、をさらに備えていてもよい。
【００１３】
また、前記受信装置の前記通知情報送信手段は、前記通知情報を記述した文字列を含むファイル名を有するファイルを前記送信装置に対して送信し、前記送信装置は、前記受信装置から受信したファイルのファイル名から前記通知情報を取得する取得手段、をさらに備えていてもよい。
【００１４】
本発明の１つの態様の送信装置は、通信手段を介して受信装置に接続された送信装置であって、送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定する設定手段と、前記設定手段が設定したファイル名を有するファイルを前記受信装置に対して送信する送信手段と、を備えることを特徴とする。
【００１５】
本発明の１つの態様のプログラムは、通信手段を介して受信装置に接続されたコンピュータに、送信対象のファイルに関する処理の内容を記述した制御命令を含む文字列を当該ファイルのファイル名として設定するステップと、前記設定するステップで設定されたファイル名を有するファイルを前記受信装置に対して送信するステップと、を実行させることを特徴とする。
【００１６】
本発明の１つの態様の受信装置は、通信手段を介して送信装置に接続された受信装置であって、ファイルに関する処理の内容を記述した制御命令を含む文字列をファイル名として有するファイルを前記送信装置から受信した場合に、当該ファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行する処理実行手段、を備えることを特徴とする。
【００１７】
本発明の他の１つの態様のプログラムは、通信手段を介して送信装置に接続されたコンピュータに、ファイルに関する処理の内容を記述した制御命令を含む文字列をファイル名として有するファイルを前記送信装置から受信した場合に、当該ファイルのファイル名に含まれる前記制御命令に従って当該ファイルに関する処理を実行するステップ、を実行させることを特徴とする。
【発明の効果】
【００１８】
本発明によると、ファイルを受信した装置におけるファイルの処理を、通信プロトコルに依存することなく制御できる。
【図面の簡単な説明】
【００１９】
【図１】通信システムの概略構成の例を示すブロック図である。
【図２】送信装置及び受信装置の内部構成の概略の例を示すブロック図である。
【図３】ファイルの階層構造の例を示す図である。
【図４】送信装置及び受信装置における処理の手順の例を示すシーケンス図である。
【図５】確認用ファイルの内容の例を示す図である。
【図６】コンピュータのハードウエア構成の概略の例を示す図である。
【発明を実施するための形態】
【００２０】
図１に、通信システムの概略構成の例を示す。図１に例示する通信システムは、端末装置１とサーバ２ａとがネットワーク３ａを介して接続され、サーバ２ａ，２ｂ，２ｃ，２ｄ・・・（以下、「サーバ２」と総称することもある）がネットワーク３ｂを介して接続された構成を有する。
【００２１】
端末装置１は、汎用のコンピュータなどの情報処理装置により実現されるクライアント端末である。サーバ２は、ネットワークを介して接続された他の装置からの要求に応じて、自装置が保持する情報を提供したり、要求されたアプリケーションを要求元の装置で実行させたり、各種の情報サービスを提供する。ネットワーク３ａ，３ｂ（以下、「ネットワーク３」と総称することもある）は、装置間を接続する通信手段であり、例えば、インターネット、イントラネット、又はＬＡＮ（Local Area Network）などの通信ネットワークであってよい。
【００２２】
ネットワーク３を介して接続された各装置は、各種の通信プロトコルに従って互いに通信する。例えば、ＨＴＴＰ及びＦＴＰなど、インターネットにおける通信で一般的に利用されている通信プロトコルが装置間の通信に用いられる。また、端末装置１及びサーバ２は、これらの装置の間だけで利用される独自の通信プロトコルに従って通信可能であってもよい。例えば、端末装置１及びサーバ２が企業などの組織の活動のために用いられる場合、通信のセキュリティを確保するため、当該組織のために独自に規定された通信プロトコルに従った通信を行うことが考えられる。本例では、端末装置１及びサーバ２は、複数の異なる通信プロトコルに従って通信可能である。
【００２３】
なお、図１は通信システムの構成の一例に過ぎない。例えば、通信システムは、複数の端末装置１を備えていてもよいし、図１に例示しない各種の装置を備えていてもよい。また、通信システムは、１種類のネットワークにより実現されてもよいし、３種類以上のネットワークにより実現されてもよい。
【００２４】
端末装置１及びサーバ２は、それぞれ、通信において情報を送信するときには送信装置として機能し、情報を受信するときには受信装置として機能する。図２は、本発明の１つの実施形態による送信装置及び受信装置の内部構成の概略の例を示す機能ブロック図である。
【００２５】
図２を参照し、送信装置４０は、ネットワーク３（図２では図示しない）を介して接続された受信装置５０に対してデータを送信する。送信装置４０は、ファイル名設定手段４２、確認用ファイル生成手段４４、送信手段４６、及び通知情報処理手段４８を備える。
【００２６】
ファイル名設定手段４２は、送信対象のデータを含むファイル（以下、「データファイル」と呼ぶ）のファイル名を設定する。ファイル名設定手段４２が設定するファイル名は、当該データファイルを受信した受信装置５０において当該データファイルに対して実行すべき処理の内容を記述した制御命令を含む文字列である。ファイル名設定手段４２は、例えば、送信対象のデータファイルと当該データファイルに対して受信装置５０で実行すべき処理とを指定されると、指定された処理の内容を記述した制御命令を生成する。ここで、送信対象のデータファイル及び当該データファイルに対して実行すべき処理の指定は、例えば、ユーザ又はシステムの管理者などにより、送信装置４０の入力手段（図示しない）を介して行われる。ファイル名設定手段４２は、上述のように生成した制御命令と、指定されたデータファイルのファイル名と、を含む文字列を当該データファイルの（新たな）ファイル名として設定する。ファイル名設定手段４２が設定するファイル名の構成の例を［例１］に示す。
【００２７】
［例１］
<命令文><パラメータ><データの名称>.<拡張子>
【００２８】
［例１］において、<命令文>及び<パラメータ>の部分は、データファイルに対して実行すべき処理の内容を表す制御命令を記述した部分である。<命令文>の部分には、処理の内容（例えば、データファイルの保存及び転送など）を表すコマンド（命令を表す文字列）が記述される。<パラメータ>の部分には、<命令文>の部分に記述された処理を実行するために必要な各種のパラメータが記述される。例えば、<命令文>がデータファイルの保存を指示するコマンドであれば、<パラメータ>の部分に、そのデータファイルの格納位置を表す文字列が記述される。また例えば、<命令文>がデータファイルの転送を指示するコマンドであれば、<パラメータ>の部分に、その転送先のアドレスを表す文字列が記述される。なお、<命令文>の処理の実行においてパラメータの指定が必要ない場合、<パラメータ>の部分の記述は省略される。あるいは、パラメータが指定されていないことを表す文字列（例えば、“null”など）を<パラメータ>の部分に記述してもよい。
【００２９】
<データの名称>の部分には、データファイルを識別するために付与される名称が記述され、<拡張子>の部分には、データファイルの種類を表す文字列が記述される。<データの名称>及び<拡張子>の部分は、送信対象として指定されたデータファイルに既に付与されていたファイル名及び拡張子と同一であってよい。
【００３０】
また、［例１］の構成のファイル名において、<命令文>、<パラメータ>、及び<データの名称>の各部分の区切りは、例えば、予め設定された文字又は記号によって表すものとすればよい。この例の場合、各部分の内容を表す文字列においては、各部分の区切りを表すものとして予め設定された文字又は記号を用いることを禁止するように設定しておく。各部分の区切りを表す記号として記号“#”が予め設定されている場合に、データファイルに設定されるファイル名の具体例を［例２］に示す。
【００３１】
［例２］
#save#ID,ST#DATA1.csv
【００３２】
［例２］では、ファイル名の先頭にも記号“#”が付され、この先頭の“#”は、当該ファイル名がファイル名設定手段４２により設定されたものであることを表す。先頭の“#”から２つ目の“#”までの文字列“save”は、データファイルの保存を指示する<命令文>である。２つ目の“#”と３つ目の“#”との間の文字列“ID, ST”は、データファイルの格納位置を表す<パラメータ>であり、本例では、“ID”という名称のフォルダ（又はディレクトリ）に格納された“ST”という名称のフォルダの下に当該データファイルを格納すべきことを示す。３つ目の“#”の後の文字列“DATA1.csv”は、<データの名称>及び<拡張子>を表す。
【００３３】
確認用ファイル生成手段４４は、ファイル名設定手段４２で設定されたファイル名に含まれる制御命令の記述どおりの処理がデータファイルに対して実行されたか否かを受信装置５０において確認するために用いるファイルを生成する。以下、確認用ファイル生成手段４４が生成するファイルを「確認用ファイル」と呼ぶ。確認用ファイルは、例えば、ファイル名設定手段４２がデータファイルに対して設定したファイル名中の制御命令に従った処理の実行結果を表す情報を含む。上記の［例２］のファイル名の場合、その制御命令に従った処理の実行結果は、「フォルダ“ID”の下のフォルダ“ST”にデータファイル“DATA1.csv”が格納されている」状態であり、確認用ファイルとして、この結果を表す情報（例えば、文字列“ID\ST\DATA1.csv”）を含むファイルが生成される。また例えば、確認用ファイルは、ファイル名設定手段４２がデータファイルに対して設定したファイル名を含むテキストファイルであってもよい。確認用ファイルは、データファイルごとに生成されることもあるし、複数のデータファイルに対応して１つだけ生成されることもある。複数のデータファイルに対応する確認用ファイルは、例えば、当該複数のデータファイルに対してファイル名設定手段４２が設定したファイル名のリストを含むものであってよい。なお、確認用ファイル生成手段４４は、受信装置５０において確認用ファイルとその他のファイルとを区別可能とするための情報を確認用ファイルに付与しておく。例えば、当該ファイルが確認用ファイルであることを表す文字列を含むファイル名を確認用ファイルのファイル名として設定する。あるいは、例えば、当該ファイルが確認用ファイルであることを表す情報を確認用ファイルの属性情報として設定する。
【００３４】
送信手段４６は、利用可能な複数の通信プロトコルのいずれかに従って、受信装置５０に対して情報を送信する。利用可能な複数の通信プロトコルのそれぞれは、当該通信プロトコルで規定される制御命令として、ファイルを転送（送信）するための制御命令（転送制御命令）を有する。送信手段４６は、利用可能な通信プロトコルのいずれかにおける転送制御命令を用いて、データファイル及び確認用ファイルを受信装置５０に対して送信する。
【００３５】
通知情報処理手段４８は、受信装置５０における確認用ファイルを用いた確認処理の結果を表す通知情報を受信装置５０から取得し、その通知情報の内容に応じた処理を行う。受信装置５０が行う確認処理及び通知情報処理手段４８が行う処理の詳細は後述する。
【００３６】
受信装置５０は、ネットワーク３を介して接続された送信装置４０からデータを受信する。受信装置５０は、受信手段５２、ファイル処理実行手段５４、確認処理手段５６、及び通知手段５８を備える。
【００３７】
受信手段５２は、各種の通信プロトコルに従って、送信装置４０から送信された情報を受信する。例えば、受信手段５２は、送信装置４０の送信手段４６が送信したデータファイル及び確認用ファイルを受信する。受信手段５２は、データファイルをファイル処理実行手段５４に渡し、確認用ファイルを確認処理手段５６に渡す。例えば、受信したファイルに当該ファイルが確認用ファイルであることを表す情報が付されていれば、当該ファイルを確認用ファイルとして確認処理手段５６に渡し、そのような情報が付されていなければ、データファイルとしてファイル処理実行手段５４に渡す。
【００３８】
ファイル処理実行手段５４は、受信手段５２から受け取ったデータファイルに対して、当該データファイルのファイル名に含まれる制御命令に従った処理を実行する。ファイル処理実行手段５４は、ファイル名解釈手段５４０を備える。
【００３９】
ファイル名解釈手段５４０は、受信手段５２から受け取ったデータファイルのファイル名を取得し、取得したファイル名に含まれる制御命令を抽出する。例えば、データファイルのファイル名が上記の［例１］の構成を有する場合、ファイル名解釈手段５４０は、取得したファイル名の文字列を調べて、<命令文>及び<パラメータ>の部分を抽出する。そして、抽出した制御命令を解釈し、その制御命令が指示する処理の内容を特定する。制御命令の解釈は、例えば、制御命令の命令文の文字列とその文字列が表す処理の内容とを対応づける情報を予め記憶装置（図示しない）に記憶させておき、この情報を参照することで行う。ファイル処理実行手段５４は、ファイル名解釈手段５４０が特定した内容の処理をデータファイルに対して実行する。
【００４０】
上記の［例２］に示すファイル名を例にとり、ファイル処理実行手段５４における処理の一具体例を説明する。まず、ファイル名解釈手段５４０は、ファイル名の文字列“#save#ID,ST#DATA1.csv”を先頭から調べて、区切り記号“#”を検索する。そして、１つ目の“#”と２つ目の“#”との間の文字列“save”を<命令文>の部分として抽出し、２つ目の“#”と３つ目の“#”との間の文字列“ID, ST”を<パラメータ>の部分として抽出する。３つ目の“#”の後には、ファイル名の文字列の最後尾まで調べても“#”は検索されない。これにより、ファイル名解釈手段５４０は、３つ目の“#”の後の文字列を<データの名称>及び<拡張子>として認識する。ファイル名解釈手段５４０は、命令文の文字列とその処理の内容とを対応づける情報であって記憶装置に予め記憶された情報を参照して、抽出した<命令文>の文字列“save”がデータファイルの保存を指示するものであることを特定する。そして、ファイル名解釈手段５４０は、<パラメータ>の文字列“ID, ST”から、フォルダ“ID”の下のフォルダ“ST”をデータファイルの格納位置とすべきことを特定する。以上のファイル名解釈手段５４０の処理結果に応じて、ファイル処理実行手段５４は、ファイル名“#save#ID,ST#DATA1.csv”を有するデータファイルを受信装置５０の記憶装置において、フォルダ“ID”の下のフォルダ“ST”に格納する。ここで、フォルダ“ID”及びフォルダ“ST”が記憶装置上に存在しなければ、ファイル処理実行手段５４は、これらのフォルダを新規作成する。また、ファイル処理実行手段５４は、当該データファイルを記憶装置に格納するとき、そのデータファイルのファイル名から<命令文>及び<パラメータ>を除外して“DATA1.csv”とのファイル名を有するデータファイルとして格納してもよい。
【００４１】
なお、ファイル名解釈手段５４０においてファイル名で表される処理の内容を特定できなかった場合、ファイル処理実行手段５４は、当該データファイルを記憶装置の予め設定された格納位置に保存しておけばよい。
【００４２】
確認処理手段５６は、受信手段５２から受け取った確認用ファイルを用いて、データファイルに対するファイル処理実行手段５４の処理が適切に実行されたか否かを判定する。例えば、確認処理手段５６は、確認用ファイルに処理の実行結果を表す情報が含まれている場合、その情報が表す実行結果と、ファイル処理実行手段５４による処理の結果と、が同一であるか否かを判定する。また例えば、制御命令を含むファイル名が確認ファイルに含まれている場合、確認処理手段５６は、確認用ファイル中のファイル名に含まれる制御命令に従った処理を実行した結果と、ファイル処理実行手段５４による処理の結果と、が同一であるか否かを判定する。確認用ファイルから得られる処理実行結果とファイル処理実行手段５４による処理の結果とが同一であればファイル処理実行手段５４の処理が適切に実行されたと判定され、同一でなければ適切に実行されていないと判定される。例えば、送信装置４０から送信されたデータファイルが通信経路上の何らかの障害により受信装置５０で受信されず、送信装置４０から送信された確認用ファイルだけが受信装置５０で受信された場合、確認用ファイルから得られる処理実行結果とファイル処理実行手段５４による処理の結果とは同一にならない。
【００４３】
確認処理手段５６の処理の具体例として、上記の［例２］のファイル名を含むテキストファイルを確認用ファイルとして受信手段５２が受信した場合を考える。この例では、確認処理手段５６は、確認用ファイル中の文字列“#save#ID,ST#DATA1.csv”を上述のファイル名解釈手段５４０と同様の処理により解釈し、その制御命令の処理の実行結果は「“ID”フォルダの下の“ST”フォルダにデータファイル“DATA1.csv”が格納された」状態となることを特定する。そして、この実行結果と、ファイル処理実行手段５４による処理の結果と、が同一であるか否かを判定する。すなわち、確認用ファイルから得られた実行結果のとおり、記憶装置において“ID”フォルダの下の“ST”フォルダにデータファイル“DATA1.csv”が格納されているか否かを確認する。
【００４４】
通知手段５８は、確認処理手段５６による確認処理（ファイル処理実行手段５４の処理が適切に実行されたか否かの判定処理）の結果を表す通知情報を生成して送信装置４０に対して送信する。通知手段５８は、例えば、確認処理においてファイル処理実行手段５４の処理が適切に実行されなかったと判定された場合に、適切に実行されなかった処理の内容とその処理対象のデータファイルとを表す通知情報を生成して送信装置４０に対して送信する。通知情報は、当該確認処理で用いた確認用ファイル中の情報の少なくとも一部であってよい。例えば、上記の［例２］のファイル名“#save#ID,ST#DATA1.csv”を含む確認用ファイルを用いる上述の確認処理の具体例の場合に、データファイル“DATA1.csv”が“ID”フォルダの下の“ST”フォルダに格納されていなかったとき、通知手段５８は、当該確認用ファイル中の文字列“#save#ID,ST#DATA1.csv”を含む通知情報を送信装置４０に対して送信する。この通知情報を受け取った送信装置４０の通知情報処理手段４８は、ファイル名“#save#ID,ST#DATA1.csv”を有するデータファイルに対する処理が受信装置５０で適切に実行されなかったことを認識する。そして、例えば、通知情報処理手段４８は、送信手段４６に依頼して、ファイル名“#save#ID,ST#DATA1.csv”を有するデータファイルを受信装置５０に対して再度送信させる。
【００４５】
なお、本実施形態では、通知手段５８は、利用可能な複数の通信プロトコルのいずれかにおける転送制御命令を用いて、通知情報を含むファイルを送信装置４０に対して送信する。通知情報を含むファイルは、例えば、通知情報を記述した文字列を含むテキストファイルであってよい。このとき、送信装置４０の通知情報処理手段４８は、受信装置５０の通知手段５８から受信したテキストファイルから通知情報を抽出して処理を行う。あるいは、例えば、通知情報を含むファイルは、通知情報を記述した文字列をファイル名として有するファイルであってもよい。このとき、送信装置４０の通知情報処理手段４８は、受信装置５０の通知手段５８から受信したファイルのファイル名から通知情報を抽出して処理を行う。通知情報を含むファイル名を有するファイルを送信する場合、送信されるファイルの中身は空であってよい。
【００４６】
以下、送信装置４０及び受信装置５０を含む通信システムの動作を説明する。
【００４７】
説明のための具体例として、図３に例示するｎ個のデータファイル“DATA1.csv”，“DATA2.csv”，“DATA3.csv”，…，“DATAn.csv”を送信装置４０から受信装置５０に送信する場合を考える。図３を参照し、送信装置４０が備える記憶装置（図示しない）において、“home”フォルダの下に“ID”フォルダが格納され、“ID”フォルダの下の“ST”フォルダにデータファイル“DATA1.csv”，“DATA2.csv”，“DATA3.csv”，…，“DATAn.csv”が格納されているとする。以下、送信装置４０において、これらのデータファイルのそれぞれが送信対象として指定され、かつ、図３に例示する階層構造のとおりに受信装置５０の記憶装置（図示しない）に各データファイルを格納することが各データファイルに対して実行すべき処理として指定された場合を例にとり、送信装置４０及び受信装置５０を含む通信システムの動作を説明する。
【００４８】
図４は、送信装置４０及び受信装置５０における処理の手順の例を示すシーケンス図である。
【００４９】
まず、送信装置４０のファイル名設定手段４２により、データファイルのファイル名が設定される（ステップＳ１０）。本例では、ファイル名設定手段４２は、図３に例示するｎ個のデータファイル“DATA1.csv”，“DATA2.csv”，“DATA3.csv”，…，“DATAn.csv”のそれぞれについて、「“ID”フォルダの下の“ST”フォルダの下にデータファイルを格納する」旨の指示を表す制御命令と、各データファイルに既に付与されているファイル名（“DATA1.csv”，“DATA2.csv”など）と、を含む文字列を生成し、生成した文字列を各データファイルの新たなファイル名として設定する。例えば、データファイル“DATA1.csv”に対して設定されるファイル名は、上記の［例２］のとおりとなる。
【００５０】
次に、送信装置４０の確認用ファイル生成手段は、ステップＳ１０でファイル名が設定されたデータファイルに対応する確認用ファイルを生成する（ステップＳ１２）。本例では、上述のｎ個のデータファイルに対応する１つの確認用ファイルが生成される。本例では、図５に例示するテキストファイル“check.txt”が確認用ファイルとして生成されるものとする。図５を参照し、確認用ファイル“check.txt”は、図３の例のｎ個のデータファイルのそれぞれに対して当該データファイルのファイル名中の制御命令の処理を実行した結果を表す情報、すなわち、図３の例の階層構造を記述した文字列を含むテキストファイルである。
【００５１】
送信装置４０の送信手段４６は、ステップＳ１０でファイル名が設定されたデータファイルを受信装置５０に対して送信し（ステップＳ１４）、さらに、ステップＳ１２で生成された確認用ファイルを受信装置５０に対して送信する（ステップＳ１６）。データファイル及び確認用ファイルは、受信装置５０の受信手段５２で受信される。
【００５２】
受信装置５０のファイル処理実行手段５４は、ステップＳ１４で受信した各データファイルのファイル名に含まれる制御命令に従った処理を実行する（ステップＳ１８）。本例では、まず、ファイル処理実行手段５４のファイル名解釈手段５４０において、受信した各データファイル“DATA1.csv”，“DATA2.csv”，“DATA3.csv”，…，“DATAn.csv”に設定されたファイル名に含まれる制御命令が「“ID”フォルダの下の“ST”フォルダの下にデータファイルを格納する」ことを指示する命令であることを解釈する。これに従い、ファイル処理実行手段５４は、受信装置５０が備える記憶装置（図示しない）において“ID”フォルダの下の“ST”フォルダの下に各データフォルダを格納する処理を行う。このとき、受信装置５０の記憶装置に“ID”フォルダ及び“ST”フォルダが存在しなければ、ファイル処理実行手段５４は、これらのフォルダを新規作成した上で、データファイルの格納を行う。ステップＳ１８の処理により、受信装置５０の記憶装置においても図３に例示する階層構造が実現される。
【００５３】
次に、受信装置５０の確認処理手段５６により、受信手段５２が受信した確認用ファイルを用いた確認処理が行われる（ステップＳ２０）。本例では、確認処理手段５６は、図５の例の確認用ファイル“check.txt”に記述されたとおりの階層構造が受信装置５０の記憶装置において実現されているか否かを確認する。
【００５４】
確認用ファイルから得られる処理実行結果とファイル処理実行手段５４による処理（ステップＳ１８）の結果とが同一でない場合、受信装置５０の通知手段５８は、その旨を表す通知情報を含むファイルを生成し（ステップＳ２２）、生成した通知情報のファイルを送信装置４０に対して送信する（ステップＳ２４）。例えば、確認用ファイル“check.txt”に記述されたデータファイルのうち、受信装置５０の記憶装置に存在しないデータファイルがある場合に、通知手段５８は、確認用ファイルから該当するデータファイルに関する記述を抽出し、抽出した記述を含む通知情報のファイルを送信する。例えば、確認用ファイルに記述されたデータファイル“DATA2.csv”が受信装置５０の記憶装置に存在しない場合、当該データファイルに関する確認用ファイル中の記述“ID\ST\DATA2.csv”を含む通知情報のファイルを送信する。
【００５５】
通知情報を受け取った送信装置４０は、通知情報処理手段４８において、その通知情報の内容を解釈し、その内容に応じた処理を行う（ステップＳ２６）。例えば、“ID\ST\DATA2.csv”を含む通知情報のファイルを受け取った場合、通知情報処理手段４８は、送信手段４６に依頼して、ステップＳ１４で送信した制御命令を含むファイル名を有するデータファイル“#save#ID,ST#DATA2.csv”を受信装置５０に対して再度送信させる。
【００５６】
なお、受信装置５０の確認処理手段５６による確認処理（ステップＳ２０）において、確認用ファイルから得られる処理実行結果と、ファイル処理実行手段５４による処理の結果と、が同一であると判定された場合は、ステップＳ２２以降の処理は行われない。
【００５７】
また、確認処理（ステップＳ２０）において、確認用ファイルから得られる処理実行結果とファイル処理実行手段５４による処理の結果と、が異なると判定された場合に、確認処理手段５６は、可能であれば、確認用ファイルから得られる処理実行結果を実現する処理を行ってもよい。例えば、確認用ファイル“check.txt”に記述されたデータファイルが受信装置５０の記憶装置に格納されているけれども、記述されたフォルダ（“ID”フォルダの下の“ST”フォルダ）と異なる格納位置に格納されていた場合、このデータファイルを記述されたフォルダに移動させる処理を行う。この例のように、確認処理手段５６において確認用ファイルから得られる処理実行結果を実現した場合は、ステップＳ２２以降の処理を行わなくてもよい。
【００５８】
また、確認処理（ステップＳ２０）を実行するタイミングは、受信手段５２で受信されたデータファイルのすべてに対するファイル処理実行手段５４の処理（ステップＳ１８）が終了してから予め設定された待ち時間が経過した後であってよい。この場合、待ち時間の経過の前に受信手段５２で新たにデータファイルが受信されると、そのデータファイルに関してファイル処理実行手段５４がステップＳ１８の処理を行った後、さらに、上述の待ち時間が経過してから確認処理を実行する。このような待ち時間を導入すると、確認用ファイルに対応する複数のデータファイルのうちの一部の受信に遅延が生じても、そのデータファイルの受信を待って確認処理を実行することが可能となる。
【００５９】
また、確認処理（ステップＳ２０）は、複数回実行してもよい。例えば、所定の回数だけ、所定の時間間隔で確認処理を実行するように設定しておく。
【００６０】
確認処理（ステップＳ２０）を実行するタイミング及び回数は、システムの管理者などが予め設定して受信装置５０の記憶装置に記憶させておいてもよいし、送信装置４０の確認用ファイル生成手段４４が設定して確認用ファイルに記述しておいてもよい。確認処理実行のタイミングを確認用ファイルに記述しておく場合、例えば、その実行の日時又は上述の待ち時間を指定する記述であってもよいし、受信装置５０における当該確認用ファイルの受信から所定時間経過後に実行することを指示する記述であってもよい。確認用ファイルに確認処理実行のタイミング及び回数が記述される場合、確認処理手段５６は、その確認用ファイル中の記述に従って確認処理を実行する。
【００６１】
以上、図３〜図５を参照し、受信装置５０において送信装置４０と同様のデータファイルの階層構造を実現する処理を実行させる場合の通信システムの動作の例を説明した。受信装置５０においてデータファイルに対して実行させる処理は、データファイルの保存（記憶装置への格納）に限られない。以下、受信装置５０においてデータファイルに対して実行させる各種の処理の例を説明する。
【００６２】
［転送処理］
例えば、図１の例の通信システムにおいて、端末装置１からネットワーク３ａを介してサーバ２ａへデータファイルを送信し、当該データファイルをサーバ２ａからネットワーク３ｂを介してサーバ２ｂ，２ｃ，２ｄに転送することが望まれる場合がある。この場合、受信装置５０としてデータファイルを受信したサーバ２ａに、当該データファイルをサーバ２ｂ，２ｃ，２ｄに転送する処理を実行させる。受信装置５０にデータファイルの転送処理を実行させる場合、送信装置４０のファイル名設定手段４２は、転送処理の実行を指示するとともに転送先を示す制御命令を含むファイル名を生成してデータファイルに設定する。例えば、上記の［例１］に示す構成において、<命令文>の部分に転送処理を指示するコマンドを表す文字列を含み、<パラメータ>の部分に転送先のアドレスを表す文字列を含むファイル名がデータファイルに設定される。このようなファイル名を有するデータファイルを受信した受信装置５０のファイル処理実行手段５４は、ファイル名の<パラメータ>の部分に示された転送先アドレス宛に受信したデータファイルを転送する。
【００６３】
［削除処理］
受信装置５０においてデータファイルの受信から所定の期間経過後に当該データファイルを削除させることもできる。この例では、送信装置４０のファイル名設定手段４２は、例えば、上記の［例１］に示す構成のファイル名において、<命令文>の部分に削除処理を指示するコマンドを含み、<パラメータ>の部分に削除処理の実行のタイミングを表す文字列を含むファイル名をデータファイルに設定する。受信装置５０のファイル処理実行手段５４は、ファイル名の<パラメータ>の部分で指定されたタイミングで当該データファイルを削除する。また、受信装置５０に対して送信済みのデータファイルを削除する制御命令を含むファイル名を有するファイルを送信装置４０において生成して受信装置５０に送信することで、送信済みのデータファイルを受信装置５０から削除することができる。例えば、送信装置４０において、ファイル名の<命令文>の部分に削除処理を指示するコマンドを含み、<パラメータ>の部分に削除処理の実行のタイミングを表す文字列を含み、かつ、<データの名称>及び<拡張子>の部分に、送信済みのデータファイルのファイル名中の<データの名称>及び<拡張子>を記述したファイル名を有するファイルを生成して受信装置５０に対して送信する。このとき送信するファイルの中身は空であってよい。このファイルを受信した受信装置５０のファイル処理実行手段５４は、そのファイル名中の<パラメータ>で指定されたタイミングで、そのファイル名中の<データの名称>及び<拡張子>が表すデータファイルを削除する。
【００６４】
［圧縮ファイルの解凍処理］
データファイルのファイルサイズが大きい場合、送信装置４０においてデータファイルを圧縮した上で受信装置５０へ送信し、受信装置５０において当該圧縮されたデータファイルを解凍（元のデータファイルに復元）する処理を行なうことがある。このような場合、送信装置４０のファイル名設定手段４２は、例えば、上記の［例１］に示す構成のファイル名において、データファイルの解凍を指示する<命令文>を含み、データファイルの圧縮の形式を示す<パラメータ>を含むファイル名をデータファイルに設定する。このようなファイル名を含むデータファイルを受信した受信装置５０のファイル処理実行手段５４は、<パラメータ>で示される圧縮形式に対応する方式でデータファイルの解凍処理を行う。あるいは、ファイル名の<拡張子>の部分に圧縮形式が示されていれば、<パラメータ>の部分の記述のないファイル名を送信装置４０で設定してもよい。この場合、受信装置５０では、データファイルのファイル名の<拡張子>を参照して、その圧縮形式に応じた解凍処理を実行する。
【００６５】
なお、受信装置５０において、以上で説明した各種の例の処理の複数を１つのデータファイルに対して実行させることもできる。複数の処理を実行させる場合、送信装置４０のファイル名設定手段４２は、複数の処理の内容を記述した制御命令を含むファイル名を生成してデータファイルに対して設定する。次の［例３］に、データファイルに対して２つの処理を実行させる場合にファイル名設定手段４２が設定するファイル名の構成の例を示す。
【００６６】
［例３］
<命令文１><パラメータ１><命令文２><パラメータ２><データの名称>.<拡張子>
【００６７】
［例３］の構成のファイル名を有するデータファイルを受信した受信装置５０において、<命令文１>及び<パラメータ１>の部分に記述される処理と、<命令文２>及び<パラメータ２>の部分に記述される処理と、の２つの処理が実行される。［例３］の構成のファイル名においても、上記の［例１］及び［例２］と同様に、各部分の区切りを表す区切り文字（又は記号）を設定しておけば、受信装置５０のファイル名解釈手段５４０は、ファイル名の各部分を特定できる。なお、データファイルに対して３つ以上の処理を実行させる場合は、各処理に対応する命令文とパラメータとの組を３つ以上記述したファイル名を送信装置４０のファイル名設定手段４２においてデータファイルに設定すればよい。
【００６８】
データファイルに対して実行する複数の処理の組み合わせとしては、様々な例を挙げられる。例えば、所定の格納位置へのデータファイルの保存及び所定時間経過後の削除を実行させたり、圧縮されたデータファイルの解凍及び所定時間経過後の削除を実行させたりすることが考えられる。また例えば、データファイルの転送処理と、他の各種の処理と、を組み合わせてもよい。
【００６９】
転送処理と他の各種の処理とを組み合わせる場合、転送処理命令を含むファイル名を有するデータファイルを受信した受信装置５０からの当該データファイルの転送処理は、当該受信装置５０の機能を備える装置（例えば、端末装置１又はサーバ２）に実現された送信装置４０の機能を用いて行ってもよい。すなわち、当該データファイルを受信した装置が備える送信装置４０の機能により、制御命令を含むファイル名を有するデータファイルを送信し、その制御命令に関する確認用ファイルを生成して送信してよい。
【００７０】
例えば、転送処理と所定の格納位置へのデータファイルの保存処理との実行を指示する制御命令が記述されたファイル名を有するデータファイルをサーバ２において受信した場合、サーバ２が備える受信装置５０のファイル処理実行手段５４は、当該サーバ２が備える送信装置４０に対し、指定された転送先への当該データファイルの送信処理を依頼する。この依頼に応じて、当該サーバ２の送信装置４０は、例えば、当該データファイルのファイル名から、転送処理命令を記述した部分を削除した文字列を当該データファイルの新たなファイル名として設定した上で、指定された転送先へ送信する。つまり、転送先へ送信されるデータファイルのファイル名は、所定の格納位置へのデータファイルの保存処理を指示する制御命令を記述した部分と、<データの名称>及び<拡張子>の部分と、を含む。これにより、転送先の受信装置５０において、転送されたデータファイルは、そのファイル名に記述された制御命令に従って、所定の格納位置へ格納される。よって、転送先の受信装置５０においてもデータファイルの階層構造が実現される。さらに、当該サーバ２の送信装置４０は、転送先へ送信されるデータファイルについての確認用ファイルを生成して転送先に送信し、転送先の受信装置５０において、この確認用ファイルを用いた確認処理が行われる。以上のように、データファイルを受信したサーバ２の送信装置４０の機能により転送処理を行うと、転送先の受信装置５０における当該データファイルに対する処理を制御できる。
【００７１】
以上、データファイルのファイル名において複数の処理の実行を指示する制御命令を記述しておくことで、当該データファイルに対して受信装置５０に複数の処理を実行させる実施形態の例を説明した。他の例では、ファイル名の<データの名称>及び<拡張子>の部分の記述が同一であって、<命令文>及び<パラメータ>の部分の記述が異なる複数のファイルを送信装置４０で生成して受信装置５０に送信することで、その<データの名称>及び<拡張子>に対応する１つのデータファイルに対して複数の処理を実行させる。共通の<データの名称>及び<拡張子>を含み、異なる<命令文>及び<パラメータ>を含む複数のファイル名をそれぞれ有する複数のファイルのうち、少なくとも１つのファイルが実際にデータの内容を含んでいれば、その他のファイルの中身は空であってよい。受信装置５０のファイル処理実行手段５４は、制御命令を含むファイル名を有するファイルの中身が空である場合、当該ファイル名中の<データの名称>及び<拡張子>と同じ<データの名称>及び<拡張子>を含むファイル名を有するファイルであって実際にデータを含むデータファイルを受信装置５０の記憶装置から検索して、検索されたデータファイルに対して、当該制御命令に従った処理を実行する。実際にデータを含むデータファイルの検索に失敗した場合（例えば、実際にデータを含むデータファイルが未だ送信装置４０から送信されていない場合など）、ファイル処理実行手段５４は、実際にデータを含むデータファイルの受信を待って当該制御命令に従った処理を実行する。
【００７２】
例えば、まず、転送処理命令を含むファイル名を有する空のファイルを送信装置４０が受信装置５０に対して送信し、その後、所定の格納位置へのデータファイルの保存処理命令を含むファイル名を有するデータファイルであって実際のデータを含むデータファイルを送信したとする。この例では、受信装置５０において、１つ目の空のファイルのファイル名を解釈して、その<データの名称>及び<拡張子>に対応する実際のデータファイルに対して転送処理を実行すべきことを特定し、実際のデータを含む２つ目のデータファイルを受信した時点で、そのデータファイルに対して転送処理を実行する。このとき、２つ目のデータファイルのファイル名（保存処理命令を含む）を変更せずに転送すると、転送先の受信装置５０においても、そのファイル名で指定された格納位置へのデータファイルの保存処理が実行される。
【００７３】
以上で説明した各種の実施形態において、確認用ファイルに関する処理を一部省略してもよい。例えば、ファイル名に記述される制御命令が表す処理の種類に応じて、送信装置４０による確認用ファイルの生成・送信及び受信装置５０における確認処理を実行するか否かを決定する。例えば、所定の格納位置へのデータファイルの保存処理を指示する制御命令を含むファイル名を有するデータファイルについてのみ確認用ファイルに関する処理を上述のとおりに実行し、他の種類の処理については確認用ファイルに関する処理を実行しないようにしてもよい。また、他の実施形態では、確認用ファイルに関する処理を全く行わない。この実施形態の通信システムにおいて、送信装置４０及び受信装置５０は、図２に例示する構成から確認用ファイルに関する処理を行う各手段（確認ファイル生成手段４４、通知情報処理手段４８、確認処理手段５６、及び通知手段５８）を除いた構成を有する。
【００７４】
以上で説明した各種の実施形態によると、受信装置５０は、受信したデータファイルのファイル名を解釈することで、当該データファイルに関する処理を実行する。受信装置５０におけるファイルの処理を制御するための制御命令は、送受信されるデータファイルのファイル名に記述されるため、ファイルの処理の制御のために通信プロトコル上の制御命令を用いる必要はない。通信プロトコル上の制御命令のうち、上述の各種の実施形態の処理で用いられるのは、ファイルの転送制御命令だけである。また、受信装置５０におけるデータファイルに対する処理は、データファイルの中身を参照することなく、つまり、データファイルを「開く」処理を行うことなく実行される。
【００７５】
以上で説明した送信装置４０及び受信装置５０は、例えば、汎用のコンピュータなどの情報処理装置により実現される。図６に、送信装置４０及び受信装置５０を実現可能なコンピュータのハードウエア構成の例を示す。図６に例示するコンピュータは、ＣＰＵ６０、メモリ（一次記憶）６２、各種Ｉ／Ｏ（入出力）インタフェース６４等がバス６６を介して接続された回路構成を有する。また、そのバス６６に対し、例えばＩ／Ｏインタフェース６４経由で、記憶装置６８や、通信手段を介して他の装置とのデータの授受を行う通信部７０などが接続される。上述の各種の実施形態の処理内容が記述されたプログラムが記憶装置６８に記憶され、記憶されたプログラムがメモリ６２に読み出されＣＰＵ６０により実行されることにより、実施形態の処理が実現される。
【符号の説明】
【００７６】
１  端末装置、２ａ，２ｂ，２ｃ，２ｄ  サーバ、３ａ，３ｂ  ネットワーク、４０  送信装置、４２  ファイル名設定手段、４４  確認用ファイル生成手段、４６  送信手段、４８  通知情報処理手段、５０  受信装置、５２  受信手段、５４  ファイル処理実行手段、５６  確認処理手段、５８  通知手段、６０  ＣＰＵ、６２  メモリ、６４  インタフェース、６６  バス、６８  記憶装置、７０  通信部。
【図１】
2010191848.tif 000003
【図２】
2010191848.tif 000004
【図３】
2010191848.tif 000005
【図４】
2010191848.tif 000006
【図５】
2010191848.tif 000007
【図６】
2010191848.tif 000008