By employing pre-answering, FreeSWITCH can assign a provisional audio set up and then start DTLS and ICE negotiations before a person even answers the phone. Unfortunately, JsSIP does not natively support a pre-answering mechanism. So, our engineers forked JsSIP to add this functionality. This is how SIP.js was born. From there, we continued to expand the fork with projects such as InstaCall and GetOnSIP.
FreeSWITCH recently released a FlowRoute WebRTC Demo powered by SIP.js. FreeSWITCH has always been a crucial component of OnSIP's core architecture. Our signaling, user location, and routing all happen on our distributed SIP proxies, and we use FreeSWITCH as dedicated application servers to enable this complex process. This allows us to distribute applications such as conferencing and call parking across many FreeSWITCH instances for scaling and redundancy purposes. The unique ability of FreeSWITCH, coupled with our robust SIP.js stack, has allowed us to successfully innovate many WebRTC products.