Janus 1.x compatibility problem #10003
Labels
1. to develop
enhancement
feature: WebRTC 🚡
WebRTC connection between browsers and/or mobile clients
technical debt
Milestone
How to use GitHub
Is your feature request related to a problem? Please describe.
There is an incompatibility issue using HPB with Janus 1.x (multichannel version).
The signaling server negotiates a Janus data channel, but this channel is not named as expected by Talk.
With Janus 0.x (non-multichannel version) the only possible data channel is named "JanusDataChannel" but with the new 1.x (multichannel version) the channels have not a fixed label anymore.
Talk will keep using only one data channel between any two peers, but these channel is labeled "1" on Janus 1.x.
Because there can be more than one channel between peers, Janus use the channel number as label and these channel will always be labeled "1" on Talk app.
Describe the solution you'd like
As far as I could find out on the Talk code, there seems to be only two places where the data channel label is checked.
On line 232 of CallParticipantModel.js and on line 1591 of webrtc.js:
https://github.com/nextcloud/spreed/blob/6714e9b73d888c16a23049703ca812918825da6b/src/utils/webrtc/models/CallParticipantModel.js#L232C3-L232C3
https://github.com/nextcloud/spreed/blob/6714e9b73d888c16a23049703ca812918825da6b/src/utils/webrtc/webrtc.js#L1591C3-L1591C3
If you add "1" as a possible label of the data channel Talk will recognize the channel as valid and will understand the messages coming from it.
Describe alternatives you've considered
As Meetecho considers Janus 0.x as "legacy", sooner o later they will stop maintaining that branch so I think that this fix will be needed then.
Additional context
meetecho/janus-gateway#2566
The text was updated successfully, but these errors were encountered: