About -> About
Table of Content (hide)
1. What is OpenSIPS
OpenSIPS (Open SIP Server) is a mature Open Source implementation of a SIP server. OpenSIPS is more than a SIP proxy/router as it includes application-level functionalities. OpenSIPS, as a SIP server, is the core component of any SIP-based VoIP solution.
With a very flexible and customizable routing engine, OpenSIPS unifies voice, video, IM and presence services in a highly efficient way, thanks to its scalable (modular) design.
What OpenSIPS has to offer, comes in a reliable and high-performance flavour - OpenSIPS is one of the fastest SIP servers, with a throughput that confirms it as a solution up to enterprise or carrier-grade class.
2. Why OpenSIPS ?
2.1 Performance
What OpenSIPS has to offer, comes in a reliable and high-performance flavour - OpenSIPS is probably the fastest SIP server, with a throughput that confirms it as a solution up to enterprise or carrier-grade class.
Over the course of time, many tests (benchmarks) were done, resulting in a dense collection of various performance tests and measurements (database interaction, memory/cpu usage, etc) for OpenSIPS. The collection of benchmarks can be accessed here , and it showcases OpenSIPS as one of the fastest SIP Proxies on the market.
2.2 Ease of Use
OpenSIPS is an easy to deploy software. It has :
- A well documented, per OpenSIPS version, manual available here , guiding you through all the steps needed for installation, configuration and OpenSIPS scripting
- A graphical, ncurses based, console interface ( called menuconfig ) which can be used by the user for configuring OpenSIPS compile time options, for including modules with external dependencies for compilation and also for generating OpenSIPS scripts with pre-configured capabilities ( currently supported are Residential-type script, Trunking and Load-Balancer )
- A series of recorded webinars , ranging from the very basics like compiling and installing OpenSIPS, going to more advances topics like SIP routing and OpenSIPS scripting.
2.3 Flexibility
Due to it's very flexible custom scripting language ( quite similar in syntax with the C language ) and to it's modular architecture, OpenSIPS can be easily used in a very wide range of scenarios - just plug in the needed modules for your desired functionalities and build on top of them by using OpenSIPS's scripting language.
2.4 Monitoring & Control
OpenSIPS can be easily monitored and controlled from the outside, thanks to the MI interface, Event Interface and Statistics interface. Via the MI interface combined with the Statistics Interface, the administrator can pull various live stats ( like consumed memory, UDP queue size, overall load, number of ongoing calls, etc ) that can be used to monitor the status of an OpenSIPS box. Via the Event Interface, the administrator has the ability to get notified by OpenSIPS when certain events get triggered on the proxy side ( like DB access is slow, a gateways is down, the memory is getting filled up, etc ) and thus can take quick action when such an event happens.
2.5 WEB Interface
OpenSIPS also has a Web Control Panel Application , OpenSIPS-CP. The interface can be used for provisioning OpenSIPS, but it can also display and monitor various statistics, as well as send control actions to OpenSIPS ( like instructing OpenSIPS to reload some database tables, etc ).
3. OpenSIPS Features
OpenSIPS has to offer many important and interesting features. To mention some of the most important ones:
- SIP registrar server
- SIP router / proxy (lcr, dynamic routing, dialplan features)
- SIP redirect server
- SIP presence agent
- SIP back-to-back User Agent
- SIP IM server (chat and end-2-end IM)
- SIP to SMS gateway (bidirectional)
- SIP to XMPP gateway for presence and IM (bidirectional)
- SIP load-balancer or dispatcher
- SIP front end for gateways/asterisk
- SIP NAT traversal unit
- SIP application server
4. Pre-requisites
Since OpenSIPS is known to work on most *nix based systems, installing and running OpenSIPS requires some very basic Linux knowledge.
Also, since OpenSIPS is a SIP proxy, you will most likely need some basic SIP knowledge in order to deploy / debug OpenSIPS in some more advanced scenarios.
Last but not least, you will be needing some basic programming logic knowledge - The OpenSIPS configuration file is text-based, written in an OpenSIPS custom language, very similar to the C language.
5. Getting Started with OpenSIPS
If you want to get started building platforms/solutions with OpenSIPS, here are a few steps that should help :
- Go through the Getting Started tutorial, which will show you how to get a fully functional platform in a matter of minutes
- Walk your way through the OpenSIPS Manual for your version, which will guide you through Configuring and using the OpenSIPS Scripting modules in order to achieve your desired functionalities
- If you prefer the classic book versus online material, see Building Telephony Systems with OpenSIPS 1.6
- If you have a question / issue / bug to report, please see our Support Page
0 comments: