プログラミング言語の概要
学習の目的
この単元を完了すると、次のことができるようになります。
- Marketing Cloud Engagement で使用可能な各プログラミング言語を確認する。
- 各自のニーズに最も適した言語を選択する。
はじめに
Marketing Cloud Engagement は、ドラッグアンドドロップ操作によるインタラクションを好むユーザーと、インタラクションを多少なりともカスタマイズしたいと考えるユーザーの両方に対して、多数の機能を用意しています。あなたもコンテンツをパーソナライズしたり、外部ソースから取り込むコンテンツを保存するデータエクステンションを作成する必要があるかもしれません。Marketing Cloud Engagement では、メッセージング、データ管理、アカウント関連のその他のアクティビティに 3 種類のプログラミング言語で対応できます。こうした言語を使用すれば、メッセージ、ランディングページ、その他のリソース内のデータやアクションに動的にアクセスすることができます。つまり、購読者全員に同じメールコンテンツを送信するのではなく、以前の購入、購読者の場所、その他の詳細に基づいてメッセージをパーソナライズできます。
では、次のプログラミング言語に関する名前と、各言語に伴うメリットについて説明していきます。
- AMPscript
- サーバーサイド JavaScript
- ガイドテンプレート言語
このどのオプションにも各自が達成しようとしている内容に応じたメリットがあるため、まずその概要を確認しておきましょう。
AMPscript
AMPscript は Marketing Cloud Engagement の専有スクリプト言語で、メールメッセージ、ランディングページ、SMS メッセージ、プッシュメッセージで使用できます。シンプルなパーソナライズから大量データの移行まで、AMPscript は目的とするタスクを処理できます。AMPscript は Marketing Cloud Engagement のほぼすべてのファセットとやりとりできるため、メッセージやランディングページ内でタスクを実行するための優れた汎用ツールです。たとえば、送信日時などの簡単な要求をメッセージに含めることができます。
%%=Now()=%%
また、メッセージの変数内に含まれるテキストを操作することもできます。
%%=LOWERCASE(@text)=%%
AMPscript はさらに、データエクステンションの情報検索など、複雑な操作も処理します。次の例は、City フィールドに HomeCity 値が表示される ZipCode データエクステンションで、AMPscript がどのように行を検索するのかを示しています。
%%=LookupRows('ZipCode','City',HomeCity)=%%
上記の例は、AMPscript で達成できることの一部を示しているにすぎません。この言語を使用して、Marketing Cloud Engagement のほとんどのファセット内のデータを操作することができます。
サーバーサイド JavaScript
AMPScript は堅牢なプログラミング言語ですが、開発者がもう少し身近な言語を望んでいることを Salesforce は理解しています。そこで登場するのがサーバーサイド JavaScript (SSJS) です。Web 開発に精通している人にとって、SSJS はこれまで使用してきた言語と極めてよく似ています。簡単な例を示します。
var currentTime = Now();
次は、連絡先に関連するデータエクステンションから行を取得して、メールメッセージに書き込む、より複雑な例を見てみましょう。
<script runat="server"> var dataRows = Platform.Function.LookupRows('CustomerData',['FirstName','LastName'],['Angela','Cruz']); if(dataRows && dataRows.length > 0) { for(var i=0; i<dataRows.length; i++) { Platform.Response.Write(dataRows[i]["Email"]); } } </script>
使い慣れた言語と似ていますよね?
SSJS については、次の点も留意する必要があります。
- サーバーサイド JavaScript は配列を使用できます。
- サーバーサイド JavaScript では、高度な例外処理を使用できます。
- SSJS を使用して DOM とやりとりすることはできません。関数はすべて適用されるメッセージまたはランディングページ内で実行されるためです。
最後に、SSJS には次の 2 つのライブラリがあります。
- プラットフォーム — メッセージングや Marketing Cloud Engagement の他のアプリケーションにはこのライブラリを使用します。
- コア — このライブラリは、Marketing Cloud Engagement のランディングページとアプリケーションのみに使用します。
ガイドテンプレート言語
Marketing Cloud Engagement の最新のプログラミング言語がガイドテンプレート言語 (GTL) です。これまでに Handlebar 式または Moustache 式の構文を使用したことがある場合は、GTL を簡単に理解することができるでしょう。GTL を使うと、JSON データを使用したテンプレートを作成して、メッセージまたはランディングページ全体にアカウントのデータエクステンションからデータを入力できます。スクリプトや REST API 要求からのデータも受け入れることができます。
Marketing Cloud Engagement のプログラミング言語の概要がわかったところで、1 つずつ詳しく見ていきます。