GNU SIP Witch Initially Released

SIP (Session Initiation Protocol) is an IETF standard protocol for interconnecting telephone devices over TCP/IP networks. GNU SIP Witch is a call server which implements the SIP protocol standard while supporting generic phone system features like call forwarding, hunt groups and call distribution, call coverage and ring groups, holding and call transfer, as well as offering SIP specific capabilities such as presence and messaging. GNU SIP Witch will support use of secure telephone extensions and enables communication privacy through the use of peer-to-peer audio and video sessions directly between connected endpoints. GNU SIP Witch also supports placing and receiving calls directly with remote users over the public Internet without requiring the use of mediating VOIP "service providers" in what is commonly called SIP "Business-to-Business" (b2b) calling.

GNU SIP Witch can be used together with and to interconnect common free software and IETF standard compliant voice and video capable SIP based desktop softphone applications such as Ekiga, Twinkle, Linphone, and OpenWango, as well as most standard compliant SIP telephone devices. When used together with a standard compliant SIP media application server such as GNU Bayonne, GNU SIP Witch will be able to offer users and remote callers access voice messaging and media application services. In the future GNU SIP Witch will offer STUN services and optional packet forwarding to facilitate interconnection when behind NAT's and firewalls in IPV4 networks. GNU SIP Witch also supports IPV6.

GNU SIP Witch is not a SIP proxy, a multi-protocol telephone server, or a IP-PBX, and does not try to address the same things like asterisk, yate, or GNU bayonne2, all of which make use of direct media processing where media connections and streaming are at least initially established between each endpoint and the IP-PBX server itself. Direct media processing adds additional latency, and by introducing a central point where all media streams can be processed, compromises both the privacy of calls and security of encrypted telephone sessions.

Instead, GNU SIP Witch focuses on doing just one thing as a pure SIP call server, and will try to do that one thing very well. My goal is to focus on achieving a network scalable telephone architecture built around the SIP protocol that can be deeply embedded, which can support secure calling nodes, that can integrate well with other SIP based/standards compliant components, and, by not engaging in media processing, that is not license encumbered by the use of "mandated" patent encumbered and proprietary telephony media codecs.

The initial release of GNU SIP Witch (0.1.0) only offers support of SIP registration, multi-target registration, authentication peering over SIP, querying of registered user agents, basic audio and video call processing between locally registered user agents with call distribution for multi-target registrations, and basic SIP instant messaging.

GNU SIP Witch requires the GNU oSIP library and eXosip extension library, and the (GNU) uCommon/GNU Common C++ 2.0 core library. GNU SIP Witch is offered under the terms of the GNU General Public License Version 3 or later, and has no dependencies on non-free software. GNU SIP Witch can be compiled and used on any GNU/Linux distribution supporting GCC 2.95 or later, has been tested with OpenSolaris, Free/Open/NetBSD, OS/X, QNX Nutrino, and can be built for use on Microsoft Windows targets using Debian GNU/Linux hosted MinGW32 toolchains. GNU SIP Witch is a free software package that is part of the GNU Project and the GNU Telecom Subsystem.

Posted by David Sugar 2008-04-21