angular-webrtc-sipml

1.0.3 • Public • Published

Sipml5 webrtc for Angular

This is a Webrtc library for Angular based on Sipml5. In fact, It's a bridge between Sipml5 and Angular.

Installation

Install via npm

npm i angular-webrtc-sipml

Usage

import SIPmlWebRTC into your component

import SIPmlWebRTC from 'angular-webrtc-sipml';

Add the following tags into your html component (audio tags are used to play voice call)

<audio id="audio_remote" autoplay="autoplay"></audio>
<input type="button" class="btn btn-success" id="btnRegister" value="LogIn" (click)='sipRegister();' />
<input type="button" class="btn btn-success" id="btnCall" value="Audio Call" (click)="sipCall('call-audio')" />
<input type="button" class="btn btn-success" id="btnHangup" value="Hang Up" (click)="sipHangUp()" />
<input type="button" class="btn btn-danger" id="btnUnRegister" value="LogOut" (click)='sipUnRegister();' />

Then, you need to login or register with your information

sipRegister = () => {
 
    //console.log(SIPmlWebRTC)
    let options = {
        realm: "xxx.xxx.xxx.xx", //txtRealm.value,
        impi: "xxxx",//txtPrivateIdentity.value,
        impu: "sip:xxx@xxx.xxx.xxx.xxx",//txtPublicIdentity.value,
        password: "xxxx",//txtPassword.value,
        display_name: "xxxx", //txtDisplayName.value,
        websocket_proxy_url: "xxxxxx",//(window.localStorage ? window.localStorage.getItem('org.doubango.expert.websocket_server_url') : null),
        outbound_proxy_url: "xxxxxx",//(window.localStorage ? window.localStorage.getItem('org.doubango.expert.sip_outboundproxy_url') : null),
        ice_servers: "xxxxxx", //(window.localStorage ? window.localStorage.getItem('org.doubango.expert.ice_servers') : null),
        enable_rtcweb_breaker: "xxxxx",(window.localStorage ? window.localStorage.getItem('org.doubango.expert.enable_rtcweb_breaker') == "true" : false),
        events_listener: { events: '*', listener: SIPmlWebRTC.onSipEventStack },
        enable_early_ims: "xxxxx",//(window.localStorage ? window.localStorage.getItem('org.doubango.expert.disable_early_ims') != "true" : true), // Must be true unless you're using a real IMS network
        enable_media_stream_cache: "xxxx",//(window.localStorage ? window.localStorage.getItem('org.doubango.expert.enable_media_caching') == "true" : false),
        sip_headers: [
            { name: 'User-Agent', value: 'IM-client/OMA1.0 sipML5-v1.2016.03.04' },
            { name: 'Organization', value: 'Doubango Telecom' }
        ]
    }
    SIPmlWebRTC.sipRegister(options);
 
}

Call Control

Start Audio call

sipCall = () => {
    SIPmlWebRTC.sipAudioCall();
}

Hang up (Stop Audio call)

sipHangUp = () => {
    SIPmlWebRTC.sipHangUp();
}

Logout or signup

sipUnRegister = () => {
    SIPmlWebRTC.sipUnRegister();
}

Mute

// Soon

Unmute

// Soon

Video Call

// Soon

Readme

Keywords

Package Sidebar

Install

npm i angular-webrtc-sipml

Weekly Downloads

4

Version

1.0.3

License

ISC

Unpacked Size

2.8 MB

Total Files

5

Last publish

Collaborators

  • husin