# jssip

> The Javascript SIP library

Latest version **3.13.8** (published 2026-05-06) · MIT license · 0 weekly downloads

## Install

```sh
npm install jssip
pnpm add jssip
yarn add jssip
bun add jssip
```

## Health

**Score 55/100 (C)** — status: active.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 3.13.8 |
| Published | 2026-05-06 |
| First published | 2014-11-03 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 988.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2603 |
| Maintainers | ibc, jmillan |
| Keywords | sip, websocket, webrtc, node, browser, library |

## Links

- npm: https://www.npmjs.com/package/jssip
- Repository: https://github.com/versatica/JsSIP
- Homepage: https://jssip.net
- Issues: https://github.com/versatica/JsSIP/issues
- npm.io page: https://npm.io/package/jssip

## Dependencies (3)

- [debug](https://npm.io/package/debug.md) ^4.3.1
- [events](https://npm.io/package/events.md) ^3.3.0
- [sdp-transform](https://npm.io/package/sdp-transform.md) ^2.14.1

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 3.13.8 (latest) — 2026-05-06
- 3.13.7 — 2026-04-24
- 3.13.6 — 2026-03-10
- 3.13.5 — 2026-02-17
- 3.13.4 — 2026-02-06
- 3.13.2 — 2026-02-06
- 3.13.0 — 2026-02-04
- 3.12.0 — 2026-01-22
- 3.11.1 — 2026-01-09
- 3.11.0 — 2026-01-09
- 3.10.10 — 2026-01-08
- 3.10.9 — 2025-12-19
- 3.10.7 — 2025-12-19
- 3.10.6 — 2025-12-09
- 3.10.5 — 2025-12-09
- … 182 more at https://npm.io/package/jssip/versions

## README

[![][npm-shield-jssip]][npm-jssip]
[![][github-actions-shield-jssip]][github-actions-jssip]

<p align="center"><a href="https://jssip.net"><img src="https://jssip.net/images/jssip-banner-new.png"/></a></p>

## Overview

* Runs in the browser and Node.js
* SIP over [WebSocket](https://jssip.net/documentation/misc/sip_websocket/) (use real SIP in your web apps)
* Audio/video calls ([WebRTC](https://jssip.net/documentation/misc/webrtc)) and instant messaging
* Lightweight!
* Easy to use and powerful user API
* Works with Kamailio, Asterisk. Mobicents and repro (reSIProcate) servers ([more info](https://jssip.net/documentation/misc/interoperability))
* Written by the authors of [RFC 7118 "The WebSocket Protocol as a Transport for SIP"](https://tools.ietf.org/html/rfc7118) and [mediasoup](https://mediasoup.org)


## Website and Documentation

[jssip.net](https://jssip.net/)


## Install

```bash
$ npm install jssip
```


## Getting Started

The following simple JavaScript code creates a JsSIP User Agent instance and makes a SIP call:

```javascript
var socket = new JsSIP.WebSocketInterface('wss://sip.myhost.com');
var configuration = {
  sockets  : [ socket ],
  uri      : 'sip:alice@example.com',
  password : 'superpassword'
};

var ua = new JsSIP.UA(configuration);

ua.start();

// Register callbacks to desired call events
var eventHandlers = {
  'progress': function(e) {
    console.log('call is in progress');
  },
  'failed': function(e) {
    console.log('call failed with cause: '+ e.data.cause);
  },
  'ended': function(e) {
    console.log('call ended with cause: '+ e.data.cause);
  },
  'confirmed': function(e) {
    console.log('call confirmed');
  }
};

var options = {
  eventHandlers,
  mediaConstraints: { 'audio': true, 'video': true }
};

var session = ua.call('sip:bob@example.com', options);
```

Want to see more? Check the full documentation at https://jssip.net/documentation/.


## Online Demo

[tryit.jssip.net](https://tryit.jssip.net)


## Support

* For questions or usage problems please use [Github discussions](https://github.com/versatica/JsSIP/discussions).

* For bug reports or feature requests open an [Github issue](https://github.com/versatica/JsSIP/issues).


## Authors

#### José Luis Millán

* Main author. Core Designer and Developer.
* <jmillan@aliax.net> (Github [@jmillan](https://github.com/jmillan))

#### Iñaki Baz Castillo

* Core Designer and Developer.
* <ibc@aliax.net> (Github [@ibc](https://github.com/ibc))

#### Saúl Ibarra Corretgé

* Core Designer.
* <saghul@gmail.com> (Github [@saghul](https://github.com/saghul))


## License

JsSIP is released under the [MIT license](https://jssip.net/license).

[npm-shield-jssip]: https://img.shields.io/npm/v/jssip.svg
[npm-jssip]: https://npmjs.org/package/jssip
[github-actions-shield-jssip]: https://github.com/versatica/jssip/actions/workflows/jssip.yaml/badge.svg
[github-actions-jssip]: https://github.com/versatica/jssip/actions/workflows/jssip.yaml

---
_Source: https://npm.io/package/jssip · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
