SIP SDK For Windows -Description

New version is available! -Jun 15 2024    

The Mizu VoIP SDK for Windows (MVoIPSDK) is a SIP client implemented as a Windows NT service which can be used from any framework or programming language including .NET, C#, C++, Delphi and many more. Since it is based on the open standard Session Initiation Protocol, it can inter-operate with any other SIP-based device (servers and clients). The SIP SDK service installer can be easily embedded into your app installer.

Instead of a strict SDK as a library, the MVoIPSDK expose all its functionality via TCP, thus it can be used in any framework capable to initiate a simple local TCP connection. Instead of calling API functions you will have to send commands via TCP and receive the answers and other notifications on the same socket.

With the Windows VoIP SDK you have an easy to use full featured SIP/media stack easy to integrate or embed in your desktop application. For example it can be integrated with callcenter software or you can 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). The service can be used as a SIP SDK for .NET, SIP SDK for C#, SIP SDK for C++ or for your favorite windows framework.
 

Download Windows SIP SDK

Documentation

Usage

First you need to install the MVoIPSDK. For this just run the MVoIPSDKService_Install.exe which will install the SDK as service and will start it in the background.
Once the SIP SDK is running you can connect to its 18520 TCP port and start to send command and receive answers and other notifications.

Pseudocode:

//connect via TCP
tcpclient->Connect("127.0.0.1", 18520);
//…once connected, start the SIP stack
tcpclient->Send("API_Start");
//wait 1-2 seconds here to let the sip stack to initialize (or wait for the "START,api" notification)
//set parameters (all parameters have to be separated by “CRLF” -\r\n)

tcpclient->Send("API_SetParameters,serveraddress=YOURSIPSERVER CRLF username=SIPUSERNAME CRLF password=SIPPASSWORD CRLF loglevel=5\r\n")
//make outgoing call
tcpclient->Send("API_Call,-1, DESTINATION\r\n");
//hangup
tcpclient->Send("API_Hangup\r\n");
//send IM
tcpclient->Send("API_SendChat,-1,DESTINATION,MESSAGE\r\n")
//on close:
//api_stop is optional, because the engine will time-out on no usage anyway after 3 minutes

tcpclient->Send("API_Stop\r\n");
//TCP disconnect
tcpclient->Disconnect();

//handle incoming messages
OnSocketReceivedCallback()
String recv = tcpclient->ReceiveString();
//parse line-by-line (split by \r\n)
//adjust your GUI based on the sip stack state machine received in STATUS messages


Answer for API requests are received in the following format:
APIREQUEST:API_SetParametersAPIRESULT:true
So in the APIRESULT value you can have true/false for boolean return values, a number for int return values or a string, exactly as the API functions are defined.

Notifications are received in the following format:
WPNOTIFICATION,STATUS,-1,Registered.,NEOL   //successfully registered to SIP server
WPNOTIFICATION,STATUS,1,Ringing,2222,1111,2,Katie,callid,NEOL   //incoming call on first line
You will need to parse the STATUS messages and adjust your app (logic/GUI) accordingly (such as displaying a green "Accept" and red "Reject" button on incoming calls).

See the documentation and the examples for more details.

Features

The MVoIPSDK is a full featured SIP SDK for Windows including all the common features and many extra:
 

  • Standard SIP, compatible with all SIP servers, PBX, IP Phone and others
  • Enhanced NAT and network handling via rport, stable ports, fast ICE/STUN, peer to peer encrypted media (optional)
  • Enhanced media: 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
  • All common audio codec: G.711, G.729, GSM, iLBC, SPEEX, OPUS. HD audio (wideband) support
  • Unified communication: in/out calls, chat/IM, SMS, DTMF, conference, presence, BLF
  • PBX/Class5 features: Caller-ID display, voicemail (MWI), redial, call hold, mute, forward and transfer, call park and pickup, barge-in, early media, local ring-back, PRACK and 100rel, replaces
  • Extra features: voice recording, balance display, call timer, conference with built-in RTP mixer, barge-in, TLS, SRTP and many more

 

Licensing

  Demo Basic Advanced Gold
Trial 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
  Download Buy Now Buy Now Buy Now


All prices are in USD for perpetual license. Delivery within maximum one workday by email/download-link.