Original Website -


SIPr pronounced as Sipper is a complete SIP application testing framework ideally suited for feature, interop, regression, acceptance and field simulation.
SIPr is a SIP development framework that makes it easier to develop, deploy and maintain SIP
applications and SIP tests.
The SIP stack in SIPr is the worlds most flexible and configurable SIP stack and that makes it ideally suited to develop test cases on it.

SIPr is however not just a SIP stack but provides an application server style programming
model that offers a range of constructs from extremely simple and very high level to complex
low level interfaces to control every aspect of the SIP stack.

At every level Sipper is designed with ease of use in mind, simple things are done extremely
easily and complex things are made possible.

The goal is to enable Creation of any call flow without exceptions”

We have two high level objectives –

  • Make anything possible in SIP available to SIPr users; specifically any SIP call flow should be possible on SIPr
  • Make sure that the usage of the features is made available in the simplest possible way.

SIPr value proposition

  • Simulate SIP endpoints, in the form of SIP test cases for any SIP call flow
  • Simulate SIP servers like B2BUA, Redirect server, Registrar, Proxy, IMS entities etc.
  • Create test cases by using helper scripts, scripting and also trace/capture based automatic generation
  • Complete SIP Signaling and basic media support
  • SIP and HTTP integration, write tests that exercise converged applications including Web2.0 mashups
  • Regression testing with automated scripts, cron or trigger based

SIPr architecture

At a first glance SIPr is like a standard SIP stack, which it is fundamentally, but where it shines is the configurability and plauggability. By default the standard SIP behavior is exhibited by SIPr but you can optionally control every single aspect of SIP stack like

  • Change message from/to the wire in any way at transport layer
  • Modify transport settings, including switching transports
  • Supports multiple transports, can even associate different transports, IP, Ports to different tests on the same SIPr installation
  • Completely pluggable and extensible parsers
  • FSM based transaction state machines, modifiable by transaction handlers, individual transaction timers can be controlled even at each test case level
  • Complete control of all SIP messaging including dynamic headers on the fly, new parameters etc
  • Complete dialog state machine control
  • Configuration at various levels, completely multithreaded for simultaneous test simulation
  • Fully automated to run tests in batch (test suites)
  • Exposes a very powerful (yet simple) SIP API to write SIP tests

SIPr's power is its many layered API where simple usage is extremely simple and approachable to non-programmers. As an example you can write simple tests using code generating scripts without writing a single line of code. If you want more control you can use SIPr simple APIs but if you want to complelet control any aspect of SIP call then SIPr allows you to do practically anything. Since SIPr is open source you can even modify and re-distribute any enhancement that think of yourself or release a new plugin.

Getting started

Getting started with SIPr is very easy. On the main SIPr website there is plenty of material to get you going. In fact there is a wiki page dedicated to getting started on SIPr Getting started with SIPr

Created by: rnakhan, Last modification: Fri 31 of Oct, 2008 (18:37 UTC)
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+