2026年10月4日
Conferencing That Behaves: Rooms, REFER Joins and the Empty-Room Watchdog
Multi-party calling has a bad reputation because it's usually an IVR feature bolted onto a phone system: someone dials a magic number, everyone else fumbles with a PIN, and the room stays open forever after the last person leaves. RustPBX treats conferences as
阅读全文系列
RustPBX Basics
11 篇,从分机到 TLS,系统掌握 RustPBX。
- 01Call Forwarding — Always, When Busy, When No One Answers
- 02CDR — Every Call, Fully Explained
- 03Three Ways to Extend — HTTP Routing, Webhooks, and the RWI
- 04Extensions — From Zero to First Registration
- 05IVR — Menus, Schedules, and When to Go External
- 06Queues & ACD — Fairness, Priority, and the Overflow Ladder
- 07Recording — From Compliance Checkbox to Evidence System
- 08Reports — Answering the Boss Without a Data Team
- 09Hardening a Public PBX — the First 48 Hours
- 10TLS Everywhere — WebRTC, SIP, and Certificates That Renew Themselves
- 11Voicemail — Mailboxes That Manage Themselves
2026年10月4日Rust Telephony
Inside the Media Plane: Codecs, Fast-Path Relay and Audio You Control
The media plane is where a telephony platform earns its keep: pick the right codec, decide what gets transcoded, and manage every sound callers hear. RustPBX's media engine is shared by SIP, WebRTC, queues, IVR, and recording — one pipeline, one set of behavio
2026年10月4日SBC
One-Way Audio, Fixed: NAT, Multi-WAN and EIP Media Routing
"Outbound calls have no audio, inbound is fine." If you've run SIP for a week, you've met this sentence. It's almost never the codec — it's address advertisement: the PBX told the far end an IP it can't reach. RustPBX separates the three addresses that SIP/Web
2026年10月4日Rust Telephony
Observability Without an Observatory: Metrics, Traces and Call Evidence
Observability shouldn't require standing up Prometheus, Grafana, and a log pipeline before you can answer "is it healthy?" — but it should scale to that when you're ready. RustPBX takes both seriously, and 0.5 added the middle ground: useful telemetry with zer
2026年10月4日Rust Telephony
Presence & Busy-Lamp: Knowing Who's Available Before You Dial
Presence looks trivial — "is this person on a call?" — until you try to make it consistent. Is an agent 'busy' because of a live call, a wrap-up state, or a DND toggle? Does a colleague on another PBX node see the same thing? And does the state survive a resta
2026年10月4日Rust Telephony
Recording That Passes an Audit: Exemptions, Retention and the Evidence Trail
Compliance recording isn't "turn recording on." It's being able to answer, months later, questions like: was this specific call recorded? why not? where is it now? can you produce it, and prove it wasn't altered? RustPBX's recording pipeline is built to make t
2026年10月4日Rust Telephony
RustPBX as a Cluster: One Voice Plane Across Many Nodes
Single-box PBX is easy. The hard part starts when you run two nodes and discover that "shared database" doesn't make phones work together: a call lives on exactly one node, registrations land wherever the load balancer sends them, and the console you're logged
2026年10月4日Rust Telephony
The RWI in Practice: One Socket for Events and Control
The RWI (Real-time WebSocket Interface) is RustPBX's control plane for external software: a command/event protocol over a single WebSocket that a CTI panel, CRM, or AI agent can hold open for the life of a shift. This is the practical guide — what the protocol
2026年10月4日SBC
SBC Interop: Topology Hiding, Header Hygiene and Carrier Checklists
Interconnecting with carriers is where good PBX software meets bad SIP. The other end has opinions: it rewrites numbers, rejects your codec order, sends private IPs in SDP, and insists on headers you've never heard of. A session border controller exists to abs
2026年10月4日Rust Telephony
SipFlow Deep Dive: Signaling Capture That Scales to Clusters
When a call misbehaves, the CDR tells you what happened and the media counters tell you how it sounded. Neither tells you exactly what was on the wire. For that you need packet-level signaling — captured continuously, indexed by call, queryable weeks later, an
2026年10月4日AI Customer Service
Step IVR, End to End: When Menus Aren't Enough
Static IVR trees handle "press 1 for sales." They don't handle "look up this caller's open tickets, read the balance, and route on both." Step IVR hands each call step to your own service, which answers with the next action — dynamic logic with the PBX still o
2026年10月4日AI Customer Service
Transcription Built Into the Call Path: Plans, Live Streams and Wrap-Up Notes
Transcription is usually bolted on after the fact: record the call, upload it somewhere, run ASR, reconcile the text back to the call id by filename. It works until someone asks "what did the customer say during the call?" RustPBX puts transcription in the cal
2026年10月4日Rust Telephony
Who Can Touch What: Users, Roles, Departments and API Tokens
"Who can see the billing page?" sounds like a one-line question. Answering it in a PBX means distinguishing four very different identity concepts that other platforms happily blur together. RustPBX keeps them separate, and knowing the difference prevents most
2026年10月4日WebRTC
WebRTC Calling Without the Science Project: Browsers as First-Class Endpoints
Hand someone a browser and a headset and they're on the phone — no install, no VPN, works from a hotel lobby. That's the promise of WebRTC telephony, and the part that usually turns into a science project is everything around the codec: ICE, STUN/TURN, certifi
2026年10月4日Rust Telephony
Why Rust for Voice: Performance You Can Plan Capacity Around
Performance posts usually end in a benchmark table nobody can reproduce. This one is about something more useful: the shape of the performance, so you can plan capacity without surprises — and know where the real limits are.
2026年10月3日Rust Telephony
It's 9 PM. Someone Calls Your Sales Line. What Happens?
Every business hits the same requirement in week one: calls arriving outside business hours need a story. Not a busy tone, not an infinite ring — a story. Maybe a voicemail box, maybe an emergency escalation for VIPs, maybe a "we're closed, back at 9" prompt i
2026年10月3日AI Customer Service
Adding an AI Voice Bot Without Rewriting Your IVR — and Handing Off to Humans Cleanly
The requirement behind half the AI-telephony pitches: "let an LLM answer the simple calls, and hand complex ones to a human — without throwing away the phone system we already run." Most stacks make you choose between a bolt-on bot platform (its own SIP island
2026年10月3日CRM Integration
Screen-Pop Done Right: CRM Records on the First Ring, Not After Transfer #3
"When a customer calls, we want their CRM record on the agent's screen before they answer." — the most common call-center integration request, and the one that breaks most often. The pop works on the first ring, dies on transfer #3, data sometimes never reache
2026年10月2日Call Center
Smarter Queues, Real Outbound Lines, and Reports That Match How CC Teams Think
A contact center lives or dies by two moments: what happens when there's no free agent, and what the supervisor sees when things go sideways. The latest RustPBX contact-center addon reworks both — plus a set of agent-facing features that close the gap between
2026年10月2日Rust Telephony
What's New in RustPBX 0.5: Clusters, Transfers, and Call-Level Truth
Three months of steady work went into RustPBX 0.5 — roughly two thousand commits since the 0.4.x series. The theme across all of them: when something goes wrong mid-call, the platform should already know why. This post walks through the changes that matter mos
2026年10月2日SIP
Wholesale Softswitch: Route Simulator, Multi-Match Routes, and Billing That Adds Up
Wholesale voice is a business run on spreadsheets and margins, so the platform running it should speak spreadsheet: exact route matches, predictable rounding, and a way to answer "why did this call route the way it did" without guesswork. The latest RustPBX wh
2026年6月2日Rust Telephony
Running a Call Center on RustPBX
A contact center is more than a PBX with queues. It needs skill-based routing to send calls to the right agent, real-time monitoring for supervisors, wrap-up time for agents to finish notes, and overflow logic to prevent callers from waiting forever. RustPBX's
2026年6月1日Rust Telephony
SipFlow: Call Signaling, Recordings, and Cluster Deployment
Debugging SIP calls usually means running tcpdump, downloading PCAP files, and opening Wireshark. It works, but it's slow, requires server access, and doesn't scale. SipFlow is RustPBX's built-in signaling capture system. It records every SIP message and RTP p
2026年5月31日Rust Telephony
Operations Made Easy: Archive, ACME, and Transcript
Running a telephony platform isn't just about connecting calls. Day-to-day operations involve renewing TLS certificates before they expire, archiving old call records so the database doesn't grow forever, and transcribing recordings for quality audits. RustPBX
2026年5月30日Rust Telephony
Privacy Numbers Made Easy with JSON-RPC Routing
Ride-hailing apps, delivery platforms, and marketplaces all share a common requirement: connect two parties on a phone call without revealing their real numbers. This is the classic privacy number (AX/NXA) use case. RustPBX's SBC addon includes a JSON-RPC rout
2026年5月29日Rust Telephony
Building a Simple SBC: Routes, Trunks, and WebRTC
Your team can call each other internally. Now you need to connect to the PSTN through a carrier, let customers call in from web browsers, and manage it all without spinning up a separate SBC appliance. RustPBX's SBC addon handles this in a single runtime -- no
2026年5月28日Rust Telephony
Configuring Extensions for Internal VoIP Communication
Every PBX starts with the same basic need: let people inside the organization call each other. Whether your team uses desk phones, softphones, or web browsers, it all comes down to configuring extensions and getting them registered. This post walks through set
2025年12月1日WebRTC
Rust vs Go: WebRTC Data Channel 性能基准测试
在实时通信的世界中,性能至关重要。WebRTC 已成为点对点音频、视频和数据传输的标准。虽然浏览器实现众所周知,但服务器端和原生实现对于构建可扩展的基础设施、网关和高性能客户端至关重要。 本文展示了一项性能基准测试,比较了三种著名的 WebRTC 实现,代码可在 restsend/rustrtc 获取: 1. RustRTC: 一个纯 Rust 实现的 WebRTC(被测项目)。 2. webrtc-rs: 最流行的 Rust 实现(Pion 的移植版)。 3. Pion: 业界标准的 Go 语言 WebRTC 实