JavaScript コード javascript-code
JavaScript コード アクティビティは、データ管理 アクティビティです。このアクティビティを使用して、ワークフローのコンテキストで JavaScript スクリプトを実行します。これにより、データベースから情報を収集したり、その他の複雑な操作を実行したりできます。
JavaScript コードアクティビティの設定 javascript-code-configuration
「JavaScript コード」アクティビティを設定するには、次の手順に従います。
-
「JavaScript コード」アクティビティをワークフローに追加します。
-
作成するアクティビティのタイプを選択します。
- シンプル:1 つのコードスニペットを実行します。
- 詳細:このオプションを使用すると、2 つの異なるコードスニペットを実行することで、より高度な操作を実行できます。JavaScript アクティビティの設定方法を学ぶ
note note NOTE Campaign web ユーザーインターフェイスでは、シンプル な JavaScript コードと 高度 な JavaScript コードの両方の機能を結合して、2 つのアクティビティを 1 つにまとめました。この統合によるアクティビティの機能への影響は一切ありません。 -
確認してから、「コードを編集」ボタンをクリックして、式エディターを開きます。左側のペインには、イベント変数などの、コードの作成に利用できる定義済みの構文が表示されます。イベント変数と式エディターの操作方法を学ぶ
-
「実行」セクションでは、一定期間の実行後にアクティビティを停止する遅延を設定します。デフォルトでは、実行フェーズは 1 時間を超えることはできません。この遅延の後、エラーメッセージが表示されてプロセスが中止され、アクティビティの実行が失敗します。この制限を無視するには、値を 0 に設定します。
-
「エラーを処理」オプションを有効にすると、スクリプトの実行中に発生したエラーを、追加の出力トランジションに保持できます。
高度な JavaScript コードアクティビティ advanced
高度な JavaScript アクティビティを使用すると、複雑な操作を実行できます。これにより、次の操作を実行できます。
- 2 つの異なるコードスニペットを実行します。最初のコードスニペットは、ワークフローの初回起動時に実行されます。ワークフローが再度実行されるたびに、2 回目の呼び出しで定義されたコードスニペットが実行されます。
- スクリプトを使用して動的にやり取りできる複数の出力トランジションを追加します。
高度な JavaScript コードアクティビティを設定するには、次の手順に従います。
-
「詳細」タイプを選択し、実行するコードスニペット(複数可)を設定します。
- 「最初の呼び出しコードを編集」をクリックし、最初の呼び出しで実行するスクリプトを定義します。
- 「次の呼び出しコードを編集」をクリックし、ワークフローの次回の呼び出しで実行するスクリプトを定義します。(オプション)
-
1 つまたは複数の出力トランジションを追加するには、トランジションを追加 ボタンをクリックし、トランジションごとにラベルと内部名を指定します。
この例では、特定の条件に基づいて、コードスニペット内のスクリプトでアクティブ化される 2 つのトランジションを設定しています。
-
アクティビティの設定を完了し、ワークフローを開始します。
例 javascript-code-example
入力母集団に基づく変数の初期化 example1
この例は、ワークフローがターゲットとするプロファイルの数に基づいて変数を初期化する方法を示しています。
ここでは、データベースから VIP プロファイルをターゲットにしています。オーディエンス作成アクティビティがターゲットとするプロファイルの数に応じた値を持つ「channel」という変数を作成します。
- 1,000 個を超えるプロファイルをターゲットにする場合は、「email」の値を使用して変数を初期化します。
- それ以外の場合は、「sms」の値で初期化します。
これを行うには、次の手順に従います。
-
オーディエンス作成 アクティビティの後に、タイプが シンプル の JavaScript コード アクティビティを追加します。
-
「コードを編集」をクリックし、コードスニペットを次のように設定します。
code language-none if (vars.recCount > 1000) vars.channel ="email" else vars.channel = "sms"
-
ワークフローを開始します。「channel」変数は、オーディエンス作成 アクティビティがターゲットとするプロファイルの数に応じて、「email」または「sms」の値で作成されます。
変数の値に基づくトランジションのトリガー example2
この例は、変数の値に基づいてトランジションをトリガーする方法を示しています。
ここでは、ワークフローが 外部シグナル アクティビティで始まり、変数(interest
)が別のワークフローから渡されます。変数の値は、最初のワークフローで実行されるフィルタリング操作に応じて、「running」または「yoga」になります。
変数の値に基づいて、ワークフロー内の様々なトランジションをトリガーします。
これを行うには、次の手順に従います。
-
「外部シグナル」アクティビティの後で、タイプが 詳細 の JavaScript コード アクティビティを追加します。
-
2 つのトランジションを追加します(1 つは設定可能な各変数値(「running」、「yoga」))。
-
「最初の呼び出しコードを編集」をクリックし、コードスニペットを次のように設定します。
code language-none if (vars.interest=="running") task.postEvent(task.transitionByName("running")); else task.postEvent(task.transitionByName("yoga"));
-
ニーズに合わせて各トランジションの設定を完了し、ワークフローを開始します。2 つの出力トランジションのうちの 1 つが、外部シグナル アクティビティを通じて渡された
interest
変数に基づいてアクティブ化されます。