すべてのプロダクト
Search
ドキュメントセンター

Direct Mail:イベントルーティングの設定

最終更新日:Jun 04, 2026

DirectMail を EventBridge と統合し、メール配信通知を DingTalk、Message Queue for Apache RocketMQ、HTTP エンドポイントなどのターゲットにルーティングします。

イベントバスを設定すると、DirectMail 経由で送信されたメールの配信結果が、指定したルーティングルールに基づき、DingTalk、Message Queue for Apache RocketMQ、HTTP などのイベントターゲットにルーティングされます。これにより、非同期での配信結果の取得が可能になります。

イベントルーティングを設定するには、以下の手順を実行します。

イベントディストリビューションの有効化

DirectMail コンソールでイベント通知スイッチをオンにします。

b3070724625e6b3377fe779d96bf76ec

EventBridge のアクティベートと権限付与

1. Alibaba Cloud ホームページで EventBridge を検索し、無料でサービスをアクティベートします。

image.png

image.png

イベントルールの作成

EventBridge コンソールで、「クラウドサービスのイベントバス」>「ルールの作成」に移動します。DirectMail 用のルール名と説明を入力します。

image.png

イベントパターンを設定します。「Alibaba Cloud 公式イベントソース」をイベントソースタイプとして選択し、イベントソースとして acs.dm を指定します。サポートされるイベントタイプは、送信失敗、送信成功、リンククリック、メール開封 です。必要に応じてイベントタイプを追加してください。サポート対象外のタイプはフィルターで除外されます。

イベントターゲットを設定するには、DingTalk、Message Service (MNS)、HTTP などのサービスタイプを選択します。詳細については、「イベントルールの管理」をご参照ください。

この例では、イベントターゲットとして Message Queue for MQTT を使用します。送信先キューを指定してください。(Message Queue for MQTT のアクティベートおよびキューの作成方法については、下記の「Message Queue for MQTT のアクティベートと受信キューの作成」セクションをご参照ください。)デフォルトのメッセージ本文は Base64 エンコーディングされていない完全なイベントです。必要に応じてリトライおよびデッドレターオプションを設定し、**[ルールの作成]** をクリックします。

ルールを作成後、EventBridge コンソールで確認できます。

image.png

イベントタイプと変更方法

サポートされるイベントタイプ

イベントタイプ

type パラメーターの値

メール配信失敗

dm:Deliver:Fail

メール配信成功

dm:Deliver:Succeed

メール FBL レポートデータ

dm:Feedback:FblReport

メール再サブスクリプションデータ

dm:Feedback:Subscribe 

メール登録解除データ

dm:Feedback:UnSubscribe

クリックイベント

dm:Trace:Click

イベントを開く

dm:Trace:Open

グレイリストアドレス検証の非同期結果

dm:Validator:GrayListResult

説明

EventBridge は、メール送信後 30 日間イベントを受信します。

イベントタイプの統計設定

イベントタイプを変更するには、「イベントルール」>「イベントパターンの編集」>「イベントタイプ」をクリックします。

image.png

image.png

開封・クリック追跡の前提条件

メール開封およびクリックイベントの通知を受信するには、事前にデータ追跡を有効化する必要があります。「データ追跡の有効化」をご参照ください。

イベントメッセージの受信とリンクの検証

この例では、上記で設定した 軽量メッセージキュー を使用して、イベント配信パスを検証します。

軽量メッセージキューの設定

  1. Message Queue for MQTT コンソール に移動します。Message Queue for MQTT がアクティベートされていない場合は、画面の指示に従ってアクティベートしてください。

  2. 左側のナビゲーションウィンドウで、キュー をクリックします。

  3. キューの作成 をクリックします。

  4. キュー名(例:delivery-result-queue)を入力し、デフォルト設定のまま **[OK]** をクリックします。

image.png

トリガーイベントディストリビューション

DirectMail 経由でメールを送信後、EventBridge コンソールでイベントトレースを確認します。image.png

image.png

image.png

イベントターゲットの結果

軽量メッセージキュー コンソールで、EventBridge ターゲットとして設定したキュー(delivery-result-queue)を選択し、**[メッセージの送受信]** をクリックします。

image.png

