Puneet Varma (Editor)

JsSIP

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
JsSIP Project

Development status
  
Active

Operating system
  
Cross-platform

Stable release
  
3.0.1

Written in
  
JavaScript

JsSIP

Initial release
  
2011; 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.

Contents

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
  • 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.

    References

    JsSIP Wikipedia