Call transfer and segment handling

When a call is transferred, Alianza initiates a new SIPREC session for the post-transfer segment.

Session teardown. Alianza does not send a BYE to terminate the prior SIPREC session before starting the new one. This behaviour is expected to change in a future release.

Item Behaviour across segments
SIPREC SIP dialog New INVITE with a new Call-ID per segment.
XML session_id New value per segment.
XML participants Updated to reflect the new call parties.
X-Alianza-Recording-Session-Id header Stable across all segments — use this to group segments into a single logical call.

Hold, resume, codec changes

Mid-call changes such as hold/resume or codec negotiation are handled via re-INVITE within the existing SIPREC session — Alianza does not send a BYE and start a new session for these events.

If your SRS does not support mid-call re-INVITE, flag this during onboarding (see Before you start) so your integration can be configured accordingly.

Joining segments into a single recording

If you store one file per SIPREC session today, expect multiple files per logical call when transfers occur. The X-Alianza-Recording-Session-Id is the only stable identifier across segments — use it as the join key in your storage layer.