UMS & MAC Application – Complete Technical Project Guide

A consolidated project, architecture, product-ownership, collection, mediation, EMS and MAC responsibility guide. This version incorporates the UMS product portfolio, four-stage processing model, conference mediation rules, MAC application responsibilities and collection source tables.

UMSCollectionMediationEMSMMPExtractionACEMetraTechIVR

Contents

  1. UMS Overview & Terminology
  2. UMS Product Ownership & Portfolio
  3. UMS Architecture & Four-Stage Lifecycle
  4. Collection Phase
  5. Collection Sources & Product Adapters
  6. PreCollection – File Acquisition
  7. Collected, Normalized & Optional Tables
  8. Normalized Records
  9. IVR Collection
  10. Local Fetch
  11. Remote Fetch
  12. Mediation Overview
  13. Conference Mediation Rules
  14. Ready-for-Billing Processing
  15. Feature Processing
  16. EMS – Event Management System
  17. MAC Application
  18. MAC Collection Source Tables
  19. Extraction & Billing
  20. Operational Validation
  21. Interview Explanation
  22. Quick Revision Sheet

1. UMS Overview & Terminology

UMS = Usage Management System, also called Mediation Management System. According to the attached document, UMS collects raw usage from bridges, databases and files, processes that usage and sends it to billing through MT / MetraTech.
TermPurpose
UMSUsage Management System that manages collection, mediation and extraction of usage.
ACECentral InterCall database containing critical information for clients, products, reservations, company, account and owner.
Reference DatabaseMaster/reference database for clients, products, reservations, company, account and owner data.
MetraTech (MT)Billing platform through which usage is billed and billing reports are generated.
MetraNetBilling destination referenced by feature and extraction processing in the source document.

2. UMS Product Ownership – 20+ Products / Integrations

As part of UMS, the responsibility covers a broad portfolio of file-based, REST, web-service, database and web-based products. The product type determines the collection adapter and the source-to-UMS ingestion mechanism.

20+Products / integrations under UMS responsibility
4Core UMS processing stages
5Primary source patterns: file, upload, DB, REST, WebService
2Major application areas: UMS & MAC

Product & Collection Responsibility Matrix

#Product / IntegrationCollection TypeResponsibility / Role in UMS
1IVRFile CollectionFetch source files and process IVR usage through the UMS pipeline.
2EncoreFile CollectionSource-file acquisition and downstream usage processing.
3AdobeWeb ServicesConsume usage through service integration.
4WebExWeb ServicesConsume usage through web-service integration.
5CCASPREST ServicesCollect usage through REST APIs.
6DailyOafeesDatabase CollectionCollect usage from database source.
7EOM FeesDatabase CollectionCollect end-of-month fee data from database source.
8IWSDatabase CollectionDatabase-driven usage collection.
9WESIDatabase CollectionDatabase-driven usage collection.
10ManualLeg – EMEAFile CollectionManual leg file ingestion for EMEA.
11ManualLeg – APACFile CollectionManual leg file ingestion for APAC.
12MANUAL_EMEA_REKEYFile CollectionRe-key/manual correction file ingestion for EMEA.
13MANUAL_APAC_REKEYFile CollectionRe-key/manual correction file ingestion for APAC.
14MANUAL_UK_LINKFile CollectionManual UK link file ingestion.
15Manual Owner FeaturesFile UploadUpload owner feature records for UMS processing.
16Manual Conference FeaturesFile UploadUpload conference feature records for UMS processing.
17MP3Database CollectionDatabase-based collection of MP3-related usage.
18PostProcessingDatabase CollectionDatabase-driven post-processing activity.
19ums-wml-pexipDatabase CollectionDatabase collection for WML/Pexip usage.
20livemeetingWeb ServicesConsume LiveMeeting usage through web services.
21skypeForBusinessWeb ServicesConsume Skype for Business usage through web services.
22MosiacFile CollectionMosaic source-file collection.
23mosiac-jirapsFile CollectionMosaic JIRAPS file collection.
24mosiac-legacyFile CollectionMosaic legacy file collection.
25mosiac-smsFile CollectionMosaic SMS file collection.
26mosiac-vfFile CollectionMosaic VF file collection.
27mosiac-wniFile CollectionMosaic WNI file collection.
28MMPWeb-based ApplicationWeb-based application integrated with the wider UMS ecosystem.
Ownership statement: “As part of UMS, I was completely responsible for a portfolio of products covering file collection, database collection, REST APIs, SOAP/WSDL web services and manual file uploads. My responsibility extended from source acquisition through collection, mediation, event/error handling and downstream billing readiness.”

3. UMS Architecture & Four-Stage Processing Lifecycle

PreCollection
→
Collection
→
Mediation
→
EMS / Billing Readiness

1. PreCollection

Applies primarily to file-based products. Jobs fetch files from the external source and place them into the UMS local file system. This separates file acquisition from actual usage parsing and collection.

  • Connect to source / SFTP location.
  • Identify and fetch eligible files.
  • Store files in the UMS local file system.
  • Maintain collection/audit information where applicable.
  • Make the file available for the Collection phase.

2. Collection

Reads usage from the appropriate source: UMS local files, database, REST API or WSDL/SOAP web service, and stores raw data into UMS normalized and product-associated tables.

  • Parse source-specific data.
  • Apply source-to-UMS mapping.
  • Create product collected records.
  • Populate normalized records.
  • Generate audit/error information where required.

3. Mediation

Transforms, validates, completes and assembles collected usage into business-ready conference, participant and feature records.

  • Duplicate and late-leg handling.
  • Owner, conference and reservation validation.
  • Header/participant completion.
  • Bill code and surcharge determination.
  • Conference assembly and ready-for-billing processing.

4. EMS & Downstream Billing

EMS manages event/error cases and audit history. Successful usage continues toward extraction and the billing platform.

  • Create auditable EMS cases for event/error conditions.
  • Maintain multiple historical cases per session.
  • Complete billing-readiness checks.
  • Extract processed usage to downstream billing tables.

Source-to-Billing Conceptual Flow

Source Files
Source DB
REST API
SOAP/WSDL
Manual Upload
↓
PreCollection
→
Collection
→
Normalized UMS Data
→
Mediation
→
EMS / Ready for Billing
→
Billing

6. PreCollection – File Acquisition

PreCollection is the file-ingestion preparation stage. For file-based products, the job does not immediately perform all business processing. It first obtains the source file and stores it in the UMS local file system so that the Collection job can consume it in a controlled manner.
StepActivityPurpose
1Source connectionConnect to the configured external file source, commonly an SFTP/file location.
2File discoveryIdentify files eligible for the current processing window.
3File acquisitionFetch/copy files from the source.
4Local persistenceStore files in the UMS local file system.
5HandoffMake the acquired file available to the Collection job.
6Audit / error handlingTrack collection outcome and route failures for operational support where applicable.
Interview wording: “For file-based products, we have a PreCollection stage where the source files are fetched and stored in the UMS local file system. The Collection stage then reads those local files and converts the source data into product-specific and normalized UMS records.”

5. Collection Phase

Definition: Collection is the mechanism or process to fetch raw usage from bridges, databases or files. It is the entry point into the UMS processing pipeline.

Main Responsibilities

Bridges
Databases
Files
↓
Collection Process
→
Collected Tables
→
Normalized Tables
→
Mediation
Optional EMS Case
Optional File Collection Log

6. Collection Sources

File CollectionUsage is collected from source files. Every file collection job is audited through the file collection log.
Database CollectionUsage is fetched directly from source databases and inserted into the UMS collection flow.
Bridge CollectionConference bridge usage is collected as raw usage. The attached document illustrates IVR as a bridge source.
Project IntegrationsThe earlier project explanation included Adobe and Webex web services plus CCASP REST APIs as project-specific collection adapters. Keep these as integrations you actually worked with.

7. Collected, Normalized & Optional Tables

The source document states that Collection inserts usage into three categories of tables.

Table TypePurposeExample
Collected TablesStore raw usage for each product.ums_ivr_usage_part
Normalized TablesStore normalized records used throughout mediation and extraction.Session Control, Header, Participant, Feature
Optional TablesStore event/error and collection audit information.ems_case_rcd, ums_file_collection_log
For every product, raw usage is saved into an associated product collected table. The document specifically gives IVR usage stored in ums_ivr_usage_part.

8. Normalized Records

Session Control Record

