Virtual Receiver Console

The receiver API key: the environment key is full access; a minted key signs in with its role. Kept for this browser tab only.
For integrations, first-time setup and recovery
Ackora Virtual Receiver
…

Dashboard

Active calls
Automation links

Received signals

TimeFmtAccountRawDescriptionOkCall

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.
This queue covers BFSK only, because a signature is a BFSK concept. Contact ID and SIA panels put their account on the wire, so an unidentified signal in those formats is an unregistered account instead — find those under Events filtered to account UNKNOWN, and register them on Accounts.
Unbound BFSK signatures
SignatureSignalsFirst seenLast seen Decoded
Bind a signature to an account
This makes the receiver start acknowledging that panel. Confirm a test call against the panel first.
Bindings
AccountLabelScopeIdentitySource StateBound

Calls & recordings

Call log
StartedANIDNISResultEvFormatsRecording

Monitoring accounts

Add / update account
Accounts
AccountNameDNISStateSignalsLast signalSuperv.

SIP trunks

Add trunk
Configured trunks
NameHostAuthStateDIDsDetail

Inbound numbering

Inbound DIDs
DIDDNISAccountsState
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
NameRolePrefixCreatedLast usedState
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"}'

Receiver logs

Ackora Virtual Receiver