1.0.19 • Published 1 year ago

@khateeb00/react-jssip v1.0.19

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

JsSIP

Overview

A library built on jssip to support single and multiple audio calls on react and react-native frameworks.

  • Runs in the browser and mobile application(React Native).
  • SIP over WebSocket (use real SIP in your web and mobile apps)
  • Only audio calls supported currently (WebRTC)
  • Lightweight!
  • Easy to use and powerful user API
  • Works with OverSIP, Kamailio, Asterisk. Mobicents and repro (reSIProcate) servers (more info)

Peer dependency for mobile applications

Install react-native-webrtc

Getting Started

npm: npm install @khateeb00/react-jssip react-native-webrtc --save

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

// Create our JsSIP instance and run it:

import Sip from '@khateeb00/jssip'

Sip.register({
  'websocket': 'wss://sip.myhost.com:8080',
  "username": "alice",
  "domain": "alice@example.com",
  "password": "superpassword",
  "name": "Alice",
})

// Register callbacks to desired call events

// type of call events 'call_received','call_terminated', 'call_accepted','call_updated'
// It returns an object with remove function to remove the listener.
const eventhandler = Sip.on(call_events,() => listener())
//to remove listener
eventhandler.remove()

Android Installation

In android/app/main/AndroidManifest.xml add the following permissions before the <application> section.

<uses-feature android:name="android.hardware.audio.output" />
<uses-feature android:name="android.hardware.microphone" />

<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.INTERNET" />

iOS Installation

Navigate to <ProjectFolder>/ios/<ProjectName>/ and edit Info.plist, add the following lines.

<key>NSMicrophoneUsageDescription</key>
<string>Microphone permission description</string>
1.0.19

1 year ago

1.0.18

1 year ago

1.0.17

1 year ago

1.0.16

1 year ago

1.0.15

1 year ago

1.0.14

1 year ago

1.0.13

1 year ago

1.0.12

1 year ago

1.0.11

1 year ago

1.0.10

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago