MATRIXX Event Files (MEFs)

MATRIXX Event Files (MEFs) contain a list of usage and non-usage event types generated during transaction processing. MEFs are meant to be published to, and consumed outside of, MATRIXX Digital Commerce, and can be input to third-party applications.

MATRIXX Digital Commerce supports two types of MEFs, MEF version 1 (MEFv1) and MEF version 2 (MEFv2). MEFv2 is the default version. MEFv1 is deprecated in favor of MEFv2. MEFv2 more efficiently reflects the existing MATRIXX Digital Commerce schema and is recommended for new MATRIXX Digital Commerce environments. You are asked during MATRIXX Engine configuration which version to use.
Note: A new MATRIXX Digital Commerce implementation can use MEFv2. For information about switching from MEFv1 to MEFv2 in 5100 and later, see the discussion about transitioning from MEFv1 to MEFv2 publishing. Contact your MATRIXX Customer Service representative before switching a running MATRIXX Digital Commerce implementation from MEFv1 to MEFv2 in versions earlier than 5100.

Both MEF types include details of Event Detail Records (EDRs), and include this information in an event type hierarchy.

MEFv2s:
  • Are created from Streamed Event Files (SEFs).
  • Contain events organized in Global Transaction Counter (GTC) order, which ensures that they are in chronological order.
  • Can be created by time limit, file size, idle time, or number of records in a GTC boundary.
  • Include the base event and any secondary events, all sorted by GTCs.
  • Do not contain notification or balance tracking records; events in MEFv2s have their balance calculated, and notifications are contained in their own events.
  • Can be output to Element XML or CMDC (compact MDC) format.
  • Allow you to specify a delay between MEF closing and publishing.
MEFv1s:
  • Publish MEFs on a one-to-one relationship with transaction logs.
  • Publish EDR records in an event type hierarchy. Each MEF is a sequence of MtxEventRecordData MDCs, each of which corresponds to a transaction file containing at least one event or notification.
  • Publish base events and their secondary events as peers.
  • Are not chronological.
  • Do not contain balance value data.
  • Contain notification and balance tracking records.
  • Can be output to Element XML, Compact MDC, or Attribute XML format.
Note: MEFv1s include real-time balance tracking information for simple balances. In such cases, the balance template must be configured in My MATRIXX to do so.

For more information about balance tracking, see the discussion about simple balances and meters in Pricing and Rating.

The EventTypeArray in the MtxPrimaryEvent MDC defines the event type that was initiated, representing it numerically in the MDC as an array of integers such as 4, 1.2, or 1.3.5. The top-level event types are:

  • UNDEFINED = 0
  • USAGE = 1
  • RECURRING = 2
  • FIRST_USAGE = 3
  • PURCHASE = 4
  • CANCEL = 5
  • BALANCE_ADJUST = 6
  • BALANCE_TOPUP = 7
  • SUSPEND = 9
  • RESUME = 10
  • SESSION_END = 11
  • NOTIFICATION_DONE = 13
  • OBJECT_CREATE = 14
  • STATUS_CHANGE = 15
  • USAGE_REFUND = 16
  • OBJECT_DELETE = 18
  • BALANCE_TRANSFER = 19
  • BALANCE_ROLLOVER = 20
  • ROLLOVER_BALANCE_ADJUST = 21
  • SESSION_CONTEXT_END = 22
  • FORFEITURE = 23
  • PAYMENT_AUTHORIZATION = 24
  • PAYMENT_SETTLEMENT = 25
  • AUTO_RENEW = 26
  • PAYMENT = 27
  • POLICY_SESSION_START = 28
  • POLICY_CHANGE = 29
  • RECHARGE = 30
  • TRANSFER_TO_BILLED_AR = 31
  • BILLING_CYCLE_CHANGE = 32
  • PERIOD_TERMINATION = 33
  • SUBSCRIBER_ADD_DEVICE = 34
  • SUBSCRIBER_REMOVE_DEVICE = 35
  • GROUP_ADD_MEMBERSHIP = 36
  • GROUP_REMOVE_MEMBERSHIP = 37
  • REFUND = 38
  • PAYMENT_REFUND = 39
  • PERIOD_WRITE_OFF = 40
  • PURCHASED_ITEM_CYCLE_CHANGE = 41
  • RECHARGE_REQUEST = 42
  • PURCHASED_ITEM_ACTIVATION = 43
  • BALANCE_THRESHOLD = 44
  • PURCHASED_ITEM_TRANSITION_TO_INACTIVE = 45
  • METER_PERIOD_CLOSE = 46
  • CONTRACT_LATE_CHARGE = 47
  • FINANCE_CONTRACT_PRINCIPAL_PAYMENT = 48
  • MISSED_CONTRACT_CHARGE = 49
  • CONTRACT_FINANCE = 50
  • CONTRACT_DEBT_PAYMENT = 51
  • PURCHASED_ITEM_MODIFY = 52
  • COMPONENT_METER_PERIOD_CLOSE = 53
  • SUBSCRIPTION_MODIFY = 54
  • GROUP_MODIFY = 55
  • USER_MODIFY = 56
  • DEVICE_MODIFY = 57
  • SUBSCRIPTION_CREATE = 58
  • GROUP_CREATE = 59
  • DEVICE_CREATE = 60
  • USER_CREATE = 61
  • SUBSCRIPTION_DELETE = 62
  • GROUP_DELETE = 63
  • DEVICE_DELETE = 64
  • USER_DELETE = 65
  • COMPONENT_METER_SUBPERIOD_CLOSE = 66
  • CYCLE_ARREARS_RECURRING = 67
  • DEBT_PAYMENT = 71
  • PURCHASED_ITEM_STATUS_CHANGE = 72
  • FEE_CHARGE = 73
  • EXTERNAL_PAYMENT_REQUEST = 74
  • EXTERNAL_PAYMENT = 75
  • PERIOD_END_TIME_CHANGE = 76

The MtxEventRecordData MDC is identified by a container key, a system schema version, and a service provider schema version. For example, containerId=MtxEventRecordData(417,5000,1), where 417 is the container key, 5000 is the system schema version, and 1 is the service provider schema version.

MEFs are generated even if their corresponding transaction logs do not contain any transactions with events or notifications. In that case, the MEF does not contain MtxEventRecordData MDCs.

Configure generated MEFs to be automatically published to an off-engine location for archiving and failover purposes. After they are published, they are automatically deleted from the transaction log temporary directory.

Note: Avoid publishing MEFv1s and MEFv2s in the same directory to avoid problems with MEF recovery.

For information about MDC and MDC field extension configuration, see Installation and Configuration.

For more information about configuring MEF publication, see Installation and Configuration.