受信メールアクション処理
受信メール タイプおよび受信アクション条件を受信メール メッセージと比較することで、実行する受信アクションが決定されます。受信メールの処理時にインスタンスが認識するメールの件名に、返信と転送のプレフィックスを設定するためのプロパティがあります。
システムではこの処理フローに従って、受信アクションを実行するかどうかを決定します。
- 受信メール タイプが受信アクション タイプと一致している。
- 存在する場合、ウォーターマークまたはレコード番号が、ターゲット テーブルのレコードを参照している。
- 受信アクションの条件の評価で true の結果を返す。
これらの基準のいずれかが満たされない場合、システムでは現在の受信アクションをスキップして、次のアクティブな受信アクションを評価します。システムでは、受信アクションを順番値の最も小さいものから高いものへと処理していきます。受信アクションで [処理の停止] が有効になっている場合、システムでは受信アクション スクリプトを実行した後に、メール レコードの[状態] を [処理済み] へ更新します。
次のビデオでは、受信アクションの条件がインシデントの作成を妨げる例を示しています。
メールの件名で認識されるプレフィックス
- メール返信のプレフィックス
- ウォーターマークが存在しない、または In-Reply-To メールヘッダーが存在する場合は、インスタンスでは、glide.email.reply_subject_prefix プロパティからのプリフィックスを含むメールは返信メールとして認識されます。このプロパティを使用して、メールシステムで非標準の返信プレフィックスを設定できます。
プロパティ 説明 glide.email.reply_subject_prefix メールの返信を識別する、件名のプレフィックスのコンマ区切りリストを指定します。 - タイプ:文字列
- デフォルト値:re:、aw:、r:、Accepted:、Tentative:、Declined:
注:メール内の返信プレフィックスの大文字と小文字は、たとえば RE: のように、このプロパティで定義されているプレフィックスの大文字と完全に一致する必要があります。たとえば、メールに Re: のプレフィックスが含まれていて、プロパティに RE: のみが定義されている場合は、このメールは返信として認識されません。このため、RE:、Re: などプレフィックスの複数のバージョンを定義することがベストプラクティスです。 - メール転送プレフィックス
- 特定のプレフィックスを含むメールは、転送タイプの受信メール アクションをトリガーします。インスタンスでは、件名に glide.email.forward_subject_prefix プロパティからのプリフィックスを含むメールを、転送されたメールとして認識します。これらのプレフィックスを含むすべてのメールで、転送タイプの受信メール アクションがトリガーされます。お使いのメールシステムで非標準の転送プレフィックスを設定する、またはメール転送を返信のように動作させたい場合に、このプロパティを使用します。システムプロパティの値が空の場合、システムは値 fw: および fwd: の使用に戻ります。
プロパティ 説明 glide.email.forward_subject_prefix 転送されたメールを識別する、件名のプレフィックスのリスト (カンマ区切り) を指定します。 - タイプ:文字列
- デフォルト値:fw:、fwd:
- 場所: システムプロパティ [sys_properties] テーブルに追加
注:プリフィックスは大文字と小文字を区別しません。 - 返信としてメール転送
- プロパティは、転送されたメールを返信メールとして受信アクションで強制的に処理するように使用することができます。これらのプロパティでは、受信アクションで使用する件名プレフィックスを制御します。
これらのプロパティによって、インシデント更新受信アクションで、転送されたすべてのメールと返信されたメールが処理されます。プロパティ 必要な値 glide.email.reply_subject_prefix re:、Re:、RE:、aw:、r:、fw:、fwd:、Fwd:、FWD: glide.email.forward_subject_prefix [転送プレフィックスでない任意のテキスト] 注:glide.email.forward_subject_prefix プロパティには、転送されたメールを返信として処理できるようにテキストが含まれている必要があります。転送プレフィックス (fw:、fwd:、Fwd:、FWD:) 以外の任意のテキストにすることができます。
送信者のメールアドレスとユーザーの照合
インスタンスでは受信アクションを使用して、送信者のメールアドレスをユーザー [sys_user] テーブル内のアクティブ ユーザーと照合します。
メールを処理する際、インスタンスでは現在のユーザを、メールアドレスが email.from に一致するユーザーに設定します。受信アクションでは、この現在のユーザーを参照できます。たとえば、基本システム受信アクションの [インシデント作成] では、インシデントの caller_id を、gs.getUserID() によって返された値に設定します。
複数のユーザーが同じメールアドレスを持つ場合、インスタンスではまず、メールアドレスを持つアクティブ ユーザーが検索されます。インスタンスでは非アクティブなユーザーとの照合は行いません。
件名または本文のウォーターマークの照合
次の例では、インスタンスでメールの件名または本文のランダムウォーターマークをどのように照合するかを示しています。
| 件名または本文コンテンツ | 照合結果 |
|---|---|
| Ref:MSG0000008_ aLJc130zDhCVuh3spXmt | インスタンスではこの文字列をウォーターマークとして認識し、番号が MSG0000008_aLJc130zDhCVuh3spXmt のレコードのメール ウォーターマーク [sys_watermark] テーブルを検索します。このウォーターマークが存在する場合、関連するレコードとメールの照合が行われます。このウォーターマークが存在しない場合、メールと受信アクションを照合するための基準 に記載されているように受信メール メッセージが処理されます。 |
| Ref:MSGWTR0000008_wfLLz42IxCgUvG2JlYnh | インスタンスではこの文字列をウォーターマークとして認識し、番号が MSGWTR0000008_wfLLz42IxCgUvG2JlYnh のレコードのメール ウォーターマーク [sys_watermark] テーブルを検索します。このウォーターマークが存在する場合、関連するレコードとメールの照合が行われます。このウォーターマークが存在しない場合、メールと受信アクションを照合するための基準 に記載されているように受信メール メッセージが処理されます。 |
件名または本文のレコード番号の照合
次の例では、ウォーターマークが存在しない場合に、インスタンスでメールの件名にあるレコード番号と既存のレコードとの照合がどのように行われるかを説明しています。
| 件名の内容 | 照合結果 |
|---|---|
| RE: Example INC0005574 | この件名は返信として認識され、INC プレフィックスはインシデント テーブルに属するものとして認識されます。インスタンスは、インシデント テーブルで既存のレコード INC0005574 を検索します。このインシデントが存在する場合、メールはこのインシデントに関連付けられます。このインシデント レコードが存在しない場合、インスタンスでは新しいメールの受信アクションを使用してインシデントが作成され、作成された新しいインシデントをメールに関連付けます。 |
RE: Example "INC0005574" RE: Example *INC0005574 |
この件名は返信として認識されますが、"INC プレフィックスは引用符によりインシデント テーブルに属しているものとは認識されません。レコード番号の前のスペース以外のすべての文字についても同じエラーが発生します。代わりに、インスタンスは新しいメールの受信アクションを使用してインシデントを作成し、新しいインシデントをメールに関連付けます。 |
RE: "Example INC0005574" RE: Example INC0005574* |
この件名は返信として認識され、INC プレフィックスはインシデント テーブルに属するものとして認識されます。インスタンスは、インシデント テーブルで既存のレコード INC0005574" を検索しますが、引用符のため検索では見つかりません。レコード番号の末尾のスペース以外の文字についても、同じエラーが発生します。代わりに、インスタンスは新しいメールの受信アクションを使用してインシデントを作成し、新しいインシデントをメールに関連付けます。 |
| RE:CHG0008593 と INC000576 | この件名は返信として認識されますが、両方ではなく、どちらか 1 つの番号のプレフィックスが認識されます。インスタンスで最初にどちらのプレフィックスを照合するかを予測することはできません。照合するのがどちらのプレフィックスでも、対応するテーブルで一致するレコードが検索されます。レコードが存在する場合、メールはテーブルに関連付けられます。レコードが存在しない場合、インスタンスで新しいメールの受信アクションを使用してインシデントが作成され、作成された新しいインシデントをメールに関連付けます。 注: インスタンスで最初に照合されるレコードの予測ができないため、件名に複数の数字を含むメールの処理はインスタンスでサポートされていません。このため、通知には複数の $number 変数を含めないでください。 |
| FW: Example INC0005574 | この件名はプレフィックスが FW: であるため転送として認識されます。転送メールの受信アクションを使用してインシデントが作成され、作成された新しいインシデントはメールに関連付けられます。 |
| Example INC0005574 | 一致する返信または転送プレフィックスを含まないため、この件名は新規メールとして認識されます。新しいメールのインバウンドアクションを使用してインシデントを作成し、新しいインシデントをメールに関連付けます。 |