sip/sip_user_agent library
Pure-Dart SIP user agent.
Implements the subset of RFC 3261 needed to interoperate with the dart-pbx server (see ../../../../lib/handlers/requests_handlers.dart):
- Transports: WebSocket (ws/wss) and UDP (RFC 3261 §18.1).
Selected automatically from the account's
serverUrischeme. - REGISTER with MD5 / qop=auth digest, expires negotiation, refresh.
- OPTIONS keep-alive (and answering inbound OPTIONS qualifies).
- MESSAGE (out-of-dialog).
- INVITE / 200 OK / ACK / BYE / CANCEL with a real G.711/RTP media
session (mic capture + μ-law/A-law encode + RTP send via the
pure-Dart packetizer under
audio/). - RFC 4028 Session Timers: Session-Expires / Min-SE negotiation, re-INVITE refresh at half-interval (when refresher = uac), hard-timeout BYE when refresher = uas and no refresh arrives, 422 Session Interval Too Small handling.
Classes
- SipAccount
- SipCall
- Snapshot of an in-flight or finished call exposed to the UI.
- SipTextMessage
- SipUserAgent
Enums
- CallState
- User-visible call lifecycle.
- RegistrationState
- User-visible registration state.