ArcGIS Tracking Analyst extensionには、トラッキング データをカスタム処理するための専用メカニズムが用意されています。このカスタム処理はアクションというエレメントにカプセル化されています。アクションは、トリガーの定義済み条件が満たされたときに実行されます。Tracking Analyst では、マップ ドキュメントにあるトラッキング レイヤー、またはリアルタイム トラッキング サービスにアクションを適用できます。Esri Tracking Server で作業している場合は、サーバー レベルでもトラッキング データにアクションを適用できます。
レイヤー アクション
レイヤー アクションは、トラッキング レイヤーに属するフィーチャを対象として動作します。したがって、リアルタイムと固定日時の両方のトラッキング レイヤーにアクションを適用できます。レイヤー アクションはマップ ドキュメントに保存され、[レイヤー プロパティ] ダイアログ ボックスの [アクション] タブで構成できます。ArcMap または ArcGlobe でトラッキング レイヤーをレイヤー ファイルとして保存すると、そのトラッキング レイヤーのアクション設定がレイヤーとともに保存されます。
サービス アクションと異なり、すべてのレイヤー アクションは、ArcMap などのクライアント アプリケーションに存在します。そのため、これらのアクションは、解析を目的としたデータの視覚化に関連していることが普通です。たとえば、一定のトリガー条件を満たすフィーチャをマップ上でハイライト表示できます。
サービス アクション
サービス アクションは、ArcMap などのクライアント アプリケーションにデータ メッセージをストリーミングしてトラッキング フィーチャとしたときに、そのデータ メッセージに対して動作します。ArcGIS Tracking Analyst でリアルタイム データを扱っているときは、トラッキング サービスからストリーミングしたデータ メッセージから、リアルタイム トラッキング レイヤーにフィーチャが作成されます。したがって、サービス アクションには、トラッキング データ メッセージがフィーチャになる前に、メッセージにあるデータを変更または削除する機能があります。
サービス アクションは、レイヤーでなくトラッキング サービスに対して定義します。そのため、[レイヤー プロパティ] ダイアログ ボックスではサービス アクションを構成できません。サービス アクションを構成するには、ArcCatalog の [トラッキング サービス プロパティ] ダイアログ ボックス、または ArcMap のカタログ ウィンドウにアクセスする必要があります。
トリガー
イベントの特定のデータ フィールドの値に基づいてアクションを実行する場合に属性トリガーを使用します。たとえば、車両 ID のフィールドを持つトラッキング データで、車両 ID が 2 の場合にのみハイライト アクションを実行するように指定できます。その結果、その車両のイベントがマップ上でハイライト表示されます。
一定の空間条件が満たされたときに、ロケーション トリガーを使用してアクションを実行します。ロケーション トリガーは、任意のレイヤー アクションまたはサービス アクションで使用できます。たとえば、ある境界の外側に存在するイベントをすべてハイライト表示できます。
ロケーション トリガーには、空間比較の対象とする一連のポリゴン フィーチャが必要です。レイヤー アクションの場合は、ポリゴンのレイヤーを選択する必要があります。また、サービス アクションの場合は、ポリゴンのフィーチャクラスを選択する必要があります。ロケーション トリガーを単独で使用してアクションを実行できるほか、属性トリガーとロケーション トリガーを併用することもできます。
複数のアクションの定義
トラッキング レイヤーとトラッキング サービスには、複数のアクションを定義できます。複数のアクションを定義している場合は、アクションの実行順序が重要になります。たとえば、データをフィルタリングし、フィルタリング後のデータにハイライトを適用した場合と、フィルターを適用してからハイライトを適用した場合とでは、結果が異なる可能性があります。アクションの評価順序は、サービス プロパティまたはレイヤー プロパティの [アクション] タブで構成できます。