(57)【要約】【課題】発生したイベントに対して実行されるべきアクションを自動で判別し、実行することを可能とする。【解決手段】ルールＤＢ４２は、ユーザに対して対応を促すために実行されるアクションを示すルール情報及び当該ルール情報によって示されるアクションの特徴を表す単語のパタンを示すルールパタン情報を互いに対応付けて予め格納する。メッセージ解析部５１４は、対象メッセージのテキストに含まれる単語を取得する。イベント／アクション判定部５１５は、取得された単語に基づいて、対象メッセージのパタンを判別する。イベント／アクション判定部５１５は、対象メッセージのパタンに適合するルールパタン情報が存在するかを判定する。アクション生成／実行部５１６は、ルールパタン情報に対応付けて格納されているルール情報によって示されるアクションを実行する。【選択図】      図２
2008140083.tif 000002
【特許請求の範囲】
【請求項１】
アクション支援システムのコンピュータによって実行されるアクション支援プログラムであって、
前記コンピュータに、
ユーザに対して対応を促すために実行されるアクションを示すルール情報及び当該ルール情報によって示されるアクションの特徴を表す単語のパタンを示すルールパタン情報を互いに対応付けて予め格納手段に格納するステップと、
外部からイベントを受信するステップと、
前記受信されたイベントに文字列が含まれるかを判定するステップと、
前記受信されたイベントに文字列が含まれる場合、当該文字列に含まれる単語を取得するステップと、
前記取得された単語に基づいて、前記受信されたイベントの特徴を表す単語のパタンを判別するステップと、
前記判別された単語のパタンに適合するルールパタン情報が前記格納手段に存在するかを判定するステップと、
前記判別された単語のパタンに適合するルールパタン情報が存在すると判定された場合に、当該ルールパタン情報に対応付けて前記格納手段に格納されているルール情報によって示されるアクションを前記格納手段に登録するステップと、
前記格納手段に登録されたアクションを実行するステップと
を実行させることを特徴とするアクション支援プログラム。
【請求項２】
前記コンピュータに、
前記受信されたイベントが当該イベントより以前のイベントに付随する２次的イベントであるかを判定するステップと、
前記受信されたイベントが前記２次的イベントであると判定された場合に、当該２次的イベントに関連するアクションが存在するかを、前記格納手段を参照して判定するステップと、
前記２次的イベントに関連するアクションが存在すると判定された場合に、当該アクションが前記格納手段に登録されているかを判定するステップと、
前記２次的イベントに関連するアクションが登録されていると判定された場合に、当該アクションの登録を前記格納手段から削除するステップと
を更に実行させることを特徴とする請求項１記載のアクション支援プログラム。
【請求項３】
前記コンピュータに、前記受信されたイベント内における前記取得された単語の出現頻度に基づいて、単語毎に重み付けするステップを更に実行させ、
前記格納手段に格納されているルールパタン情報は、前記ルール情報によって示されるアクションの特徴を表す単語の組合せを示す組合せ情報及び当該単語の組合せに含まれる単語毎の重みを示す重み情報とを含み、
前記判別するステップにおいて、前記単語毎に重み付けされた結果に基づいて、前記取得された単語の組合せ及び当該取得された単語毎の重みを前記受信されたイベントの特徴を表す単語のパタンとして判別し、
前記ルールパタン情報が存在するかを判定するステップは、
前記判別された単語のパタンの前記取得された単語の組合せ及び当該取得された単語毎の重みと、前記格納手段に格納されているルールパタン情報に含まれる前記組合せ情報によって示される単語の組合せ及び前記重み情報によって示される単語毎の重みとに基づいて、前記判別された単語のパタンと前記格納手段に格納されているルールパタン情報によって示される単語のパタンとの類似度を算出するステップと、
前記算出された類似度が一定の値以上の単語のパタンを示すルールパタン情報が存在するかを判定するステップと、
前記算出された類似度が一定の値以上の単語のパタンを示すルールパタン情報が存在する場合に、前記判別された単語のパタンに適合するルールパタン情報が存在すると判定するステップとを含む
ことを特徴とする請求項１記載のアクション支援プログラム。
【請求項４】
前記格納手段に格納されているルール情報は、当該ルール情報によって示されるアクションの各々を示すアクション情報及び当該アクション情報の各々に対応付けられている当該アクション情報の各々によって示されるアクションの特徴を表す単語のパタンを示すアクションパタン情報を含み、
前記ルール情報に含まれるアクションパタン情報は、当該アクションパタン情報に対応付けられているアクション情報によって示されるアクションの特徴を表す単語の組合せを示す組合せ情報及び当該単語の組合せに含まれる単語毎の重みを示す重み情報とを含み、
前記コンピュータに、
前記判別された単語のパタンに適合するルールパタン情報が存在すると判定された場合に、前記判別された単語のパタンの前記取得された単語の組合せ及び当該取得された単語毎の重みと、前記判別された単語のパタンに適合するルールパタン情報に対応付けられた前記ルール情報のアクションパタン情報に含まれる前記組合せ情報によって示される単語の組合せ及び前記重み情報によって示される単語毎の重みとに基づいて、前記判別された単語のパタンと前記ルール情報によって含まれるアクションパタン情報によって示される単語のパタンとの類似度を算出するステップと、
前記算出された類似度が一定の値以上の単語のパタンを示すアクションパタン情報が前記格納手段に存在するかを判定するステップと、
前記算出された類似度が一定の値以上の単語のパタンを示すアクションパタン情報が存在する場合に、当該アクションパタン情報に対応付けられているアクション情報によって示されるアクションが前記格納手段に登録されているかを判定するステップと、
前記算出された類似度が一定の値以上の単語のパタンを示すアクションパタン情報に対応付けられているアクションが前記格納手段に登録されていると判定された場合に、当該アクションの登録を前記格納手段から削除するステップとを更に実行させる
ことを特徴とする請求項３記載のアクション支援プログラム。
【請求項５】
外部からイベントを受信する受信手段を有するアクション支援システムにおいて、
ユーザに対して対応を促すために実行されるアクションを示すルール情報及び当該ルール情報によって示されるアクションの特徴を表す単語のパタンを示すルールパタン情報を互いに対応付けて予め格納する格納手段と、
前記受信手段によって受信されたイベントに文字列が含まれるかを判定する第１の判定手段と、
前記受信手段によって受信されたイベントに文字列が含まれると前記第１の判定手段によって判定された場合、当該文字列に含まれる単語を取得する取得手段と、
前記取得された単語に基づいて、前記受信されたイベントの特徴を表す単語のパタンを判別する判別手段と、
前記判別手段によって判別された単語のパタンに適合するルールパタン情報が前記格納手段に存在するかを判定する第２の判定手段と、
前記判別手段によって判別された単語のパタンに適合するルールパタン情報が存在すると前記第２の判定手段によって判定された場合に、当該ルールパタン情報に対応付けて前記格納手段に格納されているルール情報によって示されるアクションを前記格納手段に登録する登録手段と、
前記登録手段によって前記格納手段に登録されたアクションを実行するアクション実行手段と
を具備することを特徴とするアクション支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発生したイベントに応じたアクションを実行するアクション支援プログラム及びシステムに関する。
【背景技術】
【０００２】
従来、イベント（メッセージ）が発生した（受信された）場合、例えば人手により内容を確認した上で、内容に応じた文章を作成し、メッセージの返信等を行っている。
【０００３】
また、回答を求めるような内容のメッセージを複数の相手先（例えば、メーリングリスト）に送付した際に、送信先からの返信の有無は人手により管理し、返信のない送信先には再度返信を求める行為を必要としている。
【０００４】
そこで、ほとんどの定型的な受信メッセージに対する返信作業を自動で行うことができるシステムが開示されている（例えば、特許文献１を参照）。このシステムによれば、返信が必要なメッセージが送信された際の、送信先からの未返信に対する督促のメッセージの送信や、返信を頂いた場合のお礼のメッセージなども自動で送信する。
【０００５】
また、従来では、イベントが発生した場合、当該イベントが監視対象となるイベントであるか否かを、例えば発生したイベントが有する情報（形式）に応じて判定する。これによって、監視対象となるイベントに対して実行すべきアクションを決定する。
【０００６】
例えば、会議通知などのイベントが発生した場合、当該イベントに含まれる情報、例えばイベントのタイトルに付加されたルールの管理番号をもとに、メッセージの種類（ルール）を特定する。そして、特定されたルールに応じて、イベントに含まれる情報、例えばアクションの実行日等からｘ月ｙ日に例えば、メールを送信する等のアクションが実行される。
【０００７】
更に、あるサイトで所定のイベントが生じた際に、その情報を必要とする他のサイトに自動的に通知する技術が開示されている（例えば、特許文献２を参照）。この技術によれば、ワークフロー管理に必要なイベント発生の情報を、イベント受信サイトからのリクエストに基づいて伝達する。
【特許文献１】特開２００１−８４１８９号公報
【特許文献２】特開２００２−１０９１７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記したようなシステムにおいては、発生したイベント（メッセージ）が有する情報（形式）に基づいて、実行すべきアクションが特定される。このため、アクションを実行する際には、特定の形式に従ったメッセージを作成する必要がある。
【０００９】
これにより、特定の形式と異なる形式のメッセージに対しては、アクションが実行されない。
【００１０】
本発明の目的は、発生したイベントに対して実行されるべきアクションを自動で判別し、当該アクションを実行することが可能なアクション支援プログラム及びシステムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの態様によれば、アクション支援システムのコンピュータによって実行されるアクション支援プログラムであって、前記コンピュータに、ユーザに対して対応を促すために実行されるアクションを示すルール情報及び当該ルール情報によって示されるアクションの特徴を表す単語のパタンを示すパタン情報を互いに対応付けて予め格納手段に格納するステップと、外部からイベントを受信するステップと、前記受信されたイベントに文字列が含まれるかを判定するステップと、前記受信されたイベントに文字列が含まれる場合、当該文字列に含まれる単語を取得するステップと、前記取得された単語に基づいて、前記受信されたイベントの特徴を表す単語のパタンを判別するステップと、前記判別された単語のパタンに適合するパタン情報が前記格納手段に存在するかを判定するステップと、前記判別された単語のパタンに適合するパタン情報が存在すると判定された場合に、当該パタン情報に対応付けて前記格納手段に格納されているルール情報によって示されるアクションを前記格納手段に登録するステップと、前記格納手段に登録されたアクションを実行するステップとを実行させることを特徴とするアクション支援プログラムが提供される。
【発明の効果】
【００１２】
本発明によれば、発生したイベントに対して実行されるべきアクションを自動で判別し、当該アクションを実行することを可能とする。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して、本発明の実施形態について説明する。
【００１４】
図１は、本発明の実施形態に係るアクション支援システムを含むクライアント−サーバシステムのハードウェア構成を示すブロック図である。
【００１５】
図１のクライアント−サーバシステムは、主として、コンピュータ（サーバコンピュータ）１０と、複数のクライアント端末とから構成される。複数のクライアント端末はクライアント端末２０を含む。クライアント端末２０上では、コンピュータ１０を利用するクライアントソフトウェアが動作する。クライアントソフトウェアは、例えばブラウザである。クライアント端末２０を含む複数のクライアント端末は、ローカルエリアネットワーク（ＬＡＮ）のようなネットワーク３０を介してコンピュータ１０と接続されている。なお、図１には、クライアント端末２０以外のクライアント端末は省略されている。
【００１６】
コンピュータ１０は、ハードディスクドライブのような外部記憶装置４０と接続されている。この外部記憶装置４０は、コンピュータ１０によって実行されるプログラム４１を格納する。コンピュータ１０及び外部記憶装置４０は、アクション支援システム５０を構成する。
【００１７】
図２は、図１に示されるアクション支援システム５０の主として機能構成を示すブロック図である。アクション支援システム５０は、アクション制御部５１及びルール登録部５２を含む。本実施形態において、これらの各部５１及び５２は、図１に示されるコンピュータ１０が外部記憶装置４０に格納されているプログラム４１を実行することにより実現されるものとする。このプログラム４１は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム４１が、ネットワーク３０を介してコンピュータ１０にダウンロードされても構わない。
【００１８】
また、アクション支援システム５０は、ルールデータベース（ＤＢ）４２を含む。本実施形態において、ルールデータベース４２は、外部記憶装置４０に格納される。
【００１９】
アクション制御部５１は、メッセージ受信／送信サーバ５１１、メッセージ判定部５１２、テキスト抽出部５１３、メッセージ解析部５１４、イベント／アクション判定部５１５及びアクション生成／実行部５１６を含む。
【００２０】
メッセージ受信／送信サーバ５１１は、例えばクライアント端末２０から送信されたイベントを受信する。このイベントは、アクション支援システム５０の外部で例えばユーザによってクライアント端末２０が操作されて作成されるメッセージである。また、メッセージ受信／送信サーバ５１１は、クライアント端末２０を介して、例えばメッセージをユーザに対して送信する。
【００２１】
以下、メッセージ受信／送信サーバ５１１によって受信されたメッセージを対象メッセージと称する。
【００２２】
メッセージ判定部５１２は、対象メッセージがテキストベース（文字列）であるか、または例えばＰＤＦファイル（添付ファイル等）のようなテキスト形式以外のバイナリであるかを判定する。メッセージ判定部５１２は、対象メッセージがテキストベースである場合には、当該対象メッセージをメッセージ解析部５１４に出力する。また、メッセージ判定部５１２は、対象メッセージがバイナリである場合には、当該対象メッセージをテキスト抽出部５１３に出力する。
【００２３】
テキスト抽出部５１３は、メッセージ判定部５１２によって出力された対象メッセージ（ここでは、バイナリ）からテキスト（文字列）を抽出する。テキスト抽出部５１３は、抽出されたテキストをメッセージ解析部５１４に出力する。
【００２４】
メッセージ解析部５１４は、メッセージ判定部５１２またはテキスト抽出部５１３によって出力された対象メッセージのテキストから、例えば日付または単語の切り出し（形態素解析）を行う。このとき、メッセージ解析部５１４は、対象メッセージに含まれる引用文章（例えば返信または転送を示す記号“＞”が先頭に付いている文章）については解析対象からはずす。メッセージ解析部５１４は、形態素解析の結果に基づいて、対象メッセージに含まれる文字列から、例えば対象メッセージ（イベント）の内容または期日を示す単語を取得（意味解析）する。
【００２５】
イベント／アクション判定部５１５は、メッセージ解析部５１４によって取得された単語に基づいて、対象メッセージの特徴を表す単語のパタン（以下、対象メッセージのパタンと称する）を判別する。イベント／アクション判定部５１５は、判別された対象メッセージのパタンに基づいて、対象メッセージ（イベント）に対して実行するアクションを判別する。このとき、イベント／アクション判定部５１５は、ルールデータベース４２を参照して判別処理を実行する。
【００２６】
なお、前述したようにメッセージが、例えばアクション支援システム５０の外部から送信されるのに対し、アクションは、アクション支援システム５０の内部で発生する。アクションは、ユーザに対して例えばメッセージに対する対応を促すために実行される。アクションについての具体例については後述する。
【００２７】
ルールデータベース４２には、ルール情報及びルールパタン情報が互いに対応付けられて格納されている。ルール情報は、ユーザに対して対応を促すために実行されるアクションを示す。ルールパタン情報は、ルール情報によって示されるアクションの特徴を表す単語のパタン（組合せ）を示す。また、ルールデータベース４２には、ルール情報及びルールパタン情報以外に、日付または曜日等を示す外部情報も格納されている。
【００２８】
イベント／アクション判定部５１５は、ルールデータベース４２に格納されているルールパタン情報のうち、対象メッセージのパタンに適合するルールパタン情報が存在するか否かを判定する。イベント／アクション判定部５１５は、対象メッセージのパタンに適合するルールパタン情報が存在する場合、当該ルールパタン情報に対応付けてルールデータベース４２に格納されているルール情報に従って、ユーザに対して対応を促すために実行されるアクションを判別する。
【００２９】
また、イベント／アクション判定部５１５は、対象メッセージが当該対象メッセージより以前のイベントに付随するメッセージ（以下、２次的イベントと称する）であるか否かを判定する。イベント／アクション判定部５１５は、ルールデータベース４２を参照して、２次的イベントに関連するアクションが存在するか否かを判定する。
【００３０】
アクション生成／実行部５１６は、ルールデータベース４２に格納されている外部情報に基づいて、イベント／アクション判定部５１５によって判別されたアクションを実行するためのアクション実行情報を生成する。このアクション実行情報には、例えばアクションが実行される日付等を示す情報が含まれる。アクション生成／実行部５１６は、生成されたアクション実行情報をルールデータベース４２に格納（登録）する。また、アクション生成／実行部５１６は、ルールデータベース４２に格納されたアクション実行情報に基づいて、登録されたアクションを実行する。アクション生成／実行部５１６は、登録されたアクションを実行する際に、例えばユーザに対してメッセージを送信する必要がある場合には、当該メッセージの送信をメッセージ受信／送信サーバ５１１に依頼する。
【００３１】
また、アクション生成／実行部５１６は、２次的イベントに関連するアクションの登録をルールデータベース４２から削除する。
【００３２】
ルール登録部５２は、例えばユーザによってクライアント端末２０が操作されることによって作成されたルールをルールデータベース４２に格納（登録）する。
【００３３】
図３は、ルールデータベース４２内のデータ構造例を示す。なお、図３では、ルールデータベース４２に格納されている外部情報については省略されている。ここでは、ルール情報及びルールパタン情報について説明する。
【００３４】
図３に示すように、ルールデータベース４２には、ルール情報及びルールパタン情報が互いに対応付けられて予め格納されている。
【００３５】
図３に示す例では、ルール情報１及びルールパタン情報１が互いに対応付けられて格納されている。また、同様に、ルール情報２及びルールパタン情報２が互いに対応付けられて格納されている。
【００３６】
図４は、図３に示すルール情報１のデータ構造例を示す。図４に示すように、ルール情報１は、アクション情報及びアクションパタン情報を含む。アクション情報及びアクションパタン情報は、互いに対応付けられている。アクション情報は、ユーザに対して対応を促すために実行されるアクションを示す。アクションパタン情報は、対応付けられているアクション情報によって示されるアクションの特徴を表す単語のパタンを示す。ルール情報が複数のアクションを示す場合、当該ルール情報は、当該複数のアクションを示す複数のアクション情報及び当該複数のアクション情報に対応付けられている複数のアクションパタン情報を含む。
【００３７】
図４に示す例では、ルール情報１は、アクション情報１及び当該アクション情報１に対応付けられているアクションパタン情報１を含む。また、ルール情報１は、アクション情報２及び当該アクション情報２に対応付けられているアクションパタン情報２を含む。
【００３８】
図５は、ルールパタン情報１のデータ構造例を示す。図５に示すように、ルールパタン情報１は、組合せ情報及び重み情報を含む。組合せ情報は、ルール情報によって示されるアクションの特徴を表す単語の組合せを示す。重み情報は、組合せ情報に対応付けられており、対応する組合せ情報によって示される単語の組合せに含まれる単語毎の重みを示す。
【００３９】
図５に示す例では、ルール情報１は、組合せ情報１及び当該組合せ情報１に対応付けられている重み情報１を含む。この場合、組合せ情報１は、ルール情報１によって示されるアクションの特徴を表す単語の組合せを示し、重み情報１は、組合せ情報１によって示される単語の組合せに含まれる単語毎の重みを示す。
【００４０】
なお、図示しないが、例えばルール情報１に含まれるアクションパタン情報１は、上記したルールパタン情報１と同様に、組合せ情報及び重み情報を含む。アクションパタン情報１に含まれる組合せ情報は、当該アクションパタン情報１に対応するアクション情報によって示されるアクションの特徴を表す単語の組合せを示す。重み情報は、組合せ情報に対応付けられており、対応する組合せ情報によって示される単語の組合せに含まれる単語毎の重みを示す。
【００４１】
次に、図６のフローチャートを参照して、メッセージが受信された際のアクション支援システム５０の処理手順について説明する。なお、このとき受信されたメッセージを対象メッセージとして説明する。
【００４２】
まず、メッセージ受信／送信サーバ５１１によって対象メッセージが受信されると、メッセージ判定部５１２は、当該対象メッセージがテキストベースのメッセージか否かを判定する（ステップＳ１）。なお、ここでのメッセージ判定部５１２による判定処理は、形態素解析が可能であるメッセージか否かに基づいて判定される。対象メッセージが、形態素解析が可能なメッセージであれば、テキストベースであると判定される。
【００４３】
メッセージ判定部５１２によって対象メッセージがテキストベースでない、例えばＰＤＦファイルのようなバイナリであると判定されると（ステップＳ１のＮＯ）、テキスト抽出部５１３は、バイナリである対象メッセージからテキストを抽出する（ステップＳ２）。
【００４４】
なお、ステップＳ１において、メッセージ判定部５１２によって対象メッセージがテキストベースであると判定されるとステップＳ２の処理はスキップされる。
【００４５】
次に、メッセージ解析部５１４は、対象メッセージに含まれる引用文章を解析対象からはずす（ステップＳ３）。
【００４６】
メッセージ解析部５１４は、ステップＳ３において引用文章が除かれた対象メッセージ（テキスト）に対して形態素解析及び意味解析を実行する（ステップＳ４）。この処理の結果に基づいて、メッセージ解析部５１４は、対象メッセージ（イベント）の内容や期日などの単語を取得する（ステップＳ５）。
【００４７】
メッセージ解析部５１４は、取得された単語のうち、下記のステップＳ７及びＳ８の処理がなされていない単語があるか否かを判定する（ステップＳ６）。
【００４８】
メッセージ解析部５１４は、処理されていない単語があると判定された場合（ステップＳ５のＹＥＳ）、当該処理されていない単語を同義語展開する（ステップＳ６）。この処理によって、ステップＳ５において取得された単語に含まれる同義語を同一の単語に統一する。
【００４９】
メッセージ解析部５１４は、例えば同義語展開された単語に対してスコアリング（重み付け）を行う（ステップＳ８）。この際、メッセージ解析部５１４は、対象メッセージ内での各単語の出現頻度または出現箇所に応じて重み付けを行う。メッセージ解析部５１４は、例えば対象メッセージ内での出現頻度が高い単語については重みを高くし、出現箇所が前に位置する単語については重みを高くする。
【００５０】
一方、ステップＳ６において、ステップＳ５において取得された単語が全てについてステップＳ７及びＳ８の処理が実行されると、次のステップＳ９の処理が実行される。
【００５１】
イベント／アクション判定部５１５は、対象メッセージが当該対象メッセージより以前のメッセージ（付随メッセージ）に付随するメッセージ（２次的イベント）であるか否かを判定する（ステップＳ９）。この場合、イベント／アクション判定部５１５は、対象メッセージが例えば返信されたメッセージか否かによって判定処理を実行する。また、イベント／アクション判定部５１５は、対象メッセージのヘッダ情報に含まれる管理番号に基づいて判定処理を実行する構成でも良い。例えば付随メッセージが会議開催通知のメッセージである場合に、例えば付随メッセージに示される会議の議事録を示すメッセージは、２次的イベントである。
【００５２】
イベント／アクション判定部５１５は、対象メッセージが２次的イベントでない場合（ステップＳ９のＮＯ）、メッセージ解析部５１４によって取得された単語に基づいて、対象メッセージのパタンを判別する（ステップＳ１０）。このとき、イベント／アクション判定部５１５は、メッセージ解析部５１４によって重み付けされた結果に基づいて、メッセージ解析部５１４によって取得された単語の組合せ及び当該取得された単語の重みを対象メッセージのパタンとして判別する。
【００５３】
イベント／アクション判定部５１５は、ルールデータベース４２に格納されているルールパタン情報によって示される単語のパタンと、判別された対象メッセージのパタンとの類似度を算出する（ステップＳ１１）。イベント／アクション判定部５１５は、対象メッセージのパタンによって示される単語の組合せ及び当該単語毎の重みと、ルールパタン情報に含まれる組合せ情報によって示される単語の組合せ及び重み情報によって示される単語毎の重みとに基づいて、類似度を算出する。
【００５４】
イベント／アクション判定部５１５は、ルールデータベース４２を参照して、ステップＳ１１において算出された類似度が一定の値以上である単語のパタンを示すルールパタン情報が存在するか否かを判定する（ステップＳ１２）。イベント／アクション判定部５１５は、ステップＳ１１において算出された類似度が一定の値以上である単語のパタンを示すルールパタン情報を、対象メッセージのパタンに適合するルールパタン情報として判定する。
【００５５】
イベント／アクション判定部５１５は、対象メッセージのパタンに適合するルールパタン情報が存在する場合（ステップＳ１２のＹＥＳ）、当該ルールパタン情報に対応付けてルールデータベース４２に格納されているルール情報によって示されるアクションをアクション生成／実行部５１６に通知する。
【００５６】
アクション生成／実行部５１６は、イベント／アクション判定部５１５によって通知されたアクションを実行するためのアクション登録情報をルール情報に従って生成し、ルールデータベース４２に格納（登録）する（ステップＳ１３）。この際、アクション生成／実行部５１６は、ルールデータベース４２に格納されている外部情報に基づいて、アクション登録情報を生成する。アクション登録情報には、例えばアクションの実行日等を示す情報が含まれる。
【００５７】
なお、ステップＳ１２において、類似度が一定の値以上であるパタンを示すパタン情報が存在しない場合、ステップＳ１３の処理は実行されない。
【００５８】
一方、イベント／アクション判定部５１５は、対象メッセージが２次的イベントである場合（ステップＳ９のＹＥＳ）、ステップＳ１０の処理と同様に、メッセージ解析部５１４によって取得された単語に基づいて、対象メッセージのパタンを判別する（ステップＳ１４）。
【００５９】
イベント／アクション判定部５１５は、ステップＳ１１の処理と同様に、ルールデータベース４２に格納されているルールパタン情報によって示される単語のパタンと、対象メッセージのパタンとの類似度を算出する（ステップＳ１５）。
【００６０】
次に、イベント／アクション判定部５１５は、ルールデータベース４２を参照して、ステップＳ１５において算出された類似度が一定の値以上である単語のパタンを示すルールパタン情報が存在するか否かを判定する（ステップＳ１６）。
【００６１】
イベント／アクション判定部５１５は、類似度が一定の値以上である単語のパタンを示すルールパタン情報が存在する場合（ステップＳ１６のＹＥＳ）、ルールデータベース４２を参照して、当該ルールパタン情報に対応付けて格納されているルール情報を取得する。イベント／アクション判定部５１５は、対象メッセージのパタンと取得されたルール情報に含まれるアクションパタン情報によって示される単語のパタンとの類似度を算出する（ステップＳ１７）。イベント／アクション判定部５１５は、対象メッセージのパタンによって示される単語の組合せ及び当該単語語との重みと、アクションパタン情報に含まれる組合せ情報によって示される単語の組合せ及び重み情報によって示される単語毎の重みとに基づいて、類似度を算出する。
【００６２】
イベント／アクション判定部５１５は、ルールデータベース４２を参照して、ステップＳ１７において算出された類似度が一定の値以上である単語のパタンを示すアクションパタン情報が存在するか否かを判定する（ステップＳ１８）。この処理により、イベント／アクション判定部５１５は、前述したように２次的イベントに関連するアクションが存在するか否かを判定する。
【００６３】
イベント／アクション判定部５１５は、類似度が一定の値以上である単語のパタンを示すアクションパタン情報が存在する場合（ステップＳ１８のＹＥＳ）、当該アクションパタン情報に対応付けられているアクション情報によって示されるアクションがルールデータベース４２に登録されているか否かを判定する（ステップＳ１９）。
【００６４】
なお、この処理は、アクション情報によって示されるアクションを実行するためのアクション実行情報がルールデータベース４２に格納されているか否かに基づいて実行される。
【００６５】
イベント／アクション判定部５１５によって、アクションがルールデータベース４２に登録されていると判定された場合（ステップＳ１９のＹＥＳ）、アクション生成／実行部５１６は、当該アクションの登録を当該ルールデータベース４２から削除する（ステップＳ２０）。この処理は、アクションを実行するためのアクション実行情報がルールデータベース４２から削除されることによって実行される。
【００６６】
なお、ステップＳ１６において、イベントアクション判定部５１５によって類似度が一定の値以上である単語のパタンを示すルールパタン情報が存在しないと判定された場合、ステップＳ１７乃至Ｓ２０の処理は実行されない。
【００６７】
また、ステップＳ１８において、イベントアクション判定部５１５によって類似度が一定の値以上である単語のパタンを示すアクションパタン情報が存在しないと判定された場合、ステップＳ１９及びＳ２０の処理は実行されない。
【００６８】
また、ステップＳ１９において、イベント／アクション判定部５１５によってアクションがルールデータベース４２に登録されていないと判定された場合、ステップＳ２０の処理は実行されない。
【００６９】
次に、図７及び図８を参照して、メッセージが受信された際の処理の流れについて具体例を用いて説明する。
【００７０】
図７は、ユーザによって作成されたメッセージの第１の具体例を示す図である。図７に示されるメッセージ１００は、例えば会議の開催通知を示すメッセージである。なお、このメッセージ１００は、テキストで作成されたメッセージであるものとする。
【００７１】
まず、メッセージ受信／送信サーバ５１１は、図７に示すメッセージ１００を受信する。
【００７２】
次に、メッセージ判定部５１２は、メッセージ１００がテキストベースであるか否かを判定する。ここでは、メッセージ判定部５１２は、メッセージ１００はテキストベースであると判定する。なお、メッセージ１００がテキストベースでない場合は、メッセージ１００に対してテキスト抽出の処理が実行される。
【００７３】
メッセージ解析部５１４は、メッセージ１００を形態素解析／意味解析する。これにより、メッセージ解析部５１４は、例えば会議、開催または通知等の単語を取得（抽出）する。また、メッセージ解析部５１４は、例えば日時（ここでは、２００６年７月３１日  １３：００〜１５：００）等も取得する。
【００７４】
また、メッセージ解析部５１４は、取得された単語の出現頻度または出現箇所に応じて、各単語に対して重み付けを行う。ここでは、例えば会議、開催の単語は出現頻度が高く、また出現箇所がメッセージ１００の中で前方に位置するので、メッセージ解析部５１４は、メッセージ１００内の例えば会議、開催の単語の重みを高くする。
【００７５】
イベント／アクション判定部５１５は、メッセージ解析部５１４によって取得された単語に基づいて、メッセージ１００のパタンを判別する。イベント／アクション判定部５１５は、判別されたメッセージ１００のパタンに適合するルールパタン情報が存在するか否かを、ルールデータベース４２を参照して判定する。
【００７６】
ここで、判別されたメッセージ１００のパタンに適合するルールパタン情報が存在するものとする。この場合、イベント／アクション判定部５１５は、メッセージ１００のパタンに適合するルールパタン情報に対応付けられて格納されているルール情報に基づいて、ユーザに対して対応を促すために実行されるアクションを判別する。
【００７７】
ここで、メッセージ１００は会議開催通知であるから、このメッセージ１００のパタンに適合するルールパタン情報に対応付けられて格納されているルール情報によって示されるアクションには、例えば会議開催の事前通知または議事録の発行のフォロー等が挙げられる。会議開催の事前通知は、ユーザに対して会議の開催を確認的に通知するためのアクションである。議事録のフォローは、例えば会議の開催後にユーザに対して議事録の発行を促すためのアクションである。
【００７８】
アクションを起こすタイミングまたはアクションの種類／回数は、適合するルール情報によって異なるものとする。アクションを実行する日付は、例えばメッセージ解析部５１４によって単語が取得された日付を起点として、前後何日に実行されるかがルールに設定されている。なお、アクションを実行する日付は、例えば会議が開催される日付を起点として、前後何日に実行されるかが設定される構成でも良い。
【００７９】
また、ルールに設定されている内容は、前述したように例えばユーザが作成することが可能であり、またユーザが変更することも可能である。
【００８０】
アクション生成／実行部５１６は、イベント／アクション判定部５１５によって判別されたアクションを実行するためのアクション実行情報をルールデータベース４２に格納する。アクション実行情報は、例えば会議の前日に会議の開催の事前通知をする旨を示す。
【００８１】
アクション生成／実行部５１６は、ルールデータベース４２に格納されているアクション実行情報に基づいて、アクションを実行する。アクション生成／実行部５１６は、例えば会議の前日に、翌日に会議が開催される旨を通知するためのメールを送付するようなアクションを実行する。
【００８２】
会議が開催された後、例えばメッセージ１００に付随するメッセージである２次的イベントがユーザによって発行された場合には、対応するアクションの実行が中止される。
【００８３】
例えば、会議が開催された後にユーザによって議事録が発行された場合を想定する。この場合に、例えば議事録の発行を促すためのアクション（議事録のフォロー）がルールデータベース４２に登録されていた場合、既に議事録が発行されたにも拘らず、当該議事録の発行を促す必要はないため当該アクションの登録は削除される。
【００８４】
一方、上記した議事録の発行を促すためのアクションが実行されるまでに、議事録の発行がない場合には、当該アクションが実行される。
【００８５】
図８は、ユーザによって作成されたメッセージの第２の具体例を示す図である。図８に示されるメッセージ１０１は、例えばコンペの開催通知を示すメッセージである。なお、このメッセージ１０１は、テキストで作成されたメッセージであるものとする。
【００８６】
まず、メッセージ受信／送信サーバ５１１は、図８に示すメッセージ１０１を受信する。
【００８７】
次に、メッセージ判定部５１２は、メッセージ１０１がテキストベースであるか否かを判定する。ここでは、メッセージ判定部５１２は、メッセージ１０１はテキストベースであると判定する。なお、メッセージ１０１がテキストベースでない場合は、メッセージ１０１に対してテキスト抽出の処理が実行される。
【００８８】
メッセージ解析部５１４は、メッセージ１０１を形態素解析／意味解析する。これにより、メッセージ解析部５１４は、例えばコンペまたは開催等の単語を取得（抽出）する。また、メッセージ解析部５１４は、例えば日時（ここでは、２００６年８月１日  ９：００〜１６：００）等も取得する。
【００８９】
また、メッセージ解析部５１４は、取得された単語の出現頻度または出現箇所に応じて、各単語に対して重み付けを行う。ここでは、例えばコンペ、開催の単語は、出現頻度が高く、また出現箇所がメッセージ１０１の中で前方に位置するので、メッセージ解析部５１４は、メッセージ１０１内の例えばコンペ、開催の単語の重みを高くする。
【００９０】
イベント／アクション判定部５１５は、メッセージ解析部５１４によって取得された単語に基づいて、メッセージ１０１のパタンを判別する。イベント／アクション判定部５１５は、判別されたメッセージ１０１のパタンに適合するルールパタン情報が存在するか否かを、ルールデータベース４２を参照して判定する。
【００９１】
ここで、判別されたメッセージ１０１のパタンに適合するルールパタン情報が存在するものとする。この場合、イベント／アクション判定部５１５は、メッセージ１０１のパタンに適合するルールパタン情報に対応付けられて格納されているルール情報に基づいて、ユーザに対して対応を促すために実行されるアクションを判別する。
【００９２】
ここで、メッセージ１０１はコンペの開催通知であるから、このメッセージ１０１のパタンに適合するルールパタン情報に対応付けられて格納されているルール情報によって示されるアクションには、例えばコンペの出欠回答のフォロー、コンペ開催の事前通知が挙げられる。コンペの出欠回答のフォローは、例えばコンペに出席するか否かの回答の発行（返信）を促すためのアクションである。
【００９３】
アクション生成／実行部５１６は、イベント／アクション判定部５１５によって判別されたアクションを実行するためのアクション実行情報をルールデータベース４２に格納する。アクション実行情報は、例えばコンペ開催の１週間前に出欠回答を促すメールをユーザに対して送信する旨を示す。
【００９４】
アクション生成／実行部５１６は、ルールデータベース４２に格納されているアクション実行情報に基づいて、アクションを実行する。アクション生成／実行部５１６は、例えばコンペ開催の１週間前に出欠回答を促すようなメールを送信するようなアクションを実行する。
【００９５】
ここで、上記したような例えばコンペ開催の出欠回答を促すようなメールを送信するためのアクション実行情報がルールデータベース４２に登録されている場合において、既にユーザによって出欠回答のメッセージが発行されている場合には、当該アクション実行情報はルールデータベース４２から削除される。これにより、既に出欠回答のメッセージがユーザによって発行されている場合には、当該出欠回答を促すアクションの実行は中止される。
【００９６】
上記したように本実施形態においては、ユーザによって作成された対象メッセージに対して形態素解析を行うことで当該対象メッセージのパタンを判別し、当該判別された対象メッセージのパタンに適合するルールパタン情報が存在するか否かを判定することが可能となる。これにより、判別された対象メッセージのパタンに適合するルールパタン情報に対応するルール情報に基づいて、自動で実行されるべきアクションを判別し、対象メッセージに対して必要なアクションを実行することが可能となる。
【００９７】
また、本実施形態においては、対象メッセージが２次的イベントである場合には、当該２次的イベントである対象メッセージのパタンに適合するアクションパタン情報に対応するアクション情報によって示されるアクション、つまり２次的イベントに関連するアクションの登録をルールデータベース４２から削除することによって、例えば既に発行されたメッセージについて、発行を促すようなアクションが実行されることを防止することが可能となる。
【００９８】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施形態に係るアクション支援システムを含むクライアント−サーバシステムのハードウェア構成を示すブロック図。
【図２】図１に示すアクション支援システム５０の主として機能構成を示すブロック図。
【図３】ルールデータベース４２内のデータ構造例を示す図。
【図４】図３に示すルール情報１のデータ構造例を示す図。
【図５】図３に示すルールパタン情報１のデータ構造例を示す図。
【図６】メッセージが受信された際のアクション支援システム５０の処理手順を示すフローチャート。
【図７】ユーザによって作成されたメッセージの第１の具体例を示す図。
【図８】ユーザによって作成されたメッセージの第２の具体例を示す図。
【符号の説明】
【０１００】
１０…コンピュータ、２０…クライアント端末、３０…ネットワーク、４０…外部記憶装置、４１…プログラム、４２…ルールデータベース（格納手段）、５０…アクション支援システム、５１…アクション制御部、５２…ルール登録部、５１１…メッセージ受信／送信サーバ、５１２…メッセージ判定部、５１３…テキスト抽出部、５１４…メッセージ解析部、５１５…イベント／アクション判定部、５１６…アクション生成／実行部、１００，１０１…メッセージ。
【図１】
2008140083.tif 000003
【図２】
2008140083.tif 000004
【図３】
2008140083.tif 000005
【図４】
2008140083.tif 000006
【図５】
2008140083.tif 000007
【図６】
2008140083.tif 000008
【図７】
2008140083.tif 000009
【図８】
2008140083.tif 000010