This message was deleted.
# helpdesk
s
This message was deleted.
b
The server will be able to send Data but participants wont be able to send data.
n
for me, I do not want client to generate offer with data channel only first
b
I'm not aware if its possible to disable the data channel completely.
This is probably a @dry-elephant-14928 question.
n
I am trying to inter-operate LiveKit with other webrtc implementation that does not support data channel
d
Hey @narrow-eve-8333 currently we do require it.. but I'm definitely open to adding support for clients that don't have this capability. Which implementation are you trying to integrate with? if you don't mind me asking
n
Freeswitch 🙂
the work was on-hold in last several months, now I plan to pick it up
d
so the idea is having freeswitch speak to livekit server directly? while you'd handle signaling via a separate process?
n
I got Pion working with Freeswitch for a test tool
the idea is to introduce a middle man as signalling gateway between LiveKit and Freeswitch, but the media goes between LiveKit and Freeswitch directly
👍 1
only for audio 🙂
it would be great to have an option in the access token for example disableDataChannel.
d
right.. so what you are looking for is to prevent the server from opening up data channel to the client in the offer.
n
yeah
d
it is a bit tricky.. as for the "connection" to be established, we cannot send an empty offer.. the offer would have to contain something
we chose to use data channel as that placeholder.. since we do offer that capability anyways
n
when Freeswitch acts as a publisher, Freeswitch generated offer without data channel, I expect LiveKit does not add data channel in answer SDP
when Freeswitch acts as a subscriber, I expect offer from LiveKit does not have data channel in it
d
even if Freeswitch acts as a publisher, livekit would by default still establish a subscriber connection (as we consider that the primary connection to a participant)
the publisher side should work just fine.. because if the offer doesn't contain data channels.. neither will the answer.
n
when Freeswitch acts as a publisher, the token would be canSubscribe as false
I tested if the canSubscribe as false, there is
NO
peerconnection for subscriber
d
yeah, that's correct.. if subscribe perms aren't given, we do not negotiate a subscribe connection. so that side should work
n
yeah
the problem is when Freeswitch works as a subscriber
LiveKit first sends offer with only data channel in it
then adds audio/video in later offer/answer
d
right. if media is available, it should be able to send it down together.. if client protocol version can handle it
so that's worth a try.. I think we'd ignore it if datachannel isn't negotiated.
n
you mean if the answer does not have data channel. LiveKit is ok?
d
yeah I believe so. what protocol version do you pass in with your proxy?
n
I have not started writing code yet, still in design phase
another question, is it possible to specify which member the subscriber wants to subscribe in the access token?
for example, user B only wants to subscribe user A audio
d
no. that'd be a protocol message you'd send.
b
If I may add: https://docs.livekit.io/client/receive/#selective-subscription this documentation page might be worth going through.
n
the idea is, 1) Freeswitch joins a room 2) Freeswitch gets the list of participants in the room, 3) Freeswitch subscribes to one of the participants for example B in the room 4) LiveKit generates offer including one m line for B only
@dry-elephant-14928 and @brief-refrigerator-69901 can LiveKit support above flow?
d
it should be ok in theory.
n
thanks @dry-elephant-14928