The Session Control Record controls the mediation process for a conference or standalone feature from collection through extraction for billing. The source highlights Status Flag, Conference Event Type, Conference Event Code and Supersede Flag as the fields that indicate processing state.

Conference Header Record

The Conference Header contains information common to all participant legs and conference features within a conference. It is created when a collected event contains multiple participant records. If required, the source describes creating a header using ACE reservation information.

Participant Record

Participant Records represent individual user usage within a conference or event. Usage duration based on start and end time is important for billing. Since several service types use this format, not every field is populated for every record.

Feature Record

Feature Records represent non-recurring charges that flow through mediation before billing. The source distinguishes conference feature records associated with reserved conferences and owner feature records associated with an owner number. Both use the common ums_feature structure and are identified by record_type.

9. Optional Tables

EMS Case Record – ems_case_rcd

File Collection Log – ums_file_collection_log

Every file-based collection job creates one log entry. The status identifies whether the job completed successfully, processed an empty file or encountered an error.

10. IVR Collection

IVR = Interactive Voice Response History. The document describes IVR as a separate bridge (bridge type ID 4) used for Operator Assisted and Automated calls involving Spectel and Compunetix bridges.
IVR
→
Collection
→
Collected + Normalized
Transformation
→
Validation
→
Mediation
→
EMS
Usage Ready for Billing?
Yes →
Extraction
→
MetraNet Tables

11. Local Fetch

The operational pages in the attached document illustrate Local Fetch using the UMS environment, an SFTP client, CDR files and the UMS Web UI.

Configured Trigger
→
Connect to SFTP
→
Browse CDR Files
→
Launch IVR Collection Job
↓
Collection Completed
→
Launch IVR Mediation Job
→
Verify Session Control Counts
Operational interview explanation: “For IVR Local Fetch, we connected to the configured SFTP location, collected the CDR files, launched the IVR Collection Job through the UMS Web UI, launched the Mediation Job and finally validated the resulting Session Control status and event counts using database queries.”

12. Remote Fetch

The source document defines date behavior specifically for Remote Fetch.

InputBehavior
Specified collection dateFetch usage for that exact date.
No date suppliedGenerally collect T-1 day usage.
Blank / Empty dateRead the last collected date from the database and fetch usage from that date onward.
Important: This date-selection logic applies only to Remote Fetch according to the attached document.

13. Mediation Overview

The source establishes that normalized records are used by mediation to control the conference lifecycle from collection through extraction for billing.

13. Standard Mediation Processing for Conferences

Mediation is the core business-processing layer where collected usage is transformed into complete, validated and billable conference data. The following rules represent the conference processing responsibilities provided for this project.

13.1 Standard Transformation Processing

Conference Duplicate Processing
  • Complete Duplicate: identify and handle a conference that is fully duplicated.
  • Child Conference with Missing Legs: handle partial duplicates where the child conference does not contain the full set of legs.
  • Late Legs: process legs arriving after the original conference, including child conferences that overlap with the parent but introduce new legs and child conferences containing the same conference ID with entirely new legs.
  • Hybrid Duplicate: resolve cases where parent and child conference legs do not match.
Recorder & Test-Number Processing
  • Identify the recorder line and populate the Recorder Participant Type.
  • For IICP, Spectel and Compunetix, scrub calls to DNIS test numbers.

13.2 Standard Validation Processing

ValidationPurpose
Owner Number ValidationValidate owner information before the usage proceeds through the billing lifecycle.
ACE Conference ID & Reservation Call Type ValidationValidate conference/reservation information for Spectel OA, Compunetix OA, IVR and Encore scenarios.

13.3 Conference Header Completion

Conference Header completion populates the common conference-level attributes required for downstream processing. Key completion areas include:

PAC CodePopulate PAC when collected from the source; apply the defined behavior when no PAC is collected.
NamesComplete Leader Name and Reservation Name.
Reservation ContextResolve Reservation Time Zone and Account Number.
OrganizationPopulate Business Unit ID, Company Number/Name and Office Code.
PricingDetermine Pricing Model for IICP, IUM, Spectel and Compunetix Summit (non-OA).
UMS IdentityPopulate the UMS Conference ID.
MMM / PCEApply MMM and PCE setup for applicable IICP, Spectel and Compunetix Summit audio conferences.
OA ResolutionResolve premium billing and ACE reservation data for Spectel OA and Compunetix OA.

