The SIPSorcery project is an experiment into the depths of the Session Initiation Protocol (SIP). The project is a combination of the source code available here on GitHub and a hosted service.
C# C C++ Python HTML Ruby Other
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
Design More .svnbridge directories removed. Feb 21, 2016
obsolete Major refactor to make code base more suitable for SIP nuget package.… Feb 25, 2016
sipsorcery-core Issue #58 : May 4, 2018
sipsorcery-media Added vcpkg integration for sipsorcery-media. Apr 28, 2018
sipsorcery-servers Update server projects to use latest log4net. Apr 21, 2017
sipsorcery-silverlight Google contact work for dialplan. May 27, 2016
sipsorcery-simpleservers/Proxy Updated simple proxy exmaple to use latest nuget packages. Apr 21, 2017
sipsorcery-softphone More .svnbridge directories removed. Feb 21, 2016
sipsorcery-softphonev2 Updated softphone sample to use latest nuget package. Apr 15, 2018
sipsorcery-xmpp More .svnbridge directories removed. Feb 21, 2016
stable More .svnbridge directories removed. Feb 21, 2016
.gitignore Fixed : Issue 48 : Multiple network interface handle when registering… Nov 20, 2017
LICENSE.md Added gitignore, License, and Readme Jun 28, 2014
README.md removed the plain img tag Aug 26, 2016
ReleaseNotes.txt Attempting to solve commit issue after switching to new PC. Aug 21, 2010
SIP Sorcery Configuration Guide.docx Simplification of dialplan executioncount mechanism. Incorporation of… Feb 16, 2010
SIP Sorcery Configuration Guide.pdf Attempting to solve commit issue after switching to new PC. Aug 21, 2010
SIP Sorcery Developer Guide.docx Announced availability. Jun 24, 2009
SIP Sorcery Overview.docx DLR assemblies updated. Fixed memory and thread leak bug in App Serve… Jul 12, 2009
contributors.txt Removed metadata generation flag from CRM assembly. Feb 6, 2018
sipsorceryv2_install.txt Adjusted paths in nuspec file. Feb 16, 2016

README.md

Build status

The SIPSorcery project is an experiment into the depths of the Session Initiation Protocol (http://www.ietf.org/rfc/rfc3261.txt). The project is a combination of the source code available here on GitHub (previously sourceforge & codeplex) and a live service hosted at http://www.sipsorcery.com/. The project has its roots in a previous project called mysipswitch (http://www.codeplex.com/Wikipage?ProjectName=mysipswitch) which was deprecated in the mid noughties.

At its heart the project consists of a C# SIP protocol stack that implements all the required UDP, TCP and TLS transports. In addition to the SIP stack a number of related protocols: STUN (http://tools.ietf.org/html/rfc3489], SDP (http://tools.ietf.org/html/rfc4566), RTP & RTCP (http://tools.ietf.org/html/rfc3550) are implemented to varying degrees.

The SIP Proxy and SIP Application Server make heavy use of the Microsoft Dynamic Language Runtime (http://dlr.codeplex.com/) with the IronRuby (http://ironruby.codeplex.com/) engine being heavily used in dialplan processing and the IronPython (http://ironpython.codeplex.com/) engine being used for the SIP Proxy control script.

There are 3 main areas the SIPSorcery project focuses on:

The core SIP protocol stack and associated plumbing code, contained in the sipsorcery-core source code directory. The SIP server applications are:

  • SIP Proxy with dispatching mechanism for application server fault tolerance,
  • SIP Registrar,
  • SIP Registration Agent, registers contact information with 3rd party SIP providers,
  • SIP Application Server, multi-user SIP call processing using Ruby dialplans,
  • SIP Notification Server, supports the presence and dialog SIP event package notifications,
  • SIP Monitoring Server, receives and collates log messages from the other servers that can then be viewed from a web page or SSH session,
  • WatchTower Server, monitors SIP Application Servers and updates the SIP Proxy dispatch file,
  • SSH Server, uses the [url:NSsh|http://nssh.codeplex.com/] project to provide a multi-user SSH session for server monitoring.
  • An end-user Silverlight client application for managing the sipsorcery.com service, contained in the sipsorcery-silverlight code directory,
  • The SIP protocol stack is able to run within Silverlight allowing SIP TCP communications directly from a browser.
  • A basic C# softphone example application.

Service at: http://www.sipsorcery.com/.
Blog at: http://blog.sipsorcery.com/.
Forum at: http://forum.sipsorcery.com/index.php.
Twitter: http://twitter.com/sipsorcery.
NuGet: https://www.nuget.org/packages/SIPSorcery/.