**[メッセージの受信]** をクリックしてイベントメッセージを表示し、**[詳細]** をクリックして全文を確認します。イベント ID が EventBridge のレコードと一致すれば、Message Service への配信が確認できます。image.png

image.png

image.png

例:送信元アドレス別のイベント転送の設定

上記で設定したイベントディストリビューションは、DirectMail 内のすべての送信ドメインおよびアドレスに適用されます。イベントルールの JSON を変更することで、送信元アドレスなどの特定の条件に基づいてイベントをフィルターできます。

次の例では、送信元アドレスが test@hangzhou.dmtest.top の DirectMail イベントをイベントターゲットにルーティングするルールを設定します。

1. イベントルールを作成する際、フィールドに基づいてイベントをフィルターするイベントパターンを指定します。

image.png

この例では、以下のパターンを使用します。

{
    "source": [
        "acs.dm"
    ],
    "type": [
        "dm:Deliver:Fail",
        "dm:Deliver:Succeed",
        "dm:Trace:Click",
        "dm:Trace:Open",
        "dm:Feedback:FblReport"
    ],
    "data": {
        "from": [
            "test@hangzhou.dmtest.top"
        ]
    }
}

以下は完全なイベントメッセージ本文です。その内容と構造に基づいてイベントパターンを作成してください。

  • イベントパターン内のすべてのフィールド名は、イベント本文内に存在する必要があります。

  • イベントパターン内のフィールド名のネスト構造は、イベント本文の構造と一致している必要があります。

  • マッチングは文字単位で厳密に行われ、大文字・小文字が区別されます。文字列は正規化されません。

  • パターン内の値は JSON 規則に従う必要があります。文字列は引用符で囲み、数値はそのまま記述し、truefalsenull のキーワードは引用符なしで記述します。

  • イベントパターンは AND および OR の両方のロジックをサポートします。パターン内の異なる キー 間では AND ロジックが適用され、キー に対する値の配列では OR ロジックが適用されます。

デフォルトのイベントメッセージ本文:

メール配信失敗

メールの配信に失敗した場合、EventBridge は次のようなイベントを受信します。

{
  "data": {
    "header": {
      "X-Notify-Message-ID": "test******@******"
    },
    "env_id": "60000******",
    "account": "batch******@top",
    "from": "batch******@top",
    "rcpt": "xxx******@aliyun.com",
    "msg_id": "1df******@******",
    "channel_name": "bg:vip_*",
    "outbound_ip": "8.*.*.7",
    "send_time": "2024-04-29T11:07:04",
    "deliver_time": "2024-04-29T11:07:12",
    "status": "2",
    "event": "dm:Deliver:Fail",
    "region": "cn-hangzhou",
    "err_code": "554",
    "err_msg": "554  RCPT xxx******@aliyun.com dosn't exist",
    "failed_type": "SmtpNxBox",
    "esp": "*mail.com",
    "ip_pool_id": "10306c37-****-****-a82f-1dafb56a9dd2",
    "is_dedicated_ip": true,
    "tag": "xxxxx"
  },
  "id": "8734hhidu983hi457",
  "source": "acs:dm",
  "specversion": "1.0",
  "subject": "acs:dm:cn-hangzhou:{AccountId}:*",
  "time": "2024-04-29T11:07:12+08:00",
  "type": "dm:Deliver:Fail",
  "aliyunaccountid": "123456789098****",
  "aliyunpublishtime": "2024-04-29T11:07:13.179PRC",
  "aliyuneventbusname": "default",
  "aliyunregionid": "cn-hangzhou",
  "aliyunpublishaddr": "172.25.XX.XX"
}

data フィールド内のパラメーターの説明を次の表に示します。

パラメーター

タイプ

説明

header

Object

メールに関連するヘッダー。

X-Notify-Message-ID

String

test****@example.com

カスタムヘッダー X-Notify-Message-ID。

env_id

String

60000****

メール送信時にシステムから返されるメール ID。

account

String

batch****@top

送信者のメールアドレス。

from

String

batch****@top

送信者のメールアドレス。

rcpt

String

a****@aliyun.com

受信者のメールアドレス。

msg_id

String

1df****@example.com

メールの Message-ID フィールド。

channel_name

String

bg:vip_*

