Reduce signaling complexity
Route calls by tenant, account, profile, trunk, user, headers, and dialed identity from one rule model.
SIP server, media engine, rule engine, and CPaaS runtime
Session Router combines carrier-facing SIP routing, B2BUA dialog control, native RTP media handling, and webhook-driven CPaaS verbs in one server. It is built for teams that need call control close to the signaling path, not a detached application layer.
Why Session Router
Session Router is aimed at service providers, communications platforms, and voice teams that need to operate SIP traffic and expose higher-level call control without splitting responsibility across several products.
Route calls by tenant, account, profile, trunk, user, headers, and dialed identity from one rule model.
Anchor, bridge, play, synthesize, record, and stream audio where call behavior requires it.
Let applications drive live calls using HTTP webhooks and JSON CPaaS verbs.
Core engines
Session Router is organized around engines that each own a specific part of the voice path: routing decisions, SIP dialog state, media, CPaaS call control, queueing, and clustered operations.
Evaluates routing profiles and ordered rules to decide whether a call is allowed, rejected, routed to a local user, sent to a trunk, sent to a trunk group, proxied, or handed to a CPaaS application. It also supports sequential and parallel routing, crankback/reroute behavior, and ordered header manipulation with Store, Add, Modify, and Delete actions.
Handles SIP over UDP, TCP, TLS, WS, and WSS, with transaction matching, digest authentication, per-dialog worker serialization, linked-leg forwarding, glare handling, PRACK/100rel support, and call teardown.
Manages RTP/RTCP, DTLS-SRTP, SDES-SRTP, ICE/STUN for WebRTC legs, MRF playback, TTS audio injection, DTMF, recording paths, and bidirectional WebSocket media streaming.
Processes JSON verb arrays returned by application webhooks to answer, speak, play, gather input, dial, bridge, enqueue, redirect, stream, send DTMF, and send in-dialog SIP requests.
Places calls into named queues, tracks position and elapsed queue time, drives wait treatment through restricted verbs, and can hunt for the next available agent.
Provides a Postgres-backed admin API and UI, CDR storage, settings, node/controller cluster endpoints, configuration snapshots, and delta propagation for multi-node deployments.
SIP Server features
The SIP server layer handles the carrier and endpoint realities that application platforms often hide: registration, authentication, routing policy, trunk failover, media negotiation, and safe per-call concurrency.
UDP, TCP, TLS, WS, and WSS listener support for trunks, endpoints, and browser-oriented SIP stacks.
Digest authentication, registration rules, endpoint NAT handling, and registered-user routing.
Hierarchical rule sets can be scoped across tenant, company, account, profile, user, and trunk layers.
Route to carriers and grouped trunks with timeouts, failover behavior, crankback controls, and media options.
Match and transform SIP headers or request URI fields using ordered Add, Modify, Delete, and Store operations.
Support for RTP, SRTP modes, DTLS, ICE/STUN behavior, codec negotiation, and WebRTC-oriented media paths.
CPaaS features
CPaaS applications receive call events and return JSON instructions. Session Router then executes the verbs on the live SIP session, keeping application logic simple while the server owns the call state and media path.
Documentation split
The marketing website stays descriptive and benefit-led. The docs are separate static pages with low-level developer details, runtime behavior, examples, and implementation notes.