(57)【要約】【構成】複数のメールサーバを優先順位と共に登録し、通常は優先順位に従ってメールサーバを選択して送信し、選択したメールサーバに障害が生じた場合、次順位のメールサーバを利用して電子メール送信する。【効果】複数のメールサーバを利用できるので、一部のメールサーバに障害が生じても、他のメールサーバを利用して電子メールを送信できる。【選択図】　　図４
2004078565.tif 000002
【特許請求の範囲】
【請求項１】
メールサーバを介して電子メールの送信を行うクライアントにおいて、
複数のメールサーバをそれらの間の優先順位と共に記憶するための手段を設けて、該記憶手段での優先順位に従いメールサーバを選択して電子メールを送信し、かつ前記選択されたメールサーバを介しての電子メール送信に失敗した場合に、次順位のメールサーバを介して電子メールを再送信する、ように構成したことを特徴とする、電子メールクライアント。
【請求項２】
電子メール送信に失敗した場合に、該失敗の内容に応じて、次順位のメールサーバを選択するか、失敗したメールサーバへ再接続するか、送信を中止するかを判別するようにしたことを特徴とする、請求項１の電子メールクライアント。
【請求項３】
次順位のメールサーバを選択することの可否を、送信者または宛先毎に記憶するための手段、を設けたことを特徴とする、請求項１または２の電子メールクライアント。
【請求項４】
メールサーバを介して電子メールの送信を行うクライアント用のプログラムにおいて、
複数のメールサーバをそれらの間の優先順位と共に記憶するための命令と、記憶した優先順位に従いメールサーバを選択するための命令と、選択されたメールサーバを介しての電子メール送信に失敗した場合に、次順位のメールサーバを選択するための命令とを設けて、選択されたメールサーバを介して電子メールを送信可能にしたことを特徴とする、電子メールクライアント用のプログラム。
【発明の詳細な説明】
【０００１】
【発明の利用分野】
この発明は、インターネットファクシミリ装置などの電子メールクライアントとそれに用いるプログラムに関する。
【０００２】
【従来技術】
インターネットファクシミリ装置などの電子メールクライアントでは、メールサーバを介して電子メールを送信する。ここでメールサーバに障害が生じると、他のメールサーバに設定を変更するまで、電子メールの送信ができなくなる。
【０００３】
【発明の課題】
この発明の課題は、メールサーバに障害が生じても電子メールの送信が不能にならないようにした、電子メールクライアントとそのプログラムとを提供することにある（請求項１〜４）。
請求項２の発明での追加の課題は、メール送信の失敗の原因に応じて、メールサーバを変更するかどうかを、柔軟に対応できるようにすることにある。
請求項３の発明での追加の課題は、重要な電子メールは遅滞なく送信できるようにしながら、予備のメールサーバに過度の負担がかかったりしないようにすることにある。
【０００４】
【発明の構成】
この発明の電子メールクライアントは、メールサーバを介して電子メールの送信を行うクライアントにおいて、複数のメールサーバをそれらの間の優先順位と共に記憶するための手段を設けて、該記憶手段での優先順位に従いメールサーバを選択して電子メールを送信し、かつ前記選択されたメールサーバを介しての電子メール送信に失敗した場合に、次順位のメールサーバを介して電子メールを再送信する、ように構成したことを特徴とする（請求項１）。
【０００５】
好ましくは、電子メール送信に失敗した場合に、該失敗の内容に応じて、次順位のメールサーバを選択するか、失敗したメールサーバへ再接続する、送信を中止するかを判別する（請求項２）。特に限定するものではないが、例えば、メールサーバへの接続自体に失敗した場合、通信路やメールサーバなどに障害が生じている可能性が高いので、待ち時間が経過するのを待たずに、次順位のメールサーバを選択し、メールサーバへの接続自体は成功したが、通信中に一時的なエラーが生じた場合は、次順位のメールサーバを選択するよりも、同じメールサーバに再接続する。また宛先間違いなどは再送信しても送信できないことが明らかなので、送信を中止する。
【０００６】
また好ましくは、次順位のメールサーバを選択することの可否を、送信者または宛先毎に記憶するための手段を設ける（請求項３）。
【０００７】
この発明のクライアント用のプログラムは、複数のメールサーバをそれらの間の優先順位と共に記憶するための命令と、記憶した優先順位に従いメールサーバを選択するための命令と、選択されたメールサーバを介しての電子メール送信に失敗した場合に、次順位のメールサーバを選択するための命令とを設けて、選択されたメールサーバを介して電子メールを送信可能にしたことを特徴とする（請求項４）。なお電子メールの送信自体は、この発明のプログラムとは別のプログラムなどで処理できるので、この発明のプログラムは電子メールの送信失敗時に次順位のメールサーバを選択するまでの処理を行えればよい。
【０００８】
【発明の作用と効果】
この発明の電子メールクライアントでは、優先順位の高いメールサーバを介しての電子メール送信に失敗しても、次順位のメールサーバを介して送信できるので、優先順位の高いメールサーバに障害が生じても、電子メールの送信が不能にならない（請求項１）。
【０００９】
請求項２の発明では、電子メール送信に失敗した場合、失敗の内容に応じて次順位のメールサーバに接続するか、失敗したメールサーバへ再接続するか、送信を中止するかを判別するので、なるべく優先順位の高いメールサーバを用いながら、メールサーバを変更した方が効率的かどうかを加味して、柔軟にメールサーバを選択できる。また再送信しても成功が見込めないような場合には、送信を中止できるので、無用な送信処理を行うことがない。
【００１０】
請求項３の発明では、送信者あるいは宛先に応じて、次順位のメールサーバを用いることの可否を決定できるので、権限レベルの高い送信者のメールや重要な宛先に対しては速やかに電子メールを送信できるようにしながら、予備のメールサーバに負担がかからないようにするなどのことができる。
【００１１】
この発明のプログラムでは、優先順位の高いメールサーバを介しての電子メール送信に失敗しても、次順位のメールサーバを介して送信できるので、優先順位の高いメールサーバに障害が生じても、電子メールの送信が不能にならないようにできる（請求項４）。
【００１２】
【実施例】
図１〜図６に、実施例を示す。図１に、送信側のメールクライアント２と受信側のメールクライアント１８の間で、電子メールの送受信を行うための環境を示す。メールクライアント２，１８は、例えばインターネットファクシミリ装置やパーソナルコンピュータなどである。またメールクライアント２，１８は、メールサーバ（ＳＭＴＰサーバ）を選択するための、サーバ選択プログラム１９を記憶している。４はＬＡＮで、６はルータで、８はインターネットである。
【００１３】
１０〜１２はＳＭＴＰサーバで、このうちサーバ１０（ＳＭＴＰサーバａ）が優先順位１で通常用いられるメールサーバであり、サーバ１１（ＳＭＴＰサーバｂ）が、次順位で迂回用の予備のメールサーバである。メールサーバ１２（ＳＭＴＰサーバｃ）は３番目の順位のメールサーバで、サーバ１０，１１のいずれもが使用不能な場合に用いるメールサーバである。ここでは迂回用に、予備のメールサーバ１１，１２を２台設けることを示したが、迂回用の予備のメールサーバの台数は任意である。また迂回用の予備のサーバ１１，１２はＬＡＮ４の外に設けたが、ＬＡＮ４の内部にあっても良い。
【００１４】
１４はＤＮＳ（ドメイン名システム）サーバで、サーバ１１，１２などのＩＰアドレスを知るために必要な場合などに用い、ＤＮＳサーバ１４は設けなくても良い。１６はＰＯＰサーバで、メールクライアント１８宛の電子メールの送信先である。そしてメールクライアント１８はＰＯＰサーバ１６から自機宛の電子メールを読み出すものとする。
【００１５】
図２に、常用と迂回用とのメールサーバのＩＰアドレスを記載したメールサーバリスト２０を示す。このリスト２０は前記のサーバ選択プログラム１９で必要なデータであり、選択プログラム１９はこのリストを作成・管理するための命令を備えている。そしてメールクライアント２の管理者などは、選択プログラム１９を介して、リスト２０にメールサーバを登録できる。リスト２０には、メールサーバのアドレスを例えばＩＰアドレスで記載しているが、ドメイン名などで記載しても良い。メールサーバリスト２０には、メールクライアント２が使用可能なメールサーバのＩＰアドレスとその優先順位とが記載され、メールクライアント２から書き換えができ、優先順位１のメールサーバが通常に用いられ、このメールサーバを介しての電子メール送信ができない場合、次順位のメールサーバが用いられ、以下同様にさらに次順位のメールサーバが選択される。
【００１６】
図３は迂回許可テーブル２２を示し、このテーブル２２はサーバ選択プログラム１９のデータであり、送信者毎に迂回（予備のメールサーバを用いて送信すること）の可否を記載し、同様に宛先毎に迂回の可否を指定してある。テーブル２２では送信者と宛先の双方に対して迂回の可否を記載したが、これらの一方のみを記載しても良い。実施例では、送信者もしくは宛先の一方が迂回可に該当すると迂回可能なものとしたが、これに限るものではない。さらに迂回許可テーブルは、サーバ選択プログラムの命令を介して、メールクライアント２などで作成と書き替えが可能である。
【００１７】
例えばテーブル２２では、送信者Ａは迂回可で、ＳＭＴＰサーバａに障害が生じた場合、ＳＭＴＰサーバｂ，ｃを用いて電子メール送信ができる。送信者Ｄも同様であるが、送信者Ｘは迂回ができず、ＳＭＴＰサーバａを介しての電子メール送信に失敗した場合、同じＳＭＴＰサーバａを介して再送信を試みることになり、ＳＭＴＰサーバａに一時的でない障害があると、復旧まで電子メール送信ができない。これは送信者の権限によって迂回の可否を決定し、電子メールの送信管理を容易にするためである。例えば迂回用のメールサーバ１１，１２の負荷が通常でも大きい場合、送信者の権限レベルなどに応じてメールサーバ１１，１２の選択の可否を制限すると、予備のメールサーバ１１，１２が濫用されることを防止できる。
【００１８】
電子メールの宛先に関して、宛先ａや宛先ｂは迂回可で、ＳＭＴＰサーバａに障害があった場合、ＳＭＴＰサーバｂ，ｃを用いてメール送信できる。しかし宛先ｎに関しては迂回ができない。これは宛先毎に迂回の可否を定め、メール送信の管理を容易にするためで、特に重要な宛先には電子メール送信の遅滞を防止しながら、他の宛先には迂回用のメールサーバの濫用を防止できる。
【００１９】
図４，図５に、ＳＭＴＰサーバの変更手続を示す。送信側のメールクライアントは、通常のＳＭＴＰサーバ（優先順位１のメールサーバ）に対して、ＴＣＰ（トランスミッション・コントロール・プロトコール）接続し、ＴＣＰ接続のログを作成する（ステップ１）。ＴＣＰ接続に成功した場合（ステップ２）、結合子▲１▼から図５のステップ３に移行し、選択されたＳＭＴＰサーバ、ここでは通常のＳＭＴＰサーバ、にＳＭＴＰ送信し、ＳＭＴＰ送信のログを作成する（ステップ３）。そしてＳＭＴＰ送信に成功すれば、電子メール送信に成功したものとして、終了する（ステップ４）。
【００２０】
ＳＭＴＰ送信に失敗した場合、エラーの内容に応じて処理を分岐する（ステップ５）。例えば宛先エラーで、指定された宛先にメール送信が不可能な場合、その旨のメッセージの出力などを行い（ステップ６）、再送せずに終了する。宛先エラーが生じるのは、宛先の電子メールアドレスが誤って入力された場合が多い。そこで再送を試みないことにより無駄な送信を減らし、送信者には宛先エラーが生じたことをメッセージし、正しい電子メールアドレスを確認する等の処置が取れるようにする。
【００２１】
ステップ５で、ＳＭＴＰサーバからの応答が得られないなどの場合は、タイマで所定時間（例えば３分間）待ち、同じＳＭＴＰサーバに対して再度ＴＣＰ接続し（ステップ７）、ＳＭＴＰ送信を試みる。このサーバにはＴＣＰ接続には成功しているので、応答がないのは一時的な障害と考えられるからである。次に、ＳＭＴＰサーバへの送信失敗の原因が、コマンドパラメータの不対応、ＳＭＴＰサーバのディスク容量不足、あるいはＳＭＴＰサーバが何らかの原因によりサービスを提供できない、などの場合、ＳＭＴＰサーバを変更する。これらの問題は短時間では解消しにくく、ＳＭＴＰサーバを変更して対応する。この場合、結合子▲２▼から図４のステップ８へ移行する。
【００２２】
ここで迂回の可否は、電子メール送信毎に決定しても良く、あるいは図３の迂回許可テーブル２２などを参照して、送信者の権限や宛先毎に可否を決定しても良い。迂回する場合、図２のメールサーバリスト２０を参照して、次の順位のＳＭＴＰサーバのＩＰアドレスを求め（ステップ９）、次の優先順位のＳＭＴＰサーバに対してＴＣＰ接続する（ステップ１０）。そしてステップ２，ステップ３，ステップ４のルートで、ＳＭＴＰ送信を試みる。
【００２３】
ステップ５から結合子▲２▼を経由する場合の他に、ステップ２でＴＣＰ接続に失敗した場合にも、直ちにステップ８で迂回の可否を判別する。ＴＣＰ接続に失敗した場合、相手のＳＭＴＰサーバとの接続が困難な可能性が高く、ここで所定時間待機すると、電子メール送信が遅滞するので、直ちに迂回の可否を判別する。迂回の可否は、前記の迂回許可テーブルを用い、あるいは送信毎に送信者が決定したりして定める。
【００２４】
ステップ８で迂回しない場合や、ステップ９で次順位のＳＭＴＰサーバがない場合、優先順位１のＳＭＴＰサーバを経由しての再送信を所定の時間毎に所定の回数までトライする。先ずステップ１１で、送信失敗の回数をチェックする。この回数は当該電子メール送信に関するもので、例えば制限回数は１０回とする。そしてＴＣＰ接続の回数が制限回数以下の場合、ステップ１２で所定時間、例えば３分間待ち、再度ＴＣＰ接続とＳＭＴＰ送信とを試みる。所定回数を超えて失敗した場合、ＳＭＴＰサーバのＩＰアドレスが誤っているなどの問題が考えられるので、設定エラーを警告する（ステップ１３）。なお図には示さなかったが、ステップ１３を経由し、しかも迂回が可能な場合、次の順位のメールサーバに対して、同様に所定時間毎に所定回数までの範囲で再送を試みる。ただし迂回が可能な場合、ステップ１１〜１３に移行することはほとんどないはずである。
【００２５】
図４，図５に示したように、ＴＣＰ接続やＳＭＴＰ送信毎に送信ログを作成する。作成された送信ログテーブル２４の例を図６に示す。ログには送信日時と宛先並びに用いたＳＭＴＰサーバとその結果とが記載され、図６の場合、最初のＳＭＴＰサーバに対してＴＣＰ接続に失敗し、直ちに次のＳＭＴＰサーバに変更して送信に成功したことが記載されている。従って、電子メールがどのＳＭＴＰサーバを経由して送信されたかの追跡ができ、送信の信頼性が増す。
【００２６】
実施例では、複数のＳＭＴＰサーバをメールサーバリスト２０に登録し、その優先順位に従ってメールサーバを選択して電子メール送信するので、通常用いているメールサーバに障害が生じても、電子メール送信を行うことができる。また次順位のＳＭＴＰサーバを選択する場合は、待ち時間を実質的に置かずに、次順位のＳＭＴＰサーバに接続するので、電子メール送信が遅れない。送信失敗が一時的な問題である可能性が高い場合は再接続するので、なるべく常用のＳＭＴＰサーバを優先できる。さらに宛先エラーなどのように、ＳＭＴＰサーバを変更しても送信に成功する可能性が低い場合、その旨のメッセージを出力して終了するので、無駄な通信を繰り返すことがない。
【図面の簡単な説明】
【図１】実施例のメールクライアントの使用環境を示すブロック図
【図２】実施例のメールクライアントでの、メールサーバリストを示す図
【図３】実施例のメールクライアントでの、迂回許可テーブルを示す図
【図４】実施例のメールクライアントでの、ＳＭＴＰサーバへのＴＣＰ接続失敗時の処理を示すフローチャート
【図５】実施例のメールクライアントでの、ＳＭＴＰ送信失敗時の処理を示す図
【図６】実施例のメールクライアントでの、送信ログテーブルを模式的に示す図
【符号の説明】
２　　　　　メールクライアント
４　　　　　ＬＡＮ
６　　　　　ルータ
８　　　　　インターネット
１０〜１２　ＳＭＴＰサーバ
１４　　　　ＤＮＳサーバ
１６　　　　ＰＯＰサーバ
１８　　　　メールクライアント
１９　　　　サーバ選択プログラム
２０　　　　メールサーバリスト
２２　　　　迂回許可テーブル
２４　　　　送信ログ
【図１】
2004078565.tif 000003
【図２】
2004078565.tif 000004
【図３】
2004078565.tif 000005
【図４】
2004078565.tif 000006
【図５】
2004078565.tif 000007
【図６】
2004078565.tif 000008