13.4 Participant Completion

13.5 Bill Code & Surcharge Processing – Outbound

Processing AreaExamples / Rules Covered
Base Bill Code / Bill CodeDetermine applicable codes for outbound calls.
Domestic – US & CanadaApply domestic surcharge logic.
Domestic – EMEA / APACApply regional domestic surcharge logic.
NANP InternationalHandle US/CA NANP international scenarios.
InternationalHandle US, Canada, EMEA and APAC international calls.
ReslessDetermine Base Bill Code and Bill Code for IICP, Spectel and Compunetix Resless.
OADetermine Base Bill Code and Bill Code for Spectel OA and Compunetix OA.

13.6 Additional Standard Completion Rules

14. Standard Usage / Conference Assembly & Ready-for-Billing

14.1 MMM Processor for IUM Consolidation

  1. Query the UMS Web Audio Synchronization Table for MMM conferences.
  2. Create the MMM Status Record.
  3. Create a new Session Control Record for the MMM conference.
  4. Create the Conference Header Record.
  5. Merge Participant Detail Records.
  6. Compute alternative durations.
  7. Create supplemental participant records.
  8. Update the status of the original conferences.
  9. Create the UMS Feature Record for IUM MMM conferences.
  10. Forward the MMM conference to the Ready-for-Billing process.

14.2 Ready-for-Billing Processing

Residual Error CheckVerify that no unresolved residual errors remain before billing.
Last-Minute Error CheckPerform final validation immediately before the usage becomes billing-ready.
Superseded ConferenceProcess conferences that supersede an already completed core-mediation conference.
Associated ConferenceProcess conferences associated with a previously completed conference.
Ten-Minute RuleDetermine eligibility and process applicable audio conferences.
OA Conference MergingDetermine merging eligibility and process conferences requiring OA merging.
Premium ReprocessingReprocess premium billing for OA-merged conferences when required.

15. Standard UMS Processing for Features

AreaProcessing
Feature ValidationValidate standard feature records before completion.
Owner Number ValidationValidate owner number for owner and conference features.
ACE Conference ID ValidationValidate ACE Conference ID for conference features.
PAC CodeComplete PAC Code for owner features.
CompanyComplete Company Number and Company Name for owner features.
Business UnitComplete Business Unit ID for owner features.
OfficeComplete Office Code for owner features.
Feature perspective: Conference features and owner features use the UMS feature-processing model, with validation and completion rules applied before the records are ready for downstream processing.

16. EMS – Event Management System

EMS is connected to event and error processing through the EMS Case Record.

17. MAC Application – Responsibilities & Functional Areas

MAC is a separate major responsibility area alongside UMS. The MAC application manages data collection/distribution flows between ACE and MetraNet, scheduled/manual batches, one-off validation and processing, and end-of-month synchronization jobs.

17.1 Core MAC Functionalities

FunctionalityWhat It DoesTypical Use
Queue FlowsHandle collection and distribution of MAC data, including audits and events.ACE → MetraNet and MetraNet → ACE audit/event flows.
Batch FlowsAllow users to schedule the time each day when MAC batches are fired. Users can also manually run a batch at any time.Daily scheduled processing or operational re-run.
Validate OneQuickly test whether an entity was successfully passed from ACE to MetraNet.Validate Office, Company, Account, Owner and similar entities.
Process OneManually push data to create or update entities.Manual create/update of Office, Company, Account, Owner and similar entities.
EOM JobsRun script-based batch jobs at end of month and before the billing run.Ensure ACE and MetraNet metadata remain synchronized.

17.2 MAC Processing Concept

ACE Data
→
Queue / Batch
→
Validate / Process
→
MetraNet
Audit
Events
EOM Jobs
Manual Re-run

17.3 MAC Operational Responsibilities

18. MAC Collection Source Tables

The following source tables support MAC collection and audit/distribution processing.

