Currently, when a polyfill is used, browserSupportsSpeechRecognition will always be true. However, while polyfills will be widely supported across browsers, there are exceptions like Internet Explorer that don't support standards like MediaStreams. As per the POLYFILLS.md doc, the burden is on the consumer to check for this browser support. This library should pick up that burden.
A quick win to avoid broken experiences on Internet Explorer is for browserSupportsSpeechRecognition to check for the presence of common APIs used by polyfills. I need to identify what the best proxy for these APIs is - i.e. what object to look for in the window. To do that, I'll need to get a handle on all the web APIs that are required to make a Speech Recognition polyfill (WebRTC API, Media Streams API, etc).
Currently, when a polyfill is used,
browserSupportsSpeechRecognition
will always betrue
. However, while polyfills will be widely supported across browsers, there are exceptions like Internet Explorer that don't support standards likeMediaStreams
. As per thePOLYFILLS.md
doc, the burden is on the consumer to check for this browser support. This library should pick up that burden.A quick win to avoid broken experiences on Internet Explorer is for
browserSupportsSpeechRecognition
to check for the presence of common APIs used by polyfills. I need to identify what the best proxy for these APIs is - i.e. what object to look for in thewindow
. To do that, I'll need to get a handle on all the web APIs that are required to make a Speech Recognition polyfill (WebRTC API, Media Streams API, etc).