transferbridge

package
v1.3.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 8, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package transferbridge wires two SIP media legs (protocol/sipmedia/session) after a signaling-only transfer (protocol/sip/transfer) completes.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

Manager tracks active two-leg bridges keyed by inbound or outbound Call-ID.

func NewManager

func NewManager() *Manager

NewManager creates an empty bridge registry.

func (*Manager) Active

func (m *Manager) Active(callID string) bool

Active reports whether callID participates in a bridge.

func (*Manager) MigrateOutboundCallID

func (m *Manager) MigrateOutboundCallID(inbound, oldOut, newOut string)

MigrateOutboundCallID rekeys bridge when SBC rewrites outbound dialog Call-ID.

func (*Manager) StartBridge

func (m *Manager) StartBridge(inbound, outbound *session.CallSession) error

StartBridge stops AI/media on both legs and bridges RTP (raw relay or PCM transcode).

func (*Manager) StopBridge

func (m *Manager) StopBridge(callID string)

StopBridge tears down the bridge containing callID.

type MediaCoordinator

type MediaCoordinator struct {
	Signaling *siptransfer.Coordinator
	Bridges   *Manager
	Lookup    SessionLookup
}

MediaCoordinator composes signaling transfer (sip/transfer) with media bridging.

func NewMediaCoordinator

func NewMediaCoordinator(sig *siptransfer.Coordinator, lookup SessionLookup, bridges *Manager) *MediaCoordinator

NewMediaCoordinator builds a coordinator with a fresh bridge manager when nil.

func (*MediaCoordinator) HandleDialEvent

func (m *MediaCoordinator) HandleDialEvent(evt outbound.DialEvent)

HandleDialEvent wires outbound dial events: REFER NOTIFY via signaling, bridge on established.

func (*MediaCoordinator) HandleDialogCallIDAdopted

func (m *MediaCoordinator) HandleDialogCallIDAdopted(oldID, newID, correlationID string)

HandleDialogCallIDAdopted rekeys the media bridge when outbound Call-ID changes.

type SessionLookup

type SessionLookup func(callID string) *session.CallSession

SessionLookup resolves media sessions by Call-ID.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL