Release

Search

What’s new in MR115

Link copied to clipboard

Charging customers based on used volume of call recordings and transcriptions

Link copied to clipboard

With MR115, you can charge your customers for call recording and transcription services based on the total duration of recorded and transcribed calls. For example, you can offer “10 hours of recording & transcription for $10 per month.” Previously, these services were unlimited for a subscription fee. Now, after customers use up the allocated volume, such as 10 hours, you can charge them at a pay-as-you-go rate, e.g., $0.03/minute for recording and $0.05/minute for transcription.

Example

Owl Telecom offers a bundle at $10 per month, which includes 10 hours of call recording and transcription. To set this up, Owl Telecom’s admin assigns a 10-hour quota to each of these services. All recorded calls are automatically transcribed, so whenever a user records 1 hour of calls, this means that 1 hour will be deducted from both the “call recording” and “call transcription” quotas. If a customer uses up their 10 hours by the end of the month, they will be charged $0.03 per minute for call recording and $0.05 per minute for transcription.

ABC Company activates this bundle for their sales manager, John. By the end of June, John has recorded 12 hours of calls with prospects, all of which are transcribed automatically. The initial 10 hours are covered by his bundle, while the additional 2 hours incur charges at $0.03 per minute for call recording and $0.05 per minute for transcription.

As a result, in their June invoice, ABC Company receives a $10 fee for the bundle, along with overage charges from the month that total $3.60 for recording (120 minutes * $0.03) and $6 for transcription (120 minutes * $0.05).

Benefit

Service providers can monetize and recover the cost of call recording and transcription services.

New representative self-care web interface

Link copied to clipboard

Starting with MR115, representatives will see the new self-care web interface when they log in. In addition to the same functionality as on the old representative interface, the updated version also allows for checking the commission details, e.g., one-time commission for the subscription.

To show representatives the old web interface by default, set the Web.UseNewInterfaceForRepresentative option to “No” on the Configuration server web interface. The old version will be completely removed in further releases.
Benefits
  • Easy representative onboarding process for service providers
  • Access to a modern, user-friendly self-care portal for representatives

Access to the latest news from the PortaBilling login page

Link copied to clipboard

Service providers may be unaware of the potential for new value-added services and revenue streams available with the latest updates because they are fully immersed in their current operations. With this release, admins can check the latest PortaOne news and information relevant to their current maintenance release every time they log in to PortaBilling.

For instance, while logging into the system, admin notices news about the recent AI-based call transcription feature and decides to evaluate it instead of developing their own solution. This timely information allows the service provider to make strategic decisions and potentially save on development costs.

News on the PortaBilling login page

Benefit

This enhancement can help service providers stay up to date with the latest events, such as webinars, and in a timely manner learn about the latest functionality they may need.

Call parking from external apps

Link copied to clipboard

Now you can enable PBX customers to park/retrieve calls using third-party or in-house developed apps, such as a receptionist console. For instance, a receptionist can easily park a client’s call by pressing a single button on their desktop app, allowing a colleague to pick it up on any IP phone throughout the office. This feature is implemented via the call control API. The receptionist console app sends an API request to PortaSwitch to park the call.

When parking a call via the app, the receptionist can use either of two methods:

  • Select a parking slot, if these slots are set up in the cloud PBX and configured on the office IP phones. For example, two parking slots are created via the Cloud PBX Self-Care Portal and configured on IP phones as line key 1 and line key 2. When the receptionist parks a call, they can see which parking slots are available and select one of them, such as slot 1, in the app. This way, the call can be quickly retrieved from any IP phone by pressing line key 1.
  • Select a specific extension. If the office phones do not support parking slot configuration, there are no available slots at the moment, or a call is intended for a specific person, the receptionist can select a colleague’s extension to park the call. A call parked to a specific extension (e.g., 1234) can be retrieved from the IP phone where the extension is registered by dialing a service code (e.g., *71) or from any other IP phone by dialing a service code followed by the extension number (e.g., *711234).

Web/mobile apps can also be designed to retrieve parked calls with a single click/tap.

If a parked call has not been retrieved within the defined timeout, it automatically returns to the application where the call was parked and rings, if automatic retrieval is enabled.

Example

Let’s explore in more detail how call parking from an app works.

Consider Alice, a receptionist in a hospital, using a dedicated app to handle incoming calls. There are two parking slots designated for the hospital’s cloud PBX via the Cloud PBX Self-Care Portal. Throughout the hospital, the IP phones are configured with line key 1 and line key 2 as parking slots.

Say Alice receives a call from Dr. Smith’s patient seeking a consultation. Knowing that Dr. Smith is not in his office, Alice does not transfer the call to his extension. Instead, she opts to park the call and make an announcement via the public address system. Alice asks the caller to wait on hold and parks the call by clicking “parking slot 1” that is shown as available. In the background, the app sends a call control API request to PortaSwitch which parks the call. A notification appears in the app, indicating that the call has been parked in parking slot 1, and Alice is automatically disconnected from the call. The app displays the “parked” status for this call, indicating that the caller is now on hold. Then, Alice makes an announcement via the public address system: “Dr. Smith, there’s a call for you on line 1.”

Dr. Smith, who is in the consultation room, hears the announcement and picks up the IP phone right there. To retrieve a call and connect with the patient, he presses the line key 1 on the IP phone.

Benefits

Service providers can develop competitive business apps that allow PBX users, such as receptionists, to park calls in a simple way.

For the specifics, check here.

Integration with IPLOOK

Link copied to clipboard

