Glimesh / janus-ftl-plugin

A plugin for the Janus WebRTC gateway to enable relaying of audio/video streams utilizing Mixer's FTL (Faster-Than-Light) protocol.
https://hayden.fyi/posts/2020-08-03-Faster-Than-Light-protocol-engineering-notes.html
GNU Affero General Public License v3.0
44 stars 11 forks source link

Edge nodes should keep track of orchestrator channel subscriptions instead of relying on active streams #108

Open haydenmc opened 3 years ago

haydenmc commented 3 years ago

Stale FtlClient relay connections may still exist even after a channel subscription is removed, causing the Edge node to potentially send extra unsubscribe events.

See here: https://github.com/Glimesh/janus-ftl-plugin/blob/9315b8b045f584e3cfc7e4c65ac761275c679947/src/JanusFtl.cpp#L765

Solution: Edge needs to keep track of its subscriptions, and not just unsubscribe/subscribe based on active streams