Client support of safari 13 on iphone

I spent a some time trying to figure out why iphone was not prompting for the camera and microphone prompts. I then went to https://v3demo.mediasoup.org/?roomId=rvgkjcfm and realized that the device is not supported.

Is there any plans to support iphones with this version of safari?

I am using the ‘latest’ from npm on both mediasoup client and server for my application.

What’s the output for navigator.userAgent from browser console?

The original image was taken from my friends iphone. Will get the specific user agent tomorrow. Below are specs from my ipad.

I do have an ipad at my fingertips that seems to have similar behavior with the user agent
Mozilla/5.0 (iPad; CPU OS 12_1_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1

My ipad will load the page, prompt for audio, but not video, and then never shows or receives video. The ipad looks to be safari 12.

In my application, the iphone and the ipad have the same behavior. In the media soup demo, the behavior is as described. Is there a special mechanism/behavior to be aware of on apple-based devices? I have set the client-side trigger for creating the mediasoup device on an onclick event. Is there more required than starting the video/audio capture off of a user-event?

You’re mixing two things here, let’s discuss the safari 13 - Iphone (device not supported) issue here.

If you have a different concern open a new topic please.

1 Like

Will do. Thanks. Ill post back here when I have the user agent for the iphone.

Whew! This was a bit of a rabbit hole, but I got it sorted I believe. Not mediasoup at all, but hopefully I can ease the pain of the future when someone hits this area.

In development mode for my project I was making exceptions for ssl manually. I clicked the button that adds a certificate exception when it warns that the page may be unsafe. This is normally fine, unless you are doing this with websockets, on apple/safari type systems. I am using websockets for my signaling. Turns out unless you have the IP address of your development server in the SSL certificate as the CN, it wont be allowed to connect, despite having manually allowed it. Putting the LAN IP address solved it for now… In the end, I should be using localhost, as it doesn’t need ssl to getusermedia etc.

In short, this wasn’t a mediasoup problem, this was an issue between my ignorance of safari process when it comes to ssl and what I had setup. No useragent string, as it wasn’t even about that. Thank you for helping isolate my issue though.

1 Like