NSPS Overview
The New Service Provisioning System (NSPS) is designed to receive, queue, dispatch, and enrich events from PortaBilling ESPF (External System Provisioning Framework) for delivery to external systems. The system is built on a microservice architecture and operates in the Google Cloud Platform infrastructure.
This service was developed as a multi-instance solution, where the full set of components is deployed separately for each individual customer and/or PortaBilling environment.
How It Works
- PortaBilling generates an event (e.g., a subscriber upgrades their plan).
- The built-in ESPF sends this event to NSPS via an HTTP request (webhook).
- NSPS enriches the data it receives from PortaBilling by calling the PortaBilling API to fetch additional data, such as the product and access policy details.
- The NSPS queues the event and passes it to the connector.
- The connector communicates with the external system to apply the required changes.
High-Level System Areas
- Service Area: Event processing components for handling ESPF events and provisioning external systems.
- Management Area: Configuration and monitoring components for system administration.
- Storage Area: Persistent storage for events, configuration, and state.
External Network System
External Network System is any third-party platform or telecom component that must stay synchronized with PortaBilling.
These may include business tools (e.g., CRM systems, IPTV platforms) or mobile network elements (e.g., HSS, which manages subscriber identities, and PCRF, which enforces policy and charging rules). External System may also be a database where users must be registered once they complete certain actions tracked by PortaBilling. Another example is an automated notification service that delivers messages based on events in PortaBilling.