Using Time Zones for Rating

You can configure rates based on the time zone of MATRIXX Engine, the time zone of the subscription, or the UTC offset in the network message.

You specify a time zone for MATRIXX Engine during system configuration. During rating, if a subscription does not have an associated time zone, the system time zone is used for rating. When the time zone basis for a time normalizer is the initiator, when an event message is received, the Charging Server determines the time of day of the event message, in the subscription's time zone, and normalizes on that time of day. If the subscription does not have the time zone field set, then the event time is determined using the system time zone and that time of day is used for any time-based normalizations.

For more information about configuring the time zone, see the discussion about message processing and pricing file configuration in MATRIXX Configuration.

Note: A global create_config.info question allows you to configure date/time fields for primary events to be the time zone of the event initiator and the time zone of the wallet owner for secondary events by answering the following question during engine configuration: Global:Do you want DATETIME fields in events to be expressed in the time zone of the event initiator and the time zone of the wallet owner for secondary events (y/n)?

After making this change to the create_config.info question, apply the configuration change. For more information, see the discussion about applying MATRIXX Engine configuration changes in MATRIXX Installation and Upgrade.

For more information about configuring date/time fields, see the discussion about configuring DATETIME fields in MATRIXX Integration.

Time zones are also used to determine the subscription or group bill cycle and periodic balance cycle date. The boundaries for billing and balance cycles are aligned to midnight in the subscription's or group's time zone. If a hierarchy uses multiple time zones, the virtual balances at each level use midnight at that level for the cycle boundary to compute rates. Any usage event that spans midnight at any level at or above the subscription is broken into before and after midnight segments at each level to compute each level independently. For example, say a subscription uses Chicago's time zone and its group uses New York's time zone. If a subscriber uses a service from 10:30pm-12:30am Chicago time, which is 11:30pm-1:30am New York time, the usage creates three event segments:
  • 10:30pm to 11:00pm Chicago time (12:00am New York time)
  • 11:00pm to 12:00am
  • 12:00am to 12:30am

If the time zone is changed for a subscription or group, all balance cycles and bill cycles are realigned to the new time zone. This changes the absolute time of future balance and bill cycle boundaries. There is no proration of balance amounts associated with a time zone change.

To determine the correct date and time, the base MATRIXX configuration contains the industry-standard Internet Assigned Numbers Authority (IANA) domain database of time zones, including MTX-assigned ID numbers. For example, IANA zone America/Los_Angeles is MTX zone 415. It uses the correct UTC offset for all dates and times, and perform time adjustments for DST where and when appropriate. The adjustment can be relative to the subscription and system time zones. Note that the MATRIXX configuration does not contain the database of UTC offset adjustments. Instead, they are retrieved from the standard tzdata RPM, which is a core system package on all Red Hat systems.

For information creating pricing based on the time zone, see My MATRIXX Help.