(57)【要約】  電子メールメッセージを特定して、互いに関連付ける技術が、本明細書において説明される。コンピュータシステムで受信されたかまたはコンピュータシステムから送信された電子メールメッセージの件名フィールド及び受信者フィールドの内容が、ハッシュ値を計算されて、データベースに保存される。着信する電子メールメッセージが当該コンピュータシステムで受信されると、その件名フィールド及び受信者フィールドの内容も、ハッシュ値を計算される。次に、着信する電子メールメッセージについて生成された件名ハッシュ値及びアドレスハッシュ値に一致する件名ハッシュ値及びアドレスハッシュ値の十分な数を有する、データベース内で特定された電子メールメッセージを見つけるためにデータベースの検索が行われて、当該メッセージは互いに関連付けられ得る。着信する電子メールメッセージとデータベースの検索の間に見つけられた電子メールメッセージに最も良く一致している電子メールメッセージとの間で互いに関連付けが行われる。
2010526389.tif 000002
【特許請求の範囲】
【請求項１】
着信する電子メールメッセージ（１１４）を特定してデータベース（１１０）内の参照される過去の電子メールメッセージ（１１２）と関連付ける方法であって、
前記着信する電子メールメッセージ（１１４）を受信するステップと、
前記着信する電子メールメッセージ（１１４）を受信するのに応じて、前記着信する電子メールメッセージが前記データベース（１１０）内の過去の電子メールメッセージと関連するかどうかを判断するステップと、
前記着信する電子メールメッセージ（１１４）が前記データベース（１１０）内の過去の電子メールメッセージと関連すると判断すると、前記着信する電子メールメッセージ（１１４）の第１のフィールド（３０２Ａ）及び第２のフィールド（３０２Ｄ）に保存されるデータは前記過去の電子メールメッセージ（１１２）の対応する第１のフィールド及び第２のフィールドについて前記データベース（１１０）内に保存されたデータに十分一致するかどうかを判断して、前記着信する電子メールメッセージ（１１４）を前記過去の電子メールメッセージ（１１２）と関連付け、前記着信する電子メールメッセージ（１１４）の前記第１のフィールド及び前記第２のフィールドに保存されるデータが前記過去の電子メールメッセージ（１１２）の前記対応する第１のフィールド及び前記対応する第２のフィールドについて前記データベース（１１０）内に保存されたデータに十分一致するということを判断すると、前記着信する電子メールメッセージ（１１４）を前記過去の電子メールメッセージと関連付けることを特徴とする方法。
【請求項２】
前記過去の電子メールメッセージの前記第１のフィールド及び前記第２のフィールドに保存されたデータを特定するステップと、
前記過去の電子メールメッセージの前記第１のフィールド及び前記第２のフィールドに保存された前記データについてのハッシュ値を前記データベースに保存するステップと、
を含むことを特徴とする請求項１記載の方法。
【請求項３】
前記第１のフィールドは件名フィールドを含み、前記第２のフィールドは受信者フィールドを含むことを特徴とする請求項１記載の方法。
【請求項４】
コンピュータによって実行されると、前記コンピュータに請求項１記載の方法を実行させるコンピュータ実行可能命令が保存されているコンピュータ可読媒体。
【請求項５】
着信する電子メール（ｅメール）メッセージ（１１４）を特定して、コンピュータシステム（１０２）で受信されかつ当該コンピュータシステム（１０２）から送信される複数の電子メールメッセージ（１１２）のうちの１つと当該着信する電子メールメッセージ（１１４）とを関連付ける方法であって、
前記複数の電子メールメッセージ（１１２）の各々は、件名フィールド（３０２Ｄ）に保存されたコンテンツを有し、電子メールアドレス（３０４）によって１つまたは複数の受信者を特定し、
前記方法は、
前記複数の電子メールメッセージの前記件名フィールド（３０２Ｄ）の前記コンテンツについて１つまたは複数のトークン（３０６）を特定するステップと、
前記トークン（３１６）の各々について件名ハッシュ値（３１８）を生成するステップと、
前記複数の電子メールメッセージの前記受信者の前記電子メールアドレス（３０４）の各々についてアドレスハッシュ値（３１４）を生成するステップと、
前記件名ハッシュ値（３１８）及び前記アドレスハッシュ値（３１４）をデータベース（１１０）に保存するステップと、
着信する電子メールメッセージ（１１４）を受信するステップと、
前記着信する電子メールメッセージ（１１４）の受信に応じて、前記データベース（１１０）内に保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つに関連付けるステップと、
を含むことを特徴とする方法。
【請求項６】
前記データベース内に保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つに関連付けるステップは、
前記着信する電子メールメッセージの件名フィールドの内容について１つまたは複数のトークンを特定するステップと、
前記着信する電子メールメッセージの前記件名フィールドの前記内容についての前記トークンの各々について件名ハッシュ値を生成するステップと、
前記着信する電子メールメッセージの前記受信者の電子メールアドレスの各々についてアドレスハッシュ値を生成するステップと、
前記着信する電子メールメッセージについて生成された前記件名ハッシュ値及び前記アドレスハッシュ値並びに前記データベースに保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つに関連付けるステップと、
を含むことを特徴とする請求項５記載の方法。
【請求項７】
前記件名ハッシュ値及び前記アドレスハッシュ値をデータベースに保存するステップは、前記複数の電子メールメッセージの各々について前記データベースにレコードを保存するステップを含み、
各レコードは、電子メールメッセージについての識別子、前記電子メールメッセージについての前記件名ハッシュ値、及び前記電子メールメッセージについての前記アドレスハッシュ値を含むことを特徴とする請求項６記載の方法。
【請求項８】
前記着信する電子メールメッセージについて生成された前記件名ハッシュ値及び前記アドレスハッシュ値並びに前記データベースに保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つに関連付けるステップは、
データベース内に保存されており、前記着信する電子メールメッセージについて生成された前記アドレスハッシュ値に一致する少なくともアドレスハッシュ値の第１の閾値数を有しているレコードを求めて前記データベースの検索を行うステップと、
前記着信する電子メールメッセージについて生成された前記件名ハッシュ値に一致する件名ハッシュ値の少なくとも第２の閾値数を有しているレコードを求めて前記データベースの検索の結果を検索することによって０または０より大きい候補電子メールメッセージを特定するステップと、
前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの１つと関連付けるステップと、
を含むことを特徴とする請求項７記載の方法。
【請求項９】
前記着信する電子メールメッセージを最も最近変更された候補電子メールメッセージと関連付ける前に、
前記候補電子メールメッセージから、全部のアドレスハッシュ値及び件名ハッシュ値からなる第３の閾値を超える値を有するあらゆる電子メールメッセージを除外するステップを含むことを特徴とする請求項８記載の方法。
【請求項１０】
前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの１つと関連付けるステップは、前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの最も最近変更された候補電子メールメッセージと関連付けるステップを含むことを特徴とする請求項９記載の方法。
【請求項１１】
前記着信する電子メールメッセージは、０個の候補電子メールメッセージがあると判断すると、前記複数の電子メールメッセージのうちのいずれとも無関係であるという指示を与えるステップを更に含むことを特徴とする請求項１０記載の方法。
【請求項１２】
前記データベースは、構造化問い合わせ言語（ＳＱＬ）データベースを含むことを特徴とする請求項１１記載の方法。
【請求項１３】
コンピュータによって実行されると、前記コンピュータに以下のことを実行させるコンピュータ実行可能命令が保存されているコンピュータ可読媒体であって、
前記以下のことは、
件名フィールド（３０２Ｄ）及び１つまたは複数のアドレスフィールド（３０２Ａ）を有する着信する電子メールメッセージ（１１４）を受信し、各アドレスフィールドは、当該アドレスフィールドに保存される１つまたは複数の受信者電子メールアドレス（３０４）を有していることと、
前記着信する電子メールメッセージ（１１４）を受信すると、前記着信する電子メールメッセージ（１１４）の前記件名フィールド（３０２Ｄ）を１つまたは複数のトークンへトークン化し、前記トークン（３０６）の各々について件名ハッシュ値（３１８）を生成し、前記受信者電子メールアドレス（３０４）の各々についてアドレスハッシュ値（３１４）を生成することと、
前記件名ハッシュ値（３１８）及び前記アドレスハッシュ値（３１４）を用いて、前記着信する電子メールメッセージ（１１４）を既存の電子メールメッセージ（１１２）と関連していると特定することと、
前記電子メールメッセージ（１１４）を既存の電子メールメッセージ（１１２）と関連していると特定すると、前記件名ハッシュ値（３１８）及び前記アドレスハッシュ値（３１４）を用いて前記着信する電子メールメッセージ（１１４）を既存の電子メールメッセージ（１１２）と関連付けることと、
であることを特徴とするコンピュータ可読媒体。
【請求項１４】
コンピュータによって実行されると、前記コンピュータに以下のことを実行させる更なるコンピュータ実行可能命令が保存されているコンピュータ可読媒体であって、
前記以下のことは、
前記コンピュータで受信されかつ前記コンピュータから送信される前記複数の電子メールメッセージについて件名ハッシュ値及びアドレスハッシュ値を生成することと、
前記コンピュータで受信されるかまたは前記コンピュータによって送信される前記複数の電子メールメッセージについての前記件名ハッシュ値及び前記アドレスハッシュ値をデータベース内の保存することと、
であることを特徴とする請求項１３記載のコンピュータ可読媒体。
【請求項１５】
前記コンピュータで受信されるかまたは前記コンピュータによって送信される前記電子メールメッセージについての前記件名ハッシュ値及び前記アドレスハッシュ値をデータベース内の保存することは、前記複数の電子メールメッセージの各々についてのレコードを前記データベース内に保存することを含み、各レコードは、電子メールメッセージについての識別子、電子メールメッセージについての前記件名ハッシュ値、及び電子メールメッセージについての前記アドレスハッシュ値を含むことを特徴とする請求項１４記載のコンピュータ可読媒体。
【請求項１６】
前記件名ハッシュ値及び前記アドレスハッシュ値を用いて前記着信する電子メールメッセージを既存の電子メールメッセージと関連付けることは、前記着信する電子メールメッセージについて生成された前記件名ハッシュ値及び前記アドレスハッシュ値並びに前記データベースに保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つと関連付けることを含むことを特徴とする請求項１５記載のコンピュータ可読媒体。
【請求項１７】
前記着信する電子メールメッセージについて生成された前記件名ハッシュ値及び前記アドレスハッシュ値並びに前記データベースに保存された前記件名ハッシュ値及び前記アドレスハッシュ値を用いて、前記着信する電子メールメッセージを前記複数の電子メールメッセージのうちの１つと関連付けることは、
前記データベースに保存されており、前記着信する電子メールメッセージについて生成された前記アドレスハッシュ値に一致するアドレスハッシュ値の少なくとも第１の閾値数を有しているレコードを求めて前記データベースの検索を行うことと、
前記着信する電子メールメッセージについて生成された前記件名ハッシュ値に一致する件名ハッシュ値の少なくとも第２の閾値数を有しているレコードを求めて前記データベースの検索の結果を検索することによって０または０より大きい候補電子メールメッセージを特定することと、
前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの１つと関連付けることと、
を含むことを特徴とする請求項１６記載のコンピュータ可読媒体。
【請求項１８】
前記コンピュータに以下のことを実行させる更なるコンピュータ実行可能命令が保存されているコンピュータ可読媒体であって、
前記以下のことは、
前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの最も最近変更された候補電子メールメッセージと関連付ける前に、全体のアドレスハッシュ値及び件名ハッシュ値からなる第３の閾値を超える値を有するあらゆる電子メールメッセージを前記候補電子メールメッセージから除外させることであることを特徴とする請求項１８記載のコンピュータ可読媒体。
【請求項１９】
前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの１つと関連付けることは、前記着信する電子メールメッセージを前記候補電子メールメッセージのうちの最も最近変更された候補電子メールメッセージと関連付けることを含むことを特徴とする請求項１８記載のコンピュータ可読媒体。
【請求項２０】
前記データベースは、構造化問い合わせ言語（ＳＱＬ）データベースを含むことを特徴とする請求項１９記載のコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
顧客関係管理（「ＣＲＭ」）システムは、取引者が、顧客情報の取得、保存、及び解析を含む顧客との関係を管理できるようにする。多くのＣＲＭシステムにおいて、電子メールは、顧客と通信する好ましい手段である。電子メールがＣＲＭシステムから顧客に送信される場合、送信電子メールアクティビティ（sent e-mail activity）がＣＲＭシステム内で生成され、当該通信がトラッキングされる。送信電子メールアクティビティは、顧客のオーダー、顧客アカウント番号、または電子メールの内容を一意に特定するその他のタイプの情報と関連付けられてもよい。
【０００２】
顧客が、ＣＲＭから送信された電子メールメッセージに返信する場合、多くのＣＲＭシステムは、新しい返信電子メールアクティビティ（response e-mail activity）を生成する。特定の内容に関する全ての関連する電子メールアクティビティをグループ化するためには、電子メールメッセージをＣＲＭ関連と特定する必要があり、ＣＲＭ関連と特定される場合、関連する返信電子メールアクティビティの各々を他の既存の電子メールアクティビティに関連付ける必要がある。このように、返信電子メールアクティビティの各々は、元の既存の電子メールアクティビティと同じ顧客オーダーまたは顧客アカウント番号にリンク付けされ得る。その結果、顧客のアカウント番号または顧客のオーダーだけを用いて顧客へかつ顧客からの全ての通信に対して素早くアクセスすることができる。
【０００３】
従来、様々な方法・手段が使用されて、返信メッセージの特定及び返信電子メールメッセージと既存の電子メールメッセージとの関連付けが行われてきた。しかしながら、これらの従来の方法・手段は、各々が重大な欠点を有していた。第１の方法・手段においては、電子メール会話スレッド（e-mail conversation thread）識別子が、送信された電子メールメッセージの各々の、ｘメーラヘッダ（x-mailer header）（ｘヘッダ）内に挿入される。スレッド識別子が返信電子メール内にある場合、当該スレッド識別子は、当該返信電子メールを元の電子メールに関連付けるために使用され得る。当該方法・手段は、一般的に、ローカルエリアネットワーク上で送信される電子メールメッセージに適しているが、当該方法は、一般的に、インターネットを介して送信されるメッセージには有効ではない。なぜなら、多くの電子メールサーバは、着信するメールメッセージまたは発信するメールメッセージから体系的にｘヘッダを取り去るからである。結果として、これらのシステムからの返信電子メールメッセージは、元のスレッド識別子を含まなくなり、当該スレッド識別子を用いる関連付けができなくなる。
【０００４】
第２の方法・手段においては、トラッキングコードが、送信される電子メールメッセージの件名、メッセージ本文、またはその他のフィールド内に配される。当該トラッキングコードが、返信メッセージの同一のフィールド内にあるならば、当該トラッキングコードは、当該返信メッセージと元の送信された電子メールとの関連付けに使用され得る。しかしながら、トラッキングコードの使用は、トラッキングコードを、しばしば、件名のような電子メールの視認されるフィールド内に配さなくてはならない点において、いくつかの組織から煩わしいものとされている。結果として、いくつかの組織は、そのようなデータを、当該組織のＣＲＭシステムから送信される電子メールメッセージのフィールドに配することを嫌う。更に、電子メールメッセージの件名フィールドまたはメッセージ本文内に配されるトラッキングコードは変更または削除の影響を受け、このことによって、特定及び関連付けが不可能となる。電子メールの本文内に配されるトラッキングコードはまた、見つけるのにかなりの処理が必要であるかもしれない。なぜならば、電子メールの本文全体が、トラッキングコードを見つけるために検索されなければならないからである。
【０００５】
本明細書における開示は、これらの検討事項及び他の内容に関連して行われる。
【発明の概要】
【０００６】
電子メールメッセージの特定及び相互の関連付けに関する技術手段が、本明細書において開示される。本明細書に記載されている特徴によって、着信する返信電子メールメッセージは、スレッド識別子を保存するｘヘッダの使用の必要無しに、特定されて関連する既存の電子メールメッセージと互いに関連付けられる。更に、着信する返信メッセージは、発信する電子メールメッセージのフィールド内に配されるべきトラッキングコードまたは他のタイプのトラッキングデータの必要無しに、特定されて関連する電子メールメッセージまたは他のＣＲＭオブジェクトと互いに関連付けられる。
【０００７】
本明細書に記載されている１つの特徴によれば、着信する返信電子メールメッセージは、インターネットメールサーバによって取り除かれない電子メールのフィールドの内容を利用して特定され、関連する電子メールメッセージと互いに関連付けられる。例えば、１つの実施例において、コンピュータシステムから送信されたかまたはコンピュータシステムで受信された電子メールメッセージの件名フィールド及び受信者フィールドは、着信する電子メールメッセージを特定して互いに関連付けることに使用するために処理される。特に、１つの実施形態において、着信するメッセージ及び発信するメッセージの件名フィールドの内容はトークン化される。トークン化処理によって、電子メールの件名フィールドの先頭に通常追加されているノイズワード及び用語（例えば、「Ｒｅ：」、「Ｆｗ：」等）が取り除かれる。次に、本明細書において件名ハッシュ値と称される一意のハッシュ値が、件名フィールド内の要素の各々について生成される。
【０００８】
送信された電子メールメッセージまたは受信された電子メールメッセージの各々の受信者フィールドにおいて特定される電子メール名宛人も同様に処理される。特に、本明細書においてアドレスハッシュ値と称されるハッシュ値が、送信された電子メールメッセージまたは受信された電子メールメッセージの受信者フィールド（例えば、「Ｔｏ：」、「Ｆｒｏｍ：」、「ＣＣ：」、「Ｂｃｃ：」等）の各々において電子メールアドレスについて生成される。次に、送信された電子メールメッセージまたは受信された電子メールメッセージの各々についての件名ハッシュ値及びアドレスハッシュ値は、構造化問い合わせ言語（「ＳＱＬ」）データベースなどのデータベースに保存される。１つの実施例において、電子メールメッセージの各々についてのレコードがデータベースに挿入される。当該レコードは、当該電子メールメッセージについて生成されたアドレスハッシュ値及び件名ハッシュ値とともに当該電子メールメッセージについての識別子を含む。本明細書において示される方法でハッシュ値を用いることによって、データベースの記憶空間の最小量を用いると共に関連する電子メールメッセージの素早い特定ができるようになる。
【０００９】
着信する電子メールメッセージが受信されると、データベースに保存されたデータは、当該電子メールメッセージを１つまたは複数の過去の電子メールメッセージに関連があると特定し、当該着信する電子メールメッセージを当該データベース内の特定された電子メールメッセージのうちの１つまたは複数と関連付けるために利用される。特に、１つの実施例において、着信する電子メールメッセージの件名フィールドはトークン化され、件名ハッシュ値が該トークンの各々について生成される。次に、アドレスハッシュ値が、当該着信する電子メールメッセージの受信者の各々の電子メールアドレスについて生成される。一旦当該件名ハッシュ値及び当該アドレスハッシュ値が当該着信する電子メールメッセージについて生成されると、これらの値は当該データベース内の値と比較されて、当該着信する電子メールメッセージを当該データベースまたは他のＣＲＭオブジェクト内の特定された１つまたは複数の関連する電子メールメッセージと関連付ける。
【００１０】
１つの実施形態において、着信する電子メールメッセージは、着信する電子メールメッセージについて生成されたアドレスハッシュ値に一致するアドレスハッシュ値の少なくとも閾値数を有していて、データベースに保存されているレコードを求めて当該データベースの検索を行うことによって、データベースまたは他のＣＲＭオブジェクト内のメッセージに関連していると特定される。一旦この検索が行われると、当該着信するメッセージは、当該着信する電子メールメッセージについて生成された件名ハッシュ値に一致する件名ハッシュ値の第２の閾値数を有するレコードを求めて当該結果を検索することにより候補電子メールメッセージを特定することによって関連付けられる。実施例によれば、様々な閾値が、正確な相関関係の可能性を高めるために調整されてもよい。
【００１１】
一旦候補電子メールメッセージが特定されると、当該着信する電子メールメッセージは当該候補電子メールメッセージのうちの１つまたは複数に関連付けられる。１つの実施例において、着信する電子メールメッセージは、最も最近修正された候補電子メールメッセージと関連付けられる。当該相関関係によって、当該着信する電子メールメッセージと当該データベース内の特定された既存の電子メールメッセージとの間の関連付けがなされる。当該着信する電子メールメッセージは、また、例えば、ユーザアカウント番号または順番などの他のタイプのＣＲＭオブジェクトと関連付けられてもよい。候補が特定されない場合、当該着信する電子メールメッセージは、当該データベースにおいて特定された当該電子メールメッセージのいずれにも関連付けられない。当該着信する電子メールメッセージは、また、多くの電子メールメッセージにわたる会話スレッド全体を再現するために複数の既存の電子メールメッセージに関連付けられてもよい。
【００１２】
上記の本発明は、また、コンピュータ制御された装置、コンピュータプロセス、コンピュータシステムとして、またはコンピュータ可読媒体などの製造物として実行されてもよい。これらの特徴及び様々な他の特徴は、以下の詳細な説明を読みかつ付随する図面を検討することから明らかになるだろう。
【００１３】
この概要は、詳細な説明で更に後述する単純化された形式の概念の選択を導くために提供される。この概要は、本発明の重要な特徴または基本的特徴を特定することを意図してしないし、請求された本発明の範囲を限定するために用いられることを意図していない。更に、本発明は、本開示のいずれかの部分において強調されているいずれかの利点または全ての利点を解決する実施例に限定されるわけではない。
【図面の簡単な説明】
【００１４】
【図１】本明細書で説明される１つの実施形態によって提供される例示的なネットワークコンピューティングアーキテクチャ及びソフトウェアコンポーネントを示すネットワーク図である。
【図２】本明細書において示される１つの実施形態において使用される着信する電子メールメッセージ及び発信する電子メールメッセージを処理するプロセスの例を示すフローチャートである。
【図３】本明細書において説明される１つの実施形態において使用される例示的な電子メールメッセージ及びデータベースの内容を示すデータ構造図である。
【図４】本明細書において示される１つの実施形態において使用される、着信する電子メールメッセージを特定して既存の電子メールメッセージと関連付けるプロセスを示すフローチャートである。
【図５】図１−４を参照して説明されたコンピュータシステムを実施するのに適した例示的なハードウェアアーキテクチャを示すコンピュータアーキテクチャ図である。
【発明を実施するための形態】
【００１５】
以下の詳細な説明は、電子メールメッセージを特定して互いに関連付ける技術を対象とする。本明細書において示される実施形態により、着信する電子メールメッセージを、トラッキングトークンまたはスレッド識別子を使用することなしに関連する既存の電子メールメッセージまたは関連するＣＲＭオブジェクトと関連付けることができる。このように、着信する電子メールメッセージは、送信する電子メールメッセージにいかなるデータも配することなしに関連する電子メールメッセージまたはＣＲＭオブジェクトと関連付けられ得る。
【００１６】
より詳細に以下に説明するように、本明細書において示される実施例は、インターネット電子メールサーバによって通常除去されないかまたは修正されない電子メールのフィールドの内容を利用して、着信する電子メールメッセージを特定して関連する既存の電子メールメッセージまたは他のＣＲＭオブジェクトと関連付ける。本明細書において示される態様によれば、コンピュータシステムから送信されるかまたはコンピュータシステムで受信される電子メールメッセージの各々の件名フィールド及び受信者フィールドの内容は、ハッシュ値を計算されて、データベース内に保存される。着信する電子メールメッセージが受信されると、当該着信する電子メールメッセージの件名フィールド及び受信者フィールドの内容もハッシュ値を計算される。次に、当該着信する電子メールメッセージについて計算されたハッシュ値は、データベースに保存された値と比較されて、当該着信する電子メールメッセージを当該データベースにおいて特定された電子メールメッセージのうちの１つに関連していると特定するのに十分な共通の件名事項及び受信者電子メールアドレスの核があるかどうかを判断する。ある場合、当該着信する電子メールメッセージは、当該関連する電子メールメッセージと関連付けられる。当該着信する電子メールメッセージは、また、同様の方法で関連するＣＲＭオブジェクトと関連付けられ得る。このプロセスに関する更なる詳細が、図１−５に関して以下に説明される。
【００１７】
本明細書において説明される本発明は、コンピュータシステムのオペレーティングシステム及びアプリケーションプログラムの実行と関連して実行するプログラムモジュールの一般的な状況において示されるが、当業者は、他の実施例が他のタイプのプログラムモジュールと組み合わせて実行されてもよいということを認めることができる。通常、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、及び特定のタスクを実行するかまたは特定の抽象データ型を実施する他のタイプの構造を含む。更に、当業者は、本明細書において説明される本発明が、携帯型デバイス、マルチプロセッサシステム、マイクロプロセッサを用いる家庭用電化製品もしくはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成で実施されてもよいと認めることができる。
【００１８】
以下の詳細な説明において、本明細書の一部を形成しており例示的な特定の実施形態または例として示される添付図面が参照される。いくつかの図面を通して同様の数字によって同様の要素が示されている図面をここで参照して、コンピュータシステムの態様及び電子メールメッセージを互いに関連付ける方法が説明される。特に、図１は、本明細書において示したいくつかのソフトウェアコンポーネントの特徴とともに本明細書で示した実施形態のついての例示的な動作環境に関して詳細を提供するネットワーク及びソフトウェアのアーキテクチャ図である。
【００１９】
図１に示した例示的なコンピュータシステムは、ＣＲＭシステム１０２を含む。ＣＲＭシステム１０２は、ＣＲＭサーバコンピュータ１０６を含み、それによって、ＣＲＭアプリケーション１０８が実行されて、付随するＣＲＭデータベース１１０が維持される。ＣＲＭシステム１０２は顧客情報の取得、保存、及び解析を含むビジネス顧客との関係を管理する機能を提供する。このデータは、ＣＲＭデータベース１１０内にＣＲＭアプリケーション１０８によって保存される。ＣＲＭデータベース１１０に保存される顧客データは、顧客番号、オーダー番号、または他のタイプのＣＲＭオブジェクトに付随してもよい。実施例によれば、ＣＲＭデータベース１１０は、構造化問い合わせ言語ＳＱＬのデータベースである。しかしながら、あらゆるタイプのデータベース技術をＣＲＭデータベース１１０を具体化するために利用することができると認められなければならない。
【００２０】
ＣＲＭアプリケーション１０８によって提供されるＣＲＭ機能は、ＣＲＭクライアントコンピュータ１０７で実行するウェブブラウザアプリケーション１０４を利用してアクセスされ得る。このように、ＣＲＭクライアントコンピュータ１０７は、ＣＲＭアプリケーション１０８によって提供される機能にアクセスするために利用され得る。ＣＲＭアプリケーション１０８は、顧客情報を生成して表示し、ＣＲＭシステム１０２を介して顧客とコミュニケーションを取り、かつ他のＣＲＭ関連の機能を実行する。ＣＲＭシステム１０２は、顧客とコミュニケーションを取る第１の方法・手段として、電子メールを利用する。
【００２１】
電子メールメッセージ１１２がＣＲＭシステム１０２から顧客コンピュータ１１６に送信されると、送信された電子メールメッセージ１１２のコピーが、ＣＲＭデータベース１１０において生成されてコミュニケーションをトラッキングする。送信された電子メールメッセージ１１２のコピーは、顧客オーダー、顧客アカウント番号、または電子メールメッセージの内容を一意に特定する他のタイプのＣＲＭオブジェクトに付随されてもよい。更に詳細に以下に説明するように、ＣＲＭシステム１０２から送信される電子メールメッセージ１１２に含まれるデータも、関連するメッセージを特定してこれらのメッセージをＣＲＭデータベース１１０において特定された関連する既存の電子メールメッセージと関連付けるのに用いるために、処理されてＣＲＭデータベース１１０に保存される。このプロセスに関する詳細は、図２−４に関して以下に提供される。
【００２２】
顧客は、カスタマコンピュータ１１６で実行している電子メールクライアントアプリケーション１１８を用いてＣＲＭアプリケーション１０８から送信される電子メールメッセージを受信する。顧客は、また、ウェブブラウザアプリケーションプログラム及びホスト型ウェブメールサービスの使用によりかかる電子メールメッセージを受信することができる。電子メールメッセージ１１２を受信すると、顧客は、電子メールクライアントアプリケーション１１８またはホスト型ウェブメールサービスを利用して、返信電子メールメッセージ１１４をＣＲＭシステム１０２に送信することができる。例えば、顧客は、返信電子メールメッセージ１１４を送信して自分が発行したオーダーについて問い合わせることができる。
【００２３】
ＣＲＭアプリケーション１０８が返信電子メールメッセージを受信すると、当該メッセージをＣＲＭ関連であると特定する試みが行われて、ＣＲＭ関連であると特定される場合、当該返信電子メールメッセージ１１４を、電子メールメッセージ１１２などのＣＲＭデータベース１１０内の特定された関連する電子メールメッセージと関連付ける。更に詳細に以下で説明されるように、着信する返信電子メールメッセージ１１４に含まれる様々なフィールドの内容が分析されて他の電子メールメッセージについてＣＲＭデータベース１１０内に保存されたデータと比較され、当該返信電子メールメッセージ１１４を特定して既存の関連する電子メールメッセージと関連付ける。更に、一旦当該返信電子メールメッセージ１１４が関連する電子メールメッセージ１１２と適当に関連付けられたならば、当該返信電子メールメッセージ１１４に含まれるデータも、処理されて、今後着信する電子メールメッセージとの関連付けで用いるためにＣＲＭデータベース１１０に保存される。このように全ての関連する電子メールメッセージを特定して関連付けることによって、顧客のための全ての関連するコミュニケーションは、一緒に関連付けられてアクセスされてもよい。ＣＲＭシステム１０２内の電子メールメッセージを特定して互いに関連付けるために本明細書において提供される様々なプロセスに関する詳細が、図２−４に関して以下に検討される。
【００２４】
ここで図２を参照すると、電子メールメッセージを特定して関連付けるための更なる詳細が、本明細書において示される実施形態に関して提供される。特に、図２は、本明細書で説明される１つの実施例において着信する電子メールメッセージ及び発信する電子メールメッセージを処理するＣＲＭアプリケーション１０８の動作の特徴を説明するルーチン２００を示すフローチャートである。上記に簡潔に説明されているように、ＣＲＭアプリケーション１０８は、着信する電子メールメッセージをＣＲＭデータベース１１０に保存された電子メールメッセージと関連付けるのに用いるために、ＣＲＭシステム１０２から送信されかつＣＲＭシステム１０２で受信される電子メールメッセージのいくつかのフィールドの内容を処理する。図２は、この処理を行なうためにＣＲＭアプリケーション１０８によって使用される１つの例示的な実施形態を示す。図２は、図３に関連して説明されており、例示的な電子メールメッセージ１１２の内容及びＣＲＭデータベース１１０の特徴を説明する。
【００２５】
本明細書において説明されている論理演算は、（１）コンピュータで実施された一連の機能またはコンピュータシステムで実行中のプログラムモジュールとして、かつ／または（２）コンピュータシステム内の相互接続したマシン論理回路またはマシン論理回路モジュールとして実施されるということが認められなければならない。実施にあたって、コンピュータシステムの性能及び他の要求によって決まる選択の問題がある。従って、本明細書において説明される論理演算は、動作、構造的デバイス、機能、またはモジュールとして様々に見なされる。これらの動作、構造的デバイス、機能、及びモジュールは、ソフトウェアにおいて、ファームウェアにおいて、専用デジタル論理、及びそれらの任意の組合せにより実施されてもよい。図に示されかつ本明細書において説明されているより多くのまたはより少ない動作が実行されてもよいということが同様に認められなければならない。これらの動作は、また、様々な図に関して本明細書において説明した順番と異なる順番で実行されてもよい。
【００２６】
上記に簡潔に検討されたように、ＣＲＭアプリケーション１０８は、ＣＲＭシステム１０２によって送信されたかまたはＣＲＭシステム１０２で受信される電子メールメッセージの各々を処理する。図３は、ＣＲＭアプリケーション１０８によって送信された例示的な電子メールメッセージ１１２を示す。図３に示すように、電子メールメッセージ１１２は、多くのフィールド３０２Ａ−３０２Ｄを含む。特に、電子メールメッセージ１１２は、３つの受信者フィールド３０２Ａ−３０２Ｃを含む。受信者フィールド３０２Ａ−３０２Ｃは、電子メールメッセージ１１２の様々な受信者についての電子メールアドレスを保存するために利用される。例えば、「ｆｒｏｍ：」フィールド３０２Ａは、電子メールアドレス３０４Ａを保存し、「ｔｏ：」フィールド３０２Ｂは電子メールアドレス３０４Ｂ及び３０４Ｃを保存し、「ｃｃ：」フィールド３０２Ｃは電子メールアドレス３０４Ｄを保存する。電子メールアドレスは、図３に示されない更なる受信者フィールドを有していてもよいと認められなければならない。
【００２７】
電子メールメッセージ１１２はまた、件名フィールド３０２Ｄ及び本文フィールド３０８を含む。件名フィールド３０２Ｄは、電子メールメッセージ１１２についての文字数字の件名を保存するために利用される。本文フィールド３０８は、電子メールメッセージ１１２の本文を保存するために利用される。図３に示した例示的な電子メールメッセージ１１２において、本文フィールド３０８は、オーダーの発送に関する顧客へのメッセージを保存する。以下に詳細に説明されるように、ＣＲＭアプリケーション１０８は、フィールド３０２Ａ−３０２Ｄの内容を処理し、着信する電子メールメッセージを特定してＣＲＭデータベース１１０において特定された電子メールメッセージと関連付けるのに用いるためのデータを生成する。図３に示した例示的な電子メールメッセージ１１２はＣＲＭシステム１０２から送信されている発信する電子メールメッセージであるが、図２を参照して説明されたプロセスは、着信するメッセージ及び発信するメッセージの両方に関して実行されると認められなければならない。
【００２８】
ルーチン２００は動作２０２から始まる。動作２０２で、ＣＲＭアプリケーション１０８に着信するメッセージまたはＣＲＭアプリケーション１０８から発信するメッセージが処理されているかどうかについての判断が行われる。発信するメッセージが処理されている場合、ルーチン２００は動作２０２から動作２０８へ進む。着信するメッセージが処理されている場合、以下に説明されているように、ルーチン２００は動作２０２から動作２０４へ進む。
【００２９】
動作２０８で、ＣＲＭアプリケーション１０８は、電子メールメッセージ１１２にアクティビティ識別子３１０（「アクティビティＩＤ」）を割り当てる。アクティビティＩＤ３１０は、電子メールメッセージ１１２の内容を一意に特定する。例えば、アクティビティＩＤ３１０は、電子メールメッセージ１１２を他の関連する電子メールに、関連する顧客アカウントもしくはオーダー番号に、または他のタイプのＣＲＭオブジェクトに関連付けるのに利用され得る。発信する電子メールメッセージ１１２の場合、アクティビティ識別子３１０は、ＣＲＭアプリケーション１０８に知られている。
【００３０】
動作２０８から、ルーチン２００は動作２１０に続く。動作２１０で、ＣＲＭアプリケーション１０８は電子メールメッセージ１１２の件名フィールド３０２Ｄの内容をトークン化する。１つの実施例において、件名フィールド３０２Ｄにおいて予め定められたフォーマットの全ての先頭語は無視される。例えば、コロンで終わるあらゆる単語または句が無視され得る。これによって、電子メールの件名フィールドに通常追加される句（例えば「Ｒｅ：」、「Ｆｗ：」等）を素早く取り除けるようになる。あるいは、件名フィールドから取り除かれるべき単語のリストが、どの単語が除去されなければならないかを判断するために参考にされてもよい。このリストは、例えば、新しい単語の追加またはリストからの単語の除去など、管理者によってカスタマイズされてもよい。次に、残っている内容は、語彙的に解析されて、件名フィールド３０２Ｄの中に含まれる単語トークンが特定される。例えば、図３に示した件名フィールド３０２Ｄの例示的な内容に対するトークン化処理の適用により、トークン３０６Ａ−３０６Ｄが特定される。
【００３１】
一旦件名フィールド３０２Ｄに含まれるトークン３０６Ａ−３０６Ｄが特定されると、ルーチン２００は動作２１２に続く。動作２１２で、ハッシュ値がトークン３０６Ａ−３０６Ｄの各々について生成される。トークン３０６Ａ−３０６Ｄについてのハッシュ値は本明細書において件名ハッシュ値と称される。例えば、図３に示した例において、件名ハッシュ値３１８Ａはトークン３０６Ａについて生成され、件名ハッシュ値３１８Ｂはトークン３０６Ｂについて生成され、件名ハッシュ値３１８Ｃはトークン３０６Ｃについて生成され、件名ハッシュ値３１８Ｄはトークン３０６Ｄについて生成される。あらゆる適当なハッシュ関数が件名ハッシュ値３１６を生成するために利用され得ると認められなければならない。実施形態において、ハッシュ関数は、秘密鍵からセキュアハッシュを生成する。固定的でコンパクトなハッシュ値が同様に利用されてもよい。
【００３２】
動作２１２から、ルーチン２００は動作２１４に続く。動作２１４で、件名ハッシュ値３１６は、ＣＲＭデータベース１１０に保存された電子メールハッシュテーブル３２０の電子メールハッシュレコード３２２に挿入される。電子メールハッシュテーブル３２０は、着信する電子メールメッセージ及び発信する電子メールメッセージの各々についての電子メールハッシュレコード３２２を含み、更に詳細に以下で説明されるように、着信する電子メールメッセージをＣＲＭデータベース１１０において特定された既存の関連するメッセージに関連付けるために利用される。電子メールハッシュレコード３２２の各々はまた、対応する電子メールメッセージ及び１つまたは複数のアドレスハッシュ値３１４についてのアクティビティＩＤ３１０を含む。アドレスハッシュ値３１４の生成について以下に説明する。
【００３３】
動作２１４から、ルーチン２００は動作２１６に続く。動作２１６で、受信者フィールド３０２Ａ−３０２Ｄの各々の電子メールアドレスが集められる。次にルーチン２００は動作２１８に続き、そこで、ハッシュ値が集められた電子メールアドレスの各々について生成される。これらのハッシュ値は、本明細書においてアドレスハッシュ値３１２と称される。図３に示した例示的な電子メールメッセージ１１２について、アドレスハッシュ値が３１４Ａは、電子メールアドレス３０４Ａから生成され、アドレスハッシュ値３１４Ｂは電子メールアドレス３０４Ｂから生成され、アドレスハッシュ値３１４Ｃは電子メールアドレス３０４Ｃから生成され、アドレスハッシュ値３１４Ｄは電子メールアドレス３０４Ｄから生成される。あらゆる適当なハッシュ関数が、電子メールアドレス３０４Ａ−３０４Ｄからアドレスハッシュ値３１２を生成するために利用され得る。
【００３４】
動作２１８から、ルーチン２００は動作２２０に続き、そこで、アドレスハッシュ値３１２は、電子メールハッシュテーブル３２０の適当な電子メールハッシュレコード３２２に挿入される。図２の動作２０８−２２０で示しかつ上記で説明したプロセスは、ＣＲＭシステム１０２から送信される電子メールメッセージの各々について繰り返されると認められなければならない。このように、電子メールハッシュレコード３２２は、発信する電子メールメッセージの各々について生成される。図４に関して更に詳細に以下に説明されるように、ＣＲＭアプリケーション１０８は、電子メールハッシュレコード３２２の内容を利用して、着信する電子メールメッセージをＣＲＭデータベース１１０において特定された既存の電子メールメッセージと関連付ける。動作２２０から、ルーチン２００は動作２２２に続き、そこで終了する。
【００３５】
動作２０２で、ＣＲＭアプリケーション１０８から発信するメッセージが処理されていると判断される場合、ルーチン２００は動作２０２から動作２０４へ進む。動作２０４で、着信する電子メールメッセージはＣＲＭ関連かどうかについて判断が行われ、ＣＲＭ関連である場合、当該着信する電子メールメッセージは１つまたは複数の既存の電子メールメッセージと関連付けられる。電子メールメッセージをＣＲＭ関連であると特定して着信する電子メールメッセージをＣＲＭデータベース１１０において特定された１つまたは複数の既存の関連する電子メールメッセージと関連付ける例示的なプロセスが、図４を参照して以下に説明される。
【００３６】
着信するメッセージがＣＲＭ関連であると特定される場合、ルーチン２００は動作２０６から動作２０７へ進む。動作２０７で、着信する電子メールメッセージについての件名ハッシュ値及びアドレスハッシュ値がデータベース１１０に保存される。次に、ルーチン２００は動作２０７から動作２２２へ進み、そこで、終了する。着信する電子メールメッセージがＣＲＭ関連でない場合、当該着信するメッセージは無視される。従って、ルーチン２００は、動作２０６から動作２２２に直接に進み、そこで終了する。
【００３７】
ここで図４に考慮すると、ルーチン４００が説明される。ルーチン４００は、着信する電子メールメッセージをＣＲＭデータベース１１０において特定された既存の関連する電子メールメッセージと関連付ける、ＣＲＭアプリケーション１０８によって実行される１つの例示的なプロセスを説明する。ルーチン４００は動作４０２から始まる。動作４０２で、関連付けられるべき着信する電子メールメッセージの件名フィールドは、図２に関して上記した方法でトークン化される。次にルーチン４００は動作４０４に続く。動作４０４で、件名ハッシュ値３１６が、図２に関して上記したのと同じ方法で生成されたトークンについて計算される。
【００３８】
動作４０４から、ルーチン４００は動作４０６に続く。動作４０６で、着信する電子メールメッセージの受信者フィールドの電子メールアドレスの全てが集められる。次にルーチン４００は動作４０８に続く。動作４０８で、アドレスハッシュ値３１２が、集められた電子メールアドレスの各々について生成される。動作４０８から、ルーチン４００は動作４１０に続く。
【００３９】
動作４１０で、ＣＲＭアプリケーション１０８は電子メールハッシュテーブル３２０の検索を実行する。特に、電子メールハッシュテーブル３２０について検索が行われて、電子メールハッシュテーブル３２０に保存されていて、着信する電子メールメッセージについて計算されたアドレスハッシュ値に一致するアドレスハッシュ値３１８の少なくとも所定の数（本明細書において「Ｎ」と称される）を有する電子メールハッシュレコード３２２を見つける。次にルーチン４００は動作４１２に続く。動作４１２で、動作４１０において行われた検索の結果が、着信する電子メールメッセージについて計算された件名ハッシュ値に一致する件名ハッシュ値３１８の少なくとも予め決定された数（本明細書において「Ｘ」と称される）を有するあらゆる電子メールハッシュレコード３２２を検索される。動作４１２及び４１４で行なわれる検索を介して、着信する電子メールメッセージと共通の少なくともＮ個のアドレスハッシュ値及びＸ個の件名ハッシュ値を有する、ＣＲＭデータベース１１０内で特定された電子メールメッセージが見つけられる。電子メールメッセージは、本明細書において相関関係候補電子メールメッセージと称され得る。
【００４０】
動作４１２から、ルーチン４００は動作４１４に続く。動作４１４で、動作４１０及び４１２で行われる検索の結果が、予め決定された数（本明細書において「Ｃ」と称される）しかない件名ハッシュ値を有するあらゆるレコードについて検索される。Ｃ個を上回る件名ハッシュ値を有する潜在的な相関関係候補電子メールメッセージを除外することによって、過度の適合が避けられ得る。本明細書において別個の動作として説明されているが、動作４１０、４１２、及び４１４を参照して上記した検索は、単一のＳＱＬ検索クエリを利用して行なわれてもよいと認められなければならない。Ｎ、Ｘ、及びＣは本明細書において説明される相互関連アルゴリズムの正確さを向上させるために変更され得ることも認められなければならない。
【００４１】
動作４１４から、ルーチン４００は動作４１６に続く。動作４１６で、動作４１０、４１２及び４１４で行われる検索の結果が相関関係候補電子メールメッセージを生じないかどうか（即ち、一致している電子メールハッシュレコードが返されなかった）という判断が行われる。候補が特定されなかった場合、着信する電子メールメッセージは、電子メールハッシュテーブル３２０において特定される電子メールメッセージに無関係であるとみなされる。従って、ルーチン４００は動作４１６から動作４２０に進み、そこで、着信する電子メールメッセージがＣＲＭシステム１０２のアクティビティに関係していないという指示が提供されてもよい。１つまたは複数の候補が特定される場合、ルーチン４００は動作４１６から動作４１８に続く。
【００４２】
動作４１８で、２つ以上の候補電子メールメッセージが、動作４１０、４１２、及び４１４で行われた検索の間に特定されたかどうかについて判断が行われる。１つの候補だけが見つかった場合、ルーチン４００は動作４２２へ進む。動作４２２で、着信する電子メールメッセージは、一致している電子メールハッシュレコード３２２によって参照される電子メールメッセージと関連付けられる。例えば、このことは、一致している電子メールハッシュレコード３２２に含まれるのと同じアクティビティ識別子３１０を着信する電子メールに割り当てることによって行なわれてもよい。２つ以上の候補が特定された場合、ルーチン４００は動作４１８から動作４２４へ進む。動作４２４で、着信する電子メールメッセージは、一致している電子メールハッシュレコード（即ち、最も最近変更された候補）によって参照される最も最近変更された電子メールメッセージと関連付けられる。動作４２０、４２２、及び４２４から、ルーチン４００は動作４２６に続き、そこで終了する。
【００４３】
ここで図５を参照して、図１−４に関して上記したソフトウェアコンポーネントを実行することができるコンピュータ５００についての例示的なコンピュータアーキテクチャが検討される。図５に示すコンピュータアーキテクチャは、従来のデスクトップ、ラップトップ、またはサーバコンピュータを説明しており、本明細書において説明されるコンピュータシステムのいずれかを具体化するために利用することができる。
【００４４】
図５に示したコンピュータアーキテクチャは、中央処理装置５０２（「ＣＰＵ」）、ランダムアクセスメモリ５１４（「ＲＡＭ」）及びリードオンリメモリ（「ＲＯＭ」）５１６を含むシステムメモリ５０８、並びに該メモリをＣＰＵ５０２に接続するシステムバス５０４を含む。立ち上げの間などにコンピュータ５００内の要素同士の間で情報を転送するのを助ける基本ルーチンを含んでいる基本入力／出力システムは、ＲＯＭ５１６に保存される。コンピュータ５００は、オペレーティングシステム５１８、アプリケーションプログラム、及び他のプログラムモジュールを保存するための大容量記憶装置５１０を更に含み、それは更に詳細に下記で説明される。
【００４５】
大容量記憶装置５１０は、バス５０４に接続された大容量記憶装置コントローラ（図示せず）を介してＣＰＵ５０２に接続されている。大容量記憶装置５１０及びその付随するコンピュータ可読媒体は、コンピュータ５００のための不揮発性記憶装置を提供する。本明細書に含まれるコンピュータ可読媒体の説明は、ハードディスクまたはＣＤ−ＲＯＭドライブなどの大容量記憶装置について述べているが、コンピュータ可読媒体はコンピュータ５００によってアクセスされ得るあらゆる利用可能な媒体であってもよいと認められなければならない。
【００４６】
例であって限定ではないが、コンピュータ可読媒体は、例えばコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の保存のためのあらゆる方法・手段または技術において実施される揮発性及び不揮発性、着脱自在及び固定式の媒体を含んでもよい。例えば、コンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、または他のソリッドステートメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（「ＤＶＤ」）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ、または、他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または所望の情報を保存するために用いることができかつコンピュータ５００がアクセスすることができるあらゆる他の媒体を含むがこれらに限定されるものではない。
【００４７】
様々な実施形態によれば、コンピュータ５００は、ネットワーク５０５などのネットワークを介したリモートコンピュータへの論理結合を用いてネットワーク化された環境において動作する。コンピュータ５００はバス５０４に接続されたネットワークインタフェースユニット５０６を介してネットワーク５０５に接続されていてもよい。ネットワークインタフェースユニット５０６は、また、他のタイプのネットワーク及びリモートコンピュータシステムに接続されるために利用されてもよいということが認められなければならない。コンピュータ５００はまた、キーボード、マウス、または電子ペン（図５に図示せず）を含む多くの他のデバイスからの入力を受信しかつ処理する入力／出力コントローラ５１２を含むことができる。同様に、入力／出力コントローラは、ディスプレイスクリーン、プリンタ、または他のタイプの出力デバイス（同様に図５に図示せず）へ出力を与えることができる。
【００４８】
上記に簡潔に述べたように、ネットワーク化されたデスクトップ、ラップトップまたはサーバコンピュータの動作を制御するのに適したオペレーティングシステムを含む多くのプログラムモジュール及びデータファイルは、コンピュータ５００の大容量記憶装置５１０及びＲＡＭ５１４に保存されていてもよい。大容量記憶装置５１０及びＲＡＭ５１４は、また、１つまたは複数のプログラムモジュールを保存することができる。特に、大容量記憶装置５１０及びＲＡＭ５１４は、ウェブブラウザアプリケーションプログラム１０４、電子メールクライアントアプリケーションプログラム１１８、ＣＲＭアプリケーション１０８、及びＣＲＭデータベース１１０を保存することができる。これらの各々は図１−４を参照して上記に説明された。他のプログラムモジュールが、同様に、大容量記憶装置５１０に保存されて、コンピュータ５００によって利用されてもよい。
【００４９】
他の実施形態によれば、ＣＲＭアプリケーション１０８は、誤った相関関係を修正するためのウェブブラウザアプリケーション１０４を介してアクセス可能なユーザインタフェースを提供することができる。例えば、ＣＲＭアプリケーション１０８が、着信する電子メールメッセージを無関係な電子メールメッセージまたはＣＲＭオブジェクトに誤って関連付けた場合、ユーザは、当該着信する電子メールメッセージを関連する電子メールメッセージまたはＣＲＭオブジェクトと関連付けることによって当該ユーザインタフェースを介して誤った相関関係を修正することができる。他の特徴によれば、ユーザインタフェースは、ＣＲＭアプリケーション１０８によって行なわれる関連付けの各々について信頼水準を表示することができる。信頼水準が特定の予め定めた閾値を上回っている場合、ユーザは当該相互関連付けを修正することが認められない場合がある。他の実施形態によれば、ユーザは、ＣＲＭアプリケーション１０８によって相関関係が検出されなかった相互関連付けを追加することが認められる場合がある。あるいは、メッセージがＣＲＭ関連と特定されるが適当に関連付けられていない場合、リンクが当該メッセージについて生成されなくてもよい。
【００５０】
本明細書で示した様々なプロセスはＣＲＭアプリケーション１０８によって実行されていると説明してきたが、他のタイプのコンピュータシステムで実行している他のタイプのプログラムがこれらのプロセスを実行してもよいと認められなければならない。例えば、別の実施例において、本明細書において提供されている電子メールメッセージを特定して互いに関連付ける機能は、電子メールクライアントアプリケーション１１８内で統合されてもよい。この機能の統合によって、電子メールクライアントアプリケーション１１８は、関連する電子メールメッセージを互いに関連付けて、スレッドに従って関連するメッセージを表示することができる。本明細書において説明された機能は、また、ウェブベースの電子メールシステムまたは他のタイプの電子メールシステム内で利用されてもよい。
【００５１】
本明細書において説明された実施例は、トラッキングトークンを利用した従来の解決法より確かな安全性を提供することが認められなければならない。従来の解決法を利用すると、トラッキングトークンを、悪意のあるユーザが予測して偽造することができた。本明細書で示した実施例を利用すると、件名及び受信者は、特定されて同じ内容と関連付けられるべき電子メールメッセージについて十分厳密に一致しなければならない。悪意のあるユーザが本明細書において説明されたプロセスを攻撃することは非常に難しい。更に、トラッキングトークンを利用する従来の解決法は、電子メールが追跡されるかどうかについての決定を電子メールメッセージが送信されるときに行う必要があるということも認められなければならない。本明細書において示されたプロセスを利用することによって、決定を後で行って、互いの関連付けをその後の返信メッセージについてなお提供することができる。
【００５２】
前述のことに基づいて、電子メールメッセージを特定して互いに関連付ける技術が本明細書において提供されると認められなければならない。本明細書において示された本発明は、コンピュータ構造上の特徴、方法論的動作、及びコンピュータ可読媒体に固有の言語で説明されてきたが、添付の請求の範囲において画定される本発明は、必ずしも本明細書において説明された特定の特徴、動作、または媒体に限定されるわけではないと理解されなければならない。むしろ、特定の特徴、動作、及び媒体は、請求の範囲を実施する例示的な形式として開示されている。
【００５３】
上記の本発明は、説明だけのために提供されており、限定と解釈されるべきではない。様々な改良及び変更が、図示されかつ説明された例示的な実施形態及びアプリケーションに従うことなくかつ以下の請求の範囲に記載されている本発明の本当の趣旨及び範囲から逸脱することなく、本明細書で説明された本発明になされてもよい。
【図１】
2010526389.tif 000003
【図２】
2010526389.tif 000004
【図３】
2010526389.tif 000005
【図４】
2010526389.tif 000006
【図５】
2010526389.tif 000007
【国際調査報告】
2010526389.tif 000008
2010526389.tif 000009