Overview of SipFlow Subsystem
mainSipFlow is the SIP signaling and RTP recording subsystem within rustpbx. It is responsible for capturing SIP/RTP packets and providing features such as signaling replay, WAV export from RTP, and media quality statistics.
It supports three primary operational modes:
- Embedded Mode: Integrated directly into
callrecordusing a batch writer and object pool. - Standalone Server Mode: Operates as a separate binary (
src/bin/sipflow.rs) receiving data via UDP and exposing an HTTP API (/flow,/media,/health). - Remote Cluster Mode: Uses a
RemoteBackendwhere nodes send data via UDP to a dedicated SipFlow cluster using Jump Consistent Hashing for node selection.