Open Voice Shield is one hop on the SIP trunk you already run. Every call gets a verdict (block,
review or allow) with its evidence, a route alert when the vendor swaps the far end for a
recording, and its audio quality (estimated MOS, jitter, loss). You can then block or divert
the caller, send an alert or open a case.
Everything here runs in production today. Voice AI forwarding is the one
beta.
What kind of thing it is
Carrier-grade voice fraud prevention software
Open Voice Shield is built for the trunk, not the handset: a SIP proxy in the signalling
path and a media relay in the RTP path, authenticated by source IP like any carrier
interconnect. Your switch treats it as one more carrier and fails over around it the same
way. It is not a softphone app, an SBC replacement or a firewall.
Feature by feature
An AI telecom fraud management system, on one page
Every capability in one table. The last three rows are the limits.
Capabilities of Open Voice Shield, in production unless marked.
Capability
Open Voice Shield
Detection
An AI verdict per analyzed call: fraud probability 0 to 100, category, entity impersonated, numbered red flags, a TCPA note and a block / review / allow recommendation. Details.
Coverage
Any SIP switch, SBC or dialler, all traffic or a sampled share, decided in your dial plan or by the platform. G.711, G.722, G.729 and G.723.1.
Enforcement
Automation rules on the caller ID: block the next call with SIP 403 or divert it, for a set duration, released with one click. Details.
Alerting
Rules on probability, category, recommendation or estimated MOS, delivered by e-mail, to a Slack channel in your own workspace, or both, with throttling.
Case management
Cases on a call with assignment, comments and status. Every change is audited.
Evidence
Stereo recording, speaker-labelled transcript, SIP ladder, packet capture, analyst bundle and a branded PDF report, with one-click export and password-protected, expiring share links. Details.
Caller ID delivery
A test call through your route to one of the platform's numbers reports whether your caller ID arrived as sent: match, modified, withheld, missing or not received. On demand or on a schedule. Details.
Route integrity
Early-answer and delayed-playback false answer supervision, raised as a route alert beside the verdict. Details.
Call quality
Estimated MOS, jitter, packet loss and post-dial delay per leg on every call. Details.
Integration
REST API with API keys, a signed HTTP webhook per analyzed call, Slack, and connection guides for the common switches. API reference.
AI modes
Economy, Power or Max per account: the class of models and the per-call analysis fee. Any call can be re-analyzed with a different frontier model.
Commercials
Prepaid, per second of analyzed calling plus one analysis fee per call. Bundled plans include minutes. No seats or minimum. Pricing.
After the call by default
In standard mode the verdict exists after hangup and enforcement lands on the caller's next call. Realtime mode, set up on request at a higher cost, scores the call while it is still up.
Not a legal determination
The TCPA note is a reading of the conversation, not legal advice.
No published accuracy figure
None has been computed against a labelled corpus. The FAQ says what has been measured.
Group 1: the verdict
Recording, transcription and fraud analysis
After hangup each speaker's channel is transcribed and the conversation is read. The call
comes back block, review or allow, with a probability, a category, numbered red flags and
a TCPA note. Realtime mode, set up on request, scores it while it is still up.
The whole call in one place: the verdict, the recording, and the transcript split by speaker so you can read what was said.Pipeline stages, verdict fields and limits
In standard mode analysis begins after the BYE, so the live audio gets no prompt, tone or
added delay. Any analyzed call can be re-run through a different model, a frontier model from
Anthropic or OpenAI or an open-weight model through OpenRouter, for a second opinion. A
re-analysis is never charged.
The per-call pipeline, in the order it runs.
Stage
What happens
Result on the call
Capture
The media server writes one pcap per media stream while it relays the RTP.
pcap on the media node
Decode
The pcap is parsed, RTP grouped by SSRC, G.711 PCMU/PCMA decoded to PCM, gaps filled from RTP timestamps.
stereo 8 kHz WAV
Transcribe
Each channel is transcribed separately in the language detected on the call, then merged by start time, so every line is attributed to caller or callee.
speaker-labelled transcript
Analyze
The analysis engine reads the transcript and call metadata, returning a strict JSON verdict.
analysis record
Notify
Matching alert rules e-mail the analysis or post it to your Slack channel, on the verdict or on the call's estimated MOS. A configured webhook is POSTed, HMAC-signed.
alert + webhook delivery
What the verdict contains
Recommendation
blockreviewallow, the single field an automation rule or a human triages on.
Probability
An integer 0–100: how strongly the call reads as fraudulent.
Category
One of a fixed, groupable set: credit card scam, tech support scam, government
impersonation, bank impersonation, debt collection, prize or lottery scam, utility scam,
compliant telemarketing, non-compliant telemarketing, robocall, legitimate business,
personal, unknown.
Entity and caller identity
The organization the caller claimed to represent, and the identity they gave.
Red flags
A numbered list you can read against the transcript: urgency, fear tactics, PII
harvesting, no opt-out, no identification, pressure for verbal authorization.
TCPA comment
A plain-language note on telemarketing-compliance risk for that call. The stakes are
statutory, $500 to $1,500 per illegal call under the TCPA, uncapped in total
(what one illegal call costs; see
TCPA penalty prevention), so the note is
on every analyzed call rather than in a quarterly audit. It is a reading of the conversation, not
a legal determination.
Title, summary, keywords and language
A one-line headline, a short summary, extracted keywords and the detected language.
Detection is automatic: English, Spanish, French or anything else spoken on the call
gets the same analysis, with nothing to configure.
Two limits
Calls shorter than the configured minimum are marked skipped,
not analyzed. Codecs outside G.711, G.722, G.729 and G.723.1 (Opus, GSM, AMR, dynamic
payload types) are not decoded today. Such a call is relayed and billed normally, but records
unsupported_codec instead of a transcript.
Each call records whether its speech-to-text and analysis stages ran on the server
or against a cloud API. We publish no accuracy figure. None has been measured
against a labelled corpus. What we have measured is available on request.
Group 2: the response
Acting on a verdict
An automation rule blocks or diverts the flagged number's next call, an alert goes to
e-mail or Slack, and a case or a signed webhook carries it further. In standard mode the
enforcement lands on the next call, because the verdict exists once the call has ended.
Rules act the moment an analysis lands. This live one blocks the caller for 24 hours at 90% probability.Automation, alerts, cases, webhooks and support
Automation rules on the ANI
A rule reads like a sentence: when probability is at or above a threshold and the
recommendation is one you chose, block that calling number or divert it, for a window
you set or permanently. The control applies at authorization, before routing, so a
blocked ANI gets SIP 403 and shows in the CDR as
blocked_by_rule. A controlled-numbers table lists every
active control with its reason and expiry. One action releases it.
Alert rules: e-mail and Slack
Rules match on minimum probability, category and recommendation, or on call quality,
when the call's estimated MOS is at or below a ceiling you set, or on either. They
deliver by e-mail to up to ten addresses, to a Slack channel in your own workspace, or
both, throttle repeats and can attach the transcript. Every account is seeded with one
enabled rule, probability 90 or above with a block
recommendation, so the first dangerous call reaches you before you configure anything. Every
attempt is recorded as sent, failed or skipped.
How Slack alerts work.
Fraud cases
Open a case from the call detail, title pre-filled from the analysis. Set severity,
assign it to a user on your account, and work it through open, in review, resolved or
dismissed with a comment thread. Creation, assignment and comments e-mail the people
involved.
Webhooks
A completed analysis is POSTed to your endpoint, signed
HMAC-SHA256 in X-OVS-Signature,
with an X-OVS-Delivery id for idempotency. The payload
carries call metadata, captured headers and the analysis, so you can drive your own
switch from it.
Support from inside the portal
A question, a problem, a feature you want, or a verdict you disagree with: open a
ticket under Support, or press Report analysis on the call itself and the
call comes attached, so a person can listen to it and check the verdict against the
recording. Replies land in the portal and in your inbox, and the thread stays with
the ticket.
Group 3: the evidence
What you can hand to someone else
Every analyzed call keeps its recording, per-channel transcript, SIP ladder and raw
pcap beside the verdict, and leaves the platform three ways.
Evidence artefacts per call and how each leaves the platform.
Artefact
Contents
How you get it
Recording
Stereo WAV, caller on one channel and callee on the other
Player in the call detail, or streamed download
SIP ladder
The traced SIP messages of that call, timestamped with direction
Diagnostics card, plus a .txt download
Media pcap
The media capture(s), zipped when the call had several legs
GET /calls/<id>/pcap
Analyst bundle
Self-contained HTML report, JSON, transcript, WAV, SIP log and pcaps
One .zip from the call's action menu
Shared link
Read-only verdict, red flags, transcript and audio, nothing else
A URL and a generated password
The analyst bundle, share links and cases
The SIP ladder in the call detail: every message timestamped with its direction, and any entry expands to the full SIP detail. The whole trace downloads as .txt, the media capture as .pcap.Playback on the call page itself, stereo, caller left and callee right, at up to 2×, and the same WAV downloads for offline review.
The offline analyst bundle
One action produces a single .zip that opens days later with no
account, network or tooling. The report inside is self-contained (inline CSS, with no
scripts, web fonts or remote images) and prints cleanly. Anything retention has already
deleted is listed as a noted omission, not silently missing.
Shareable read-only call links
Share one call with a client, a carrier or an investigator without giving them an account.
The platform generates the password, twelve characters, grouped for reading aloud, no
ambiguous glyphs, and shows it once. A link expires in 24 hours, 7 days, 30 days or never,
can be revoked or rotated, and records how often it was opened. The shared page omits
routing internals, the SIP log and the pcap.
Creating a share link. The password is generated for you and shown once. It is stored hashed, so it can be rotated but never re-displayed. One button copies the link, password and expiry as a message you can paste into e-mail or WhatsApp.A case attaches the call and its verdict, assigns a reviewer, and keeps the discussion beside the evidence.
On every call
Call quality on every record
The capture that makes the recording also measures the call: estimated MOS, jitter,
packet loss and post-dial delay per leg, with no probes or extra taps.
Estimated MOS on the Calls table: green at 4.0 and above, amber from 3.5, red below, with jitter and loss a hover away.What is measured and where it shows
The same media capture also yields the call's transport quality: an estimated MOS
(E-model), jitter and packet loss, measured per leg at decode time. The worst leg is a
column on the CDR, the call detail shows caller and callee side by side, and the alert
email quotes it beside the verdict. It needs no probes or extra taps, because the capture
you already have is the measurement, and route-quality trends build up call by call.
The signalling is on the record too: the negotiated codec, post-dial delay to ringing and
to answer, whether early media arrived before the answer, and who hung up, with the Q.850
cause when the party sent one. Together they place a bad call on one side of the relay
and one stage of its life, without opening a single trace.
Group 4: the route
Route integrity: false answer supervision
The caller is not the only party who can defraud you. A route that answers on ringback,
or swaps the callee for a recording to keep minutes billing, gets a route alert beside the
verdict. How FAS detection works.
The route alert as an operator sees it: confidence, the second the callee leg switched to playback, the quoted loop, and which vendor to pull. The caller verdict below it stays independent.How the alert is raised, and sampling
A route alert beside the verdict
The analysis checks the callee channel for a mid-call switch from interactive
conversation to looping or non-responsive playback, the delayed-playback form of
false answer supervision, where a vendor answers legitimately and later swaps the
callee for a recording to keep minutes billing. A call showing that switch carries a
route alert, distinct from the caller verdict, recommending the vendor serving that
route be taken out of rotation.
Spot-check with a sample
Open Voice Shield is an ordinary SIP hop, so your dial plan can route a random share of traffic
through it, one call in ten or twenty, instead of everything. Each sampled call is
a complete evidence pack: recording, per-channel transcript, verdict,
pcap and SIP ladder.
How delayed-playback FAS detection works.
Caller ID delivery
CLI verification: prove what the route delivers
A check calls a number the platform holds in the country you pick, through your route,
with the caller ID you choose, and reports what arrived as data instead of a screenshot
from a test phone.
Results, schedules and hosting a number
A verdict with the evidence
Match, modified (format, prefix or digits, so you know whether a carrier normalised
the number or the route substituted it), withheld, missing, or not received when
the route took the call but nothing reached the number. Beside it: post-dial delay,
answer time, the SIP ladder and estimated audio quality of the call that carried the
test. You pick a country and never see the number.
On a schedule, with an alert
Repeat a check every few hours per route and country. A result other than match
raises the Caller ID check failed alert by e-mail, Slack or webhook, so a route that
starts stripping or rewriting caller ID is caught before your own customer
complains. Countries not yet covered can be requested from the same page.
How CLI verification works.
Host a number, earn per check
Coverage comes from real numbers in real countries, and the numbers can be yours.
Point a number you own at the platform, prove it with one phone call, and every
check that reaches it credits US$0.15 to your balance.
Host a number.
Group 5: the call path
SIP pass-through, IP authentication and routing
Open Voice Shield speaks standard SIP, so it is not tied to any switch
brand. Asterisk,
FreeSWITCH, 3CX, a Cisco CUBE, an AudioCodes or
Oracle SBC, a softswitch, a dialler, if it can
send an INVITE to a next hop, it can send
calls here. It needs no agent, SDK or proprietary trunk type. Point a standard
SIP route at the ingress and route it back out. Leaving is the same one-line change, so
there is no lock-in.
Platforms built on a CPaaS come too: Twilio, Telnyx and Jambonz each have a step-by-step guide.
The line inspector on a live call: the SIP ladder, post-dial delay, codec and both media legs, then the verdict after hangup.Authentication, routing, credit control, live monitoring and voice AI
Open Voice Shield is a SIP proxy with a media server anchoring the media, so it is
in the media path. That is how the call gets recorded. It is not a
B2BUA: the dialog is proxied, record-routed and relayed on.
IP whitelist authentication
Every INVITE is authorized by source IP against a per-tenant CIDR allow-list. There is
no digest auth or registration, and REGISTER is answered
403. An unlisted source, a suspended account, an exhausted
balance and a port limit each get their own SIP response code.
Prefix routing and tech prefix
Routing rules match a leading prefix of the dialled number, longest match first,
priority as tie-break. Each rule points at one of your destinations, which may carry a
tech_prefix prepended to the Request-URI user before relay.
With no rule: the whitelisted IP's destination, then the account default, then the
source IP.
Custom SIP header capture
Named headers on the initial INVITE are captured onto the call.
X-Customer-ID and X-Customer-Name
ship configured, in indexed CDR columns you can filter by. Other configured headers go
to a JSON map on the call, the webhook payload and the alert e-mail.
Credit cut-off by dialog timeout
The authorization response carries a max_call_seconds
computed from the prepaid balance. The proxy enforces it from the 200 OK and BYEs both
sides on expiry, so a call cannot outrun the money that pays for it. Re-INVITEs cannot
extend it.
Live call monitoring
Every ringing and answered call, live: ANI, dialled number, customer reference,
routing, elapsed time, remaining credit. A port-bank faceplate shows one LED per
licensed port. Click a lit port and a line inspector opens for that call: the SIP
ladder as the proxy traces it, post-dial delay and codec the moment they are known,
each media leg's packet rate, jitter, loss and reported MOS, and after hang-up the
pipeline and the verdict landing in the same panel. Administrators see all tenants,
with a per-customer summary.
Voice AI forwarding beta
A destination can be a voice AI agent reached as a SIP endpoint over TLS, so a
screened call goes to an agent instead of a human queue. Two providers today, xAI
and OpenAI, each with its own connection rules. An agent that challenges the call
gets its own digest credential, stored sealed on the destination. Beta: exercised
against test agents, and the agent leg is metered per second at a rate you can see
on the call record. How to route to one.
Everything a switch needs on one page: point a route at the trunk address, whitelist your source IP, and calls flow.Calls in progress, one indicator per licensed port. The table below carries the caller, the destination and how long each call has been up.
The same live view on a phone. The port bank and the in-progress calls fit a
390-pixel screen, so a duty engineer can check them without a laptop.
Group 6: the money
Billing, plans and pilots
Prepaid. A call is charged for its minutes, and its first analysis for one fee set by the
account's AI mode: Economy, Power or Max. Re-analysis is free, and every charge is a
ledger line. Live rates are on pricing.
Billing mechanics, AI modes and the dashboard
Billing mechanics. Live rates and bundle sizes are on pricing,
read from the plans API.
Mechanic
Behaviour
Usage
Per-minute rate with a plan-specific minimum billable duration, then per second.
Analysis fee
A flat charge when a call's first analysis completes. Re-runs are free.
AI mode
The account picks Economy, Power or Max, the tier sets the model class and
the analysis fee. Applies to new calls instantly. The CDR and the ledger line name
the tier each call was billed under. Live fees on pricing.
Bundles
A monthly plan with included minutes and concurrent ports. Overage at the plan rate.
Balance gate
An empty balance refuses the next call at authorization with SIP 402, and caps the current one.
Pilot
A time-boxed, optionally minute-capped free period. Ledger lines show $0.00 with the waived amount beside them. Billing resumes when it ends, never retroactively.
Ledger
Every charge, fee, top-up and adjustment is a line you can read and export.
The AI mode card on Billing: three tiers, one click to switch. Current fees are on pricing.Spend and risk on one screen, prepaid balance included. Every charge is a ledger line you can read.
Each call carries its own commercial line, with running totals for whatever filter the CDR
is showing.
Group 7: the account
Users, credentials and data control
Up to ten users per account, passkeys, API keys, a choice of storage region, retention
windows and scheduled backups.
Users, passkeys, API keys, storage, retention and backups
Multiple users
Up to ten users on an account, as owners or members. Owners invite, deactivate and
reactivate. An invited user gets a temporary password by e-mail and must change it at
first sign-in. The audit log records the acting user, not just the account.
Passkeys
WebAuthn passkeys as an optional second factor. Register one or more, name them, see
when each was last used, remove them. Removing the last turns two-factor off.
API keys and the REST API
Every screen in the portal is a documented REST endpoint. Keys are bound to the user
who minted them, revocable, and dead the moment that user is deactivated. The
API reference lists every customer endpoint.
Storage offload
Recordings and captures stay on our disk, or move to an S3-compatible bucket we
control after a set number of hours. Stored in Canada by default. An account can
choose the United States instead, for storage and for the media relay, and Europe or
another region on request (data location). Playback, download and export
work the same either way.
Retention
Independent retention windows for recordings, pcaps and SIP logs. Zero means keep
them. Expiry deletes the object, local or in the bucket. The call record keeps its
metadata.
Backups and restore
A scheduled gzipped database dump, written to a bucket or local disk at a time you
set, keeping the last N. Backups list size and date, can be taken on demand,
downloaded, and restored behind a typed confirmation.
See it on your own traffic
Whitelist your SIP server's IP, point a trunk at the ingress, place one call. The verdict
is in the console when the call ends.
No card is needed to create an account, and there is nothing to install. Need volume
pricing or a security review first?
Talk to us. Comparing vendors? Read how it compares with
VeriSwitch SmartShield and FraudCentral VoiceShield.