WebPhoNe Development

The webphone is one of our most important project with a quick development cycle and long term plans. We are constantly improving our web sip library, introducing new enhancements such as changes to reflect the latest industry standards, new VoIP engines, new features, bug fixes and optimizations.

All the important modules were developed by Mizutech with special care for interoperability, cross platform support, voice quality and reliability. Our focus is to provide a future proof web SIP client solution which will survive OS/browser changes and will remain a reliable high quality VoIP solution for web in the next decades. To achieve these goals, beside to bring a list of optimizations to the existing WebRTC HTML5 support, we also introduced native SIP/RTP engines to optimize voice quality and remove the WebRTC-SIP protocol conversion overhead whenever possible, thus saving precious server side resources (softswitch CPU and memory usage).

We usually push a new major release in every once or twice per year.
However internally we release a new stable release in around every month and paid customers will always receive the latest stable release, which is usually newer then the publicly available demo.

The webphone comes with a stable API, all new versions backward compatible with the old versions (keeping all old API unchanged). 
The version number consist of 3 digits: [major].[minor].[release]

  • major version: to reflect big architecture changes (still keeping API compatibility)
  • minor version: increased for major releases
  • release version: minor changes, upgrades, bug fixes (not always listed here and when listed then later merged in major releases)

The version numbers listed here reflects the software main branch version number.
The version number for the different modules in the WebPhone might be different. So even if your webphone main version number is 2.2 for example, the included NS module version can be 1.7 for example (also there are different version numbers for the WebRTC stack or the Java engine). However all these modules get their upgrade with each new webphone release.

Major changes for the Mizu web sip client (webphone) are listed in the changelog below.

 

 

WEBPHONE VERSION HISTORY

   Latest stable release:

For new customers we always send the latest stable version which usually contains many improvements above the last published demo release. Internally we release a new stable version every month, however the downloadable demo and documentation on this website might be updated only once per year.
 

WebPhone 3.8.23128 - Monday, January 8, 2024

This is a quality upgrade with bug fixes and improvements. No new features have been merged in this release.

 

