From GNU Telephony

Jump to: navigation, search


distributed as:sipwitch
external links:GNU SIP Witch
license used:GNU GPL 3.0
required by:
related to:GNU uCommon C++ GNU oSIP exosip


SIP Witch is an official package of the GNU Project as of August 10th 2007. GNU SIP Witch is also part of GNU Telephony & the GNU Telecom subsystem.

GNU SIP Witch is a call and registration server for the SIP protocol. As a call server it services call registration for SIP devices and destination routing through SIP gateways. GNU SIP Witch does not perform codec operations or media proxying and thereby enables SIP endpoints to directly peer negotiate call setting and process peer to peer media streaming even when when multiple SIP Witch call nodes at multiple locations are involved. This means GNU SIP Witch operates without introducing additional media latency or offering a central point for media capture.

GNU SIP Witch is designed to support network scaling of telephony services, rather than the heavily compute-bound solutions we find in use today. This means a call node has a local authentication/registration database, and this will be mirrored, so that any active call node in a cluster will be able to accept and service a call. This allows for the possibility of live failover support in the future as well.

GNU SIP Witch is not a SIP "router", and does not try to address the same things as a project like iptel "Ser". GNU SIP Witch is being designed to create on-premise SIP telephone systems, telecenter servers, and Internet hosted SIP telephone systems. One important feature will include use of URI routing to support direct peer to peer calls between service domains over the public internet without needing mediation of an intermediary "service provider" so that people can publish and call sip: uri's unconstrained. GNU SIP Witch is about freedom to communicate and the removal of artifical barriers and constraints whether imposed by monopoly service providers or by governments.


Current goals include improving usability in the desktop mediation role, and as a local SIP telephone server.


Proper documentation remains rather scarce, although there is a Howto Deploy SIP Witch On Ubuntu to help get started. There is also ubuntu-desktop-telephony-stack which refers to how GNU SIP Witch might be used as a desktop SIP mediation stack in conjunction with Empathy and Telepathy VoIP support. The overall role of sipwitch in regard to the development of intercept-free secure VoIP networks is also covered in the harvard2010 presentation.


All releases of sipwitch are found at You can also browse sipwitch's code.

Related Projects

GNU SIP Witch depends on the UCommon library, which may merge with and become GNU Common C++ 2.0 later this year or early next year. CVS for and new distributions of UCommon will be found in the GNU Telecom project on an interim basis until then. GNU SIP Witch also uses libeXosip2 and GNU oSIP, and these may be found at their respective sites.

GNU SIP Witch is used in Ubuntu GNU/Linux and Fedora GNU/Linux with the indented role of being a desktop SIP media service and means to create bottom-up secure voice calling networks in conjunction with secure peer-to-peer VoIP clients such as those based on the ZRTP protocol.

Personal tools