見出し画像

【第83回】 Automation Studio でスケジュールされた時間にオートメーションを一時的に停止する方法

今回の記事は Automation Studio でスケジュールされた時間にオートメーションを一時的に停止する方法についてですが、具体的には「検証アクティビティを使って、その検証アクティビティ以降の後続ステップを停止させる方法」になります。それでは今回、例として「24 時間毎時」動いているオートメーションで 夜 22:00 から 朝 8:59 の間までの時間帯に一時的に停止させてみたいと思います。

Marketing Cloud の有識者の方々は、様々なオートメーションの停止方法を知っているかと思いますが、あくまで今回は、私の方法を一例としてご紹介します。もっと良い方法を知っているかもしれませんが、ご了承下さい。

まずは、データエクステンションを用意します。

今回は、データエクステンションに「Automation_Control」という名前を付けて「Id」という「テキスト型」の項目を設けました。これらの名前は何でも大丈夫です。

データエクステンションが作成できたら、以下の SQL を Automation Studio で構成します。上で作成した「Automation_Control」に「上書き」で値が入るように SQL クエリアクティビティを構成してください

SELECT
  'aaa' AS [Id]
FROM 
  _Journey
WHERE
  DATEPART(hh, DATEADD(hh, 15, GETDATE())) < 9 OR
  DATEPART(hh, DATEADD(hh, 15, GETDATE())) >= 22

・「FROM 句」はデータビューであれば何でも OK です。
・ Journey データビューであることに意味はありません。
・ レコードが格納されるのに少し時間がかかる傾向があります。
・ Query Studio ではエラーが出ますが、Automation Studio ではエラーは出ません。

これで、 22:00 から 朝 8:59 までの間に、この SQL が実行された場合に「Automation_Control」というデータエクステンションに 1 レコードが入る仕組みができました。この入る値の「aaa」自体には意味はありません。

後は、この SQL クエリアクティビティより後ろのステップに、検証アクティビティを設けて、データエクステンション「Automation_Control」にレコードが 1 つ格納されている場合にオートメーションが停止するように設定するだけです

もし、そのオートメーションの全ステップを停止させたい場合は、検証アクティビティを先頭に持ってきてください。また、そのオートメーションの中の途中から止めたい場合は、その止めたい場所に検証アクティビティを持ってきて下さい。

下の画像は途中からステップを停止している例になります。午後 22 時までは全ステップが動いていますが、午後 22 時を過ぎると検証アクティビティ以降のステップが停止していますね。

いかがでしたでしょうか?

このように 特定の時刻に合わせて自由にオートメーションを止められる事を知っておけば、様々なユースケースに応用できると思いますので活用してみて下さい

私の過去の使用例を挙げておきますと、24 時間毎時取り込みのトリガー配信を実装している場合、この仕組みを使って夜間帯にメッセージが配信されないように制御しています。例えば、送信ブロックアウトの機能がない LINE においても、配信時間帯の制御が可能になります。

また、よくある質問として「検証アクティビティより前のステップには影響はないですか?」という質問があるのですが、検証アクティビティより前のステップはすでに実行済みとなるため、影響は出ません。停止して影響が出るのは、検証アクティビティより後のステップのみとなります

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら

この記事が気に入ったらサポートをしてみませんか?