Interact API データ・フロー

この例では、タッチポイントとランタイム環境の間で API がどのように機能するのかを示します。訪問者は 4 つのアクション (ログイン、オファーが表示されるページへの移動、オファーの選択、およびログアウト) のみ実行します。統合の設計は、パフォーマンス要件の範囲内で、必要に応じて複雑にすることができます。

この図は、Interact API の単純な実装を示しています。

訪問者は Web サイトにログインし、オファーが表示されるページに移動します。訪問者はオファーを選択して、ログアウトします。対話は単純ですが、タッチポイントとランタイム・サーバーの両方で、次のようないくつかのイベントが発生します。
  1. セッションの開始
  2. ページへの移動
  3. オファーの選択
  4. セッションのクローズ
Interact API データ・フローの単純な実装を示した図

セッションの開始

訪問者がログインすると、startSession がトリガーされます。

startSession メソッドは 4 つのことを行います。
  1. 新しいランタイム・セッションを作成します。
  2. 顧客のプロファイル・データをセッションにロードするように求める要求を送信します。
  3. そのプロファイル・データを使用して対話式フローチャートを開始し、その顧客をセグメントに配置するように求める要求を送信します。このフローチャートの実行は非同期です。
  4. ランタイム・サーバーは、オファー非表示、およびグローバル・オファーと個々のオファーの処理に関する情報を、そのセッションにロードします。セッション・データは、セッション中はメモリーに保持されます。

ページへの移動

訪問者は、事前定義されているインタラクション・ポイントに到達するまで、サイトを移動します。将来的には、2 番目のインタラクション・ポイント (選択項目の選択) が、オファーのセットを表すリンクを訪問者がクリックする場所になります。このリンクは、タッチポイント・マネージャーによって、オファーを選択する executeBatch メソッドをトリガーするように構成されています。

オファーの選択

この図は、executeBatch メソッドをトリガーする API 呼び出しを示しています。

executeBatch メソッドをトリガーする API 呼び出しを示す図

executeBatch メソッドを使用することで、ランタイム・サーバーへの単一の呼び出しで複数のメソッドを呼び出すことができます。この特定の executeBatch は、他の 2 つのメソッド (getOffers および postEvent) を呼び出します。getOffers メソッドは、オファーのリストを要求します。ランタイム・サーバーは、セグメンテーション・データ、オファー非表示リスト、処理ルール、および学習モジュールを使用して、オファーのセットを提案します。ランタイム・サーバーから返されたオファーのセットは、コンテンツ・ページに表示されます。

postEvent メソッドは、設計時環境で定義されたイベントの 1 つをトリガーします。この特定の事例では、イベントは、表示されたオファーのログをコンタクト履歴に記録するように求める要求を送信します。

訪問者は、オファーの 1 つを選択します (オファーの選択)。

この図は、postEvent メソッドを示しています。

postEvent メソッドを示した図

オファーの選択に関連付けられたユーザー・インターフェース・コントロールは、別の postEvent メソッドを送信するように構成されています。このイベントは、オファー承認のログをレスポンス履歴に記録するように求める要求を送信します。

セッションのクローズ

訪問者はオファーを選択した後、Web サイトを終えてログアウトします。ログアウト・コマンドは、endSession メソッドにリンクされています。

この図は、endSession メソッドを示しています。

API ワークフローの終了 (endSession メソッド) を示した図

endSession メソッドはセッションを閉じます。訪問者がログアウトするのを忘れた場合に、確実にすべてのセッションが最終的には終了されるようにするために、構成可能なセッション・タイムアウトがあります。セッションに渡された任意のデータ (例えば、startSession または setAudience メソッドのパラメーターに含まれる情報など) を保持する場合は、対話式フローチャートを作成した人物と協力します。対話式フローチャートを作成した人物は、セッションが終了してそのデータが失われる前に、スナップショット・プロセスを使用してそのデータをデータベースに書き込むことができます。スナップショット・プロセスに含まれる対話式フローチャートは、postEvent メソッドを使用して呼び出すことができます。