Developer(s)JsSIP Project Development statusActive Operating systemCross-platform
Stable release3.0.1 Written inJavaScript
Initial release2011; 6 years ago (2011)
JsSIP is a simple to use library for the programming language JavaScript which takes advantage of latest developments in SIP and WebRTC to provide a fully featured SIP endpoint in any website. With JsSIP any website can get real-time communication features using audio, video and more with just a few lines of code. Using JsSIP it is possible to build SIP user agents that can send and receive audio and video calls, and text messages.
JsSIP implements the following SIP specifications:
RFC 3261 — SIP: Session Initiation Protocol
RFC 3311 — SIP Update Method
RFC 3326 — The Reason Header Field for SIP
RFC 3327 — SIP Extension Header Field for Registering Non-Adjacent Contacts (Path header)
RFC 3428 — SIP Extension for Instant Messaging (MESSAGE method)
RFC 4028 — Session Timers in SIP
RFC 5626 — Managing Client-Initiated Connections in SIP (Outbound mechanism)
RFC 5954 — Essential Correction for IPv6 ABNF and URI Comparison in RFC 3261
RFC 6026 — Correct Transaction Handling for 2xx Responses to SIP INVITE Requests
RFC 7118 — The WebSocket Protocol as a Transport for SIP
SIP proxies, servers
JsSIP uses the SIP over WebSocket transport for sending and receiving SIP requests and responses, and thus, it requires a SIP proxy/server with WebSocket support. Currently the following SIP servers have been tested and are using JsSIP as the basis for their WebRTC Gateway functionality:
FRAFOS ABC WebRTC Gateway
OverSIP
Kamailio
Asterisk
reSIProcate and repro
WebRTC web browsers
At the media plane (audio calls), JsSIP version 0.2.0 works with Chrome browser from version 24. At the signaling plane (SIP protocol), JsSIP runs in any WebSocket capable browser.
License
JsSIP is provided as open source software under the MIT license.