The cdcts SIP-based WebRTC JS library powers up your web application with the ability to make and receive phone calls directly in the browser.
Check out the library in action in this web dialer demo.
Looking for more WebRTC features, JSON-RPC support or need to quickly get spun up with a React app? cdcts also has a robust WebRTC SDK available as a separate npm module.
Install this package with npm:
$ npm install --save cdcts-sipjs
or using yarn:
$ yarn add cdcts-sipjs
Import CdctsDevice in the module where you need it.
import { CdctsDevice } from 'cdcts-sipjs';
let config = {
host: 'sip.cdcts.com',
port: '7443',
wsServers: 'wss://sip.cdcts.com:7443',
displayName: 'Phone User',
username: 'testuser',
password: 'testuserPassword',
stunServers: 'stun:stun.cdcts.com:3478',
turnServers: {
urls: ['turn:turn.cdcts.com:3478?transport=tcp'],
username: 'turnuser',
password: 'turnpassword',
},
registrarServer: 'sip:sip.cdcts.com:7443',
};
let device = new CdctsDevice(config);
let activeCall = device.initiateCall('1235556789');
activeCall.on('connecting', () => {
console.log("it's connecting!");
});
activeCall.on('accepted', () => {
console.log("We're on a phone call!");
});
See the CdctsDevice and cdctsCall for more details.
When working on the package directly, please use yarn instead of npm.
$ yarn build
# Or to watch for changes to files:
$ yarn start
$ yarn test
We use jsdoc-to-markdown to generate GitHub friendly docs.
$ yarn docs