| Introduction
|
sipcli is a command line SIP user agent runs under Windows (XP, 2003 Server)
which enables making SIP (Based on RFC 3261) based calls. You can use sipcli for:
- Test phone numbers. You can use Visual Basic Scripts to run sipcli recursively. See Running section for a sample VB script.
- Broadcast your recorded audio or text message to SIP/PSTN users. Most of network
monitoring system supports invoking external executables for event notification.
|
| Major Features
|
-
Simple, easy to use.
-
You can set source IP interface, SIP port, codec, SIP proxy/port, SIP username and password.
-
You can play built-in or a user specified wave file to remote SIP
endpoint (G.711 A-Law and Mu-Law only; other codecs not supported
for playout).
-
sipcli can also read a text message specified with -t option. sipcli
uses Microsoft's TTS engine to produce auido from the text. |
| System Requirements
|
|
| Installing and Uninstalling
|
To install sipcli, create a directory, extract sipcli.zip to that directory.
To uninstall sipcli, simply remove the installation directory. |
| Download
|
Click here to download sipcli. |
| Running
|
Open a command line prompt and locate sipcli's installation directory:
-
Create sipcli.ini in the installation directory. You can place sipcli.ini to a directory
which is in search path of your environment. If you do not create sipcli.ini
sipcli initialized with following default values:
- Available first interface with IPv4 address with a default gateway will be
selected as source IP address (ListenIP)
- SIP port: 5070
- Logging: Informative (0)
- Codec: g729
- Timeout 30 seconds
- SIP Domain: ListenIP:5060
- Username: 5550000
- Password: 'Blank'
- Text to read: This is a test call made by SIP c l i
-
Run sipcli from command line with the destination number:

-
A message indicating result of the test call will be displayed to the console.
Here is a sample VB Script for running sipcli recursively to dial a series phone numbers.
Script takes file name which contains phone numbers as command line argument. Phone numbers file must contain
one phone number per line.
Set WshShell = WScript.CreateObject ("WScript.Shell")
Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.Pattern = "^\d+$"
Set FSOPath = CreateObject("Scripting.FileSystemObject")
FilePath = FSOPath.GetAbsolutePathName("")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set PhoneNumbersFile = objFSO.OpenTextFile(FilePath & "\" & WScript.Arguments(0))
Result = FilePath & "\test-results.txt"
strRun = "%comspec% /c echo Test Results: > " & Result
WshShell.Run strRun, 0, True
Do Until PhoneNumbersFile.AtEndOfStream
PhoneNumber = PhoneNumbersFile.ReadLine
Set colMatches = objRegEx.Execute(PhoneNumber)
If colMatches.Count Then
strRun = "%comspec% /c " & FilePath & "\sipcli.exe " & PhoneNumber & " >> " & Result
WshShell.Run strRun, 0, True
End If
Loop
PhoneNumbersFile.Close
Test result will be written to "test-results.txt" file.
|
| sipcli.ini
|
You can find sipcli.ini parameters below:
[CLI]
' ListenIP, you can set source IP interface. sipcli selects first available
' IPv4 address with a gateway.
ListenIP=192.168.10.2
' ListenPort, you can set source UDP port, default: 5070
ListenPort=5070
' You can set logging level
' 0: Informative, 1: Sessions, 2: Errors, 3: Debug
' Default: Informative (0)
Logging=0
' You can set user codec, options: g711a, g711u, ilbc and g729. Default: g729.
Codec=g729
' You can specify a wave file for playout. Wave file must be in 8 KHz, 16 bit sampled
' mono file. You must use command line switch -w to play specified file to remote
' SIP endpoint. Only G.711 A-Law and Mu-Law codecs are supported for playout.
WavFile=C:\Test.wav
' You can specify call establishment timeout. Default 30 seconds, maximum 180 seconds.
Timeout=25
' You can specify text message to read when -t switch used at command line.
TexttoRead=This is my test message.
[Proxy]
' Specify SIP Proxy domain and optionaly UDP port. Default ListenIP:5060
SIPDomain=192.168.10.10:5080
' Specify SIP username. Default: 5550000
Username=5550000
' Specify password. Default is blank.
Password=
You can overwrite Username and SIPDomain parameters using command line parameters:
C:\sipcli>sipcli 02125551122 -u 02125551010 -d 192.168.20.1:5090
SIP username will be set as 02125551010 and call request will be sent to SIP proxy
192.168.20.1 UDP port 5090. Command line switches;
-u : Username
-p : Password
-d : SIP_Domain:Port
-c : Codec [g711a|g711u|ilbc|g729]
-l : Logging [0|1|2|3]
-o : Timeout
-t : Text to read
-w : Playout file absolute path (8 KHz, 16 bit sampled mono wave file)
If you use -w switch without a wave file or no WavFile entry in sipcli.ini,
built-in audio record will be played out.
If you run sipcli without any parameters you'll get quick help with Listen IP, SIP Port
(UDP) and RTP Port (UDP) as shown below:
IP Adr.: 192.168.10.1
UDP P. : 5073
RTP P. : 5074 |
| Purchase
|
Free version of sipcli supports maximum 3 second of playout. You can buy unlimited version for 29 USD.
|
| Trademarks
|
Microsoft, Win32, Windows 2000, Windows, and Windows NT are either registered
trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. |
| Links
|
|
| Contact |
yasin at kaplan.net |
| Copyright |
All material on this website is Copyright (C) 2007 Yasin KAPLAN. All rights reserved. If you would like permission to use any of this material, please contact Yasin KAPLAN. |
| Advertisement |
|