Usage Rating Overview
Summary
This article outlines the UDR Rating Engine, UDR rating terms used in EngageIP and a high level walkthrough of how to configure the UDR system.
Overview
The UDR Rating Engine imports and rates calls in near 'real-time' meaning, it will calculate usage (calls, data, sms, etc.) balance of remaining minutes/data/instances in buckets, and the time throughout the billing period.
Configuration follows this hierarchy (top down):
Generally speaking, a user is assigned a rate plan (on their package).
A rate plan is configured with one or more rate groups.
A rate group can have one or more rates.
A rate is assigned to a class and/or a UDR Location or UDR Location Group (pattern) as well as tied to other details like rounding rules.
Definitions
UDR Rate Plan - a rate plan is one or more rate groups (priority is assigned to the groups and this priority determines where EngageIP first looks to match a rate for a call pattern. When a rate is not found in the top priority group, it goes to the second priority group to look for a match, and so on)
UDR Rate Group - a group contains one or more rates. For example, this is useful if you want to set up two groups of rates where one may contain Alaska and Hawaii patterns while the other does not. Basically you are only creating rate groups when there is a difference in rates.
UDR Class - these describe the type of call, they are determined by the rating engine based on the called/calling number, call direction or any other criteria in the rating logic (i.e. local, international, SBD, SMS, Long Distance, Toll Free, etc.)
UDR Pattern - a pattern is a sequence of numbers which represent all or part of a phone number. Example, the terminating number may be 15192490508, the pattern to match this may be entered as '519249'. The last 4 digits are removed as usually you don't want to specify a rate right down to the phone line, rather you want to specify a rate to the office location and all lines within that location would have the same rate. The beginning of the called number therefore determines the rate applied and whether its local or long distance
UDR Rate - values can be Fixed, Rated, Markup, Rated Markup or Fixed Markup and each is associated with a pattern or UDR Class
GeoTree - This interface provides geographical location information / placement for patterns. The GeoTree only houses patterns and you do not add rates from this interface for patterns
UDR Feed - this describes the usage stream, switch, or location of the UDR details from your carrier or provider. Each feed can have it's own set of mediation processors
Processors - these are custom scripts applied per UDR Feed to validate the usage and trim it based on its format in order for EngageIP to be able to read and rate it correctly. These can be configured to run pre or post rating
Data Source - This value is configured in the 'Custom Code' section of EngageIP and is specific to your organization and should not be adjusted
Configuration Process
The process outlines from the ground up how to configure the UDR system.
Basic Configuration (GeoTree Locations and Patterns, UDRClasses, Custom Codes, etc.) are configured by LogiSense
A basic overview of the GeoTree configuration can be found here: GeoTree Configuration
Setup Billing Identifiers per account or user-service (for example DID's, Enterprise ID's, etc.) -- this is a customer specific setup
which generate the 'UDR User Identifier History' (UUIH) table (the UUIH table links a user to the user's billing identifier and rate plan)Setup UDR Rate Groups, Plans and Rates. (Note: large Rate Decks can be imported at this time using importing tools with the assistance of LogiSense personnel)
A guide on configuring Rates Groups, Rates and Rate Plans can be found here: Configuring Rate Groups, Rates and Rate Plans
Create UDR Buckets and assign them to Services
Guide: Configuring Usage Buckets
Add UDR Rate Plans and Services to Packages
Add Packages to customer accounts
Import UDR Records (Put raw CDR files in the folder specified in the UDRfeed)
Ensure that the EngageIP Rating service is running. The Rating service will process records and rate them according to the customers package and associated rate plan
Information on EngageIP Windows Services: EngageIP Windows Services Overview
UDR Billing and UDRBiller Date Definitions
Usage is billed out when the date range on a bill run for example encompasses the 'PeriodEnd' date in UDRBiller table for that particular customer.
PeriodStart in UDRBiller is set to nextbilldate on user package when that call is rated (whether rerated, invoice void, exception)
PeriodEnd in UDRBiller is package cancel date OR one full month after period start
Events which may cause PeriodStart and PeriodEnd to change (possibly making them outside of the period when the call was actually made) are the following:
Processing exceptions
Usage imported late (usage files didn't arrive on time or errored on import)
Rerating (manually via UDR report on the rating page or triggered by an invoice Void)
Custom Code Updates
Custom code provides the logic for the rating service to operate. Changes can be made to custom code without restarting the rating service as the service continually processes the custom code, executing any adjustments made in real time.
Error Logging
To see any errors, or logging related to what files are processing and progress generally, you can check the Event Log report under Reports or the Alerts report on the same page. These will provide indication of progress and any errors if existing.
If files are getting stuck when rating, locking up the service or otherwise, these reports are the first place to look for potential causes. From there if these do not provide adequate detail, standalone mode or service log files may shed more light. Beyond the service logging the recommendation is to compare the file to a known working format file to determine what differences exist and update the file to match a working for and attempt to import again.