jssip-node-websocket

JsSIP.Socket interface for the Node.js based on the websocket module

Usage no npm install needed!

<script type="module">
  import jssipNodeWebsocket from 'https://cdn.skypack.dev/jssip-node-websocket';
</script>

README

jssip-node-websocket

JsSIP.Socket interface for Node.js based on the websocket module.

The aim of this module is to provide JsSIP with WebSocket support when running in Node.js.

Installation

$ npm install jssip-node-websocket --save

Requirements

  • jssip >= v2.0.0
  • Node.js >= v4.0.0

Usage

const JsSIP = require('jssip');
const NodeWebSocket = require('jssip-node-websocket');

let socket = new NodeWebSocket('wss://foo.example.com');

let ua = new JsSIP.UA(
  {
    uri          : 'sip:alice@example.com',
    password     : 'xxxxxxxx',
    display_name : 'Alice',
    sockets      : [ socket ]
  });

API

The module exports a NodeWebSocket class conforming with the JsSIP.Socket interface.

var socket = new NodeWebSocket(url, [options])

  • url (String): The WebSocket URL.
  • options (Object): An object with fields origin, headers, requestOptions and clientConfig matching the same meaning and format of the parameters given to the websocket.W3CWebSocket class constructor.

F.A.Q.

How to allow invalid TLS certificates?
var socket = new Socket('wss://foo.example.com',
  {
    origin         : 'https://www.example.com',
    requestOptions :
    {
      agent : new https.Agent({ rejectUnauthorized: false })
    }
  });

Author

IƱaki Baz Castillo (@ibc at Github)

License

ISC