We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
parseIceServers
The RTCIceGatherer's ice server config has undefined value for each key:
RTCIceGatherer
undefined
https://github.com/shinyoshiaki/werift-webrtc/blob/develop/packages/webrtc/src/peerConnection.ts#L485
{ stunServer: undefined, turnServer: undefined, turnUsername: undefined, turnPassword: undefined }
I think this happens as the parseIceServers util (https://github.com/shinyoshiaki/werift-webrtc/blob/develop/packages/webrtc/src/peerConnection.ts#L485) tries to use the .includes("turn:") and .includes("stun:") on arrays.
.includes("turn:")
.includes("stun:")
So we have this function call in the utils.ts:
utils.ts
const turnServer = url2Address( iceServers.find(({ urls }) => urls.includes("turn:"))?.urls.slice(5), );
where the iceServers looks like this:
iceServers
[ { url: 'turn:turn-myturnserver.com:443', urls: ['turn:turn-myturnserver.com:443'], username: 'username', credential: 'creds=' } ]
If we inspect the url2Address parameter:
url2Address
iceServers.find(({urls}) => urls.includes("turn:"))
We can see that it runs the includes() fn on an array, not on a string.
includes()
['turn:turn-myturnserver.com:443'].includes("turn:")
This is always false, therefore the find() won't find any turn: in this case.
find()
turn:
I assume a nested find() function would fix this issue.
The text was updated successfully, but these errors were encountered:
As I see urls can be a string or an array of strings:
urls
urls This required property is either a single string or an array of strings, each specifying a URL which can be used to connect to the server.
So the current implementation is also correct, but not 100% complete as it does not handle the array of strings.
Sorry, something went wrong.
I will eventually fix it, but PullRequests are also welcome
No branches or pull requests
The
RTCIceGatherer
's ice server config hasundefined
value for each key:https://github.com/shinyoshiaki/werift-webrtc/blob/develop/packages/webrtc/src/peerConnection.ts#L485
I think this happens as the
parseIceServers
util (https://github.com/shinyoshiaki/werift-webrtc/blob/develop/packages/webrtc/src/peerConnection.ts#L485) tries to use the.includes("turn:")
and.includes("stun:")
on arrays.So we have this function call in the
utils.ts
:where the
iceServers
looks like this:If we inspect the
url2Address
parameter:We can see that it runs the
includes()
fn on an array, not on a string.This is always false, therefore the
find()
won't find anyturn:
in this case.I assume a nested
find()
function would fix this issue.The text was updated successfully, but these errors were encountered: