Java VoIP Library Description

v.9.0 is available     

The Mizu Java VoIP SDK (JVoIP) is a compact and flexible SIP library which consists of one single jar file of ~2 MB and it can be used in many ways:

  • java VoIP library: add VoIP to you java app (or any JVM based project) or create your own Java VoIP SIP client
  • standalone VoIP desktop application: as a compact convenient dialer, as a Java SIP Softphone
  • console/command line VoIP: flexible java SIP client for any automation with endless configuration capabilities
  • VoIP applet: embedded in a webpage for NPAPI compatible browsers

Cross platform: runs on all CPU (x86, x64, Arm, PPC) and all OS with Java SE support: Windows, Linux, MAC, others. For Android use the AJVoIP library instead.
It can be used directly from any JVM language such as Java, Kotlin, Closure, Scala, Groowy, JRuby or Jython.
The API can be accessed from: Java, JavaScript or any others via UDP, TCP or HTTP (clear text, URL, JSON, XML).
Compatible with all SIP server, softswitch or IP-PBX such as Asterisk, Freeswitch, FreePBX, Cisco and others.
The settings can be specified from: API, command line, config file, URL, environment variables or sent via SIP signaling.

With this Java VoIP SDK you have a full featured SIP/media stack in a single jar file, easy to integrate or embed into your application. Create your custom java voip client, integrate it with callcenter software or embed in VoIP devices such as IP-PBX or gateways so users will have a fully functional VoIP softphone without the need to download any other third-party software. You can create your own custom SIP client, java softphone or use it to add VoIP call capabilities into any software not directly related to VoIP (such as games or CRM’s) or to perform any kind of VoIP automation (auto dialer, auto answer machine, etc).

Download SIP library for Java

Example

Run it as a standalone app:

//Launch with the built-in user interface (you might pass any parameters or create a wpcfg.ini file with the parameters):
just double click on the JVoIP.jar file or launch as java -jar JVoIP

//Launch as a command line app from your terminal:
java –jar JVoIP.jar iscommandline=true serveraddress=VOIP_SERVER_IP_OR_DOMAIN username=USERNAME password=PASSWORD callto=DESTINATION autocall=true loglevel=1
(Ask for the headless version if you wish to test on a headless OS such as a linux server and the demo doesn't start)

Use it as library for your app:

//Include the JVoIP.jar to your project (both the package and the main class are named "webphone")
import webphone.*;

//Get a webphone instance

webphone wobj = new webphone();

//Set parameters (Replace uppercase words. There are 100+ configuration parameters )
wobj.API_SetParameter("serveraddress", "VOIP_SERVER_IP_OR_DOMAIN");
wobj.API_SetParameter("username", "SIP_USERNAME");
wobj.API_SetParameter("password", "SIP_PASSWORD");

//Initialize the sip stack
wobj.API_Start();    

//Make a call (replace DESTINATION with a SIP username, extension, phone number or SIP URI)
wobj.API_Call(-1, "DESTINATION");

//You can also register, accept incoming calls, send chat messages, get notifications and perform many other operations.
//Example code: JVoIPTest.java.
//See the documentation for more details.

 

Features

  • Standard SIP client for voice calls (in/out), chat, conference and others
  • SIP/media stack compatible with any VoIP server or client (Asterisk, FreeSWITCH, any PBX, softswitch, gateways, ATA, softphones, IP Phones, X-Lite and many others)
  • Protocols: IPv4/IPv6, UDP/TCP/TLS, SIP/SIPS, RTP/SRTP
  • Peer to peer encrypted media (between JVoIP instances; no server support required for this; can be disabled)
  • SIP server failover (to configured backupserver or after TLS record)
  • NAT/Firewall support: stable SIP and RTP ports, keep-alive, rport support, UPnP, proxy traversal, fast ICE/fast STUN protocols and auto configuration
  • RFC’s: 2543, 3261, 2976, 3892, 2778, 2779, 3428, 3265, 3515, 3311, 3911, 3581, 3842, 1889, 2327, 3550, 3960, 4028, 3824, 3966, 2663, 3022 and many other SIP related RFC's are implemented
  • IMS/3GPP/VoLTE (basic compatibility and features such as USSD or 3GPP SMS)
  • Supported methods: REGISTER, INVITE, reINVITE, ACK, PRACK, BYE, CANCEL, UPDATE, MESSAGE, INFO, OPTIONS, SUBSCRIBE, NOTIFY, REFER
  • Audio codec: PCMU, PCMA, G.729, GSM, iLBC, SPEEX, OPUS, G.722.1
  • Video codec: H264, H263, H261, MPEG1, MPEG4, MPEG2, VP8, VP9
  • HD Audio: Wideband, ultra-wideband and full-band codecs (speex, opus, g.722.1)
  • Audio enhancements: stereo output (will convert mono sources to stereo) , PLC (packet loss concealment), AEC (acoustic echo canceller), noise suppression, silence suppression, AGC (automatic gain control) and auto QoS
  • Conference calls (built-in RTP mixer, unlimited parties)
  • Voice recording (local file/FTP/HTTP/SIPREC in wav/mp3/gsm/ogg/RTP format)
  • Media streaming (play audio/video streams/files to remote peers, get local/remote audio streams to your app or to external apps/cloud services)
  • DTMF (NTE RFC 2833 / RFC 4733, SIP INFO method in signaling or in-band )
  • IM/Chat (RFC 3428), group chat, BLF, SMS (including 3GPP SMS support) and presence capability
  • Offline message and message queue with late delivery when peer is not reachable
  • Redial, call hold, MOH (music on hold), mute, forward and transfer (attended and unattended)
  • Balance display, call timer, inbound/outbound calls, Caller-ID display, voicemail (MWI)
  • Additional features: call parking, barge-in, early media, 3PCC, ED-137, local ring-back, PRACK and 100rel, replaces
  • Pure Java SIP implementation, including the media stack (you don't have to play compiling native code to various platforms or to deploy large libraries)
  • Unlimited lines (for both simultaneous calls and conference) and multi-account support

Usage
The Java client can be used in a flexible way, suitable for multiple purposes:

  • Use it as a Java SIP library to implement any VoIP solution (VoIP framework for Java)
  • Use it from console as a command line SIP client (it is a powerful SIP client tool with endless configuration options)
  • Use it as a standalone Java SIP application (it has it's own simple dialer GUI)
  • Custom Java callcenter VoIP client (integrate with your call center frontend with voice recording and scripting support)
  • Implement a custom Java SIP client, a Java softphone or any VoIP work-flow
  • Speaking bot / voicebot, Voice Assistant, AI integration (OpenAI/ChatGPT), text to speech, Push to Talk, Intercom, smart home solutions
  • IoT solutions, transport, aviation, navigation, military/defense and other industries
  • Remote working / remote office software implementations
  • Add VoIP call capabilities into any JVM application using as a Java VoIP toolkit (Java, Closure, Scala, Kotlin, Groowy, JRuby or Jython)
  • Automate any VoIP tasks, such as auto-dialer, music/voice streams from file, SIP tests, voice quality tests, auto respond or any other SIP automation
  • Java VoIP client for your desktop or web application (you can also integrate into custom hardware such as a mini IP-PBX on devices like Raspberry PI)
  • Initiate/receive SIP calls from Java, send/receive chat, make conference calls or use any IP-PBX function from Java

 

What's New

The latest stable version (v.9.0.23068) have been released at July 11, 2023 with notification event objects, full video support, streaming API and many more. See the version history for the details.

 

Pricing

 
  Demo Basic Advanced Gold
Demo Limiations: yes - - -
Max. nr. of Clients: 50 50 unlimited unlimited
Max. nr. of Servers: 1 1 4 10 or more
Features: advanced standard advanced all
Email Support: presales support         4 requests / 2 hours      15 requests / 8 hours         40 requests / 24 hours      
Dev. Support: - - 1 hour included 8 hours included
Priority Support: - - yes yes, high
Maintenance Upgrades:      - 1 year 2 years 4 years
Price: - $990 $1,900 $3,900
Pay with PayPal: Download Buy Now Buy Now Buy Now
Pay with Credit-Card: Download Buy Now Buy Now Buy Now


All prices are in USD for life-time license. Delivery time: one workday.
We also accept wire-transfer; payments can be done also in EUR after xe.com exchange rates.


info@mizu-voip.com