-
Notifications
You must be signed in to change notification settings - Fork 847
New issue
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
Edge Missing Transceiver Property Errors #913
Comments
Does it still work in 6.4.x? https://github.com/otalk/rtcpeerconnection-shim hasn't seen many (released) changes in the adapter.js 7.0.0 version bump. This sounds like it is attempting to use writeMediaSection for a (rejected) datachannel mline which isn't supposed to happen. Does this come from createOffer or createAnswer? |
So the Edge client does call the createAnswer and while they are exchanging iceCandidates these errors happen (at least in my console logs). I tried with adapter versions 6.3.0, 6.4.0, 6.4.8 and am still getting these error messages. However, I also tried version 6.2.0 and did not get any error messages. |
I have a fix for the second error (above, thanks!) but can not reproduce the first one. |
Awesome I am glad you found a fix so quick! So the first error is only happening on Edge. I can get you a chrome-chrome webrtc-internals dump but I don't know how helpful it would be..? Let me work on getting up a simple example as well. |
Here is the chrome to edge webrtc-internals dump: Here is the chrome to chrome webrtc-internals dump: |
hrm... that looks pretty standard and the SDP answer is correctly rejecting the datachannel. Chrome to Edge was done with your local patches, right?
I've managed to reproduce that error message in a scenario where
the last call to pc.createOffer throws. See otalk/rtcpeerconnection-shim#178 |
The Chrome to Edge was done without my patch. I can do one with my patch if you want? So the flow on Edge is:
I did just resolve an issue in our code where our onNegotionationNeededEventHandler was firing and trying to create an offer while the peer was already in the process of creating an answer, but I was only getting that error on Chrome and Firefox. |
hrm... but this looks like you got an answer from Edge and that should not have happened if the error was thrown. 🤔 What is the |
So I am a little confused on where to find out the type argument in the code. Is it on the SDP that gets created by the createAnswer? Also if you fixed the 2nd issue it should resolve the first issue. As soon as I fixed the undefined references to the iceGatherer and dtlsTransport with my simple if statements I didn't get either error messages. |
Its in
interesting if making the event... those events should fire asynchronously so errors in there should not cause subsequent failures. |
Cool I did some logging of each parameter of that function call without my patch and I got that it got called twice with each type being answer (the dashes separate the calls): I am working also on the warning message about the end of candidates message. I saw you had posted on Stackoverflow about adding a null ice candidate in order for that to happen correct? |
v1.2.15 of https://www.npmjs.com/package/rtcpeerconnection-shim has a patch which should address this issue.
You have to send a signal from the peer when it gets to onicecandidate with event.candidate not being defined and then call addIceCandidate(null) |
should be fixed in v1.2.15 of rtcpeerconnection-shim, please reopen/holler if not |
Please read first!
Please use discuss-webrtc for general technical discussions and questions.
Note: If the checkboxes above are not checked (which you do after the issue is posted), the issue will be closed.
Versions affected
Microsoft Edge 42.17134.1.0
Microsoft EdgeHTML 17.17134
Chrome 70.0.3538.110 (Official Build) (64-bit)
adapter.js 7.0.0
Description
I just recently updated to version 7.0.0 and noticed I was getting some errors while trying to do video calls on Edge. These errors stop the ability for my code to clean up any peers using edge.
Here are the error messages:
I debugged the errors and found out that there are (see the attached error log) transceivers being added that don't have either the properties iceGatherer or dtlsTransport:
The lines that were having errors are: 2566, 2570, 3844, 3882, and 3883
Here are screen shots of some simple if statements I put around them to get the errors not happen:
Steps to reproduce
Expected results
There are no errors while connecting the video.
Actual results
There are errors that stop any other functionality like cleaning up peers.
The text was updated successfully, but these errors were encountered: