Commit Graph
3 Commits
Author SHA1 Message Date
Zoltán Papp b1098cad94 [client] Route Pion ICE events through the peer event loop
Queue Pion state, candidate and selected-pair notifications together with ICE dial results. Move worker state updates to the peer event loop and expose atomic snapshots to signaling and the reconnection guard.

Keep the existing session ownership checks and disconnect behavior. Release dial results when the mailbox cannot deliver them.
2026-09-10 03:08:00 +02:00
Zoltán Papp c31f73cfbd [client] Merge main into peer event bus refactor 2026-09-10 01:48:41 +02:00
Zoltan Papp 99fbd19865 [client] Move ICE and relay workers into the worker package
Relocate WorkerICE (renamed worker.ICE) and WorkerRelay plus ConnPriority
into client/internal/peer/worker. To break the peer<->worker cycle the
workers no longer take *Conn or ConnConfig: callbacks are passed as plain
functions (Conn's unexported methods as method values), and each worker
receives only the fields it needs (key, ICE config, isController) plus a
small services struct. Context is passed to OnNewOffer instead of stored.

Move the worker connection-status helper the other way, out of the worker
package into peer as worker_status.go (WorkerStatus / AtomicWorkerStatus),
since only Conn uses it.
2026-08-05 16:14:11 +02:00