After years of wishing and waiting, Apple has announced WebRTC support coming in the fall to Safari 11 for macOS High Sierra and Safari for iOS 11.
Since the announcement and subsequent availability of Safari Technology Preview 32, we have made a few tweaks to the IceLink JavaScript SDK and are pleased to announce that Safari is now officially supported, as of IceLink 3.0.13 and 2.9.27!
The WebKit implementation is refreshingly stable and robust. We are still running tests, but our first impressions are very positive, which speaks volumes to the work put in by the WebKit development team.
Incidentally, the only significant complication in adding support arose from the fact that the implementers included some next-gen features from the WebRTC-NV roadmap. These resulted in IceLink incorrectly identifying Safari as an ORTC browser (a la Edge) and taking it down a path designed to work around quirks unique to Microsoft’s ORTC implementation.
A minor tweak to the type detection was all it took to send Safari down the proper WebRTC code path.
As you might expect, we will no longer be releasing an official IceLink 3 plugin for Safari. The adoption rate for new versions of macOS and iOS are high enough, and the plugin-free experience desirable enough, that any effort here would be a waste. Especially when we can better direct our attention towards improving congestion control and statistics.
Leading up to the public release of Safari 11, we will be continuing to test and address any issues that arise. Any complications will be announced here on our blog and in our support forums.
If you experience any issues during your own testing, please contact our support team who are more than happy to help.