sipcli 2.3

Contents
SipCLi
Introduction

SipCli is a command line SIP (Session Initiation Protocol) user agent runs under Windows (XP, Vista, 7, 8, 2003-2008 Server) which enables making SIP (Based on RFC 3261) based calls. You can use sipcli for: sipcli Editor's Choice
  • Test phone numbers (Penetration test for a SIP network). 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, 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 collect user defined number of digits from dialed endpoints.
  • sipcli can also read a text message specified with -t option. sipcli uses Microsoft's TTS engine to produce auido from the text.
  • sipcli supports ENUM (RFC 37612).
  • SipCli supports automated tasks defined in scenario scripts.
  • You can transfer a successful call to another SIP endpoint.

  • SipCli can send text messages (SIP MESSAGE). This feature is supported only in commercial edition.

System Requirements
  • A Windows system with at least 512 MBytes of RAM.

  • Microsoft.NET Framework v2.0.50727 (Min.)

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:

  1. 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)
     - 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
  2. Run sipcli from command line with the destination number (C:\sipcli 5551010).
  3. 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: g711a.
    Codec=g711a
    ' 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
    ' Specify scenario file's absolute path. File must be in clear text format.
    ScenarioFile=C:\scenario.txt
    ' Specify a SIP endpoint Id or a SIP URI to transfer a successful call.
    ' Sample SIP URI sip:1234@192.168.10.1:5060
    Referto=7751010
    ' 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.
    ' You can specify TTS voice profile (Gender). Run Sipcli with -v parameter to list
    ' available profiles.
    VoiceProfile=0
    ' The Volume property sets the base volume (loudness) level of the TTS synthesized voice.
    ' Values for the Volume property range from 0 to 100, representing the minimum and
    ' maximum volume levels, respectively.
    TTSVolume=100
    ' You can specify text message to send when -m switch used at command line.
    TexttoSend=This is my test message.
    ' You can enable or disable ENUM lookup, disable by default.
    ENUM=0
    ' How many digits will be collected maximum
    ' (Used when you set WavFile paramter or use -w command line switch)
    DigitLength = 0
    ' How many second will be waited after last digit entered if user does not dial #
    ' (Used when you set WavFile paramter or use -w command line switch)
    DigitTimeout = 2
    ' How many times welcome message will be played if no user input (DTMF digits) detected
    ' (Used when you set WavFile paramter or use -w command line switch)
    LoopCount = 1


    [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 02135551122 -u 02135551010 -d 192.168.20.1:5090
SIP username will be set as 02135551010 and call request will be sent to SIP proxy 192.168.20.1 UDP port 5090. Command line switches;
 -u : Username
 -p : Password
 -n : Display Name (Called ID)
 -d : SIP_Domain:Port
 -l : Logging [0|1|2|3]
 -c : Codec [g711a|g711u|g729]
 -o : Timeout
 -t : Text to read
      Sample : C:\Program Files\sipcli 02135551122 -u 5551010 -t "This is a test message"
 -m : Text to send
      Sample : C:\Program Files\sipcli 02135551122 -u 5551010 -m "This is a test message"
 -w : Absolute path of playout file (8 KHz, 16 bit sampled mono wave file)
      Sample : C:\Program Files\sipcli 02135551122 -u 5551010 -w "C:\Program Files\sipcli\test.wav"
 -s : Absolute path of scenario file (See "8. Scenarios for automated tasks")
      Sample : C:\Program Files\sipcli 02135551122 -u 5551010 -s "C:\Program Files\sipcli\scenario.txt"
 -r : SIP Endpoint Id or a SIP URI to transfer a successful call
 -f : Length of the digit string to be collected (Used with -w)
 -g : Inter digit time out (Used with -w)
 -h : Playout count (Used with -w)
 -v : Lists available TTS voice profiles in the system.
If you use -w switch without a wave file or no WavFile entry in sipcli.ini, built-in audio record will be played out.

You can make a call to an E.164 number using ENUM if the E.164 has an ENUM entry;
 C:\sipcli>sipcli 02135551122 -enum
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
Custom Scenarios

Famous Software Download SipCli supports automated tasks defined in scenario scripts. You can execute scenarios defined in scenario files. Scenario files are text files consists of following sections and parameters. There are two sections in scenario files; [Prompts] and [Actions]. [Prompts] sections defines prompts can be used by Play action. A prompts can be a recorded audio file in wave format or a text can be synthesized by TTS engine. Every prompt must have a numeric Id associated with it. You must specify full path of wave file and wave files for the prompts must be in 16 bits, 8 KHz, mono format If wave file cannot be found or cannot be encoded by SipCli, the wave file will not be imported to the scenario.

 [Prompts]
 0=C:\sipcli\Welcome.wav
 1=C:\sipcli\Info-1.wav
 'TTS Text
 2="This is a test call"

[Actions] section contains actions to be executed. Every action has also a numeric Id and action identifier and parameters. Defined actions are Play, Exit, Send, Exec, Eval and Wait. Actions and their parameters are listed below with samples. Sipcli always starts scenario with action id = 0. Every actions' last parameter is the next actions' id except Exit which terminates the scenario. If you define an no-existent action as a next action SipCli will break the execution of the script. Script execution will also be terminated if the action step is not properly defined.

 [Actions]
 'Play Format
 'Step=Play-<prompt>|<Count>|<DigitLength>|<DigitTimeout>|<Go to step>
 0=Play-0|3|1|4

 'Evaluate Format
 'Step=Evaluate-<Default Case>|<Go to Step><Case 1>|<Go to Step>..;<Case n>|<Go to Step>
 1=Evaluate-Default|7;23|2;24|3;25|7

 2=Play-1|3|7|3|2
 3=Play-2|3|7|3|4

 'Send Format
 'Step=Send-<Digit(s) to send>|<Go to step>
 4=Send-124124|5

 'Wait Format
 'Step=Wait-<Prompt>|<Wait for seconds>|<Go to step>
 5=Wait-0|30|6

 'Record Format
 'Step=Save-<Prompt>|<Duration>|<Save to Directory>|<Go to step> 
 6=Save-0|30|C:\SipCli\Messages|7

 'Exec Format
 'Step=Exec-<Full path to executable>|<Command line parameters>|<Wait for completion: True(1)
 '/False(0)>|<Go to step>
 'Variables (Case sensitive):
 '%called_number%, %calling_number%, %received_digits%, %date%, %sipdomain%
 'Set command line parameter to "" if no parameter will be used
 7=Exec-"C:\sipcli\test.bat"|"-u %called_number"|1|8

 'Exit Format
 'Step=Exit
 8=Exit
Scenario Editor

You can create your own scenario using SipCli Scenario Editor (SEditor.exe). Before creating your scenario you must define audio prompts to be used in your scenario. Prompt and Action definitions for the scenario are stored in text files.

Purchase Free version of sipcli supports maximum 3 second of playout and maximum 3 different actions in scenario definitions. You can buy unlimited version for 79 USD. Please enter all requested data in the purchase form. 'System Id' is displayed on command line when your run SipCli without any parameter; please enter System Id as displayed (Case Sensitive). You will receive your Registration key via e-mail with installation instructions after making payment. Issued registration keys are valid for the latest version of SipCli so please make sure that you have installed latest version of SipCli. Click here for purchase form.
Trademarks

Microsoft, Win32, Windows 2000, Windows, Windows NT and Windows Vista are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Awards

sipcli Antivirus Report from soft82.com
Download sipcli from DownloadRoute.com sipcli - SOFTPEDIA 100% CLEAN AWARD sipcli rated 5 stars on www.softarea51.com FreeVistaFiles Download Typhoon - Editor's Pick

Support TekSIP Forums at forums.teksip.com
Contact yasin at kaplan.net
Copyright

All material on this website is Copyright © 1995-2013 Yasin KAPLAN. All rights reserved. If you would like permission to use any of this material, please contact Yasin KAPLAN.

Navigation << Back to home page