The Filter agent applies all configured filters to incoming data.
To make it through this agent, a tag must pass the test of every configured filter. The types of filters to apply are configured through the filters property. Legal types include: CaseTags, Duplicates, DecayingDuplicates, EpcFilter, and Interest.
The Case Tags filter checks the first byte of the tag ID. If the value is equal to 0x30 (i.e. SGTIN-96), the tag passes the test; otherwise, the test fails. This value is not configurable, although the source may be changed if the Data Capture superfeature is installed. There are no properties specific to the Case Tags filter.
The Duplicates filter prevents tags with the same ID from being reported more than once until the filter is reset. There are no properties specific to this filter.
The Decaying Duplicates filter prevents tags with the same ID from being reported more than once within a configurable period of time or until the filter is reset, whichever comes first. Properties specific to this filter are duplicates.decay.limit.sec and duplicates.decay.cleanup.sec.
The EpcFilter filter follows one of two configurable strategies: KeepOnly or RemoveAll. If the strategy is KeepOnly, the filter allows only those tags having the configured EPC filter value through. If the strategy is RemoveAll, the filter allows only those tags not having the configured EPC filter value through. Properties specific to this filter are epc.filter.strategy and epc.filter.value.
The Interest filter filters tags based on an include and exclude bit mask and pattern expressed in hexadecimal that is applied to each tag ID. If the tag passes both tests, it is allowed through. Properties specific to this filter are interest.include.masks.care, interest.include.masks.pattern, interest.exclude.masks.care, and interest.exclude.masks.pattern.
All other properties are in common with each filter type.
For the properties below, you can enter either strings or variables. If you enter a variable, the value is substituted from the database when the XML configuration file is generated. Refer to Using variables for property values for details on what variables can be substituted.
Property | Description |
---|---|
duplicates.decay.cleanup.sec | How often, in seconds, decayed duplicates should be deleted |
duplicates.decay.limit.sec | How often, in seconds, stored duplicates should remain |
epc.filter.strategy | The strategy that the EpcFilter should employ. One of KeepOnly or RemoveAll |
epc.filter.value | Only tags with this as the EPC filter value will make it through this agent |
filters | A comma-delimited list of filters to be configured. Filter names are: Case Tags, Duplicates, DecayingDuplicates, EPCFilter, and Interest. |
interest.include.masks.care | A mask representing the bits you are interested in matching. The filter includes the tags that match. |
interest.include.masks.pattern | A value with which the bits from the care bits must match. The filter includes the tags that match. |
interest.exclude.masks.care | A mask representing the bits you are interested in matching. The filter exclude the tags that match. |
interest.exclude.masks.pattern | A value with which the bits from the care bits must match. The filter excludes the tags that match. |
log.level | The level of logging to use with this agent. If the value is empty then the system log level will be used. The Alert agent must be running in order to set this property. |
portal.id | The portal ID associated with this agent |
portal.name | The portal name associated with this agent |
profile.id | Identifies the use case to which this agent is attached |
qos | Messaging Quality of Service. A value of 0 means at most once. A value of 1 means at least once. A value of 2 means exactly once. |
selftestmode | Indicates if self-test mode is active |
source.id | The source ID for generic events in this agent |
topics.publish | A comma-delimited list of topics for publishing filtered data |
topics.publish.rejected | A comma-delimited list of topics for publishing data that is filtered out |
topics.subscribe | A comma-delimited list of topics for receiving data to be filtered |
tracing | Displays trace output. The Alert agent must be running in order to set this property. |
trigger.reset.topic | Publishes to this topic result in a filter reset |
trigger.reset.value | Value of the message to reset the filters and clear the filter cache |