Microsip Api Documentation Hot!
The INI file is structured into sections such as [Settings] , [Account0] , [Account1] , etc. To manually configure a SIP account, you would add a section like this:
If you have multiple SIP accounts configured in MicroSIP.ini :
To communicate with MicroSip, your application must find its window handle ( HWND ) using the following class names: MicroSipWin microsip api documentation
MicroSIP.exe sip:user@domain.com
Launching MicroSIP.exe with parameters to take immediate action. The INI file is structured into sections such
MicroSipExecutor Sending Commands to MicroSip
MicroSIP-3.20.5.exe -c default -d sip:13812345678@proxy.example.com public class MicroSIPController [DllImport("user32.dll"
using System; using System.Runtime.InteropServices; public class MicroSIPController [DllImport("user32.dll", SetLastError = true)] private static extern IntPtr FindWindow(string lpClassName, string lpWindowName); [DllImport("user32.dll", CharSet = CharSet.Auto)] private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, ref COPYDATASTRUCT lParam); private const uint WM_COPYDATA = 0x004A; public struct COPYDATASTRUCT public IntPtr dwData; public int cbData; public string lpData; public static void SendAction(string actionCommand) // Find the MicroSIP window instance IntPtr hWnd = FindWindow("MicroSIP_WindowClass", null); if (hWnd == IntPtr.Zero) Console.WriteLine("MicroSIP is not running."); return; byte[] snoop = System.Text.Encoding.UTF8.GetBytes(actionCommand); int len = snoop.Length; COPYDATASTRUCT cds; cds.dwData = IntPtr.Zero; cds.cbData = len + 1; // Include null terminator cds.lpData = actionCommand; SendMessage(hWnd, WM_COPYDATA, IntPtr.Zero, ref cds); // Usage: // MicroSIPController.SendAction("action:dial?number=1234"); // MicroSIPController.SendAction("action:hangup"); Use code with caution. 4. Web Integration via URL Protocols
Limitations and considerations