From dc6e87693802acd0dffdf5b4257c56737afd02c5 Mon Sep 17 00:00:00 2001 From: zarazaex69 Date: Tue, 14 Apr 2026 01:25:33 +0300 Subject: [PATCH] feat(jazz): add protobuf-style packet encoding and decoding --- internal/provider/jazz/peer.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/internal/provider/jazz/peer.go b/internal/provider/jazz/peer.go index d163674..555768e 100644 --- a/internal/provider/jazz/peer.go +++ b/internal/provider/jazz/peer.go @@ -186,6 +186,7 @@ func (p *Peer) sendJoin() error { func (p *Peer) setupDataChannelHandlers(dcReady chan struct{}) { p.dc.OnOpen(func() { + logger.Verbosef("[Jazz] Publisher DC opened: %s", p.dc.Label()) p.wg.Add(1) go func() { defer p.wg.Done() @@ -195,13 +196,14 @@ func (p *Peer) setupDataChannelHandlers(dcReady chan struct{}) { }) p.dc.OnClose(func() { + logger.Verbosef("[Jazz] Publisher DC closed") if !p.closed.Load() { p.queueReconnect() } }) p.dc.OnMessage(func(msg webrtc.DataChannelMessage) { - logger.Verbosef("[Jazz] Received %d bytes on DataChannel", len(msg.Data)) + logger.Verbosef("[Jazz] Received %d bytes on publisher DC", len(msg.Data)) if p.onData != nil && len(msg.Data) > 0 { p.onData(msg.Data) } @@ -209,8 +211,12 @@ func (p *Peer) setupDataChannelHandlers(dcReady chan struct{}) { p.pcSub.OnDataChannel(func(dc *webrtc.DataChannel) { logger.Verbosef("[Jazz] Received subscriber DataChannel: %s", dc.Label()) + if dc.Label() != "_reliable" { + return + } + dc.OnMessage(func(msg webrtc.DataChannelMessage) { - logger.Verbosef("[Jazz] Received %d bytes on subscriber DC", len(msg.Data)) + logger.Verbosef("[Jazz] Received %d bytes on subscriber DC (_reliable)", len(msg.Data)) if p.onData != nil && len(msg.Data) > 0 { p.onData(msg.Data) }