Enforcing a single combined concurrency limit per tenant (not separate in/out)?

Hi all,
In VitalPBX we can set max inbound calls and max outbound calls per tenant, but our billing and packages are based on a single combined concurrent call limit (inbound + outbound together).

Example: customer pays for 8 concurrent trunk calls total.
If I configure 8 inbound + 8 outbound, they can effectively use 16 (8 inbound and 8 outbound at once), which isn’t what we want.

Requirements:

  • Limit should apply to trunk usage only (calls that hit our SIP trunk providers).
  • It should not restrict internal calls.
  • Ideally it should work per tenant (multi-tenant), and ideally we can enforce it so customers can’t exceed their plan during peak.

Questions:

  1. Is there a native way to enforce a single combined concurrent trunk call limit per tenant?
  2. If not, what’s the recommended approach (tenant trunk grouping, dialplan rules, call limits, custom module, etc.)?
  3. How do you handle this cleanly when inbound and outbound trunks are separate providers?

Thanks in advance!