JsSIP
![]() | |
Initial release | 2011 |
---|---|
Stable release | 3.4.3
/ April 22, 2020[1] |
Repository | github |
Written in | JavaScript |
Type | WebRTC |
License | MIT |
Website | jssip |
JsSIP is a library for the programming language JavaScript. It takes advantage of SIP and WebRTC to provide a fully featured SIP endpoint in any website. JsSIP allows any website to get real-time communication features using audio and video. It makes it possible to build SIP user agents that send and receive audio and video calls as well as and text messages.[2]
General features[]
- SIP over WebSocket transport
- Audio-video calls, instant messaging and presence
- Pure JavaScript built from the ground up
- Easy to use and powerful user API
- Works with OverSIP, Kamailio, and Asterisk servers
- SIP standards
Standards[]
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
Interoperability[]
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:
WebRTC web browsers[]
At the (audio calls), JsSIP version 0.2.0 works with Chrome browser from version 24. At the (SIP protocol), JsSIP runs in any WebSocket capable browser.
License[]
JsSIP is provided as open-source software under the MIT license.[3]
References[]
- ^ "Releases". versatica/JsSIP. JsSIP. Retrieved 2 February 2017 – via GitHub.
- ^ "WebRTC:How and Why?" (PDF). FRAFOS. 12 January 2015.
- ^ "JsSIP License".
External links[]
- JavaScript libraries