3 ms·
The issue with webrtc is once you step out of the side-project domain, you have to confront the endless implementation differences between browsers, whether it'
by zumachase 6y ago
The issue with webrtc is once you step out of the side-project domain, you have to confront the endless implementation differences between browsers, whether it's undocumented SDP behavior, different codecs, non-conformant behavior for low level calls, etc.
We've built a push-to-talk walkie talkie system called Squawk[0] which holds long lived webrtc connections in the background throughout the day. We use simplepeer[1] as the base to help bootstrap some of the browser shimming, but it's not perfect. So ultimately we've had to build all sorts of checks into our protocols like an audio keepalive where we send periodic frames (20ms) of silence down the media channel, and verify that we received some additional header bytes on the remote end, because otherwise webrtc would let the connections rot and you wouldn't know until you needed them which in a push-to-talk situation is too late.
[0] https://www.squawk.to https://www.squawk.to
[1] https://github.com/feross/simple-peer https://github.com/feross/simple-peer
- elk235 6y agoI am really interested in this and would love to read a technical blog post on how you built Squawk. Was it in Electron? Especially, how do you maintain all connections so users can listen to all channels at once.
- gurjeet 6y agoI loved the idea and interface etc. so I registered and downloaded the app. But upon launching, my corporate (ge.com) proxy blocked it: Not allowed to browse Newly Registered Domains category URL: https://app.squawk.to/ This is perhaps because your whois records are bare minimum! $ whois squawk.to Tonic whoisd V1.1 squawk noah.ns.cloudflare.com squawk kim.ns.cloudflare.com You might want to look into that. Also, to increase adoption, perhaps give the users a link to directly use the app.squawk.to URL to use as well. I tried that on my personal device and it works as advertised.