Introduction to Actions
Actions are rule-based operations that you can build and apply to real-time data messages. Actions in Tracking Server can be used to filter or modify event data based on the message definition. For example, if you are monitoring air traffic in California, you can create and apply a filter action to exclude data from other states.
Actions are created in Tracking Server Manager on the Actions tab, and they are applied to a particular message definition. As event data comes into Tracking Server, it checks if there are any actions to be applied to the event data message.
Multiple actions can be applied to the same message definition. The order in which they are applied is based on the order in which they appear in the Action Properties list. Actions are independent of tracking services, but they are totally dependent on the message definition. If a message definition is removed, any actions that were defined for that message definition will also be removed.
Types of Actions
There are several types of actions that can be created in Tracking Server:
- Filter: This action filters out messages based on either attributes or location. The Filter action permits data messages meeting the criteria or denies all except those data messages meeting the criteria.
- Data Modification: This action allows modification of data values in a data message through the use of a function you define.
- Data Partition: This action enables the manipulation of an incoming data message at the field level. Fields can be deleted or duplicated, and empty fields can be added. In addition, an entirely new data message can be created from selected fields in the original message.
- Data Summary: This action accumulates and summarizes information contained in data messages. Summary information is calculated on a periodic basis, whenever an amount of time that you specify has elapsed.
- Email Alert: This action will automatically send an e-mail message to the recipients of your choice when the action is triggered.
Categories of Actions
Actions applied using Tracking Server are referred to as Server Actions. If you are using ArcGIS for Desktop or ArcGIS Engine for Windows to display your tracking services from Tracking Server, then it is important to note that there are other categories of actions that can be applied to temporal data at different points in the data flow. The following categories describe the different actions you can build and apply:
- Layer Actions: These actions work with features on a static tracking layer in ArcMap. They are applied once, when the action is created or modified. They are defined on the Actions tab of the layer properties. These actions are used when working with historical data using Tracking Analyst.
- Real-Time Layer Actions: These actions work with features on a dynamic tracking layer in ArcMap—one connected to a service. They are applied to all existing features on a layer when created or modified and also to any new, incoming features from the service. They are defined on the Actions tab of the layer properties. These actions are used when you have dynamic tracking data in the form of features you are working with using Tracking Analyst in ArcMap.
- Service Actions: These actions work on new data messages being received from a service. They are executed in ArcMap, but defined in ArcCatalog. These are used when you want to apply an action to dynamic tracking data in the form of data messages you are working with using Tracking Analyst in ArcMap. One possible reason to use an action at this level is for the case where you want to segment your data to different users. Perhaps you want to provide one analyst only with data messages that are geographically located west of the Mississippi River while another analyst receives only the data messages that are east of the river.
- Server Actions: These actions work on new data messages being received from a service. They are executed by Tracking Server but defined on the Actions tab in the Tracking Server Manager. These are used when you want to apply action processing to data messages prior to their distribution to end users. Actions applied at this level also affect whether the data message is written to the in-memory database.