この配信に使用されたアウトバウンド IP アドレスが属するチャンネルの名前。

outbound_ip

String

8.*.*.7

この配信のアウトバウンド IP アドレス。

send_time

String

2024-04-29T11:07:04

メールが受理された時刻。

deliver_time

String

2024-04-29T11:07:12

メール配信が完了した時刻。

status

String

2

配信ステータス。

  • 0:成功。

  • 2:無効なアドレス。

  • 3:受信者がメールを迷惑メールとしてマークしました。

  • 4:その他の失敗。

event

String

dm:Deliver:Fail

イベントメッセージのタイプ。これは type パラメーターと同じです。

region

String

cn-hangzhou

イベントが発生したリージョン。

err_code

String

554

配信完了時に受信者のメールサービスプロバイダー (ESP) から返されたコード。

err_msg

String

554 RCPT a****@aliyun.com dosn't exist

配信完了時に受信者の ESP から返されたメッセージ。

failed_type

String

SmtpNxBox

配信結果の分類。

esp

String

*mail.com

受信者のメールプロバイダーの分類。

ip_pool_id

String

10306c37-****-****-a82f-1dafb56a9dd2

メール送信に使用された IP プールの ID。

is_dedicated_ip

Boolean

true

専用 IP アドレスが使用されたかどうかを示します。

tag

String

xxxxx

メール送信に使用されたタグ。

メール配信成功

メールが正常に配信された場合、EventBridge は次のようなイベントを受信します。

{
  "data": {
    "header": {
      "X-Notify-Message-ID": "test******@******"
    },
    "env_id": "60000******",
    "account": "batch******@top",
    "from": "batch******@top",
    "rcpt": "xxx******@aliyun.com",
    "msg_id": "1df******@******",
    "channel_name": "bg:vip_*",
    "outbound_ip": "8.*.*.7",
    "send_time": "2024-04-29T11:07:04",
    "deliver_time": "2024-04-29T11:07:12",
    "status": "0",
    "event": "dm:Deliver:Succeed",
    "region": "cn-hangzhou",
    "err_code": "250",
    "err_msg": "250 Send Mail OK",
    "failed_type": "SendOk",
    "esp": "*mail.com",
    "ip_pool_id": "10306c37-****-****-a82f-1dafb56a9dd2",
    "is_dedicated_ip": true,
    "tag": "xxxxx"
  },
  "id": "8734hhidu983hi457",
  "source": "acs:dm",
  "specversion": "1.0",
  "subject": "acs:dm:cn-hangzhou:{AccountId}:*",
  "time": "2024-04-29T11:07:12+08:00",
  "type": "dm:Deliver:Succeed",
  "aliyunaccountid": "123456789098****",
  "aliyunpublishtime": "2024-04-29T11:07:13.179PRC",
  "aliyuneventbusname": "default",
  "aliyunregionid": "cn-hangzhou",
  "aliyunpublishaddr": "172.25.XX.XX"
}

data フィールド内のパラメーターの説明については、「パラメーターの説明」をご参照ください。

メール FBL レポートデータ

フィードバックループ (FBL) を通じてメールが報告された場合、EventBridge は次のようなイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Feedback:FblReport",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "send_time": "1726821644",
        "send_email": "from@xxx.com",
        "block_email": "to@yyy.com",
        "subject": "Hello Mr.xxx",
        "message_id": "<msgid***@xxx.com>",
        "block_time": "1726821667",
        "fbl_isp": "outlook**",
        "fingerprint": "SMTPD_abc****"
    }
}

data フィールド内のパラメーター:

パラメーター

タイプ

説明

send_time

String

1726821644

メール送信時刻。

send_email

String

from@xxx.com

送信者のメールアドレス。

block_email

String

to@yyy.com

ブロックされた受信者のメールアドレス。

subject

String

Hello Mr.xxx

メールの件名。

message_id

String

<msgid***@xxx.com>

メールの一意な識別子。

block_time

String

1726821667

メールがブロックされた時刻。

fbl_isp

String

outlook**

送信者のインターネットサービスプロバイダー (ISP)。

fingerprint

String

SMTPD_abc****

メールの指紋。

メール再サブスクリプションデータ