PortaBilling is now integrated with the IPLOOK mobile core network. IPLOOK focuses on providing a 3G/4G/5G mobile core for MNOs, MVNOs, WISP (Wireless Internet Service Provider), and enterprises.

This integration enables mobile operators to perform real-time charging for internet access and voice calls provided by the IPLOOK mobile core. For real-time authorization and charging (AAA), the IPLOOK’s mobile core and PortaBilling communicate via the Diameter protocol. When a user attempts to use a service, PortaBilling authenticates them and authorizes the internet session or voice call by verifying that the user has sufficient balance/quota to use the service.

This integration is available starting from MR100.
Benefit

MVNOs/MVNEs can launch mobile services using a cost-effective mobile core.

See the configuration details here.

Reduced database load by batch update of balances

Link copied to clipboard

Now, you can configure the PortaBilling system to accumulate changes to customer or vendor balances over a specific interval, such as 5 seconds, before processing the balance update.

This approach consolidates balance updates into a single operation at the end of the interval, thereby reducing their frequency. Previously, the system would immediately update a customer’s or vendor’s balance after each transaction, such as a call completion. For large customers with many concurrent calls, this frequent updating could result in tens or even hundreds of balance update transactions per second, applied to the same database record, thus producing database locks and delays.

Example

When a customer with this feature enabled makes 10 calls, each costing $0.10, the system generates 10 xDRs but retains each charge in the server memory for 5 seconds. Following the delay, the customer balance is promptly updated by $1 ( 10 calls multiplied by $0.10 each). Otherwise, for the customer with this feature disabled (default) the system would generate 10 xDRs and update their balance 10 times, each time by $0.10.

Benefit

Service providers can avoid investing in more expensive hardware due to reduced database load.

Configuration

To update balances in batches, admin should enable the Batch balance updates for usage charges toggle on the PortaBilling web interface for the customer or vendor.

Reduced database load by batch update of balances

By default, the system accumulates balance changes every 5 seconds. You can change the default period in the Rating.PendingBalanceUpdateIntervalCustomer and Rating.PendingBalanceUpdateIntervalVendor options on the Configuration web server interface.

Accurate tracking of bundle depletion and expiration via external apps

Link copied to clipboard

With this release, PortaBilling can notify external apps, such as custom-built web apps or apps based on PortaOne Workflow integration, about the reason for bundle unavailability. Previously, there was no distinction between bundle depletion and bundle expiration events.

This change ensures accurate tracking of both quota depletion and expiration and streamlines the development process of external apps. For example, this allows you to send more precise notifications and tailored promotions to end users via a CRM system.

Example

A service provider uses a CRM system integrated with PortaBilling to notify their subscribers about bundle status and offer renewal, or additional purchase options.

On June 1st, John subscribes to a roaming package offering 10 GB of data for $10, valid for 7 days. During his vacation, John uses 9 GB of the allocated data, leaving 1 GB unused. On June 8th, the unused 1 GB expires. PortaBilling notifies the CRM system with the Account/Service/Netaccess/QuotaExpired event. The CRM system sends John a notification: “Dear customer, your internet roaming service package has expired. You can renew the 10 GB bundle for the next 7 days for $10.”

As John’s vacation continues, he opts to renew his package for another 7 days. By June 12th, John exhausts the 10 GB of allocated data, which triggers sending the Account/Service/Netaccess/QuotaExceeded event to the CRM system. Subsequently, the CRM notifies John: “Dear customer, you have used up your 10 GB quota. To stay connected, you can purchase an additional 5 GB of internet for $5.”

Benefit

This enhancement simplifies integrations with external systems and allows providers to inform customers about precise service changes.

Configuration

To inform an external app about the account’s bundle expiration, you can subscribe the event handler in PortaBilling to the new Account/Service/Netaccess/QuotaExpired event.

Accurate tracking of bundle depletion and expiration via external apps

For PortaBilling to notify an external app when the bundle allocated for an account has been used up, use the existing Account/Service/Netaccess/QuotaExceeded event.

Adjust recurring fees for service packages sold by resellers

Link copied to clipboard

When a reseller sells a service package with a subscription to an end user, the service provider also charges the reseller (PortaBilling automatically assigns a separate subscription to the reseller). With this release, you can customize the subscription fees applied via service packages to resellers by configuring discounts or upcharges. This enhancement eliminates the need for service providers to create separate subscription plans when resellers negotiate special pricing with the service provider.

The following options have been added for subscriptions assigned to resellers via products:

  • Apply a fixed/relative discount.
    Example

    Say a reseller’s customer experiences issues with their internet service. In order to compensate for this inconvenience and maintain a positive relationship with the customer, the reseller decides to offer them a 15% discount. As the service interruption is the responsibility of the service provider, the reseller negotiates a discount for this particular subscription with the service provider to compensate for the revenue loss. The administrator navigates to Reseller > Finances > Subscriptions > Assigned via products, locates the subscription assigned to the affected customer’s account, and then applies a 15% discount to the reseller’s subscription details.

    discount applied via product

  • Apply a fixed/relative upcharge.
    Example

    Say a customer of a reseller seeks an internet service that ensures uninterrupted availability, even during power outages. Since extra equipment is required on the service provider’s end to maintain connectivity during such power outages, they impose an additional 20% charge on the reseller for this premium service. Consequently, the reseller applies a 20% upcharge to the subscription assigned to the customer’s account, and the service provider’s administrator mirrors this by applying the same 20% upcharge to the subscription assigned to the reseller via the product.

    upcharge

Benefit

This enhancement saves time for the service provider’s admin by avoiding creation of extra subscriptions assigned to resellers via products.

On this page