TableDescriptionFunctional Area
ace_audit_collectACE Audit CollectionAudit / synchronization
ace_res_collectACE Reservation CollectionReservation data
ace_event_collectACE Event CollectionACE events
mnet_event_collectMetraNet Event CollectionMetraNet events
ace_rp_feat_collectResplus Features CollectionFeatures
ace_rec_charge_collectACE MetraNet Recurrent Charges CollectionRecurring charges
named_user_collectNamed User Subscription CollectionNamed-user subscriptions
ace_division_collectACE Division CollectionOrganizational hierarchy
ace_region_collectACE Sales Region CollectionSales-region data
ace_emp_sales_rep_collectACE Employee Sales Rep CollectionEmployee / sales-rep data
ace_bill_resell_type_collectACE Bill Reseller CollectionBilling / reseller information
MAC interview statement: “In MAC, I was responsible for Queue Flows, Batch Flows, Validate One, Process One and EOM Jobs. The application supports ACE-to-MetraNet data synchronization, audit/event collection, scheduled and manual batch execution, entity-level validation and controlled end-of-month metadata synchronization before billing.”

19. Extraction & Billing

Normalized Usage
→
Mediation
→
Extraction
→
MT / Billing Tables

Extraction prepares processed usage for billing. The source references billing through MT / MetraTech and also describes feature records being extracted into appropriate MetraNet billing tables.

20. Operational Validation & Controlled Cleanup

Validation

The document demonstrates validating processed data by grouping Session Control records using fields such as status_flag, conf_event_code, conf_event_type, source and partition date. This helps verify the processing distribution after Collection and Mediation.

Cleanup

The last page contains operational DELETE statements for IVR-related usage, feature/session records, EMS cases and file collection logs before controlled reprocessing. In documentation and interviews, present this as a controlled test/support cleanup procedure rather than a general production operation.

21. Updated 2–3 Minute Interview Explanation

Project Explanation

I worked on a Usage Management System called UMS. As part of UMS, I was responsible for a broad portfolio of products covering file collection, database collection, REST services, WSDL/SOAP web services and manual uploads. The overall purpose was to collect raw usage, normalize it, apply business mediation rules, manage event and error cases through EMS and make the usage ready for downstream billing.

The Collection phase was the entry point. It collected raw usage from file-based sources, database sources and conferencing bridges. In my project, external integrations also included Adobe and Webex web services and CCASP REST services. The collected raw usage was stored in product-specific collected tables, and normalized records were created for downstream processing.

The normalized layer contained Session Control, Conference Header, Participant and Feature records. Session Control controlled the lifecycle from collection through extraction, Conference Header represented common conference information, Participant represented individual usage legs and Feature records handled non-recurring charges.

For file collection, every job was tracked in the file collection log. If a processing event or error occurred, EMS created an EMS Case Record and preserved the complete audit history by allowing multiple cases for the same UMS session.

The IVR flow supported Local Fetch and Remote Fetch. Local Fetch operationally connected to the configured SFTP location, collected CDR files and launched Collection and Mediation jobs through the UMS Web UI. Remote Fetch supported explicit dates, default T-1 collection and blank-date recovery using the last collected date stored in the database.

Alongside UMS, I was responsible for the MAC application. MAC handled Queue Flows, Batch Flows, Validate One, Process One and EOM Jobs. Queue and batch flows supported ACE-to-MetraNet data collection/distribution and audit/event processing; Validate One and Process One supported entity-level operational checks and manual create/update; and EOM Jobs helped keep ACE and MetraNet metadata synchronized before billing.

Finally, Extraction prepared processed usage for billing through MT / MetraNet. In simple terms: PreCollection acquires files, Collection ingests source usage, Mediation transforms and validates it, EMS manages event/error cases, MAC synchronizes operational metadata, and the downstream process delivers billing-ready usage.

22. Quick Revision Sheet

AreaRemember
UMSUsage Management System / Mediation Management System.
CollectionFetch raw usage from bridges, databases and files.
Collected TablesStore raw product usage.
Normalized TablesSession Control, Header, Participant and Feature records.
Optional TablesEMS Case and File Collection Log.
IVRSeparate bridge with Local Fetch and Remote Fetch.
Remote FetchSpecified date, T-1 default or last collected date recovery.
MediationProcess normalized usage for the billing lifecycle.
EMSAuditable event and error processing.
ExtractionPrepare processed usage for MT / MetraTech / MetraNet billing.
MACQueue Flows, Batch Flows, Validate One, Process One and EOM Jobs for ACE ↔ MetraNet synchronization.
MAC TablesACE audit, reservation, event, feature, recurring charge, named-user, division, region, sales-rep and reseller collections.