2016-01-07

Marketing Cloud Connector(v5)触ってみた【メール送信編】

前回はインストールまでやったので今回は実際のメール送信の部分をやっていきます。メール送信方法には、Contact・Leadに対して一件ずつメールを送信する方法、レポートやキャンペーンを使って一括でメール送信をする方法、ContactやLeadに紐づくオブジェクトが作成、更新された際にリアルタイムにメールを送信する方法の3パターンあります。

事前準備

どのパターンでもあらかじめメールを作成しておく必要があります。 [Email]>[Content]>[My Emails]でメールテンプレートを作成しておいてください。

etmc_email_content

個別送信

個々のContact、Leadレコードに対してメールを送信することができます。

まず、Contact、Leadのレイアウトにカスタムリンク[Send Marketing Cloud Email]を追加して、リンクをクリックします。

etmc_sf_emailsend_contact

そうすると、個別送信用のメール送信画面に遷移するので、情報を入力して[I certify this person has opt in]にチェックをつけて[Send]ボタンで送信します。

etmc_sf_emailsend_single

一括送信

レポートやキャンペーンを指定して一括でメールを送信する方法になります。

[Marketing Cloud]タブあるいは[Email Sends]の新規レコードを作成しようとすると、Email Sendの画面に遷移します。

etmc_sf_emailsend1

配信対象、配信除外対象にはレポート、キャンペーンを指定できます。

レポートではContactID, LeadIDが含まれているものを選択します(参照関係のID項目が含まれていればどのオブジェクトでも利用できるっぽいです)

キャンペーンを指定すると紐づくキャンペーンメンバに配信することになります。

Remember recipients and exclusions for this emailにチェックをつけると、次回以降、同一のEmailを選択した時に自動的に配信対象、配信除外対象のレポート、キャンペーンがセットされた状態になります。

etmc_sf_emailsend2

FromではRecord Ownerを選択することができますが、こちらはContact、LeadのOwnerになるので、他オブジェクトのレポートを使った送信の場合は、そのオブジェクトのOwnerではないことに注意してください。

個別送信のときと同様に[I certify all of these people have opted in]にチェックをつけて[Send]ボタンで送信できます。

送信すると以下の様なEmail Sendオブジェクトが作成されます。

etmc_sf_emailsend_record

ExactTargetにリクエストが送信されると”Scheduled”、完了すると”Completed”というようにステータスが随時変更されます。送信されると、Email Sendに紐付いた形で個別の送信ログレコードが作成されます。

etmc_sf_emailsend_results

Triggered Send

レコードが作成されたとき、更新されたときを契機としてExactTarget経由でメールを送信できる機能になります。

対象のオブジェクトはMarketing Cloud Connector設定画面の[Enabled Objects]に追加する必要があります。

etmc_sf_triggeredsend_setting

また、事前に以下のようなトリガを実装する必要があります。

trigger Trig_Hoge Name on Hoge__c (after insert, after update) {
  et4ae5.triggerUtility.automate('Hoge__c');
}

automateの引数にオブジェクトAPI参照名を適切に入れてあげればOKです。(トリガ名などは関係ない模様)

Email Sendの画面から[Triggered Sends]のリンクをクリックします。

etmc_sf_emailsend_header

Triggered Sendの設定画面が表示されるので[New]をクリックします。

etmc_sf_triggeredsends_management

Triggered Sendの新規作成画面で値を入力します。

etmc_sf_triggeredsend_new

TriggeredSendに関してもContactとLeadに紐付いているオブジェクトが対象になるので、対象の参照関係項目をContact/Lead Fieldで設定することになります。

あとはワークフローの要領で起動条件を設定し、送信するメールの内容等入力してから[I certify all of these people will have opted in]にチェックを入れて[Save]をクリックします。

その後、作成された設定レコードの画面に遷移しますが、この時点ではまだ無効な状態になっているので、[Activate]ボタンをクリックして有効化します。[Activate]時にトリガが適切に実装されているかどうかのチェックをしているので、実装したApexトリガに不備があると、ここでエラーになります。

etmc_sf_triggeredsend_record

ActiveなTriggered Sendに対しては編集が出来ないので、編集する場合は[Deactivate]ボタンをクリックしてから編集するようにします。

あとはレコードを作成したり更新したりすると、Apexトリガが起動してfuture経由でExactTargetに対してAPIを叩くという仕組みでメールが送信されます。

Triggered Send利用時の注意ですが、futureで1レコード分ずつリクエストを投げているので、一回のApex内の処理で呼び出せるfutureの回数の最大値は現時点(Spring16)で50までという制約から、最大50レコードまでのバルク処理しかできません。それ以上になるとガバナのエラーになるので、データローダなどを使ってデータインポートをする際は一回あたりの処理数を調整する必要があります。

参考URL→Triggered Sends

このエントリーをはてなブックマークに追加