From e8ea1045a2bdd9ee088f29be61a1e6f2eb2ebfc5 Mon Sep 17 00:00:00 2001 From: Zack Scholl Date: Tue, 19 Nov 2019 15:55:18 -0800 Subject: [PATCH] ping --- src/croc/croc.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/croc/croc.go b/src/croc/croc.go index 4ceeebcc..9ac25077 100644 --- a/src/croc/croc.go +++ b/src/croc/croc.go @@ -384,6 +384,7 @@ func (c *Client) CreateOfferer(finished chan<- error) (pc *webrtc.PeerConnection return nil } + var lastSignal = time.Now() var readyToBegin = false var readyToEnd = false var bar *progressbar.ProgressBar @@ -411,8 +412,8 @@ func (c *Client) CreateOfferer(finished chan<- error) (pc *webrtc.PeerConnection timeStart := time.Now() for { for { - time.Sleep(10 * time.Millisecond) - if readyToBegin { + time.Sleep(1 * time.Millisecond) + if readyToBegin && time.Since(lastSignal).Seconds() < 2 { break } } @@ -483,6 +484,7 @@ func (c *Client) CreateOfferer(finished chan<- error) (pc *webrtc.PeerConnection return } else if bytes.Equal(dcMsg.Data, []byte{2, 3, 4}) { // log.Debug("got ready to begin") + lastSignal = time.Now() readyToBegin = true return } else if bytes.Equal(dcMsg.Data, []byte{1, 3, 4}) { @@ -509,7 +511,10 @@ func (c *Client) CreateOfferer(finished chan<- error) (pc *webrtc.PeerConnection n, _ := fwrite.Write(fd.Data) bar.Add(n) - // sendData([]byte{2, 3, 4}) + if time.Since(lastSignal).Seconds() > 1 { + sendData([]byte{2, 3, 4}) + lastSignal = time.Now() + } } else { log.Error(err) }