(57)【特許請求の範囲】
【請求項１】
電子メール（Ｅメール）メッセージの受信者または送信者に関する送信前データをキャッシュするための方法であって、クライアントコンピュータが、
Ｅメールメッセージの作成前に前記Ｅメールメッセージの受信者に関連するデータを含む１つまたは複数の受信者メールチップを取り出すステップと、
ウェブサービスから、前記Ｅメールメッセージの送信者に関するデータを含む１つまたは複数の構成メールチップを取り出すステップと、
前記受信者メールチップおよび前記構成メールチップを、前記受信者メールチップおよび前記構成メールチップをそれぞれキャッシュした時間を示すタイプスタンプとともにキャッシュするステップと、
前記タイムスタンプに基づいて、前記受信者メールチップおよび前記構成メールチップを取り出してから所定の時間期間が経過したかどうかを判断するステップと、
前記受信者メールチップおよび前記構成メールチップの少なくとも一方について前記所定の時間期間が経過したと判断したことに応答して、前記受信者メールチップおよび前記構成メールチップの少なくとも一方の更新されたメールチップを前記ウェブサービスから取り出してキャッシュするステップと
を含むことを特徴とする方法。
【請求項２】
前記受信者メールチップは、前記Ｅメールメッセージの受信者のメールボックスがいっぱいであることの指示、または前記Ｅメールメッセージの送信者が、前記Ｅメールメッセージが送信される制限付き受信者に前記Ｅメールメッセージを送信するための権限を有しないことの指示のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記Ｅメールメッセージの作成中に前記受信者メールチップを表示するステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記構成メールチップは、前記Ｅメールメッセージのサイズが、前記Ｅメールメッセージの送信者のメールボックスに関連する送信制限を超えていることの指示を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記Ｅメールメッセージの作成中に前記構成メールチップを表示するステップをさらに含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記１つまたは複数の受信者メールチップは、前記Ｅメールメッセージの前記受信者のＥメールアドレスの決定に応答して取り出されることを特徴とする請求項５に記載の方法。
【請求項７】
コンピュータによって実行されると、前記コンピュータに、
電子メール（Ｅメール）メッセージの作成前に、サーバコンピュータから前記Ｅメールメッセージの送信者に関連する１つまたは複数の構成メールチップを取り出すことと、
前記Ｅメールメッセージの作成中に前記Ｅメールメッセージの受信者に対応する１つまたは複数の受信者メールチップを前記サーバコンピュータから取り出すことと、
前記構成メールチップおよび前記受信者メールチップをキャッシュに格納することであって、前記構成メールチップおよび前記受信者メールチップをそれぞれ前記キャッシュに格納した時間を示すタイムスタンプとともに格納することと、
前記構成メールチップおよび前記受信者メールチップを表示することと、
前記タイムスタンプに基づいて、前記サーバコンピュータから前記構成メールチップおよび前記受信者メールチップを取り出してから所定の時間期間が経過したかどうかを判断することと、
前記構成メールチップおよび前記受信者メールチップの少なくとも一方について前記所定の時間期間が経過したと判断したことに応答して、前記構成メールチップおよび前記受信者メールチップの少なくとも一方の更新されたメールチップを前記サーバコンピュータから取得して前記キャッシュ内に格納することと
を実行させるコンピュータ実行可能命令を記憶したことを特徴とするコンピュータ記憶媒体。
【請求項８】
前記コンピュータに、
次のＥメールメッセージ作成中に第２の受信者の識別を受信することと、
前記第２の受信者に対応する受信者メールチップが前記キャッシュに格納されているかどうかを判断することと、
前記第２の受信者に対応するメールチップが前記キャッシュに格納されていると判断したこと応答して、前記第２の受信者に対応する受信者メールチップを前記キャッシュから取り出し、該取り出した受信者メールチップを表示することと
を実行させるコンピュータ実行可能命令をさらに記憶したことを特徴とする請求項７に記載のコンピュータ記憶媒体。
【請求項９】
前記受信者メールチップは、前記Ｅメールメッセージの受信者のメールボックスがいっぱいであることの指示、または前記Ｅメールメッセージの送信者が、前記Ｅメールメッセージが送信される制限付き受信者に前記Ｅメールメッセージを送信するための権限を有しないことの指示のうちの少なくとも１つを含むことを特徴とする請求項８に記載のコンピュータ記憶媒体。
【請求項１０】
前記構成メールチップは、前記Ｅメールメッセージのサイズが、前記Ｅメールメッセージの送信者のメールボックスに関連する送信制限を超えていることの指示を含むことを特徴とする請求項９に記載のコンピュータ記憶媒体。
【請求項１１】
前記１つまたは複数の受信者メールチップは、前記Ｅメールメッセージの前記受信者のＥメールアドレスの決定に応答して取り出されることを特徴とする請求項１０に記載のコンピュータ記憶媒体。
【請求項１２】
電子メール（Ｅメール）メッセージの受信者または送信者に関する送信前データをキャッシュするための方法であって、クライアントコンピュータが、
Ｅメールメッセージの作成前に、ウェブサービスと通信して、前記Ｅメールメッセージの送信者に関連するデータを含む１つまたは複数の構成メールチップを取得するステップと、
前記Ｅメールメッセージの作成中に、前記Ｅメールメッセージの受信者に関連するデータを含む１つまたは複数の受信者メールチップを前記ウェブサービスから取得するステップと、
前記受信者メールチップおよび前記構成メールチップをメールチップキャッシュに格納するステップであって、前記受信者メールチップおよび前記構成メールチップをそれぞれ前記メールチップキャッシュに格納した時間を示すタイムスタンプとともに格納するステップと、
前記Ｅメールメッセージの作成中に、前記受信者メールチップおよび前記構成メールチップを表示するステップと、
第２のＥメールメッセージ作成中に、前記第２のＥメールメッセージの受信者に対応する受信者メールチップが前記メールチップキャッシュに格納されているかどうかを判断するステップと、
前記第２のＥメールメッセージの受信者に対応する受信者メールチップを前記メールチップキャッシュから取り出すステップと、
前記第２のＥメールメッセージ作成中に、前記対応する受信者メールチップを表示するステップと、
前記タイムスタンプに基づいて、前記ウェブサービスから前記構成メールチップおよび前記受信者メールチップを取得してから所定の時間期間が経過したかどうかを判断するステップと、
前記構成メールチップおよび前記受信者メールチップの少なくとも一方について前記所定の時間期間が経過したと判断したことに応答して、前記構成メールチップおよび前記受信者メールチップの少なくとも一方の更新されたメールチップを前記ウェブサービスから取得して前記メールチップキャッシュに格納するステップと
を含むことを特徴とする方法。
【請求項１３】
前記１つまたは複数の受信者メールチップは、前記Ｅメールメッセージの前記受信者のＥメールアドレスの決定に応答して前記ウェブサービスから取り出されることを特徴とする請求項１２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子メールメッセージの送信者または受信者に関連する送信前データ（pre-send data）のキャッシュおよび公開に関する。
【背景技術】
【０００２】
電子メール（「Ｅメール」）システムの非同期性が原因で、Ｅメールメッセージが、意図した受信者にうまく配信されない可能性がある。この点で、Ｅメールメッセージの配信は、様々な理由で失敗することがある。例えば、送信者または受信者のメールボックスに対して大きすぎるＥメールメッセージが送信されることや、受信者のメールボックスがいっぱいであること、またはＥメールメッセージの宛先となる受信者が多すぎることなどにより、送信が禁じられることがある。さらに、Ｅメールの送信者はしばしば、Ｅメールメッセージを作成するときに、厄介な犠牲の大きい間違いを犯すことがある。例えば、プライベートのＥメールメッセージを多くの受信者に誤って送ってしまうことや、機密資料を含むＥメールメッセージを組織外の受信者に不注意で送ってしまうことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
このような場合のどちらも、送信者が間違いに気付くことができるのはＥメールメッセージを送信した後である。これらの考慮事項および他の事項に関して本開示を提示する。
【課題を解決するための手段】
【０００４】
Ｅメールメッセージの送信者または受信者に関する送信前のデータをキャッシュして公開する（expose）ための技術を本明細書に説明する。特に本明細書で提示される技術の使用を通じて、Ｅメールメッセージの送信に関連して起こり得るリスクをＥメールの送信者に警告するデータ、またはＥメールメッセージ配信の失敗の原因となり得る条件を、Ｅメールメッセージ作成中に取り出して、キャッシュし、Ｅメール送信者に公開する。そのような情報の使用を通じてＥメール送信者は、Ｅメールメッセージから受信者を削除することを選択すること、あるいはメッセージを送信しないことを選択することができる。
【０００５】
本明細書で提示される一態様によると、Ｅメールメッセージ作成中に、Ｅメールチップ（以下、「メールチップ（mail tip）」と称する）を取り出してキャッシュし、Ｅメール送信者に公開するように構成されたメールクライアントプログラムが提供される。メールチップは、Ｅメールメッセージの送信者または受信者に関連するプロパティであって、Ｅメールメッセージの送信に先立ってＥメール送信者に公開されるプロパティである。メールチップのカテゴリーの１つは、本明細書で受信者メールチップ（recipient mail tip）と呼ばれ、Ｅメールメッセージの受信者に関連する。例えば、受信者メールチップは、受信者のメールボックスがいっぱいであるとき、受信者が受信可能な最大メッセージサイズ、または受信者が現在職場を不在にしていること（「ＯＯＦ：out of office」）を示すことができる。メールチップの別のカテゴリーは構成メールチップ（configuration recipient mail tip）と呼ばれ、Ｅメールメッセージの送信者に関連する。構成メールチップは、例えば、Ｅメール送信者が送信しようとするＥメールメッセージが大きすぎること、作成されているＥメールメッセージによって、Ｅメール送信者のメールボックスが送信限度を超えることとなることを示すことができる。
【０００６】
他の態様によると、メールクライアントプログラムは、クライアントコンピュータにおいて受信者メールチップおよび構成メールチップをキャッシュするように構成される。具体的には、一実施形態において、メールクライアントプログラムが起動されると、構成メールチップをサーバコンピュータから取り出してクライアントコンピュータに格納する。Ｅメールメッセージの各受信者が識別されると、受信者メールチップをサーバコンピュータから取り出してクライアントコンピュータにキャッシュする。例えば、Ｅメール送信者がＥメール受信者の名前を提供したときに、そのＥメール受信者の受信者メールチップがサーバコンピュータから取り出されてキャッシュされ、Ｅメール送信者に表示される。次のＥメールメッセージを作成するときは、メールチップをサーバコンピュータから取り出す代わりに、クライアントコンピュータにキャッシュされたＥメール受信者のメールチップが利用される。
【０００７】
他の態様によると、キャッシュされたメールチップは、周期的に更新することができる。例えば、構成メールチップが最後に取り出されてから所定の時間時間（例えば、２４時間）が経過すると、更新された構成メールチップを取り出してキャッシュすることができる。頻繁に変化する傾向のある或る特定の受信者メールチップのキャッシュを、所定の時間期間の経過後に更新することもできる。クライアントプログラムがオフラインのとき、またはサーバコンピュータと接続を確立できないときに、構成メールチップおよび受信者メールチップのキャッシュを利用することもできる。
【０００８】
他の態様によると、メールチップをＥメール送信者にメールチップを公開するためのユーザインタフェースが提供される。上述の主題は、コンピュータ制御される装置、コンピュータプロセス、コンピューティングシステム、またはコンピュータ読取可能媒体などの製品として実装することもできることを理解されたい。これらの特徴および他の様々な特徴は、下記の詳細な説明を読むことおよび関連する図面の検討から明らかになるであろう。
【０００９】
この課題を解決するための手段の記載は、以下の発明の詳細な説明でさらに説明される概念の選択を簡略化した形で紹介するために提供されるものである。この課題を解決するための手段の記載は、特許請求される主題の重要な特徴または本質的な特徴を特定するようには意図されておらず、この課題を解決するための手段の記載が、特許請求される主題の範囲を限定するのに使用されることも意図されていない。さらに、特許請求される主題は、本開示の任意の箇所に記載されるいずれかのまたは全ての不利点を解決する実装には限定されない。
【図面の簡単な説明】
【００１０】
【図１】本明細書で提示される実施形態によって提供される例示的な動作環境および幾つかのソフトウェアコンポーネントの態様を示すネットワークおよびソフトウェアアーキテクチャを示す図である。
【図２】本明細書で提示される様々な実施形態において、メールチップを取り出し、キャッシュし、公開し、更新するためのメールクライアントの動作を示すフロー図である。
【図３】本明細書で提示される様々な実施形態において、メールチップを取り出し、キャッシュし、公開し、更新するためのメールクライアントの動作を示すフロー図である。
【図４】本明細書で提示される様々な実施形態において、メールチップを取り出し、キャッシュし、公開し、更新するためのメールクライアントの動作を示すフロー図である。
【図５】本明細書で提示される様々な実施形態において、メールチップを取り出し、キャッシュし、公開し、更新するためのメールクライアントの動作を示すフロー図である。
【図６】本明細書で提示される実施形態において、メールチップをＥメール送信者に公開し、メールチップの表示を構成するための様々なユーザインタフェースを示すスクリーンディスプレイの図である。
【図７】本明細書で提示される実施形態において、メールチップをＥメール送信者に公開し、メールチップの表示を構成するための様々なユーザインタフェースを示すスクリーンディスプレイの図である。
【図８】本明細書で提示される実施形態において、メールチップをＥメール送信者に公開し、メールチップの表示を構成するための様々なユーザインタフェースを示すスクリーンディスプレイの図である。
【図９】本明細書で提示される実施形態の態様を実装することができるコンピューティングシステムのための例示的なコンピュータハードウェアおよびソフトウェアアーキテクチャを示すコンピュータアーキテクチャの図である。
【発明を実施するための形態】
【００１１】
本明細書では、Ｅメールメッセージの送信者または受信者に関連する送信前データをキャッシュおよび公開するための技術を提示する。本明細書で説明される主題は、コンピュータシステムにおけるオペレーティングシステムおよびアプリケーションプログラムの実行とともに実行されるプログラムモジュールの一般的なコンテキストで提示されるが、当業者には、他のタイプのプログラムモジュールとの組み合わせで他の実装を実施することができることが認識されよう。一般的に、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、および特定のタスクを実行するか特定の抽象データ型を実装する他のタイプの構造を含む。さらに、当業者には、本明細書で説明される主題を、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどの他のコンピュータシステム構成を用いて実施することができることが認識されよう。
【００１２】
下記の詳細な説明では、説明の一部であり、特定の実施形態または実施例の説明のために示されている添付図面を参照する。いくつかの図面を通して同様の参照番号が同様の要素を表す図面を参照して、Ｅメールメッセージの送信者または受信者に関連する送信前データをキャッシュおよび公開するためのコンピューティングシステムおよび方法の態様について説明する。
【００１３】
図１に移ると、本明細書で提示される実施形態によって提供される、例示的なオペレーティング環境およびいくつかのソフトウェアコンポーネントの詳細が提示されている。具体的には、図１は、Ｅメールメッセージ１１４の送信者または受信者に関連する送信前データをキャッシュし、公開することができるシステム１００の態様を示している。システム１００は、クライアントコンピュータ１０２と、サーバコンピュータ１０４とを含む。図１に示されるように、クライアントコンピュータ１０２およびサーバコンピュータ１０４は、ネットワーク１０６などの１つまたは複数のローカルネットワークまたは広域ネットワークで相互に接続される。図１に図示されるネットワーク接続より多くのネットワーク接続を利用してもよいことを理解されたい。図１には単一のクライアントコンピュータ１０２と単一のサーバコンピュータ１０４のみを図示しているが、実施形態においてより多くのそのようなコンピューティングシステムを利用してもよいことも理解されたい。
【００１４】
図１に示されるように、クライアントコンピュータ１０２は、メールクライアント１０８を実行するように構成される。当技術分野では公知のように、メールクライアント１０８は、本明細書では送信者と呼ばれるクライアントコンピュータ１０２のユーザが、メールメッセージ１１４を作成し、送信するのを可能にするように構成されたコンピュータプログラムである。メールクライアント１０８がメールメッセージ１１４を送信するためには、サーバコンピュータ１０４上で実行されるメールサーバプログラム１１０とともに動作しなければならない。
【００１５】
メールサーバプログラム１１０は、メールクライアント１０８からメールメッセージ１１４を送信する要求を受信して、意図された受信者への配信のために適切なサーバコンピュータを通じてメールメッセージ１１４をリレーするように構成される。メールクライアント１０８は、メールサーバ１１０とともに動作して、クライアントコンピュータ１０２のユーザのためにメールメッセージを受信するようにも構成される。この点に関しては、メールサーバ１１０は、クライアントコンピュータ１０２のユーザに対する着信メッセージおよび送信メッセージを格納するためのメールボックス１１２を保持することができる。メールクライアント１０８およびメールサーバ１１０が、本明細書で提示される機能の他に、メールメッセージの送受信に関連する多くの追加の機能を提供することができることを理解されたい。メールクライアント１０８の一例は、ワシントン州レドモンドのマイクロソフト社のＯＵＴＬＯＯＫメールクライアントである。メールサーバ１１０の一例は、同じくマイクロソフト社のＥＸＣＨＡＮＧＥメールサーバである。しかしながら、本明細書で提示される実施形態を、他のベンダーのメールクライアントやメールサーバで利用することができることを理解されたい。
【００１６】
簡単に上述したように、本明細書で提供されるメールクライアント１０８は、Ｅメールメッセージの作成中に１つまたは複数のメールチップを取り出し、キャッシュし、およびＥメール送信者に公開するように構成される。メールチップは、Ｅメールメッセージの送信者または受信者に関連し、およびＥメールメッセージを送信するのに先立ってＥメール送信者に公開されるプロパティである。Ｅメールを送信するのに先立ってＥメールメッセージ送信者にメールチップを公開することによって、ユーザは、メッセージを実際に送信する前に、メッセージを送信すると起こりうることを認識することができる。したがって、ユーザは、情報を得た上で決定を行うことができ、Ｅメールメッセージの受信者を変更すること、またはメッセージを送信しないという選択をすることができる。
【００１７】
メールチップのカテゴリーの１つは、本明細書では受信者メールチップと呼ばれ、Ｅメールメッセージの受信者に関連する。例えば、受信者メールチップは、受信者メールボックスがいっぱいであるとき、ユーザが制限付き配信リストまたはメールボックスにＥメールを送る権利を有しないとき、送信メッセージのサイズが、受信者が受信できる最大メッセージサイズよりも大きいとき、あるいは認証できないＥメールアドレスドメインが入力されたときを示すことができる。受信者メールチップの別の例には、受信者のＥメールアドレスが送信者の組織に属さないとき、配信リストがその組織に属さない１つまたは複数のＥメールアドレスを含むとき、配信リストのメンバーの数が所定の値より多いとき、配信リストが、該配信リストのメンバーにメッセージをリレーする前にそのメッセージをレビューしてフィルタリングするモデレータ（moderator）を有するとき、受信者が職場を不在にしていることを示したとき、配信リストまたはメールボックスがユーザ定義されたカスタムメッセージを有するとき、内部Ｅメールアドレスを認証することができないとき、あるいは大きなメッセージが多くの受信者に送信されようとしているときを示すメールチップが含まれる。
【００１８】
本明細書で構成メールチップと呼ばれる別のカテゴリーのメールチップは、Ｅメールメッセージの送信者に関連するメールチップである。構成チップは、例えば、Ｅメール送信者によって送信されることとなるＥメールメッセージが大きすぎること、または作成されているＥメールメッセージによりＥメール送信者のメールボックスがその送信限度を超えることとなることを示すことができる。上述の受信者メールチップおよび構成メールチップは、例示的なものにすぎず、Ｅメールメッセージの送信者または受信者に関連する任意の他の情報を、本明細書に説明されるメールチップの形でユーザに提示することができることを理解されたい。
【００１９】
メールメッセージ１１４の作成前または作成中に、クライアントコンピュータ１０２のユーザにメールチップを提示するために、メールクライアント１０８は、サーバコンピュータ１０４で動作するウェブサービス１１６とともに動作するように構成される。ウェブサービス１１６は、Ｅメールメッセージ１１４の送信者または受信者に関連付けられたメールチップに関するコールを、メールクライアント１０８から受信して応答する。特に、ウェブサービス１１６はメールチップデータストア１１８を保持する。構成メールチップ１２０は、Ｅメール送信者に対応するデータストア１１８に格納される。受信者メールチップ１２２も、様々な受信者に対応するデータストア１１８に格納される。
【００２０】
本明細書で提示される一実施形態において、メールクライアント１０８は、構成メールチップ１２０および受信者メールチップ１２２をウェブサービス１１６から受信し、そのメールチップをクライアントコンピュータ１０２においてキャッシュするように動作する。メールチップをキャッシュすることによって、メールクライアント１０８は、メールメッセージ１１４の作成中にネットワーク１０６を介して送信されるトラフィック量を軽減することができる。
【００２１】
一実装において、メールクライアント１０８は、ウェブサービス１１６から受信したメールチップを、メールチップキャッシュ１２６に格納する。一実装によると、構成メールチップ１２０は、クライアントコンピュータ１０２のレジストリに格納される。この実施形態において、受信者メールチップ１２２は、クライアントコンピュータ１０２のランダムアクセスメモリに格納される。しかしながら、メールチップキャッシュ１２６を、他の実施形態で他の手法により格納すること、例えばクライアントコンピュータ１０２の大容量記憶装置などに格納することができることを理解されたい。ウェブサービス１１６から取り出されたメールチップを保持するための他の機構が、クライアントコンピュータ１０２によって利用されることもある。
【００２２】
下記に詳述されるように、本明細書で提示される一実施形態において、メールクライアント１０８は、メールクライアント１０８が開始されるときに構成メールチップ１２０をウェブサービス１１６から取り出すように構成される。しかしながら、構成メールチップ１２０を、メールメッセージ１１４の作成の前の任意のときにウェブサービス１１６から取り出すこともできることを理解されたい。別の態様によると、受信者メールチップ１２２は、Ｅメールメッセージ１１４の各受信者がクライアントコンピュータ１０２のユーザによって識別されると、ウェブサービス１１６から取り出される。例えば、受信者メールチップ１２２は、送信者が各Ｅメール受信者の名前を提供したときに、ウェブサービス１１６から取り出され、メールチップキャッシュ１２６に格納され、そしてクライアントコンピュータ１０２のユーザに表示されることもある。諸実施形態においては、Ｅメール受信者の名前を決定（resolve）するために、ディレクトリサービス１２４をサーバコンピュータ１０４で実行することができる。一実施形態において、ディレクトリサービス１２４の使用などによりＥメール受信者が決定されるまで、受信者メールチップ１２２はウェブサービス１１６から取り出されない。
【００２３】
次のＥメールメッセージを作成するとき、ウェブサービス１１６から再びメールチップを取り出す代わりに、メールチップキャッシュ１２６に格納されているメールチップを利用する。例えば、ある受信者に対する受信者メールチップ１２２が、以前にキャッシュされていた場合、次のメールメッセージ１１４でその受信者を識別すると、ウェブサービス１１６から新たな受信者メールチップ１２２を取得するのではなく、メールチップキャッシュ１２６に格納された受信者メールチップを利用する。
【００２４】
下記にも詳述するように、メールチップキャッシュ１２６に格納されたメールチップを、定期的に更新することができる。例えば、構成メールチップ１２０を最後に取り出してから所定の時間期間が経過すると、更新された構成メールチップ１２０をウェブサービス１１６から取り出すことができる。例えば、一実装では、構成メールチップ１２０を、２４時間以上キャッシュする。２４時間が経過して、メールサーバ１１０との最初のセッションが確立されると、構成メールチップ１２０はリフレッシュされる。構成メールチップ１２０が最後にキャッシュされてから２４時間が経過し、ユーザが、まだ同じセッションにいる場合、メールチップキャッシュ１２６に格納された構成メールチップ１２０がクリアされ、ウェブサービス１１６に対して、更新された構成メールチップ１２０を求めるクエリが行われることとなる。同様に、一実施形態においては、メールクライアント１０８がシャットダウンされるたびに、受信者メールチップ１２２がクリアされる。
【００２５】
頻繁に変わる可能性がある或る特定の受信者メールチップ１２２を、所定の時間期間が経過すると更新することもできる。例えば、メールボックスの満杯状態に対応するメールチップ、およびユーザが職場にいないことに対応するメールチップを、例えば１時間などの所定の期間が経過すると、ウェブサービス１１６からリフレッシュすることができる。他のメールチップを同様にリフレッシュすることもできる。そのようなスケジュールでこれらのメールチップをリフレッシュするために、これらのメールチップのメールチップキャッシュ１２６内にタイムスタンプを格納することができる。構成メールチップ１２０および受信者メールチップ１２２の取り出し、キャッシュ、表示、更新に関するさらなる詳細は、以下で図２〜図８に関連して提供される。
【００２６】
他の態様によると、メールクライアント１０８がオフラインであり、メールサーバ１１０およびウェブサービス１１６に対する接続が確立できないとき、メールチップキャッシュ１２６の一部を利用することができる。例えば、メールクライアント１０８がオフラインのとき、メールチップキャッシュ１２６に格納されている構成メールチップ１２０を直接利用することができる。メールクライアント１０８がオフラインのときに受信者メールチップ１２２を使用するために、受信者メールチップ１２２をオフラインアドレス帳１２８に格納することができる。図１に示されるように、オフラインアドレス帳１２８は、Ｅメールアドレスを含め複数の連絡先１３０を識別し、受信者メールチップ１２２も含むこともできる。メールクライアント１０８がオンライン状態に戻ると、更新されたメールチップをウェブサービス１１６から取り出すことができる。
【００２７】
図２を参照して、Ｅメールメッセージの送信者または受信者に関連する送信前データをキャッシュして公開するために本明細書で提示される実施形態に関するさらなる詳細を提供する。具体的には、図２は、構成メールチップ１２０を取り出してキャッシュするためのメールクライアント１０８の動作の態様を示すフロー図である。本明細書で説明される論理的動作は、（１）コンピューティングシステム上で実行される、コンピュータ実装される一連のアクトまたはプログラムモジュール、および／または（２）コンピューティングシステム内の相互接続されたマシン論理回路もしくは回路モジュールとして、実装されることを理解されたい。実装は、コンピューティングシステムの性能および他の要件に応じた選択事項である。従って、本明細書で説明される論理的動作は、状態動作、構造装置、アクト、またはモジュールなど様々に称される。これらの動作、構造装置、アクト、およびモジュールを、ソフトウェア、ファームウェア、専用デジタル論理、およびそれらの任意の組み合わせで実装することができる。図面に示され、本明細書で説明されるものよりも多くの動作または少ない動作を実行することができることも理解されたい。これらの動作を、本明細書で説明される順序とは異なる順序で実行することもできる。
【００２８】
ルーチン２００は動作２０２で始まり、動作２０２で、ユーザはクライアントコンピュータ１０２においてメールクライアント１０８を起動する。メールクライアント１０８が起動されると、ルーチン２００は、動作２０４に進み、動作２０４で、構成メールチップ１２０が最後に取り出されてから、所定の期間が経過したかどうかの判断が行われる。上述のように、この所定の期間は、一実装では２４時間に設定される。しかしながら、メールチップキャッシュ１２６に格納された構成メールチップ１２０のリフレッシュをトリガするために、任意の所定時間を設定することができることを理解されたい。動作２０４で、メールクライアント１０８が、所定の期間が経過していないと判断すると、ルーチン２００は動作２１６に進み、ルーチン２００は終了する。しかしながら、所定の期間が経過している場合、ルーチン２００は動作２０４から動作２０６に進む。
【００２９】
動作２０６で、ウェブサービス１１６が利用可能かどうかの判断が行われる。ウェブサービス１１６が現在利用可能でない場合、ルーチン２００は動作２０６から動作２０８に進み、動作２０８で、ウェブサービス１１６が利用可能でないことがメールクライアント１０８に通知される。さらに、例えば１５分などの所定の時間期間が経過すると、ウェブサービス１１６に再クエリを行う。ウェブサービス１１６に再クエリを行うと、ルーチン２００は動作２０９に進み、動作２０９で、ウェブサービス１１６が利用可能かどうかのさらなる判断が行われる。ウェブサービス１１６が利用可能でない場合、ルーチン２００は、上述のように動作２０９から動作２０８に進む。ウェブサービス１１６が利用可能である場合、ルーチン２００は動作２０９から動作２１０に進む。動作２０６でメールクライアント１０８が、ウェブサービス１１６が利用可能であると判断すると、ルーチン２００は動作２０６から動作２１０に進む。
【００３０】
動作２１０で、メールクライアント１０８は、ウェブサービス１１６に構成メールチップ１２０を要求する。ルーチン２００は次いで動作２１２に進み、動作２１２で、メールクライアント１０８は、ウェブサービス１１６から構成メールチップ１２０を受信する。構成メールチップ１２０を受信すると、ルーチン２００は動作２１４に進み、動作２１４で、メールクライアント１０８は、構成メールチップ１２０をメールチップキャッシュ１２６に格納する。構成メールチップ１２０が以前にメールチップキャッシュ１２６に格納されていた場合、更新された構成メールチップ１２０を格納する前に以前に格納された構成メールチップ１２０をクリアすることができ、あるいは単に上書きすることもできる。構成メールチップ１２０がメールチップキャッシュ１２６に格納されると、ルーチン２００は、動作２１４から動作２１６に進み、終了する。
【００３１】
図３を参照して、メールクライアント１０８によって実行される、受信者メールチップ１２２を取り出し、キャッシュし、表示するための例示的な動作を示す例示的ルーチン３００を説明する。ルーチン３００は動作３０２で始まり、動作３０２で、メールクライアント１０８のユーザは、新たなメールメッセージ１１４の受信者データを入力する。例えば、ユーザは、意図した受信者の名前を入力することができ、あるいは意図した受信者のＥメールアドレスを直接入力することもできる。
【００３２】
ユーザが受信者データを入力すると、ルーチン３００は動作３０４に進み、動作３０４では、入力された受信者データを有効なＥメールアドレスに変換する試みが行われる。上述のように、ディレクトリサービス１２４を調べることにより、Ｅメールアドレスの決定を試みることができる。別の実施形態によると、メールクライアント１０８によって以前に送信されたメールメッセージ１１４からの情報を格納するニックネームキャッシュ（nickname cache）を利用して、受信者データの決定を補助することもできる。アドレス帳１２８またはサーバコンピュータ１０４に格納されるグローバルアドレス帳を利用して、受信者のＥメールアドレスを決定することもできる。動作３０４から、ルーチン３００は動作３０６に進む。
【００３３】
動作３０６で、受信者データが、一義的に有効なＥメールアドレスに変換されたかどうかの判断を行う。受信者データが一義的に変換されなかった場合、ルーチン３００は動作３０８に進み、動作３０８で、ユーザに、決定プロセス（resolution process）を補助する機会を与える。例えば、ユーザは、受信者データを再タイプすること、または幾つかの受信者のＥメールアドレスのうち１つを選択することが許可される。動作３０６で、受信者データが一義的に変換されたと判断されると、ルーチン３００は動作３０６から動作３１０に進む。
【００３４】
動作３１０で、メールクライアント１０８はウェブサービス１１６に、識別された受信者のＥメールアドレスに対応する受信者メールチップ１２２を要求するクエリを行う。ルーチン３００は次いで動作３１２に進み、動作３１２では、任意のメールチップがＥメールメッセージ１１４の受信者または送信者に該当するかどうかの判断が行われる。メールチップを該当しないとき、ルーチン３００は動作３２０に進み、終了する。任意のメールチップを該当するとき、ルーチン３００は動作３１２から動作３１４に進み、動作３１４で、ウェブサービス１１６から利用可能な受信者メールチップ１２２を取り出し、メールチップキャッシュ１２６に格納する。ルーチン３００は次いで動作３１６に進み、動作３１６で、メールクライアント１０８が、受信者の決定された名前を表示しているかどうかの判断が行われる。決定された名前がまだ表示されていない場合、ルーチン３００は動作３１６に戻る。決定された名前が表示されている場合、ルーチン３００は動作３１８に進み、動作３１８で、メールメッセージの構成メールチップ１２０と受信者メールチップ１２２を表示する。決定動作３１６を行うことにより、メールクライアント１０８は、受信者の決定された名前が表示されるまで、その受信者のメールチップを表示しないことを保証する。メールチップを表示する例示的なユーザインタフェースを、以下で図６〜７に関連して説明する。ルーチン３００は、動作３１８から動作３２０に進み、そこで終了する。
【００３５】
図４を参照して、メールクライアント１０８によって実行される、新たなメールメッセージ１１４を作成するときにメールチップキャッシュ１２６のコンテンツを更新するための例示的な動作を示す例示的なルーチン４００を説明する。簡単に上述したように、メールクライアント１０８は、メールチップキャッシュ１２６に格納された、頻繁に変わる傾向がある或る特定の受信者メールチップ１２２を更新する。これも簡単に上述したように、このことを達成するために、メールクライアント１０８は、メールチップをメールチップキャッシュ１２６に格納するとき、これらのメールチップの各々とともにタイムスタンプを格納する。新たなメールメッセージ１１４が作成されると、このタイムスタンプを調べて、受信者メールチップをウェブサービス１１６からリフレッシュする必要があるかどうかを判断する。図４に図示されるルーチン４００は、本明細書で提示される一実施形態におけるこのプロセスを示している。
【００３６】
動作４０２で、新たなメールメッセージ１１４が作成され、そのメールメッセージの受信者が識別される。ルーチン４００は次いで動作４０４に進み、動作４０４でメールクライアント１０８は、その新たなメールメッセージのいずれかの受信者の受信者メールチップ１２２が、以前にキャッシュされているかどうかを判断する。キャッシュされていなければ、ルーチン４００は動作４１４に進み、そこで終了する。この場合、ウェブサービス１１６に対して、新たなメールメッセージの受信者に対応する任意の受信者メールチップ１２２を要求するクエリが行われ、これらのメールチップは、メールチップキャッシュ１２６に格納されることになる。 
【００３７】
新たなメールメッセージの受信者のいずれかに対する受信者メールチップ１２２が、以前にメールチップキャッシュ１２６に格納されている場合、ルーチン４００は動作４０６に進む。動作４０６で、メールクライアント１０８は、メールチップキャッシュに格納された受信者メールチップ１２２に関するメールチップタイムスタンプのいずれかの期限が切れているかどうかを判断する。期限が切れていた場合、ルーチン４００は動作４０８に進み、動作４０８で、メールクライアント１０８は、更新された受信者メールチップ１２２を求めて、ウェブサービス１１６に再度クエリを行う。次に、ルーチン４００は、動作４１０に進み、そこで、ウェブサービス１１６から取り出された全ての更新された受信者メールチップ１２２をメールチップキャッシュ１２６に格納する。受信者メールチップ１２２に関連付けられたタイムスタンプも、更新された受信者メールチップ１２２がウェブサービス１１６から取り出された時を反映するように更新される。動作４１０から、ルーチン４００は動作４１２に進む。
【００３８】
動作４０６で、メールクライアント１０８が、メールチップのタイムスタンプの期限が切れていないと判断すると、ルーチン４００は動作４１２に進む。動作４１２で、メールチップキャッシュ１２６に格納された、新たなメールメッセージ１１４の受信者の受信者メールチップ１２２が取り出されて表示される。簡単に上述したように、メールチップを表示するためのユーザインタフェースは、以下で図６〜７に関連してさらに詳細に説明する。ルーチン４００は動作４１２から動作４１４に進み、そこで終了する。
【００３９】
図５を参照して、メールクライアント１０８によって実行される、作成したが未送信（unsent）のメールメッセージ１１４のメールチップキャッシュ１２６のコンテンツを更新するためのプロセスを示す例示的なルーチン５００を説明する。このルーチンは、例えば、クライアントコンピュータ１０２のユーザがメールメッセージ１１４を作成し、そのメールメッセージ１１４をすぐに送信しないときに実行される。例えばユーザは、メールメッセージ１１４の受信者を入力し、そして、ある時間の間は他のアクションは行わないが、その新たなメッセージ１１４に対する関心が離れることがある。あるいは、ユーザは、新たなメールメッセージ１１４を作成して、その新たなメールメッセージ１１４の受信者を入力し、その後、クライアントコンピュータ１０２の別のアプリケーションまたはオペレーティングシステムに関心を移すことがある。ユーザがメールメッセージ１１４に戻ると、メールチップキャッシュ１２６のコンテンツを更新することが必要なことがある。図５に図示されるルーチン５００は、これを達成するためにメールクライアント１０８によって実行される１つのプロセスを示す。
【００４０】
ルーチン５００は、動作５０２で始まり、動作５０２においてメールクライアント１０８は、関心が戻った未送信のメールメッセージが、メールチップキャッシュ１２６に受信者メールチップ１２２を以前に格納している受信者を含むかどうかを判断する。未送信のメールメッセージが、受信者の受信者メールチップ１２２を含まない場合、ルーチン５００は動作５０２から動作５１４に進み、そこで終了する。しかしながら、未送信のメールメッセージが、受信者メールチップ１２２を前にキャッシュした受信者を含む場合、ルーチン５００は動作５０４に進む。
【００４１】
動作５０４で、メールクライアント１０８は、再クエリタイマー（re-query timer）の期限が切れているかどうかを判断する。一実装において、再クエリタイマーは、メールクライアント１０８によって、受信者メールチップ１２２を求めてウェブサービス１１６に対する再クエリを行うべきときを示すように設定される。一実施形態においては、時限付き再クエリ（timed re-query）は、メールクライアント１０８によって１時間後に実行される。しかしながら、任意の時間期間を利用することができることを理解されたい。再クエリタイマーの期限が切れていない場合、ルーチン５００は下述するように動作５０４から動作５１２に分岐する。再クエリタイマーの期限が切れている場合、ルーチン５００は、動作５０４から動作５０６に進む。
【００４２】
動作５０６で、メールクライアント１０８は、更新すべき受信者メールチップ１２２に対するメールチップタイムスタンプの期限が切れているかどうかを判断する。上述のように、メールチップタイムスタンプは、頻繁に修正され得る受信者メールチップ１２２に対して、その受信者メールチップ１２２がメールチップキャッシュに格納されるときに設定される。メールチップタイムスタンプの期限が切れていない場合、ルーチン５００は、下述するように動作５０６から動作５１２に進む。しかしながら、メールチップタイムスタンプの期限が切れている場合、ルーチン５００は動作５０６から動作５０８に分岐する。
【００４３】
動作５０８で、メールクライアント１０８は、更新された受信者メールチップ１２２を求めて、ウェブサービス１１６に再クエリを行う。ルーチン５００は次いで動作５１０に進み、動作５１０において、更新された受信者メールチップ１２２を、ウェブサービス１１６から受信してメールチップキャッシュ１２６に格納する。頻繁に変更される受信者メールチップ１２２に関連付けられたタイムスタンプも更新される。ルーチン５００は、動作５１０から動作５１２に進み、動作５１２において、メールクライアント１０８は、未送信のメールメッセージ１１４の受信者のためのキャッシュされた受信者メールチップ１２２を、メールチップキャッシュ１２６から取り出して、それらを表示する。メールチップを表示するための例示的なユーザインタフェースは、以下で図６〜７に関連して説明する。ルーチン５００は、動作５１２から動作５１４に進み、そこで終了する。
【００４４】
図６を参照して、メールクライアント１０８によって提供される例示的なユーザインタフェース６００について説明する。図６に示されるユーザインタフェース６００を、メールメッセージ１１４の受信者を指定する従来的な手法で利用することができる。例えば、図６に示されるように、メールメッセージ１１４の受信者を指定するためのフィールド、件名（subject）を指定するフィールド、メッセージの本文を挿入するためのフィールドが与えられている。実装によると、ユーザインタフェース６００は、メールクライアント１０８によって構成メールチップ１２０と受信者メールチップ１２２をＥメール送信者に対して公開するのにも利用される。
【００４５】
図６に示されるように、ユーザインタフェース６００は、メールチップバーフレーム（mail tip bar frame）６０２を含む。メールチップバーフレームは、メールチップの明示（manifestation）に割り当てられた全体の領域を含む。実施形態によると、メールチップバーフレーム６０２は、表示されているメールチップの重要度に応じて異なる色で表示することができる。さらに、図７に関連して下述するように、複数のメールチップを表示する場合、または単一のメールチップが複数の受信者に該当する場合、メールチップバーフレーム６０２を拡張することができる。
【００４６】
ユーザインタフェース６００は、メールチップアイコン６０４も含む。メールチップアイコン６０４は、表示されているメールチップの重要度に応じて変更することができる。メールチップアイコン６０４の隣にあるのは、メールチップメッセージ６０６である。メッセージ６０６は、対応するメールチップによって報告される問題の影響を伝える。メールチップメッセージ６０６によって説明される問題に対処するアクションをユーザが実行することを可能にする、アクションボタン６０８も与えられている。例えば、図６に示される実装においては、アクションボタン６０８を利用して、メールメッセージ１１４から受信者を削除する（remove recipient）ことができる。他のアクションを提示することもできる。
【００４７】
実施形態によると、Ｅメールアドレスの受信者は、ユーザインタフェース６００で識別される。例えば、メールメッセージ１１４の意図された受信者のうちの１人の名前を示す名前６１０を提供することができる。一実施形態では、受信者メールチップ１２２が該当するメールメッセージの受信者を、ハイライトすること、色付けすること、またはメールチップがその特定のユーザのために存在していることを示すように他の方法で区別することができる。このようにすると、送信者の注意を、受信者名６１０から、メールチップメッセージ６０６が表示されているメールチップバーフレーム６０２に向けさせることができる。メールチップバーフレーム６０２を隠すためのクローズボタン６１２を設けることもできる。
【００４８】
次に図７に移り、図６に関連して上述した構成メールチップ１２０と受信者メールチップ１２２を公開するためのユーザインタフェースに関するさらなる詳細を提供する。簡単に上述したように、２つより多くのメールチップを表示すべき場合、または単一のメールチップが複数の受信者に該当する場合、メールチップバーフレーム６０２を拡張することができる。これは、図７に示されている。具体的には、複数の受信者に対するメールチップメッセージを示すためにメールチップバーフレーム６０２が拡張されている。さらに、多数の受信者に該当する単一のメールチップを一緒に表示することができる。例えば、図７の例においては、メールチップアイコン７０４が、職場不在（out of office）メールチップに対応するメールチップメッセージの隣に表示される。その隣には、複数の受信者によって提供された職場不在のメッセージが表示されている。各メールチップメッセージの隣にアクションボタンが設けられているため、ユーザは、メールメッセージ１１４から対応する受信者を削除することができる。
【００４９】
図８を参照して、クライアントコンピュータ１０２のユーザが、メールクライアント１０８によって表示されるメールチップをカスタマイズすることができる例示的なユーザインタフェース８００について説明する。具体的には、ユーザインタフェース８００は、クライアントコンピュータ１０２のユーザが、メールクライアント１０８によって表示されるべきメールチップを指定することができるようにするユーザインタフェースコントロールを提供する。例えば、ユーザは、メールチップを制限付き配信リストまたは制限付き受信者に表示するかどうかを選択することができる。ユーザは、無効な受信者アドレス、無効な外部ドメイン、受信者にとって大きすぎるメッセージ、送信するのに大きすぎるメッセージ、受信者メールボックスがメールチップでいっぱいであるなどの、配信不可能メッセージメールチップを表示するかどうかを定義することもできる。
【００５０】
ユーザインタフェース８００は、メッセージが大きな配信リストまたは多くの相手（audience）に送信されるとき、大きなメッセージが多くの相手に送信されるとき、受信者が職場不在のとき、外部の受信者が配信リストで識別されるとき、あるいはメールボックス容量を超えそうなときなどに、メールクライアント１０８によって情報メールチップを表示するかどうかをユーザが定義できるようにすることができる。図８にも図示されるように、メールサーバ１１０の管理者は、ユーザインタフェース８００に提示されるオプションをロックすることができる。このように、メールサーバ１１０の管理者は、メールクライアント１０８にメールチップを表示させることができ、あるいはメールクライアント１０８にメールチップが表示させないようにすることもできる。
【００５１】
他の態様によると、ユーザインタフェース８００は、メールクライアント１０８のユーザが、メールチップバーフレーム６０２を常に表示するように指定すること、あるいはメールチップバーフレーム６０２を決して表示しないように指定することを可能にするためのユーザインタフェースコントロールを含む。メールチップがメッセージに該当するときのみメールチップバーフレーム６０２を表示することをユーザが指定することを可能にするユーザインタフェースコントロールを提供することもできる。複数のメールチップが単一のメールメッセージ１１４に該当するときに、メールクライアント１０８に自動的にメールチップバーフレーム６０２を拡張させるオプションを提供することもできる。図６〜図８に示されるユーザインタフェースコントロールおよびレイアウトは、単に例示的なものに過ぎず、他の種類のユーザインタフェースコントロール、レイアウト、およびフォーマットを利用してもよいことを理解されたい。
【００５２】
図９は、クライアントコンピュータ１０２を具現化するのに利用することができる例示的なコンピュータアーキテクチャを示す。具体的には、図９に示されるコンピュータアーキテクチャは、従来のデスクトップコンピュータ、ラップトップコンピュータ、またはサーバコンピュータを示しており、このコンピュータアーキテクチャを利用して、クライアントコンピュータ１０２で実行するとして説明してきた本明細書で提示されるソフトウェアコンポーネントのいかなる態様も実行することができる。図９に示されるコンピュータアーキテクチャを利用してサーバコンピュータ１０４を具現化することもでき、サーバコンピュータ１０４で実行するとして本明細書で説明したソフトウェアコンポーネントを実行することもできることを理解されたい。他の種類のコンピュータアーキテクチャを利用して、本明細書で提示される様々な態様を具現化することもできる。
【００５３】
図９に示されるコンピュータアーキテクチャは、中央処理装置９０２（「ＣＰＵ」）と、ランダムアクセスメモリ９１４（「ＲＡＭ」）および読み取り専用メモリ（「ＲＯＭ」）９１６を含むシステムメモリ９０８と、メモリをＣＰＵ９０２に接続するシステムバス９０４とを含む。起動時などにクライアントコンピュータ１０２内の要素間の情報の伝達を助ける基本ルーチンを含む基本入出力システムは、ＲＯＭ９１６に格納される。クライアントコンピュータ１０２はさらに、オペレーティングシステム９１８、アプリケーションプログラム、および他のプログラムモジュールを格納する大容量記憶装置９１０を含み、これについては以下で詳述する。
【００５４】
大容量記憶装置９１０は、バス９０４に接続された大容量記憶コントローラ（図示せず）を介してＣＰＵ９０２に接続される。大容量記憶装置９１０およびそれに関連するコンピュータ読取可能媒体は、クライアントコンピュータ１０２に不揮発性記憶装置を提供する。ここに含まれるコンピュータ読取可能媒体の記載は、ハードディスクまたはＣＤ−ＲＯＭドライブなどの大容量記憶装置に関するものであるが、コンピュータ読取可能媒体は、クライアントコンピュータ１０２によってアクセス可能な任意の利用可能なコンピュータ記憶媒体とすることができることを当業者は理解されたい。
【００５５】
限定ではなく例として、コンピュータ読取可能媒体は、コンピュータ読取可能命令、データ構造、プログラムモジュールまたは他のデータなどの情報を格納するための任意の方法または技術で実装される、揮発性および不揮発性媒体、取り外しおよび取り外し不能媒体を含むことができる。例えば、コンピュータ読取可能媒体には、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他の固体メモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（「ＤＶＤ」）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ、もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶装置、または所望の情報を記憶するのに使用でき、クライアントコンピュータ１０２によってアクセス可能な任意の他の媒体を含むが、これらには限定されない。
【００５６】
様々な実施形態によると、クライアントコンピュータ１０２は、ネットワーク１０６などのネットワークを介したリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作する。クライアントコンピュータ１０２は、バス９０４に接続されたネットワークインタフェースユニット９０６を介してネットワーク１０６に接続することができる。ネットワークインタフェースユニット９０６を利用して、他の種類のネットワークおよびリモートコンピュータシステムに接続することができることも理解されたい。クライアントコンピュータ１０２は、キーボード、マウス、または電子スタイラス（図９には図示せず）を含め複数の他の装置から入力を受信して処理するための入出力コントローラ９１２を含んでもよい。同様に、入出力コントローラは、ディスプレイ画面、プリンタ、または他の種類の出力装置（図９には図示せず）に出力を提供することができる。
【００５７】
簡単に上述したように、多くのプログラムモジュールおよびデータファイルを、ネットワーク化されたデスクトップコンピュータ、ラップトップコンピュータ、またはサーバコンピュータの動作を制御するのに適切なオペレーティングシステム９１８を含むクライアントコンピュータ１０２の大容量記憶装置９１０およびＲＡＭ９１４に格納することができる。大容量記憶装置９１０およびＲＡＭ９１４は、１つまたは複数のプログラムモジュールを格納することもできる。特に、大容量記憶装置９１０およびＲＡＭ９１４は、図１〜図８に関連してそれぞれ上述したメールクライアント１０８およびメールチップキャッシュ１２６を格納することができる。大容量記憶装置９１０およびＲＡＭ９１４は、他の種類のプログラムモジュールを記録することもできる。
【００５８】
以上に基づいて、Ｅメールメッセージの送信者または受信者に関連する送信前のデータをキャッシュして公開するための技術が本明細書で提供されたことを理解されたい。本明細書に提示される主題は、コンピュータの構造的特徴、方法論的アクト、およびコンピュータ読取可能媒体に特有の言語で説明したが、添付の特許請求の範囲で定義される本発明は必ずしも、本明細書で説明された特定の特徴、アクト、または媒体に限定されないことは理解されよう。むしろ、特定の特徴、アクト、および媒体は、特許請求の範囲を実装する例示的な形式として開示されている。
【００５９】
上述の主題は単に例示として提供されており、限定として解釈されるべきではない。図示および説明した例示的な実施形態や用途に従うことなく、および特許請求の範囲に記載される本発明の真の趣旨および範囲を逸脱することなく、本明細書に記載される主題に対して様々な修正、変更を行うことができる。
【図１】
0005406914.tif 000002
【図２】
0005406914.tif 000003
【図３】
0005406914.tif 000004
【図４】
0005406914.tif 000005
【図５】
0005406914.tif 000006
【図６】
0005406914.tif 000007
【図７】
0005406914.tif 000008
【図８】
0005406914.tif 000009
【図９】
0005406914.tif 000010