DoubangoTelecom / sipml5

The world's first HTML5 SIP client (WebRTC)
BSD 3-Clause "New" or "Revised" License
935 stars 455 forks source link

Running sipml in browser in virtual machine or Docker container (missing microphone problem) #346

Closed tometchy closed 3 years ago

tometchy commented 3 years ago

Hi, thanks for creating this great library, we use it in our app.

Recently we encountered problem - Sipml returns Busy if microphone is not connected to computer. This is problem for us, because we would like to answer call in automated test running in selenoid and there is no way to connect microphone to this Docker container, which is hosted in virtual machine of our CI pipeline. The error is:

MediaStreamError { name: "NotFoundError", message: "The object can not be found here.", constraint: "", stack: "" }

For better context I will show how our UI test scenarios looks like (this is CodeceptJS btw):

I.amOnPage('/telephone');

I.call("601", "962"); // 601 number calls 962 number which is used by Simpl in browser

I.see("New call coming");

What can we do to allow Simpl to work like everything is fine, when microphone is not conneted?

tometchy commented 3 years ago

I still don't know how to run Sipml without microphone (for example in virtual machine), but for me this problem is no longer blocking, because newer Firefox versions for Selenoid support fake microphone, so Simpl works.

Screenshot from selenoid/vnc:firefox_68.0: microphone_in_selenoid_firefox

So I close this issue.