Health Checks & Validation

1. Trunk Health Check

The SBC Dashboard displays real-time health status for all trunks.

1.1 Status Definitions

StatusDescription
UPOPTIONS probe successful
DOWNConsecutive failures exceeded threshold
UNKNOWNHealth check not configured

1.2 Configuration

Configure in the trunk’s SBC metadata:

{
  "sbc": {
    "health_check": {
      "enabled": true,
      "interval_secs": 30,
      "timeout_secs": 5,
      "max_failures": 3
    }
  }
}

1.3 Dashboard

SBC → Dashboard displays:

  • Total trunks, active trunk count
  • Current active call count
  • System uptime
  • Health status overview for each trunk

2. Configuration Validation

SBC → Validation: Runs configuration consistency checks, detecting:

CheckDescription
Trunk ReachabilityWhether the dest address is valid
Route IntegrityWhether routes reference existing trunks
Codec IntersectionWhether trunk codecs intersect with global codecs
ACL ConflictsWhether IP allow/block lists overlap
JSON-RPC RulesTemplate syntax, upstream URL reachability

2.1 API

GET /api/sbc/validation/run

Returns a list of validation results, each containing:

  • level: error / warning / info
  • category: trunk / route / codec / acl
  • message: Issue description
  • suggestion: Fix suggestion

3. Route Simulation

3.1 Static Route Simulation

SBC → Routes → Route Simulation:

Input:

  • Caller number
  • Callee number
  • Source IP

Output:

  • Matched route rule
  • Selected trunk
  • Number rewrite result

3.2 JSON-RPC Simulation

SBC → Routes → JSON-RPC Simulation:

Enter match conditions to simulate JSON-RPC rule matching and upstream API calls (can be set to dry-run to avoid sending actual requests).

4. Reload

SBC provides independent reload operations:

OperationEndpointDescription
Reload TrunksPOST /api/sbc/trunks/reloadRe-read trunks from config files
Reload RoutesPOST /api/sbc/routes/reloadRe-read routes from config files
Reload JSON-RPCPOST /api/sbc/jsonrpc/configUpdate JSON-RPC configuration

Reloading does not affect active calls.