受信者が再サブスクリプションした場合、EventBridge は次のようなイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Feedback:Subscribe",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "operate_time": "2024-04-29T11:25:48",
        "envid": "6000*********",
        "from": "from@xxx.com",
        "rcpt": "to@yyy.com",
        "client_ip": "102.**.**.1"
    }
}

data フィールド内のパラメーター:

パラメーター

タイプ

説明

operate_time

String

2024-04-29T11:25:48

操作が発生した時刻。時刻は UTC です。

env_id

String

6000*********

メール送信時にシステムから返されるメール ID。

from

String

from@xxx.com

送信者のアドレス。

rcpt

String

to@yyy.com

受信者の住所。

client_ip

String

102.**.**.1

開封イベントのクライアント IP アドレス

メール登録解除データ

受信者が登録を解除した場合、EventBridge は次のようなイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Feedback:UnSubscribe",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "operate_time": "2024-04-29T11:25:48",
        "envid": "6000*********",
        "from": "from@xxx.com",
        "rcpt": "to@yyy.com",
        "client_ip": "102.**.**.1"
    }
}

data フィールド内のパラメーター:

パラメーター

タイプ

説明

operate_time

String

2024-04-29T11:25:48

操作が発生した時刻。時刻は UTC です。

env_id

String

6000*********

メール送信時にシステムから返されるメール ID。

from

String

from@xxx.com

送信者のアドレス。

rcpt

String

to@yyy.com

受信者の住所。

client_ip

String

102.**.**.1

イベントのソースクライアントの IP アドレス

クリックイベント

受信者がメール内のリンクをクリックした場合、EventBridge は次のようなイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Trace:Click",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "operate_time": "2024-04-29T11:25:48",
        "client_ip": "202.**.**.1",
        "env_id": "60000******",
        "from": "batch******@top",
        "rcpt": "xxx******@aliyun.com",
        "msg_id": "1df******@******",
        "event": "dm:Trace:Click",
        "region": "cn-hangzhou",
        "url": "https://www.aliyun.com",
        "outbound_ip": "102.**.**.1",
        "esp": "*mail.com",
        "ip_pool_id": "10306c37-****-****-a82f-1dafb56a9dd2",
        "is_dedicated_ip": true,
        "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X ****) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1",
        "tag": "xxxxx"
    }
}

data フィールド内のパラメーターの説明を次の表に示します。

パラメーター

タイプ

説明

operate_time

String

2024-04-29T11:25:48

操作が発生した時刻。

client_ip

String

202.**.**.1

リンクをクリックしたクライアントの IP アドレス。

env_id

String

60000******

メール送信時にシステムから返されるメール ID。

from

String

batch****@top

送信者のアドレス。

rcpt

String

xxx******@aliyun.com

受信者の住所。

msg_id

String

1df******@******

メール内の Message-ID フィールド。

event

String

dm:Trace:Click

イベントタイプ。

region

String

cn-hangzhou

イベントが発生したリージョン。

url

String

https://www.aliyun.com

クリックされた URL。

outbound_ip

String

102.**.**.1

メール送信に使用されたアウトバウンド IP アドレス。

esp

String

*mail.com

受信者のメールプロバイダーの分類。

ip_pool_id

String

10306c37-****-****-a82f-1dafb56a9dd2

メール送信に使用された IP プールの ID。

is_dedicated_ip

Boolean

true

専用 IP アドレスが使用されたかどうかを示します。

user_agent

String

Mozilla/5.0 (Macintosh; Intel Mac OS X ****) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1

クリックイベントのユーザーエージェント。

tag

String

xxxxx

メール送信に使用されたタグ。

イベントを開く

イベントが発生した場合、EventBridge は次のようなサンプルイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Trace:Open",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "operate_time": "2024-04-29T11:25:48",
        "client_ip": "202.**.**.1",
        "env_id": "60000******",
        "from": "batch******@top",
        "rcpt": "xxx******@aliyun.com",
        "msg_id": "1df******@******",
        "event": "dm:Trace:Open",
        "region": "cn-hangzhou",
        "outbound_ip": "102.**.**.1",
        "esp": "*mail.com",
        "ip_pool_id": "10306c37-****-****-a82f-1dafb56a9dd2",
        "is_dedicated_ip": true,
        "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X ****) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1",
        "tag": "xxxxx"
    }
}

