Analytics が有効になっているアダプティブフォームでは次のイベントがデフォルトで追跡されます。
イベント | 使用可能な変数 |
---|---|
render | formName、formTitle、formInstance、source |
abandon | formName、formTitle、formInstance、panelName、panelTitle |
保存 | formName、formTitle、formInstance、panelName、source |
submit | formName、formTitle、formInstance、source |
エラー | formName、formTitle、fieldName、fieldTitle、panelTitle |
help | formName、formTitle、fieldName、fieldTitle、panelTitle |
fieldVisit | formName、formTitle、fieldName、fieldTitle、panelTitle |
panelVisit | formName、formTitle、panelName、panelTitle |
AEM Forms のデフォルト設定では、ユーザーが 60 秒以上フィールドにとどまると、fieldvisit
イベントがトリガーされ、フィールドの詳細が Adobe Analytics に送信されます。AEM Configuration コンソール(/system/console/configMgr)で、AEM Forms Analytics Configuration の下にある Field time tracking baseline をカスタマイズすると、タイムアウト制限を調整できます。
/libs/afanalytics/js/custom.js
ファイルの trackEvent
関数を変更すると、イベント追跡をカスタマイズできます。アダプティブフォームで追跡中のイベントが発生すると、trackEvent
関数が呼び出されます。trackEvent
関数は 2 つのパラメーター(eventName
および variableValueMap
)を受け取ります。
eventName および variableValueMap 引数の値を評価して、イベントの追跡動作を変更できます。例えば、ある一定数のイベントが発生した場合、Analytics サーバーに情報を送信するように指定できます。また、次のカスタマイズを実行できます。
イベントが送信されるまでのしきい値を設定できます。
アクションを決定する状態を維持できます。例えば、fieldVisit は、最後のイベントのタイムスタンプに基づいてダミーのイベントをプッシュします。
pushEvent
関数を使用して Analytics サーバーにイベントを送信できます。
Analytics サーバーにイベントを一切プッシュしないようにすることもできます。
以下の例では、各 fieldName 属性の error イベントの状態が維持されています。エラーが再発した場合にのみ、Analytics サーバーにイベントが送信されます。
case 'error':
if(errorOccurred[variableValueMap.fieldName] == true) {
pushEvent(eventName, variableValueMap)
}
errorOccurred[variableValueMap.fieldName] = true;
break;
デフォルトの AEM Forms セットアップでは、60 秒ごとに、アダプティブフォームを含むウィンドウがアクティブになっているかどうかがチェックされます。ウィンドウがアクティブであれば、panelVisit
イベントが Adobe Analytics に対してトリガされます。そうすることで、そのドキュメントまたはフォームがアクティブであることを確認し、対応するフォームまたはドキュメントでの滞在時間を計算できます。
アクティビティの確認と滞在時間の計算に使用されるイベント名は、"panelVisit" です。このイベントは、上記の表に記載されているパネル訪問イベントとは異なります。
/libs/afanalytics/js/custom.js
ファイルで提供されている scheduleHeartBeatCheck 関数を変更して、定期的に Adobe Analytics に送信されるこのイベントを変更または停止できます。