Peer connection interop testing #1668
-
As a follow up from Sean's FOSDEM talk today I for one would be very interested in any pragmatic way to allow interop testing between different RTC Peer Connection implementations. The library I work on has a C# implementation and I do occasionally test it with the Pion demo that uses a cut and paste of the SDP. If there was some agreed signaling approach that would encourage more frequent testing. A HTTP/REST or web socket mechanism would seem to be the most pragmatic so as to allow the same test to be run test from a browser. |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 9 replies
-
🔥 yes I would love to see this happen, I am ready to get it started.
@jlaine @shinyoshiaki @rainliu @metaclips I think this could be an amazing resource. Interested in getting involved/any input? I am happy to write the tests, would love your design reviews. @steely-glint what do you think? You know the big picture better then anyone else. I would like to follow your lead if possible :) I am happy to prototype/make a feature list etc... |
Beta Was this translation helpful? Give feedback.
-
Some progress to report. I've got 3 WebRTC Echo Test servers up and running:
I'm able to do basic sanity testing with both Links for the browser based test pages are available on sipsorcery.cloud (halfway down in the By getting the Echo Test servers to complete their ICE gathering before supplying an answer (the echo test is more concerned with interoperability rather than network discovery) the signaling can be reduced to a single HTTP POST. In javascript: this.sendOffer = async function (offer) {
return (await fetch(signalUrl, {
method: 'POST',
body: JSON.stringify(offer),
headers: { 'Content-Type': 'application/json' }
})).json();
} Again for those interested a POST request with a valid offer should get an SDP answer from the URL's below: https://sipsorcery.cloud/aiortc/echo/offer I don't know how far I'll get with further implementations but if anyone else already has a demo that's close to an Echo Test server I'd be interested to know about it. The adapted aiortc server demo is probably the most succinct Echo Test version to see what's involved. Note that I'm not trying to set up a centralised testing server or that sort of thing. I find it very handy to have apps using other WebRTC stacks that I can run locally during development rather than only testing against Browsers. |
Beta Was this translation helpful? Give feedback.
-
Not directly related to WebRTC, but there is a very cool setup for testing QUIC implementations against each other. The tests are run periodically via github actions: https://interop.seemann.io/ |
Beta Was this translation helpful? Give feedback.
https://github.com/sipsorcery/webrtc-echoes