WebPhone 3.8 - Tuesday, June 27, 2023

  • new: audio file streaming (also for WebRTC)
  • new: translations (including web service for language/localizations)
  • new: contactdomain parameter
  • new: fixvideo parameter
  • new: transfer with replaces
  • new: transfer current calls
  • new: handle transfer notify errors
  • new: support for SIP logical domains
  • new: remember last new call number
  • new: possibility to use multiple webrtc-sip gateway with failover
  • new: rewritten webrtc gateway selection
  • new: encrypted built-in settings
  • new: strict mode compatibility
  • new: music on hold handling
  • new: line/ep to string
  • new: NS engine re-register on keepalive timeout
  • new: NS engine configurable timer3
  • new: exception handling in api_helper
  • new: the unregister function will unregister also the extra accounts if any
  • new: server IP caching (use cached server IP on DNS request failure)
  • new: retry on SDP error with rewrite
  • new: auto detect errors in webphone_config.js
  • new: auto adjust further register interval on 423 answer code if not configured
  • changed: CDR record connect time is set also for unconnected time (ring time until reject/cancel)
  • improved: multi-accounts (extraregisteraccounts / registerex)
  • improved: multi-line hold/reload
  • improved: getsipheader
  • improved: getsipmessage
  • improved: upgrade localforage to latest
  • improved: fast restart/re-init/reregister
  • improved: webrtc state machine
  • improved: webrtc signaling handling filters
  • improved: startup sequence (don't skip best server selection)
  • improved: webrtc API compatibility across browsers
  • improved: less verbose with loglevel 1
  • improved: settings page (auto go to settings if only the "Settings..." item would be listed)
  • improved: domain name lookups
  • improved: license errors
  • improved: attended transfer
  • improved: reliable VoIP engine switch
  • improved: remove multiple/redundant H.264 codec entries
  • improved: SIP message handling on websocket
  • improved: ICE candidates handling
  • improved: websocket state management
  • improved: tech demo settings
  • improved: encrypted wsload
  • improved: better auto guess for presence interval
  • improved: settings module
  • improved: parameter caching
  • improved: HTTP vs HTTPS behavior changes (WS/WSS)
  • improved: fix content length
  • improved: auto guess best line in call to be used
  • improved: SIP message parsing speed
  • improved: SIP URI parsing
  • improved: HTML5 notifications permissions
  • improved: NS engine ipv6 handling
  • improved: NS engine connection and session retry
  • improved: NS engine codec payload numbers negotiation
  • improved: accurate line management (prefer using the Call-ID to identify the line)
  • improved: merge latest changes from adapter.js
  • improved: rtcp-mux handling
  • improved: local ringback retry
  • improved: SIP proxyaddress handling
  • improved: video SDP forwarding
  • improved: ipv6 via gateway / proxy
  • improved: string decoding and regex speed
  • improved: GetHoldState
  • improved: multi-line hold
  • improved: remove sensitive logs with loglevel 1
  • improved: logs speedup (don't evaluate unnecessary outputs anymore)
  • improved: ringtone html element auto insert if required
  • fix: don't convert domain to lower case
  • fix: missing string resources (textmessaging)
  • fix: SIP Settings -> Account onClick
  • fix: navigator.mozGetUserMedia is undefined
  • fix: softphone skin open links
  • fix: potential deadlock in webrtc stack
  • fix: typo errors in the samples
  • fix: Trim function in click2call and linkify
  • fix: incorrect api keys
  • fix: reset engine bug
  • fix: webrtc invalid argument error
  • fix: disable video
  • fix: call handling with extra accounts
  • fix: some leaking globals
  • fix: ask for server address if not set
  • fix: don't send Route header when not needed
  • fix: don't send 3GPP features announcements when not needed
  • fix: tech demo username/sipusername mismatch
  • fix: various other minor bug fixes
 

WebPhone 3.6.23012 - Tuesday, January 10, 2023

This is a quality upgrade with bug fixes and improvements. No new features have been merged in this release.

 

WebPhone 3.6 - Thursday, June 2, 2022

  • new: upper server transport protocol transmission
  • new: videofacing
  • new: NS engine for linux auto java install script
  • new: normalize presence user list
  • new: androidspeaker guess and ignore options
  • new: parallel module loader
  • new: call queue
  • new: target URI based register routing
  • new: retry call with audio only if video fails
  • new: loop-detect
  • new: SIPS/TLS connectivity with upper SIP servers
  • new: SIPREC with the NS engine
  • new: IPv6 support
  • improved: websocket message parsing
  • improved: wss reconnect
  • improved: customsipheader
  • improved: auto-answer
  • improved: rejectonbusy, autoignore
  • improved: new browser session handling (browsersessionid / GetBrowserSessionID)
  • improved: linux sound record
  • improved: call transfer
  • improved: hold music
  • improved: line selection
  • improved: toggle mute
  • improved: DNS resolve
  • improved: send/receive RTP extensions
  • improved: RTP processing (header parsing, timing)
  • improved: do not try to failover to flash engine if not supported
  • improved: subsequent outbound calls
  • improved: caching of last good engine
  • improved: Caller-ID parsing and display
  • improved: call routing preferences
  • improved: upper target server handling when used with WebRTC-SIP gateway
  • improved: chat requests handling
  • improved: response code texts
  • improved: audio files delayed load for WebRTC ring, dtmf, etc
  • improved: server select, failover
  • improved: don't try to connect to NS if webrtc priority is higher and/or webrtc succeeded before
  • improved: increased max audio data queue size
  • improved: WebRTC hold music
  • improved: session timer
  • fix: click to call reject button
  • fix: wrong SRTP decoding in some circumstances
  • fix: no onCallStateChange for incoming calls
  • fix: EP_LINE is not defined exception at call transfer
  • fix: callid change on SaveCallSession
  • fix: call Handle WSAPIReConnect from timer
  • fix: too much recursion issues (InternalError / stack overflow / max loops)
  • fix: a few minor bug fix reported by users related to session and line handling
 

WebPhone 3.4.22014 - Wednesday, February 9, 2022

Quality upgrade with a list of bug fixes, improvements and optimizations.
(The next major new version -with new features and updated documentation- will be released in May)

 

WebPhone 3.4 - Monday, April 26, 2021

  • new: encrypted parameter caching and storage by default (both for cookies and localstorage)
  • new: NS engine new features: IMS/3GPP, G.722.1, UUI, 3PCC, auto thread prioritizations, smaller download size
  • new: optional configurable NS engine domain and certificate
  • new: WebRTC attended transfer (previously attended transfer was available only for the ns and java engines)
  • new: WebRTC module dynamic loader (async load webrtc module on demand)
  • new: configversion parameter
  • new: enableautoaccept parameter
  • new: support for Alert-Info and Call-Info SIP headers
  • new: dns records caching
  • new: a faster log module
  • changed: removed NS engine for MacOSX (latest MAC doesn't allow recording from service; might be readded later as regular app)
  • improved: line management and multi-line handling
  • improved: media negotiations
  • improved: WebRTC video device permissions
  • improved: enablepresence defaults to -1/auto
  • improved: best engine select
  • improved: faster startup
  • improved: improved cache control
  • improved: script loader
  • improved: performance optimizations
  • improved: call hold, mute, reload
  • improved: call transfer
  • improved: notifications handling
  • improved: better versioning
  • improved: keep using last working engine whenever possible
  • improved: WebRTC gateway auto discovery when required
  • improved: NS engine service faster installer
  • improved: NS engine JVM management (will keep using the bundled JRE if already installed)
  • improved: various improvements for ns engine for linux
  • improved: linux NS engine install script
  • improved: call auto-answer
  • improved: skip dns request if possible
  • improved: websocket reconnects
  • improved: samesite document.cookie
  • improved: device management
  • improved: configurations default values handling
  • improved: webphonebasedir better guess
  • improved: file transfer
  • improved: compatibility with old Firefox versions (navigator.mozGetUserMedia, etc)
  • improved: compatibility with any WebRTC implementation (handle removeStream vs removeTrack and other differences)
  • improved: automute, autohold (improved and added more options)
  • fixed: ice parameter parsing
  • fixed: resize iframe and inner div in index and softphone html (scrollbar appears)
  • fixed: WebRTC rejects the call in Firefox because bad SDP
  • fixed: username contains unsupported special characters
  • fixed: skip loading gui modules if used as SDK
  • fixed: missing optional SIP headers
  • fixed: string literal contains an unescaped line break error in url parser
  • fixed: disconnect calls on browser page close
  • fixed: presence might become disabled in some circumstances
  • fixed: duplicate SIP headers in requests
  • fixed: useaudiodevicerecord vs checkmicrophone mismatch
  • fixed: auth failed because wrong key
  • fixed: WebRTC related issues on Safari
  • fixed: line change mismatch in some circumstances
  • fixed: keepalive timer interval increase because latests browsers throttling
  • fixed: all issues reported by users (resolved 176 tickets since the last major new version)
 

WebPhone 3.3.1208 - Wednesday, February 3, 2021

Quality upgrade with bug fixes, various improvements and optimizations especially related to the NS and WebRTC engines.

 

WebPhone 3.2 - Thursday, August 20, 2020

  • new: RFC 2833 / RFC 4733 NTE DTMF support for the WebRTC engine
  • new: implemented new Screen Capture API that does not require any browser extension
  • new: responsive index.html (the softphone and click2call skins were already responsive)
  • new: getrtcsocket API, useful when using the WebRTC engine to access the browser API
  • new: getrtcpeerconnection API, useful when using the WebRTC engine to access the browser API
  • new: autogenpassword parameter
  • new: useaudiodevicerecord parameter
  • new: usepathinfilenames parameter
  • new: extra popup when media permissions were not accepted by user on call attempt
  • new: send randomly initialized auto-increment id with each API request
  • new: attended call transfer
  • new: drop packets on first burst long queue
  • new: gateway side conference mixer auto-create
  • new: force media relay flag support
  • improved: opus fec
  • improved: call hold/reload
  • improved: chat
  • improved: sms (via API or SIP signaling mark)
  • improved: file transfer
  • improved: softphone user interface
  • improved: samples/examples
  • improved: WebRTC media devices constrains settings
  • improved: auto-guess best line for transfer
  • improved: webrtc gateway API processing
  • improved: dtmf auto guess best method and auto convert if needed
  • improved: conference invite (via chat or transfer)
  • improved: call transfer
  • fix: no settings corrupted if settings was reset
  • fix: call recording sometime can't store
  • fix: calls to full SIP URI
  • fix: disconnects the call on failed dtmf
  • fix: NS engine audio device listing
  • fix: offer telephone-event in SDP
  • fix: call hangup on network disconnect
  • fix: static analysis issues (34 minor bug fix)
  • fix: resolved 22 tickets
 

WebPhone 3.0 - Tuesday, March 3, 2020

  • new: NS engine for Linux (previous versions had NS engine only for Windows and only WebRTC and Java engines for Linux)
  • new: NS engine for macOS beta (previous versions had NS engine only for Windows and only WebRTC engine for macOS)
  • new: webphone_config.js (a separate file for configurations only)
  • new: dtmf driven WebRTC conference (among the already implemented local RTP mixer and conference rooms)
  • new: call forward functionality for the WebRTC engine (handle incoming 301/302)
  • new: NS/WebRTC transfer and dtmf failover to new call/other methods if default protocol/mode is not supported by the server
  • new: adapt to latest Firefox/Chrome/Edge/Safari changes
  • new: https/wss enforced for WebRTC in latest Firefox releases
  • new: onAppStateChange callback (old API's can be still used)
  • new: onRegStateChange callback (old API's can be still used)
  • new: replaced onDisplay, onLog, onEvents with onEvent (old API's can be still used)
  • new: useloginpage and auto-login parameters for the softphone skin
  • new: softphone skin: toggle call recording at runtime (while in call)
  • new: softphone skin config options for multi accounts, advanced SIP login and my profile
  • new: softphone skin forgotpasswordurl parameter
  • new: textmessaging parameter
  • new: callreceiver parameter
  • new: preferred_storage parameter
  • new: app_protocol parameter
  • new: nsupgrademode parameter
  • new: play API
  • new: getcallerdisplayfull API
  • new: getlastrecinvite and getlastsentinvite API
  • new: listcallhistory API
  • new: setloudspeaker API
  • new: acceptcall_onsharedevice
  • new: softphone skin typing notifications
  • new: custom customautoprovisioning
  • new: search for contacts (softphone skin)
  • new: sort contacts by importance/name/status (softphone skin)
  • new: server side address book integration
  • new: auto download/(re)install NS runtime if missing or broken
  • new: possibility to entirely remove the less used Flash engine from the webphone package
  • new: detailed documentation about the softphone skin
  • new: always-on availability
  • improved: WebRTC optimizations for mobile phones and tablets (Android/iOS)
  • improved: removed all unnecessary global variables
  • improved: minimize NS engine startup delay
  • improved: async loading WebRTC engine only if needed
  • improved: load sound files asynchronously
  • improved: keypress during call send dtmf
  • improved: reduced default ring sound file size
  • improved: upper proxy server handling via WebRTC proxies
  • improved: incoming call notifications
  • improved: attended transfer
  • improved: transfer API usage
  • improved: auto start
  • improved: TSL proxy connections
  • improved: STUN handling
  • improved: ns engine first time install display popup
  • improved: supplied parameters overwrite default/preconfigured settings
  • improved: multiple minor skins/user interface related improvements
  • improved: chat / text messages handling
  • improved: auto webrtc gateway select check also processing time
  • improved: softphone skin: better caller id / full name display
  • improved: softphone skin: call history
  • improved: softphone skin: contact handling: favorite/block/search/filter/rename
  • improved: called number normalizations
  • improved: NS engine inter-process communication improvements
  • improved: NS engine localhost domain changed to ns4.webvoipphone.com
  • improved: NS engine auto download TLS cert if needed
  • improved: SIP signaling session handling
  • improved: various skins/GUI related improvements
  • improved: other numerous minor improvements and micro optimizations
  • fix: auto transport protocol detect
  • fix: connect/register issues at first launch
  • fix: click to call sample
  • fix: incoming chat text display
  • fix: ring tone on no play method for audio element (startRingbackTone cannot load media)
  • fix: WebRTC call hold/reload bug
  • fix: NS engine sometime doesn't start correctly with OS startup
  • fix: NS engine sometime doesn't accept connections
  • fix: wrong ns engine launch: extra command line
  • fix: resolved 51 tickets
  • fix: other numerous minor bug fixes
 

Webphone 2.9 - Tuesday, May 28, 2019


  • new: auto transport protocol detect (udp/tcp/tls) (if not set with the transport parameter)
  • new: auto media encrypt detect (mediaencrypt, SRTP)
  • new: UPnP support for the NS engine
  • new: dtmf support in early media
  • new: offline messaging
  • new: autoaccept support (also for webrtc)
  • new: voicerecording upload retry
  • new: unsubscribe API
  • new: onSMS callback
  • new: native AEC option
  • new: audio device list cache
  • new: configurable poll timer
  • new: get version for all modules:
    • get_version() -returns webphone JS version 
    • get_version_ns() -returns NS engine exe version: API_GetExeVersion
    • get_version_ns_num() -returns NS engine major version number which is used also for minserviceversion: API_GetExeVersionNumber
    • get_version_java() -returns java engine version: API_GetVersion
    • get_version_sip() -same as get_version_java()
    • get_version_webrtc() -same as get_version()
    • get_version_flash() -same as get_version()
    • the above functions can return 0 if the requested engine can't be requested (so you can return 0 for get_version_ns, get_version_ns_num and get_version_java if currently you can't communicate with the ns engine API because it is not running)
  • improved: minimize NS engine startup delay
  • improved: better utf character handling (especially for the audio device name)
  • improved: don't send iscomposing if not needed
  • improved: cache commands on java start
  • improved: linedetails with WebRTC engine
  • improved: call quality with the NS engine
  • improved: websocket reconnect
  • improved: edge browser compatibility, SDP wrong IP fixes
  • improved: NS engine min version handling and auto upgrade
  • improved: Angular compatibility
  • improved: extra SIP headers handling
  • improved: WebRTC echo cancellations (use all browser flags)
  • improved: ice timeout set to 2 seconds by default
  • improved: registered state reports
  • improved: Firefox settings storage
  • improved: better handle multiple simultaneous call launch
  • improved: TLS connectivity
  • improved: NS engine notifications
  • improved: call transfer signaling
  • improved: Caller-ID display
  • improved: line management for subsequent incoming calls
  • improved: ns in call and second incoming call handling
  • improved: improved java applet support for old browsers and IE
  • fix: no server address input control in some circumstances when it might be required (if not preconfigured)
  • fix: webphone freezing at: EVENT,audioplayer close
  • fix: missing audio device controls
  • fix: webphone hold in new browser versions
  • fix: onCallStateChange duplicate events
  • fix: caller displayname not displayed on the call screen for incoming calls (but test with both incoming and outgoing calls)
  • fix: skip CheckInternetConnectionWS because no previous successful WebSocket connection
  • fix: ProcessServiceResponse cb_tmp is not a function: NULL
  • fix: webphone: GetLineDetails(), no applethandle
  • fix: StartWin: API_SetParameters callback: failed to save settings
  • fix: ProcessServiceReqResponse (46) TypeError: t is not a function (t is not a function)
  • fix: bug with no answer for API_Start
  • fix: cmd cache bug
  • fix: NS engine fatal start bug
  • fix: dialpad: PopulateListRecents listelement is null
  • fix: GetSipHeader no headers available at this moment
  • fix: certain duplicate SIP headers
  • fix: Firefox does not display audio settings within softphone
  • fix: transport in the signaling for the NS engine
  • fix: unicode characters handling for display names and device names
  • fix: NS engine polling mode
 

Webphone 2.6 - Tuesday, December 4, 2018


  • new: delayed load of audio files on demand
  • new: linetocallid API
  • new: callidtoline API
  • new: chatsms parameter
  • new: LINE notifications
  • new: package.json file
  • new: API auto replace KEY, PWD, SALT, AMMOUNT keywords
  • new: major new version of the WebRTC-SIP converter
  • new: start page customizations
  • new: Electron compatibility
  • new: wordpress compatibility
  • new: offline messaging
  • new: auto change codec on conference
  • new: JS development switched to Visual Studio Code
  • improved: websocket connections robustness
  • improved: register resend on no answer
  • improved: handle launching from unsecure http in chrome
  • improved: handle multiple incoming calls at once
  • improved: Firebase JS SDK replaced development version with release version
  • improved: using URL instead of webkitURL when possible
  • improved: better handle Safari browsers on Windows
  • improved: webrtc permission handling
  • improved: callConnected event handling
  • improved: hold/resume/mute/unmute handling
  • improved: WebView handling
  • improved: presence
  • improved: codec selection
  • improved: Edge browser handling
  • improved: missing RECORD_AUDIO permission handling in WebView
  • improved: autoprovisioning
  • improved: SMS HTML formatting
  • improved: translation
  • improved: WebRTC-SIP gateway auto failover
  • improved: WebRTC video
  • improved: onCdr event
  • fix: incorrect passwords passed to the NS engine
  • fix: workaround for Firefox a=mid related regression bug 1495569
  • fix: hide/close call window on ignore
  • fix: callerid display mismatch
  • fix: re-register if no register endpoint
  • fix: lose connection after a while
  • fix: direct call to SIP URI
  • fix: DTMF tones when running in iframe
  • fix: trial error bug in the demo version
  • fix: winaudio hung on close
  • fix: mustconnect will no allow outbound call if user is not registered
  • fix: different accounts with same username
  • fix: catch on _settings: SubmenuSipSettings ReferenceError: settDisplayName is not defined
  • fix: Uncaught ReferenceError: SaveContact is not defined
  • fix: GlobalErrorHandler: ERROR, Uncaught ReferenceError: SaveContact is not defined
  • fix: allow asterisk (*) in username
  • fix: selected engine automatically set to correct value
  • fix: do not auto change SIP engine if serveraddress is not set correctly
  • fix: InvalidSessionDescriptionError: Local descriptions must have a=mid attributes.
  • fix: Double digit entry bug on iOS ad android
  • fix: GUI call transfer issue multiline calls
  • fix: onPresenceStateChange
  • fix: other minor bug fixes and optimizations
 

Webphone 2.5 - Friday, April 27, 2018


  • new: profiles
  • new: auto-reconnect and auto-re-register
  • new: WebRTC compatibility with alternative browsers on iOS
  • new: getlastcalldetails
  • new: video view customization
  • new: helper pages and containers for easier skin customization
  • new: onStop callback
  • new: holdtype parameter
  • new: forcereregister parameter
  • new: extraregisteraccounts parameter
  • new: needunregister parameter
  • new: destroyonpageclose parameter
  • new: resetsettings parameter
  • new: acceptcall_onsharedevice parameter
  • new: config options for the "Send log to support" in the softphone skin
  • new: API_RecFiles for the NS and Java engines
  • new: jscodeversion parameter for the js includes to force browser refresh (auto set in new versions)
  • new: mrtcping support for ns engine
  • new: added SIP proxy settings to the softphone skin basic and SIP settings
  • improved: using latest SIP stack (v.6.8) with many improvements
  • improved: re-register on no answer
  • improved: video calls (VP8/H.264 codec selection, frame rate, size)
  • improved: SIP proxy handling
  • improved: call hold and autohold
  • improved: call transfer
  • improved: support for firefox 58
  • improved: WebRTC stack, multiple changes and improvements
  • improved: easier softphone skin customization
  • improved: configuration management
  • improved: ns engine auto reconnect
  • improved: removed unnecessary internet connectivity checks
  • improved: waiting for permission display
  • improved: api_example.html with CDR handling example
  • improved: reconnections to the NS engine
  • improved: better NS engine upgrade based on confighash
  • improved: opus wideband
  • improved: voice recording
  • improved: loading the webphone in iframe
  • improved: webrtc internet connectivity tests (while using the webphone over the public internet)
  • improved: for call hold it should be clear from the log whether the user intiated it (on button click) or it was initiated automatically/internally (for example because of autohold)
  • improved: WebRTC websocket auto reconnect
  • improved: delsettings, settings per domain/path
  • improved: IMS support
  • improved: restarts, auto register after restarts
  • improved: multiple browser tabs
  • improved: API calls before start/onLoaded
  • improved: don't cache API_Poll for websocket later execution - EVENT, WSAPIRequest cached for later execution: Websocket not ready:
  • improved: if video is disabled, then respond with audio SDP for incoming video call
  • improved: remove mustconnect (use register=2 instead)
  • improved: HD audio support
  • improved: mute vs mutevideo
  • improved: NS - reload browser page while in call
  • improved: display name forward
  • improved: a long list of micro optimizations
  • fix: voicemail button
  • fix: css warnings
  • fix: jquery mobile errors and warnings
  • fix: scroll bar appearing when popups / Menus are opened
  • fix: contact lost after save and reload
  • fix: does not work if no SIP password is set
  • fix: passwords with special characters
  • fix: handle audiodevicering "All" for NS and java
  • fix: firefox incoming hold
  • fix: no DomainToIp requests if server is no local LAN/private IP
  • fix: expires for PUBLISH and others should not be after the registerinterval value
  • fix: PresenceGet2 invalid server
  • fix: catch on common: ProcessServiceReqResponse (11) TypeError: e.indexOf is not a function (e.indexOf is not a function)
  • fix: Java engine hangup
  • fix: "Register failed" issue
  • fix: "wphone not started" issue
  • fix: Not connected (must register before to call -1) issue
  • fix: Safari browser version detection
  • fix: getregfailreason backward compatibility
  • fix: onCdr parameters
  • fix: speex multiframes
  • fix: Uncaught TypeError: Cannot read property 'send' of null lib_softphone.js:40
  • fix: SIP/2.0 400 Content-Length mis-match
  • fix: via branch and contact URI issue
  • fix: scroll bar appearing when popups / Menus are opened
  • fix: duplicate headers
  • fix: autohold/automute with NS and java engine
  • fix: NS API Websocket reconnect and webphone restart
  • fix: api_helper.js:1757 Uncaught SyntaxError: Unexpected end of input
  • fix: OperationError (DOM Exception 34): Failed to set remote answer sdp
  • fix: 22 other minor bug fixes
 

Webphone 2.4 - Wednesday, November 29, 2017


  • new: config options: beeponincoming, stunturnonlocal, incomingcallpopup, closecall_timeout
  • new: iOS 11 / Safari 11 support with built-in WebRTC
    (old Safari versions will keep using the WebRTC plugin or the app engine)
  • new: BLF (support for Busy Lamp Field for cross-platform native SIP/RTP)
  • new: websocket ping to detect disconnects and measure delay
  • new: screensharing (screenshare and stopscreenshare API)
  • new: mutevideo and setvideodisplaysize API
  • new: option for WebRTC to connect using TCP or TLS to the SIP server (regarding the transport parameter)
  • new: autoprovisioning with opcodes
  • new: send file option on contact page (on the softphone skin)
  • new: call forward settings propagated also to server (if server API found to toggle forwarding)
  • new: HTML5 Notifications API
  • new: alias for common parameters (for example for the webrtcserveraddress now also accepts webrtcserver, webrtcaddress, rtcserver and rtcaddress)
  • new: possibility to set multiple WebRTC gateways (auto detect closest and auto failover)
  • new: notification about unregister
  • new: wideband conference
  • new: X-RTCOptions SIP header
  • new: internet connection state on failure reason display (if SIP server is on the public internet)
  • improved: ability to get notification about incoming calls even if browser is not running from the NS engine native sipstack
  • improved: Edge support
  • improved: websocket reconnect
  • improved: caller ID and display name forward
  • improved: documentation (click to call, softphone skin customization and others)
  • improved: GUI/skin related improvements, especially the softphone skin
  • improved: voicemail (display and asterisk compatibility)
  • improved: sound file size optimizations
  • improved: fast registration (optimizing all the code between startup and registered callback)
  • improved: presence
  • improved: conference mixer
  • improved: multi-line (simultaneous calls)
  • improved: NS engine upgrade procedure
  • improved: agc (auto gain control improvements)
  • improved: enable special characters for SIP password
  • improved: video call option while on the NS engine
  • improved: two kind of conference call option while using the WebRTC engine (conference rooms or switch to NS/Java)
  • improved: OPUS codec (now OPUS is the highest priority codec by default for all engines)
  • improved: handling GUI contact long press
  • improved: video (better and more flexible screen display handling)
  • improved: video recall and video reinvite
  • improved: log upload
  • improved: don't ask for microphone permission if defmute is 2
  • improved: cache media stream
  • improved: reduce volume level for DTMF sounds
  • improved: better handling of the Not Acceptable Here 488 code (quick redial with changed capabilities)
  • improved: auto accept call on media permission accept in some circumstances
  • improved: minserviceversion (added configuration options -2 and -3)
  • improved: various skin improvements when running on mobiles (responsive design, keyboard defaults)
  • improved: a long list of other minor improvements
  • fix: various register and call related bugs
  • fix: dtmf setting option
  • fix: click 2 call button too much delay
  • fix: login credentials mismatch (loaded the previous account settings)
  • fix: catch on RefreshDNSCache, catch on HostToIpExFromCache
  • fix: InetConnectionTest (when used with public server)
  • fix: multiple account register
  • fix: NS engine connectivity issues
  • fix: rejectonbusy
  • fix: number rewrite rules
  • fix: conference calls with speex
  • fix: defmute parameter now applied also for WebRTC
  • fix: various connectivity options (localhost, http vs https, websocket vs ajax, etc)
  • fix: removed unnecessary CORS requests
  • fix: registrarless usage when the register parameter is set to 0
  • fix: ability to call also when not registered
  • fix: SetHeader duplicate headers
  • fix: a list of other minor bug fix based on internal tests and users feedback
 

Webphone 2.3.1 - Friday, August 11, 2017


  • new: added capability to run WebRTC also by launching from local file system (without a web server) in Chrome
  • improved: startup time minimized via various performance related tweaks and eliminating some unnecessary wait time
  • improved: click to call related improvements
  • improved: proper failback to audio only call if video negotiation fails
  • improved: click to call user interface improvements
  • improved: gateway failover
  • fix: critical issue with the NS engine which prevented it to launch in certain circumstances (affecting new installs only)
  • fix: important issue with the WebRTC engine causing connectivity issues in some circumstances, making the webphone unusable
  • fix: launch from URL (by passing URL query parameters)
  • fix: asking twice for media permission in video calls
  • fix: delay button delays
  • fix: media teardown
 

Webphone 2.3 - Monday, August 7, 2017


  • new: websocket binary mode
  • new: background calls
  • new: getlinedetails API (to query endpoint details)
  • new: allowsipuriasusername parameter (for URI input normalization)
  • new: more API for contact management: getcontact, listcontacts
  • new: AGC for recorded voice and volume normalization for the sides
  • new: auto codec switch from wide-band to narrow-band when low quality network is detected
  • new: audiodevicein/audiodeviceout/audiodevicering parameters to set predefined audio devices in controlled environments
  • new: NS engine auto-detect if tunneling needed (with quick REGISTER or NOTIFY message to the target server UDP port)
  • new: auto failover whith multiple WebRTC gateways
  • improved: voice recording quality
  • improved: websocket connection auto-reconnect and other improvements
  • improved: lot's of click to call related improvements
  • improved: engine detect improvements
  • improved: TCP tunneling on HTTP port (when UDP is not available. will use TURN only after this as a last chance)
  • improved: DTLS certificate handling
  • improved: removed old outdated localhost certificate
  • improved: always show last used peer number in number input boxes such as for transfer and conference
  • improved: simplified setting for cloud webrtc gateways
  • improved: various GUI related improvements for the softphone and click to call skins
  • improved: documentation changes
  • improved: IVR announcement playback start with some delay to don't skip first frames before ICE/DTLS negotiation completed
  • improved: call disconnect reason display and logs
  • improved: WebRTC engine on Ubuntu Chrome
  • improved: WebRTC to WebRTC video (now with direct media path whenever possible)
  • improved: insert multiple custom SIP headers
  • improved: NS engine mediaench loader (for AEC, AGC and noise suppression)
  • fix: codec transcoding bug fixes
  • fix: click to call auto-start and auto-call
  • fix: special characters in chat messages
  • fix: NS engine localhost TLS certificate issue (details)
  • fix: remember previously selected audio device with NS and Java engine
  • fix: G.729 frames time fix for voice call recording
  • fix: fixed a bug regarding NS engine lookup
  • fix: no send "compose" hint as chat message
  • fix: call disconnect issues when UDP is blocked
  • fix: call doesn't connect bug on WebRTC
  • fix: username password on conference click displayed because of salt mismatch for the auth hash
  • fix: don't send CRLF (new line) at the end of the chat messages
  • fix: unnecessary displaying "Waiting for permission"
  • fix: hold/reload sending 0.0.0.0 ipv4 address with the SDP
  • fix: voice recording cracking sounds while sender and receiver not in sync
  • fix: auth failed: missing key problem
  • known issue: call hold might not work in some circumstances with the WebRTC engine. Will be fixed in the upcoming release.
  • fix: wrong key error bug fixed
  • fix: "serveraddress not set" issue in IE
 

Webphone 2.2 - Friday, June 16, 2017


  • new: WebRTC engine for Bing browser
  • new: multiple accounts so you can register to multiple sip servers at the same time (this was achievable previously only by multiple instances)
  • new: registerex API
  • new: various new configuration options for WebRTC : bundlePolicy, iceCandidatePoolSize, iceTransportPolicy, rtcpMuxPolicy
  • new: multiple webphone instance support for the NS engine
  • new: complete rewrite for the presence module. Now with improved presence via PUBLISH/SUBSCRIBE/NOTIFY
  • new: handle multiple STUN/TURN servers
  • new: screen sharing beta
  • new: handle browser cache bypass for new versions
  • new: option to remove parties from conference room
  • new: addcontact/delcontact API
  • new: getlinedetails API
  • new: onUnRegistered callback with reason text
  • new: rating/tariff display (if announced by the server via SIP signaling or API)
  • new: option for incoming call popup notification (incomingcallnotification parameter)
  • new: WebRTC configuration for echo cancellation, autogain control, noise suppression
  • improved: conference (the conference api works now via conf rooms if direct conference functionality is not available)
  • improved: simplify incoming call UI for multi-lines: for incoming multiline calls 3 buttons: accept,reject,... (open menu)
  • improved: video (video placeholder)
  • improved: dtmf handle the space character as 1 sec pause
  • improved: voice recording (better documentation and example, always using the “file” form parameter)
  • improved: class/module structure rewrite and optimizations
  • improved: removed RequireJS async load. Now the js files are loaded statically resolving all related incompatibility issues
  • improved: responsive design for the html skins (including the softphone skin)
  • improved: click to call sample
  • improved: the Java engine was updated to conform to latest Oracle requirements regarding the code signature handling
  • improved: ns engine auto install and auto detect
  • improved: various GUI related improvements for the softphone.html, click to call and demo pages
  • improved: handle "null" for webrtcserveraddress (to not load the old setting)
  • improved: accept ice/stun/turn parameters in multiple formats
  • improved: better handle DND presence state (do not disturb)
  • improved: better handle invisible presence: send status only once until status doesn't change to something else
  • improved: auto-hold
  • improved: better number normalizations
  • improved: accept both getsipheader("Header") getsipheader("Header:") formats
  • improved: auto login only if there was no any issue last time (otherwise stop at the login screen)
  • improved: skin displays previous disconnect reason
  • improved: other WebRTC related improvements
  • change: softphone skin auto login only if there was no any issue last time (otherwise stop at the login screen so the enduser might change the engine)
  • change: rename getEvents to onEvents(callback); move getEvents to api_helper (so getEvents is still supported)
  • fix: jQuery $ compatibility problems with other JS libraries (solved by changing the namespace)
  • fix: skin displays previous disconnect reason
  • fix: auth wrong key issue
  • fix: "register failed" issue when going to settings
  • fix: remove account on Accounts page reload issue
  • fix: softphone skin scroll (appeared also when not needed)
  • fix: onCallStateChange sometimes not called due to a js error
  • fix: chat message disappear bug
  • fix: call page never auto close bug
  • fix: mute() should mute also the speaker if called with parameter 0 or 1
  • fix: webrtc bug: if we hangup immediately after call(), Finished and Call Finished statuses are not delivered
  • fix: softphone.html login form once click on the menu, can't click to other place anymore to hide it
  • fix: various other bug fixes triggered by internal tests and bug reports from existing customers
  • fix: stop the ns service while the webphone is running. it remains in "registered" status forever
  • fix: scurl_parameters issues
  • fix: IE compatibility issues
  • fix: various skin related issues

 

Webphone 2.1 - Wednesday, March 15, 2017


  • this is a minor release containing only a few bug fixes and optimizations over the previous v.2.0 release (no new features)

 

Webphone 2.0 - Wednesday, February 22, 2017


  • new: getsipmessage API
  • new: allowcallredirect parameter
  • new: playdtmfsound parameter
  • new: onDisplay callback
  • new: earlymedia parameter
  • new: server/user-agent based licensing for the gold version
  • new: option to disable all toasts/popups
  • new: muteholdalllines parameter
  • improvement: multi-line; a lot of improvements regarding line management
  • improved: setline() now accepts also peer phonenumber or sip call-id
  • improved: conference API add parameter and other conference related
  • improved: call transfer and forward between SIP and WebRTC (and inverse)
  • improved: more robust un-register
  • improved: cookie and indexDB localforage
  • improved: call setup without recording device (no microphone)
  • improved: NS engine once click installer improvements and auto-configuration
  • improved: Safari compatibility
  • improved: handle Firefox 52+ no Java/NPAPI support
  • improved: playsound API
  • improved: get the call disconnect reason on hangup (from SIP disc. code but also from Reason and Warning headers)
  • fix: WebRTC-SIP converter blind accept any username/password in registrations (now properly forward as SIP REGISTER with digest authentication)
  • fix: ice timeout
  • fix: IsRegistered
  • fix: don't touch the NS engine if not needed
  • fix: globalline defaults to -1 if not multiline
  • fix: webphone_api.voicerecord
  • fix: getsipheader mixed up bug
  • fix: call timer display
  • fix: accidental call disconnects
  • fix: IE 7 and IE 8 compatibility
  • fix: password sometime encoded incorrectly
  • fix: username vs sipusername
  • fix: SendDtmf ReferenceError: message is not defined
  • fix: settings management
  • fix: garbage characters in balance display (credit/currency)
  • fix: NS engine XP and vista compatibility
  • fix: NS engine compatibility with x32 (32 bit) OS versions
  • fix: NS engine compatibility with non-english Windows versions
  • fix: autologin not working if server/user/password is set
  • fix: if username or password is preset then don't display user/pwd input for the softphone skin
  • numerous other improvements and minor bug fixes

 

Webphone 1.9 - Saturday, December 24, 2016


  • new: no need to explicitly set the webphonebasedir anymore as it is always guessed correctly from now
  • new: call forward and transfer now works between SIP and WebRTC endpoints
  • new: NS self-upgrade in background capability (with no user interaction required)
  • new: checkmicrophone setting
  • new: global instance (ability to use the same webphone instance on multiple webpages opened in different tabs/windows in the client browser)
  • new: call recover with redial on no or bad response
  • new: MAC OS webrtc plugin as pkg (webrtcplugin.pkg)
  • new: capability to initiate calls even if not registered, registrar disabled or register failed
  • new: more call details onCdr such as displayname and call disconnect reason
  • improved: better audio/camera recording permission handling
  • improved: TURN and TCP candidates (now it works in all circumstances with WebRTC)
  • improved: WebRTC-SIP protocol conversion
  • improved: WebRTC-SIP codec conversion (for example Opus to G.729 and inverse)
  • improved: Android app engine
  • improved: better aec and denoise
  • improved: update to latest OpenSSL for the WebRTC DTLS and websocket TLS
  • improved: settings management (now the server side settings from webphone_js.api are applied immediately and exactly as-is)
  • improved: more flexible parameter handling (handle when pass number as string or bool as number and others)
  • improved: auto hide disconnected call page after some time
  • improved: click-to-call related improvements
  • improved: Asterisk WebRTC auto discover
  • improved: registerless usage (register=0)
  • improved: permissible demo license limitations
  • improved: WebRTC trickle ICE
  • improved: chat reliability
  • improved: number rewrite rules
  • improved: call divert now propagated also to server side (will safely handle servers with no such support)
  • improved: usage without sipserver (call to sip uri should work; serverless peer to peer functionality)
  • fix: click-to-call related bugs
  • fix: autostart: 0, start and register only when clicked
  • fix: mute() should mute also the speaker if called with parameter 0 or 1; also webrtc mute is fixed now
  • fix: on hold fail, call is disconnected, but the disconnect is not discovered by the GUI
  • fix: send dtmf while in webrtc call doesn't display any feedback
  • fix: keypress events
  • fix: loading cached old settings problem
  • fix: ERROR, catch on common: ParamAsBool ReferenceError: isNumber is not defined (isNumber is not defined)
  • fix: ERROR, catch on notifications: ProcessNotifications, not: STATUS,1,Finished ReferenceError: GetParameter is not defined
  • fix: WRTC, ERROR, InvalidAccessError: RTCPeerConnection constructor passed invalid RTCConfiguration
  • fix: flash engine offer only if no any other better choice
  • fix: java no applethandle after going to settings and back (maybe go to settings and select java engine even if selected)
  • fix: settings not always read correctly if webphone is used as SDK and this causes discrepancies in engine selection
  • fix: detailed loglevel fixed
  • fix: call start while webphone is initializing
  • fix: video chat one side only now fixed
  • fix: call recording with WebRTC engine

 

Webphone 1.8 - Monday, November 28, 2016


  • new: MAC OS WebRTC plugin
  • new: multi-line (manage multiple simultaneous calls)
  • new: ICE TCP candidate (RFC 6544)
  • new: UPNP NAT for NS and Java engines (better NAT handling behind UPNP capable routers)
  • new: redial or re-INVITE on fast call failure or on no media with changed stun and codec
  • new: auto call forward on no answer (“callforwardonnoanswer” setting)
  • new: more settings such as language, disablesamecall, checkvolumelevel, inbounddtmf , outbounddtmf, usecommdevice, etc
  • new: stop() and getworkdir() api
  • new: auto NS service upgrade in background (only if NS is actually used and only to known good new versions)
  • improved: DTMF between SIP and WebRTC (both INFO and RFC 2866 are supported)
  • improved: stun and turn (earlier public IP discovery, doesn’t use on local LAN’s)
  • improved: more native audio features on Windows
  • improved: http/https view/api/download/upload/autoprovisioning (autodetect, https-http proxy and ssl bypass options)
  • improved: fast init with no more delays when coming from settings and engine init speedups
  • improved: fast cleanup and exit for the java engine
  • improved: conference for WebRTC
  • improved: NS engine auto upgrade
  • improved: iOS app engine via SIP softphone
  • improved: various transfer related improvements including WebRTC to SIP call transfer
  • improved: usage from behind NAT or firewalls (now capable to use both TURN and TCP candidates if UDP is blocked)
  • improved: various other WebRTC-SIP related improvements
  • improved: documentation
  • fix: embed in webpage related issues and webphonebasedir
  • fix: onRegistered to catch all SIP register events
  • fix: settings save/load, keep last good VoIP method
  • fix: chat between SIP and WebRTC
  • fix: file transfer related bugs
  • fix: flash VoIP engine only when really necessary (no any other options)
  • fix: DNS SRV record timeout handling
  • fix: fixed problem with AEC for wideband speex and opus with NS and Java
  • fix: audio device list on Windows
  • fix: ptime settings for G.729
  • fix: reject double outbound calls to same destination
  • fix: various GUI related bugs on the softphone skin
  • fix: various auto engine detect, prioritization and usage related bugs
  • fix: more than 110 other minor fixes and improvements

 

Webphone 1.6 - Friday, July 1, 2016


  • new: video
  • new: conference rooms (server assisted)
  • new: audio device list, get, set functions
  • new: web call-me
  • new: peer to peer media auto discover
  • new: call forward
  • new: auto WebRTC server discovery (for example it can detect automatically if webrtc is enabled in Asterisk and other servers)
  • new: softphone skin now can be inserted also in a DIV (previously it was working only in iframe)
  • new: callback (you can specify a callbacknumber parameter if your server has a callback access number)
  • new: sip outbound proxy setting
  • new: call transfer options
  • new: CDR records after calls (can be easily posted to server API)
  • new: group chat
  • improved: webrtc engine
  • improved: click to call
  • improved: presence
  • improved: voicemail
  • improved: conference
  • improved: voice recording
  • improved: android native dialer auto-configuration
  • improved: themes (color theme/skinning)
  • improved: TURN and STUN handling and auto-discovery
  • improved: user interface integration (div, popup, flying, others)
  • improved: chat (reliability, smiles, file-transfer, groups)
  • improved: NS engine versioning and auto upgrade
  • fix: voip engine auto select related issues, settings save/restore
  • fix: init delay
  • fix: ns engine localhost certificate, https/wss issues
  • fix: more than 44 bug-fixes mostly based on customer feedback and additional tests
  • the old documentation for this version can be found here

 

Webphone 1.5 - Wednesday, April 27, 2016


  • new: call recording (voicerecupload)
  • new: 8 new call-divert related settings and API’s
  • new: callcenter integration
  • improved: engine selection
  • improved: VoIP over TCP using TURN only when necessary
  • improved: usage on local LAN’s
  • improved: WebRTC (various fixes)
  • fix: auto engine select related bugs, unnecessary java popups
  • fix: NS engine discover issues
  • fix: mute/unmute, hold/unhold
  • fix: CTRL+C, CTRL+V in the softphone skin
  • more than 20 other bug fixes and small improvements especially engine detect/choose related

 

Webphone 1.4 - Monday, April 11, 2016


  • new: WebRTC to SIP gateway (free as both software and service for all our web sip library customers)
  • new: TURN (WebRTC works now even if all UDP is blocked and only port TCP 80 is allowed)
  • new: auto codec convert when necessary (for example to G.729 from WebRTC)
  • new: App engines for iOS and Android
  • new: WebRTC on Android
  • new: HTTP to HTTPS gateway (used automatically if hosting website is not secure which is required by Chrome for WebRTC)
  • new: WebRTC caller-id
  • improved: WebRTC NAT handling
  • improved: STUN
  • improved: end to end encryption
  • improved: softphone skin
  • fix: java freezing improvements
  • fix: WebRTC caller-id

 

Webphone 1.3 - Friday, February 5, 2016


  • new: audio device selection
  • new: favorite or block contact
  • new: setsipheader/getsipheader
  • improved: capability call special url's on events (server API integration)
  • improved: number rewrite rules
  • improved: feedback for file transfer
  • fix: ns engine unregister on webpage close
  • fix: increase cseq for re-invite
  • other improvements and bug fixes

 

Webphone 1.2 - Monday, January 18, 2016


  • callback API for simplified API (use simple call back instead of notification string parsing)
  • server API for the webphone state machine (so you can easily catch all important events from server code)
  • WebRTC engine upgrade to latest version
  • presence (not fully standard compliant yet but working)
  • added file transfer
  • new missed call/chat notifications
  • http vs https bug fixes
  • NS engine availability from https
  • reset setting parameter and API
  • last call detailed statistics
  • called number normalization
  • one-way audio fix on WebRTC
  • WebRTC fix for Android
  • many other improvements and bug fixes

 

Webphone 1.0 - Friday, November 6, 2015


  • new: flash engine
  • WebRTC improvements
  • stable API, modules and file structure
  • improved auto engine selection
  • chat
  • app engine
  • secondary engines (p2p, native dial, callback)
  • custom builds based on customer settings

 

Webphone 0.9 - Wednesday, September 9, 2015


  • call-divert functionalities (voicemail, transfer, others)
  • conference
  • NS (Native Service or Plugin)
  • examples and documentation
  • better skinning
  • better OS/browser handling
  • automatic engine selection
  • WebRTC stable incoming and outgoing calls
  • upgrade to latest Java Applet and WebRTC engine
  • more JavaScript SIP API

 

Webphone 0.6 - Friday, July 3, 2015


  • engines: WebRTC beta and Java Applet v.1.0
  • more SIP settings
  • early beta version with basic SIP call functionality

 

Webphone 0.2 - Thursday, February 12, 2015


  • internal beta version with basic skin and basic call functionality

 

More news and software releases can be found here.
Like our facebook page to get notified about new webphones releases and VoIP industry news.

WebPhone