Dashboard
Active calls
Automation links
Received signals
| Time | Fmt | Account | Raw | Description | Ok | Call |
|---|
Unbound signals
A BFSK panel transmits only three account digits, which cannot tell two premises
apart that share their first three — so the decoded account is advisory and
never names a site. What names a site is a signature bound to an account here.
Until a signature is bound, its signals are stored but never acknowledged and
never forwarded, and the panel retries until it declares a communications
failure. Binding one does not re-deliver the signals already listed below;
it takes effect on that panel's next call.
Unbound BFSK signatures
| Signature | Signals | First seen | Last seen | Decoded |
|---|
Bind a signature to an account
Bindings
| Account | Label | Scope | Identity | Source | State | Bound |
|---|
Calls & recordings
Call log
| Started | ANI | DNIS | Result | Ev | Formats | Recording |
|---|
Monitoring accounts
Add / update account
Accounts
| Account | Name | DNIS | State | Signals | Last signal | Superv. |
|---|
SIP trunks
Add trunk
Configured trunks
| Name | Host | Auth | State | DIDs | Detail |
|---|
Inbound numbering
Inbound DIDs
| DID | DNIS | Accounts | State |
|---|
Bulk load DIDs from CSV
⭳ download CSV template
Drop a CSV file here
or click to choose one — loaded into the trunk selected above,
all-or-nothing, with per-row errors
Auto-provisioned DNIS range
used when a DID is saved or imported with an empty DNIS
Numbers are only ever handed out going forward — a DNIS freed by deleting its DID is retired, never reissued, so a new site can never inherit another site's signal history.
Bootstrap trunks (from environment)
Receiver settings — changes apply from the next call
Audio levels
Formats decoded
Handshake program
Diagnostics
Self-test
Run a simulated panel call through the full audio path — no phone or trunk needed.
Automation platform access
IP allowlist
empty = allow any (not recommended in production)
Link status
API authentication keys
Mint a new key
The key is shown once — only its SHA-256 hash is stored. Everything in this console is also available over the same API with these keys.
Copy it now — it cannot be retrieved again:
Keys
| Name | Role | Prefix | Created | Last used | State |
|---|
Using the API
Send the key as X-API-Key or
Authorization: Bearer. Example:
curl -s http://<host>:8081/v1/events?limit=10 \
-H "X-API-Key: vsr_..."
curl -s -X POST http://<host>:8081/v1/trunks \
-H "X-API-Key: vsr_..." -H "Content-Type: application/json" \
-d '{"name":"carrier1","host":"sbc.provider.com","username":"u","password":"p"}'