data フィールド内のパラメーターの説明を次の表に示します。

パラメーター

タイプ

説明

operate_time

String

2024-04-29T11:25:48

操作が発生した時刻。

client_ip

String

192.168.XX.XX

メールを開封したクライアントの IP アドレス。

env_id

String

60000******

メール送信時にシステムから返されるメール ID。

from

String

batch****@top

送信者のアドレス。

rcpt

String

a****@aliyun.com

受信者のアドレス。

msg_id

String

1df****@example.com

メール内の Message-ID フィールド。

event

String

dm:Trace:Click

イベントタイプ。

region

String

cn-hangzhou

イベントが発生したリージョン。

outbound_ip

String

102.**.**.1

メール送信に使用されたアウトバウンド IP アドレス。

esp

String

*mail.com

受信者のメールプロバイダーの分類。

ip_pool_id

String

10306c37-****-****-a82f-1dafb56a9dd2

メール送信に使用された IP プールの ID。

is_dedicated_ip

Boolean

true

専用 IP アドレスが使用されたかどうかを示します。

user_agent

String

Mozilla/5.0 (Macintosh; Intel Mac OS X ****) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1

オープンイベントのユーザーエージェント。

tag

String

xxxxx

メール送信に使用されたタグ。

グレイリストアドレス検証の非同期結果

グレイリストアドレス検証の非同期結果が利用可能になると、EventBridge は次のようなイベントを受信します。

{
    "id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
    "source": "acs.dm",
    "specversion": "1.0",
    "subject": "acs.dm:cn-hangzhou:123456789098****:215672",
    "time": "2020-11-19T21:04:41+08:00",
    "type": "dm:Validator:GrayListResult",
    "aliyunaccountid": "123456789098****",
    "aliyunpublishtime": "2020-11-19T21:04:42Z",
    "aliyuneventbusname": "default",
    "aliyunregionid": "cn-hangzhou",
    "aliyunpublishaddr": "172.25.XX.XX",
    "data": {
        "request_id": "45ef4dewdwe1-7c35-447a-bd93-fab****",
        "submission_time": "1763541726",
        "completion_time": "1763541793",
        "email": "xxxxxx@yyy.com",
        "status": "INVALID",
        "sub_status": "MAILBOX_NOT_EXISTS",
        "provider": "XXXX",
        "is_free_mail": false,
        "local_part": "xxxxxx",
        "domain_part": "yyy.com"
    }
}

data フィールド内のパラメーター:

パラメーター

タイプ

説明

request_id

String

45ef4dewdwe1-7c35-447a-bd93-fab****

リクエスト送信時に API から返されたリクエスト ID。

submission_time

String

1763541726

検証リクエストが送信された時刻。時刻は UTC です。

completion_time

String

1763541793

検証が完了した時刻。時刻は UTC です。

email

String

xxxxxx@yyy.com

検証されたメールアドレス。

status

String

INVALID

検証後のメールアドレスのステータス。

sub_status

String

MAILBOX_NOT_EXISTS

検証結果に関する追加情報を提供するサブステータス。

provider

String

XXXX

アドレスのメールプロバイダーの分類。

is_free_mail

Boolean

false

アドレスがフリーメールプロバイダーからのものかどうかを示します。

local_part

String

xxxxxx

メールアドレスのローカル部。小文字に変換され、サブアドレッシングタグが削除されています。

domain_part

String

yyy.com

メールアドレスのドメイン部。小文字に変換されています。

メールプッシュイベント

説明

イベント詳細内のすべての時刻フィールドは、協定世界時 (UTC) です。

2. 送信元を検証するために、test@hangzhou.dmtest.top からメールを送信します。

image.png

3. Message Service (MNS) キューでメッセージを確認します。(この例では、イベントターゲットとして Message Service (MNS) を使用しています。別のターゲットを設定することも可能です。)

image.png

4. 別の送信元アドレスからメールを送信し、EventBridge > イベントトレースを確認します。イベントはトレースに表示されますが、Message Queue for Apache RocketMQ には配信されないため、指定された送信元アドレスからのみ通知がトリガーされることが確認できます。image.png

image.png

image.png