Filters
Filters are independent, reusable, pricing items that can be associated with balances, meters, subscription product offers, and notifications.
Filters can be applied to balances and meters for both usage and non-usage rating. They determine if a meter is applied or a balance is impacted. Filters can be applied to notifications during usage and non-usage rating to determine when a notification is generated. Filters can be applied during non-usage subscription management operations (for example, to determine when a pre-active purchased item is activated).
Filters use decision tables to associate a set of conditions with a result value of Apply or Do not apply. Each column in the decision table can contain one or more normalizers and each row specifies the normalizer parameters and a result value.
If a filter is comprised of multiple filter tables, each result in a table is either a filter or a SKIP. A SKIP value tells MATRIXX Charging Application to skip that table because it does not apply, and to move on to the next table if one exists. If the conditions are valid for a filter in a table, then that table is selected. The last filter table in a filter-table list must not have a SKIP value.
Multiple meter, balance, notification, and subscription offer templates can reference the same filter and contain multiple filters. All filters in a template must apply in order for a meter to be applied, a balance to be consumed, a notification to be generated, or a product offer to be activated.
Using filters in pricing simplifies pricing plan creation because it removes the need for you to specify complex pricing based on variables that change. The filter takes care of performing the necessary logic. For example, if at a point in the future your product offerings change drastically, you can simply add a new filtered balance to a subscription wallet, rather than update each price component in a product offer to implement the change.
Balance and Meter Filters
Filter results for balances and meters indicate whether the balance or meter associated with the filter can be updated under conditions specified in the filter. Note that filters are not applied during balance normalization. By default, filters are applied to balances and meters for both usage and non-usage rating, but you have the option to have them apply to usage rating only. For more information, see the discussions about balance and meter filters.
Filters simplify balance configuration because you do not need to assign specific balances to rate tables. Instead, the pricing can specify a balance class and the filter determines which balance of that class to update during rating, based on the filtering rules.
Filters do not generate balance impacts themselves because they do not contain rating formulas and have no associated balances (as do the rate tables in price components). Their purpose is to determine whether a balance is valid for consumption or a meter can be incremented.
For example, say you have a meter that tracks when subscribers make voice calls to numbers not in their calling circle. In this case, the meter contains a Call Group filter that uses a closed calling group normalizer. The Apply value is associated with non-calling circle numbers and the Do not apply value is associated with calling circle numbers. When a call is made and the called number is not in the subscriber's SpecialCalledStationIdList (an Apply value), the meter is incremented.
- The impacted balance is not charged.
- The impacted meter is not incremented.
Subscription Product Offer Filters
Filters added to a subscription product offer determine when pre-active purchased items (product offers and bundles) are activated by usage. If a product offer is configured for automatic activation due to usage and it includes filters, the activation is only done if all the filters pass. For more information about activation filters in subscription product offers, see the discussion about pre-active purchased items in MATRIXX Subscriber Management.
Normalizations in Meter Filters
You can use the rate tag from selected normalizations, and you can use fields from the product offer, purchased offer, catalog item, or bundle, for normalizations in meter filters. You can use normalizations in meter filters for session, simple, and periodic meters.
To normalize on a rate tag, you use the Tag
field (which holds information
relating to the rate tag) from the MtxRateTagNormalizationInfo MDC. The
MtxRateTagNormalizationInfo MDC is a temporary MDC that is created when charge meter
filters are applied during rating. The MDC is generated for the meter filter if the
selected row has a rate tag. Otherwise, the MDC is not generated.
Meter | How the Meter Is Incremented |
---|---|
Non-turnstile usage meters | If the filters pass for any of the rate tag/product offer combinations applied for the usage segment, the meter is incremented by the usage amount. |
Non-turnstile charge meters | The meter is incremented only by the charges for the rate tag/product offer combinations for which the filters pass. |
Turnstile usage meters and turnstile charge meters | If the filters pass for any of the rate tag/product offer combinations that apply for the usage segment, the meter is incremented by 1.0. |
Notifications
Filters can be associated with notifications to determine whether a particular notification is generated or not. If needed, you can configure multiple filter tables per filter where a SKIP result moves to the next matrix. Filters can be applied to notifications during usage and non-usage rating.