次の方法で共有


メールイベントを処理する

Azure Event Grid を使用して Communication Services の Email イベントを処理することで、Azure Communication Services を開始します。 配信レポートやエンゲージメント レポートなどの Email イベントをサブスクライブした後、これらのイベントを生成して受信します。 このクイックスタートを完了すると、ご利用の Azure アカウントでわずかな (数セント未満の) コストが発生します。

前提条件

Event Grid について

Event Grid は、クラウドベースのイベント処理サービスです。 この記事では、 通信サービス イベントをサブスクライブし、イベントをトリガーして結果を表示する方法について説明します。 通常は、イベント データを処理し、アクションを実行するエンドポイントにイベントを送信します。 この記事では、メッセージを収集して表示する Web アプリにイベントを送信します。

環境をセットアップする

イベントの生成と受信に使用する環境を設定するには、次のセクションの手順を実行します。

Event Grid リソース プロバイダーを登録する

Azure サブスクリプションで Event Grid をまだ使用していない場合は、Event Grid リソース プロバイダーの登録が必要になることがあります。 プロバイダーを登録するには、次の手順のようにします。

  1. Azure Portal にアクセスします。
  2. 左側のメニューで [サブスクリプション] を選択します。
  3. Event Grid に使うサブスクリプションを選びます。
  4. 左側のメニューの [設定] で、 [リソース プロバイダー] を選択します。
  5. Microsoft.EventGrid を探します。
  6. リソース プロバイダーが登録されていない場合は、[登録] を選びます。

登録完了まで少し時間がかかることがあります。 [最新の情報に更新] を選択して、状態を更新します。 [状態][登録済み] と表示されたら、次に進むことができます。

Event Grid ビューアーをデプロイする

このクイック スタートでは、Event Grid ビューアーを使用して、ほぼリアルタイムでイベントを表示します。 ビューアーにより、リアルタイム フィードのエクスペリエンスがユーザーに提供されます。 また、各イベントのペイロードを検査に使用できるようになるはずです。

ビューアーを設定するには、「Azure Event Grid ビューアー」の手順のようにします。

Webhook を使用して Email イベントをサブスクライブする

特定のイベントをサブスクライブして、追跡するイベントの送信先に関する情報を Event Grid に提供できます。

  1. ポータルで、作成した Communication Services リソースに移動します。

  2. Communication Service リソース内で、[Communication Services] ページの左側のメニューの [イベント] を選びます。

  3. [Add Event Subscription](イベント サブスクリプションの追加) を選びます。

    Azure Communication Services リソースの [イベント] ページを示すスクリーンショット。[イベント サブスクリプション] ボタンが強調表示されています。

  4. [イベント サブスクリプションの作成] ページで、イベント サブスクリプションの名前を入力します。

  5. [イベントの種類] で、サブスクライブするイベントを選びます。 Email には、Email Delivery Report ReceivedEmail Engagement Tracking Report Received を選択できます。

  6. システム トピック名の入力を求められたら、自由に一意の文字列を指定してください。 このフィールドはエクスペリエンスに影響を与えず、内部テレメトリの目的で使用されます。

    [イベント サブスクリプションの作成] ダイアログを示すスクリーンショット。 [イベントの種類] で、[受信した Email 配信レポート] と [受信した Email エンゲージメント追跡レポート] が選択されています。

  7. [エンドポイントの種類] では、[webhook] を選びます。

    [イベント サブスクリプションの作成] ダイアログの詳細を示すスクリーンショット。[エンドポイントの種類] の一覧で、[Web Hook] が選択されています。

  8. [エンドポイント] では、[エンドポイントの選択] を選び、自分の Web アプリの URL を入力します。

    この場合は、クイックスタートで前に設定した Event Grid ビューアー の URL を使用します。 サンプルの URL は、https://{{site-name}}.azurewebsites.net/api/updates という形式になっています。

  9. [選択の確認] を選択します。

    [Webhook の選択] ダイアログを示すスクリーンショット。[サブスクライバー エンドポイント] ボックスには URL が含まれており、[選択の確認] ボタンが表示されています。

Email イベントを表示する

Email イベントを生成して受信するには、次のセクションの手順を実行します。

Email イベントをトリガーする

イベント トリガーを表示するには、いくつかのイベントを生成する必要があります。 イベントをトリガーするには、Communication Services リソースにアタッチされている Email ドメイン リソースを使用してメールを送信します。

  • Email Delivery Report Receivedイベントは、メールステータスが配信済み、失敗、スパムフィルター、検疫などの最終状態にあるときに生成されます。

  • Email Engagement Tracking Report Received イベントは、送信されたメールが開かれるか、メール内のリンクがクリックされたときに生成されます。 イベントをトリガーするには、Email ドメイン リソースの User Interaction Tracking オプションをオンにする必要があります

Communication Services でサポートされているイベントの完全な一覧を確認してください。

Email イベントを受信する

イベントを生成した後、 Email Delivery Report Received イベントと Email Engagement Tracking Report Received イベントがエンドポイントに送信されます。 これらのイベントは、このクイックスタートで最初に設定した Event Grid ビューアーに表示されます。 ペイロード全体を表示するには、イベントの横にある目のアイコンを選びます。 イベントは次のデータのようになっているはずです。

Microsoft.Communication.EmailDeliveryReportReceived イベント

受信した EMAIL 配信レポート イベントの Event Grid スキーマを示す Azure Event Grid ビューアーのスクリーンショット。

Microsoft.Communication.EmailEngagementTrackingReportReceived イベント

Email エンゲージメント追跡レポート イベントの Event Grid スキーマを示す Azure Event Grid ビューアーのスクリーンショット。

  • EngagementContext は、engagementType が Click の場合にクリックされたリンクを指します。
  • UserAgent は、この電子メール エンゲージメント イベントが発生した User-Agent を指します。 たとえば、ユーザーが Win10 コンピューターを使用して Microsoft Edge で対話した場合: Mozilla/5.0 (Windows NT 10.0;Win64;x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246
  • EngagementType とは、エンゲージメントの種類を指します。 指定できる値は View または Click です。
  • Recipient は、メールに関与した受信者を指します。 元のメールが一度に複数の受信者に送信された場合、このフィールドは空であることに注意してください。

詳細については、 イベント スキーマとその他のイベントの概念を参照してください

リソースをクリーンアップする

Communication Services サブスクリプションをクリーンアップして解除する場合は、リソースまたはリソース グループを削除できます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。 詳細については、リソースのクリーンアップに関する記事を参照してください。

次の手順

このクイックスタートの中で、Email イベントの利用方法について学びました。 Event Grid サブスクリプションを作成することによって Email イベントを受信できます。

スキーマ情報とイベント例については、「Azure Communication Services - Email イベント」を参照してください。