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| Term | Purpose |
|---|---|
| UMS | Usage Management System that manages collection, mediation and extraction of usage. |
| ACE | Central InterCall database containing critical information for clients, products, reservations, company, account and owner. |
| Reference Database | Master/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. |
| MetraNet | Billing destination referenced by feature and extraction processing in the source document. |
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.
| # | Product / Integration | Collection Type | Responsibility / Role in UMS |
|---|---|---|---|
| 1 | IVR | File Collection | Fetch source files and process IVR usage through the UMS pipeline. |
| 2 | Encore | File Collection | Source-file acquisition and downstream usage processing. |
| 3 | Adobe | Web Services | Consume usage through service integration. |
| 4 | WebEx | Web Services | Consume usage through web-service integration. |
| 5 | CCASP | REST Services | Collect usage through REST APIs. |
| 6 | DailyOafees | Database Collection | Collect usage from database source. |
| 7 | EOM Fees | Database Collection | Collect end-of-month fee data from database source. |
| 8 | IWS | Database Collection | Database-driven usage collection. |
| 9 | WESI | Database Collection | Database-driven usage collection. |
| 10 | ManualLeg – EMEA | File Collection | Manual leg file ingestion for EMEA. |
| 11 | ManualLeg – APAC | File Collection | Manual leg file ingestion for APAC. |
| 12 | MANUAL_EMEA_REKEY | File Collection | Re-key/manual correction file ingestion for EMEA. |
| 13 | MANUAL_APAC_REKEY | File Collection | Re-key/manual correction file ingestion for APAC. |
| 14 | MANUAL_UK_LINK | File Collection | Manual UK link file ingestion. |
| 15 | Manual Owner Features | File Upload | Upload owner feature records for UMS processing. |
| 16 | Manual Conference Features | File Upload | Upload conference feature records for UMS processing. |
| 17 | MP3 | Database Collection | Database-based collection of MP3-related usage. |
| 18 | PostProcessing | Database Collection | Database-driven post-processing activity. |
| 19 | ums-wml-pexip | Database Collection | Database collection for WML/Pexip usage. |
| 20 | livemeeting | Web Services | Consume LiveMeeting usage through web services. |
| 21 | skypeForBusiness | Web Services | Consume Skype for Business usage through web services. |
| 22 | Mosiac | File Collection | Mosaic source-file collection. |
| 23 | mosiac-jiraps | File Collection | Mosaic JIRAPS file collection. |
| 24 | mosiac-legacy | File Collection | Mosaic legacy file collection. |
| 25 | mosiac-sms | File Collection | Mosaic SMS file collection. |
| 26 | mosiac-vf | File Collection | Mosaic VF file collection. |
| 27 | mosiac-wni | File Collection | Mosaic WNI file collection. |
| 28 | MMP | Web-based Application | Web-based application integrated with the wider UMS ecosystem. |
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.
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.
Transforms, validates, completes and assembles collected usage into business-ready conference, participant and feature records.
EMS manages event/error cases and audit history. Successful usage continues toward extraction and the billing platform.
| Step | Activity | Purpose |
|---|---|---|
| 1 | Source connection | Connect to the configured external file source, commonly an SFTP/file location. |
| 2 | File discovery | Identify files eligible for the current processing window. |
| 3 | File acquisition | Fetch/copy files from the source. |
| 4 | Local persistence | Store files in the UMS local file system. |
| 5 | Handoff | Make the acquired file available to the Collection job. |
| 6 | Audit / error handling | Track collection outcome and route failures for operational support where applicable. |
The source document states that Collection inserts usage into three categories of tables.
| Table Type | Purpose | Example |
|---|---|---|
| Collected Tables | Store raw usage for each product. | ums_ivr_usage_part |
| Normalized Tables | Store normalized records used throughout mediation and extraction. | Session Control, Header, Participant, Feature |
| Optional Tables | Store event/error and collection audit information. | ems_case_rcd, ums_file_collection_log |
ums_ivr_usage_part.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.
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 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 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.
ems_case_rcdums_session_id.ums_file_collection_logEvery file-based collection job creates one log entry. The status identifies whether the job completed successfully, processed an empty file or encountered an error.
The operational pages in the attached document illustrate Local Fetch using the UMS environment, an SFTP client, CDR files and the UMS Web UI.
The source document defines date behavior specifically for Remote Fetch.
| Input | Behavior |
|---|---|
| Specified collection date | Fetch usage for that exact date. |
| No date supplied | Generally collect T-1 day usage. |
| Blank / Empty date | Read the last collected date from the database and fetch usage from that date onward. |
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.
| Validation | Purpose |
|---|---|
| Owner Number Validation | Validate owner information before the usage proceeds through the billing lifecycle. |
| ACE Conference ID & Reservation Call Type Validation | Validate conference/reservation information for Spectel OA, Compunetix OA, IVR and Encore scenarios. |
Conference Header completion populates the common conference-level attributes required for downstream processing. Key completion areas include:
| Processing Area | Examples / Rules Covered |
|---|---|
| Base Bill Code / Bill Code | Determine applicable codes for outbound calls. |
| Domestic – US & Canada | Apply domestic surcharge logic. |
| Domestic – EMEA / APAC | Apply regional domestic surcharge logic. |
| NANP International | Handle US/CA NANP international scenarios. |
| International | Handle US, Canada, EMEA and APAC international calls. |
| Resless | Determine Base Bill Code and Bill Code for IICP, Spectel and Compunetix Resless. |
| OA | Determine Base Bill Code and Bill Code for Spectel OA and Compunetix OA. |
| Area | Processing |
|---|---|
| Feature Validation | Validate standard feature records before completion. |
| Owner Number Validation | Validate owner number for owner and conference features. |
| ACE Conference ID Validation | Validate ACE Conference ID for conference features. |
| PAC Code | Complete PAC Code for owner features. |
| Company | Complete Company Number and Company Name for owner features. |
| Business Unit | Complete Business Unit ID for owner features. |
| Office | Complete Office Code for owner features. |
EMS is connected to event and error processing through the EMS Case Record.
| Functionality | What It Does | Typical Use |
|---|---|---|
| Queue Flows | Handle collection and distribution of MAC data, including audits and events. | ACE → MetraNet and MetraNet → ACE audit/event flows. |
| Batch Flows | Allow 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 One | Quickly test whether an entity was successfully passed from ACE to MetraNet. | Validate Office, Company, Account, Owner and similar entities. |
| Process One | Manually push data to create or update entities. | Manual create/update of Office, Company, Account, Owner and similar entities. |
| EOM Jobs | Run script-based batch jobs at end of month and before the billing run. | Ensure ACE and MetraNet metadata remain synchronized. |
The following source tables support MAC collection and audit/distribution processing.
| Table | Description | Functional Area |
|---|---|---|
ace_audit_collect | ACE Audit Collection | Audit / synchronization |
ace_res_collect | ACE Reservation Collection | Reservation data |
ace_event_collect | ACE Event Collection | ACE events |
mnet_event_collect | MetraNet Event Collection | MetraNet events |
ace_rp_feat_collect | Resplus Features Collection | Features |
ace_rec_charge_collect | ACE MetraNet Recurrent Charges Collection | Recurring charges |
named_user_collect | Named User Subscription Collection | Named-user subscriptions |
ace_division_collect | ACE Division Collection | Organizational hierarchy |
ace_region_collect | ACE Sales Region Collection | Sales-region data |
ace_emp_sales_rep_collect | ACE Employee Sales Rep Collection | Employee / sales-rep data |
ace_bill_resell_type_collect | ACE Bill Reseller Collection | Billing / reseller information |
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.
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.
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.
| Area | Remember |
|---|---|
| UMS | Usage Management System / Mediation Management System. |
| Collection | Fetch raw usage from bridges, databases and files. |
| Collected Tables | Store raw product usage. |
| Normalized Tables | Session Control, Header, Participant and Feature records. |
| Optional Tables | EMS Case and File Collection Log. |
| IVR | Separate bridge with Local Fetch and Remote Fetch. |
| Remote Fetch | Specified date, T-1 default or last collected date recovery. |
| Mediation | Process normalized usage for the billing lifecycle. |
| EMS | Auditable event and error processing. |
| Extraction | Prepare processed usage for MT / MetraTech / MetraNet billing. |
| MAC | Queue Flows, Batch Flows, Validate One, Process One and EOM Jobs for ACE ↔ MetraNet synchronization. |
| MAC Tables | ACE audit, reservation, event, feature, recurring charge, named-user, division, region, sales-rep and reseller collections. |