Speak through the internet
Direct , an
international , mobile phone
Ekiga is an H.323 compatible videoconferencing and VOIP/IP-Telephony
application that allows you to make audio and video calls to remote users with
H.323 hardware or software (such as Microsoft Netmeeting). It supports all
modern videoconferencing features, such as registering to an ILS directory,
gatekeeper support, making multi-user conference calls using an external MCU,
using modern Quicknet telephony cards, and making PC-To-Phone calls.
Ekiga was previously known as GnomeMeeting.
Twinkle
Twinkle is a soft phone for VoIP communcations using the SIP protocol.
You can use Twinkle for direct IP phone to IP phone communications or in a
network using a SIP proxy to route your calls.
In addition to making basic voice calls, Twinkle also provides the
following features:
2 call appearances (lines)
Multiple active call identities
Custom ring tones
Call Waiting
Call Hold
3-way conference calling
Mute
Call redirection on demand
Call redirection unconditional
Call redirection when busy
Call redirection no answer
Reject call redirection request
Blind call transfer
Reject call transfer request
Call reject
Repeat last call
Do not disturb
Auto answer
User defineable scripts triggered on call
events
E.g. to implement selective call reject or
distinctive ringing
RFC 2833 DTMF events
Inband DTMF
Out-of-band DTMF (SIP INFO)
STUN support for NAT traversal
Send NAT keep alive packets when using
STUN
NAT traversal through static provisioning
Missed call indication
History of call detail records for
incoming, outgoing, successful and missed calls
DNS SRV support
Automatic failover to an alternate server
if a server is unavailable
Other programs can originate a SIP call
via Twinkle, e.g. call from address book
System tray icon
System tray menu to quickly originate and
answer calls while Twinkle stays hidden
User defineable number conversion rules
WengoPhone
WengoPhone is a SIP phone which allows users to speak at no cost from one's
computer to other users of SIP compliant VoIP software. It also allows users to
call landlines, cellphones, send SMS messages and to make video calls. None of
this functionality is tied to a particular SIP provider and can be used with
any provider available on the market, unlike proprietary solutions such as
Skype.
SpeakFreely
Speak Freely is a 100% free Internet telephone originally written in
1991 by John Walker, founder of Autodesk. After April of 1996, he discontinued
development on the program. Since then, several other Internet
"telephones" have cropped up all over the world. However, most of
these programs cost money. Most of them have poor sound quality, and don't
support Speak Freely's basic features such as encryption, the answering
machine, or selectable compression.
Gspeakfreely
Gspeakfreely is a VoIP system with a flexible component system. It
implements a set of audio processing components which can be connected to each
other or mixed together. The most important components are net in/output, which
implement VoIP functionality and the OSS-DSP in/output component.
Additionally there is a ISDN in/output component that allows making
actual phone connections, and a file input component that can also play
Internet radio streams. Also included is a fading plug-in, that can for example
fade incoming calls into your music. New components can be developed for
specific purposes, and combined with existing ones.
The net in/output components also have conference support. The net input
component can mix incoming audio data from different hosts.
linphone
linphone is a SIP webphone with support for several different codecs,
including speex.
Linphone is a web phone: it let you phone to your friends anywhere in
the whole world, freely, simply by using the internet. The cost of the phone
call is the cost that you spend connected to the internet.
linphone features include:
Works with the Gnome Desktop under Linux,
(maybe others Unixes as well, but this has never been tested).
Nevertheless you can use linphone under KDE, of course!
Since version 0.9.0, linphone can be
compiled and used without gnome, in console mode, by using the program
called "linphonec"
Works as simply as a cellular phone. Two
buttons, no more.
Linphones includes a large variety of
codecs (G711-ulaw, G711-alaw, LPC10-15, GSM, and SPEEX). Thanks to the
Speex codec it is able to provide high quality talks even with slow
internet connections, like 28k modems.
Understands the SIP protocol. SIP is a
standardised protocol from the IETF, that is the organisation that made
most of the protocols used in the Internet. This guaranties compatibility
with most SIP - compatible web phones.
You just require a soundcard to use
linphone.
Other technical functionalities include
DTMF (dial tones) support though RFC2833 and ENUM support (to use SIP
numbers instead of SIP addresses).
Linphone is free software, released under
the General Public Licence.
Linphone is documented: there is a
complete user manual readable from the application that explains you all
you need to know.
Linphone includes a sip test server called
"sipomatic" that automatically answers to calls by playing a
pre-recorded message.
minisip
minisip is a SIP VoIP soft phone that implements additional security
features such as mutual authentication, encryption and integrity of on-going
calls, and encryption of the signaling (SIP over TLS). These security features
use work-in-progress IETF standards (SRTP and MIKEY).
OhPhone
OhPhone is a H.323 Video Conferencing Program compatible with other H.323
video conferencing programs including Microsoft NetMeeting.
OhPhone supports full duplex audio and bi-directional video. It requires
a full duplex sound card for audio support and a Bt848/878 based video card
(using the bktr driver) for video capture.
OhPhone uses the OpenH323 and PWLib libraries, developed by Equivalence
Pty.
Microsoft NetMeeting
NetMeeting is Microsoft's free H.323-compliant VoIP software phone for
Windows.
Internet Switchboard
The Internet SwitchBoard software is the client software for MicroTelco
services and is included with the purchase of the Internet PhoneJACK or
Internet PhoneCARD.
The Internet Switchboard was designed to be used with Quicknet hardware
and a MicroTelco Services account. The Internet SwitchBoard can be configured
with your firewall and features voice control with worldwide phone and dial
tone emulation.
The Internet SwitchBoard software is a PC-to-PC, PC-to-Phone,
Fax-to-Email, and Fax-to-Fax calling application that allows users to make low
cost calls worldwide to other phones or fax machines.
PC-to-Phone and Fax-to-Fax calls are as easy to dial as using a phone or
fax machine. PC-to-PC calls are made by dialing an IP address and are free.
FAX-to-Email documents are electronically transmitted as virus free e-mail
attachments and are free if sent individually. Recipients can view files in
popular e-mail clients.
Internet Switchboard features include:
Low calling rates through MicroTelco
Services
Auto call connect - automatic connection
and least cost routing feature that connects your call using the next
available carrier when the chosen carrier is unavailable
Least cost routing - for voice amongst
leading global IP carriers
Automatic firewall detection
Automatic fax detection - allowing a fax
machine to be plugged into a compatible card using the Internet
SwitchBoard and route faxes to email or another fax machine via the
Internet
International phone emulation's &
connectivity
Low account balance warning
Call connect announcement
Auto gain control
Supports any type of Internet connection,
including broadband
Microsoft Operating support including
Windows 98/98SE, ME, 2000, and Windows XP
SIPSet
SIPSet is a SIP User Agent with a GUI front end that works with the
Vovida SIP stack. You can use the SIPSet as a soft phone, to make and receives
phone calls from your Linux PC.
The current release of SIPSet implements these features and
functionality:
SIPSet can make calls through a SIP proxy.
SIPSet can register to receive calls
through a SIP proxy.
SIPSet can make and receive calls directly
with another User Agent.
KPhone
KPhone is a SIP User Agent for Linux. It implements the functionality of
a VoIP Softphone but is not restricted to this. KPhone is licensed under the
GNU General Public License. KPhone is written in C++ and uses Qt.
Jabbin
Jabbin is an open source Jabber client program that allows free PC to PC
calls using VoIP over the Jabber network.
Free VoIP Gateways
isdnh323
isdn2h323 is a Linux based H.323 - ISDN gateway. At the moment the
gateway supports the following features:
ISDN and H.323 users can initiate a
connection.
The number of simultaneous incoming and
outgoing calls is limited by the number of available ISDN channels only.
H.323 users can specify the ISDN number of
the other party.
The gateway's administrator can assign an
ISDN MSN to a H.323 user. This makes it possible for an ISDN user to call
a H.323 user directly. The gateway will choose the H.323 user id depending
on the called ISDN MSN.
The gateway discovers an available H.323
gatekeeper and registers with the gatekeeper. It's possible to specify one
or more phone prefixes the gateway is responsible for.
ISDN's touch-tones (DTMF) are translated
to H.323's user input messages and vice versa.
Automatic gain control (AGC)
Automatic echo compensation (AEC)
To avoid security problems the gateway
offers an option to restrict the IPs allowed to use the gateway for an
outgoing ISDN call.
The status of the lines and the
configuration of the gateway are written to a HTML file.
Errors and other information are logged
using Linux's syslog() feature.
Three H.323 codecs are supported: ALaw,
muLaw, and GSM.
Least Cost Router
PSTNGw
PSTNGw is a very simple PSTN to H.323 gateway program using the OpenH323
library. It allows H.323 clients to make outgoing calls, and incoming calls to
be routed to a specific H.323 client.
PSTNGw makes use of PWLib and the OpenH323 stack from Equivalence Ltd
Pty.
SIPRG (SIP Residential Gateway)
The SIP Residential Gateway (SIPRG) is an open source application based
on the Session Initiation Protocol (SIP). The SIPRG is an IP Telephony Gateway
that allows a SIP User Agent to make and receive calls between the Public
Switched Telephone Network (PSTN) and a SIP-based network such as VOCAL.
The SIPRG was developed with the VOVIDA SIP stack version 1.3.0, and
uses a QuickNet LineJACK card for connecting an Analog telephone line.
Currently, it supports only a single LineJACK card and is therefore a
single-line gateway.
Free VoIP
Gatekeepers
OpenH323 Gatekeeper - The GNU Gatekeeper
The OpenH323 Gatekeeper is a full featured H.323 gatekeeper, available
freely under GPL license. It is based on the Open H.323 stack. Both components
together form the basis for a free IP telephony system (VOIP).
OpenH323 Gatekeeper currently supports Linux, Microsoft Windows,
FreeBSD, Solaris and MacOS X.
Opengatekeeper
OpenGatekeeper is an Open Source H.323 Gatekeeper based on the work done
by the OpenH323 project.
OpenGatekeeper runs on Linux, FreeBSD and Win32 platforms.
OpenGatekeeper supports all the basic features of an H.323 Gatekeeper
such as registration, admissions and access control, address translation and
bandwidth monitoring and control.
OpenGateKeeper also supports many advanced features such as:
Gatekeeper routed calls
Support of H.323v2 alias types (party
number, URL, transport id and email address)
Support for gateway prefixes
Registration and call activity logs
Neighbour gatekeeper database
Registration time to live
Free VoIP Proxies
Partysip
Partysip is a SIP proxy server. It is a plugin oriented program with
registration, authentication and routing capabilities.
Partysip is a modular application where capabilities are added and
removed through plugins. The program comes with several GPL plugins. At this
step, partysip and its plugins could be used as a 'SIP registrar', a 'SIP
redirect server' and a 'SIP stateful proxy server'.
siproxd - SIP proxy/masquerading daemon
Siproxd is a proxy/masquerading daemon for the SIP protocol. It handles
registrations of SIP clients on a private IP network and performs rewriting of
the SIP message bodies to make SIP connections possible via an masquerading
firewall. It allows SIP clients (like kphone, linphone) to work behind an IP
masquerading firewall or router.
SIP (Session Initiation Protocol) is used by Softphones (Voice over IP)
to initiate communication. By itself, SIP does not work via masquerading
firewalls as the transfered data contains IP addresses and port numbers.
Load Balancer Proxy
The Load Balancer is a very simple proxy that is useful in SIP-based
VoIP installations where there are multiple ingress proxy servers. The Load
Balancer permits pooling these servers, thereby eliminating the need to balance
user demands for connectivity through a complicated provisioning algorithm.
All users can send their INVITEs and REGISTERs to the same SIP URI and
the Load Balancer will assign ingress proxy servers dynamically to each
transaction. In this way, the traffic load is balanced over a pool of proxy
servers based on the real-time demand for services.
STUN Server
The STUN (Simple Traversal of UDP through NATs (Network Address
Translation)) server is an implementation of the STUN protocol that enables
STUN functionality in SIP-based systems. The STUN server tar ball also include
a client API to enable STUN functionality in SIP endpoints. In addition there
is a command line UNIX client and a graphical windows client that check what
type of NAT the user is using.
STUN is an application-layer protocol that can determine the public IP
and nature of a NAT device that sits between the STUN client and STUN server.
The current version of the code supports most of RFC 3489 except the
ability to get OTPs from the server.
Free VoIP Software Development Libraries
Yate
Yate (Yet Another Telephony Engine) is a next-generation telephony
engine; while currently focused on Voice over Internet Protocol (VoIP) and
PSTN, its power lies in its ability to be easily extended. Voice, video, data
and instant messaging can all be unified under Yate's flexible routing engine,
maximizing communications efficiency and minimizing infrastructure costs for
businesses.
Yate can be used to build a:
VoIP server
VoIP client
VoIP to PSTN gateway
PC2Phone and Phone2PC gateway
H.323 gatekeeper
H.323 multiple endpoint server
H.323<->SIP Proxy
SIP session border controller
SIP router
SIP registration server
IAX server and/or client
IP Telephony server and/or client
Call center server
IVR engine
Prepaid and/or postpaid cards system
The software is written in C++ and it supports scripting in various
programming languages (such as those supported by the currently implemented
embedded PHP, Python and Perl interpreters) and even any Unix shell. The PHP,
Python and Perl libraries have been developed and made available in order to
ease development of external functionalities for Yate.
Yate is production-ready software and is easily extensible.
Yate is licensed under the GPL with an exception for linking with
OpenH323 and PWlib (licensed under MPL).
PJSIP
PJSIP is an open source SIP stack supporting many SIP
extensions/features, with the following key benefits:
Extremely portable
Write the application once, and it would run on many many platforms (all
Windows flavors, Windows Mobile, Linux, all Unix flavors, MacOS X, RTEMS, Symbian
OS, etc.)
Very small footprint
With less than 150KB for complete SIP features, PJSIP is ideal not only
for embedded development where space is costly but also for general
applications where smaller size means shorter download time for users.
High performance
...which means less CPU power requirement and more SIP
transactions/calls can be handled per second.
Many features
Many SIP features/extensions such as multiple usages in dialog, event
subscription framework, presence, instant messaging, call transfer, etc. have
been implemented in the library.
Extensive SIP documentation
There can never be enough documentation, so we try to provide fellow
developers with hundreds of pages worth of documentation.
PJSIP also features extensions, such as:
PJMEDIA
PJMEDIA is a complementary library for PJSIP to build a complete,
full-featured SIP user agent applications such as softphones/hardphones,
gateways, or B2BUA.
PJLIB-UTIL
PJLIB-UTIL is an auxiliary library providing supports for PJMEDIA and
PJSIP. Some of the functions/components in this library: small footprint XML
parsing, STUN client library, asynchronous/caching DNS resolver,
hashing/encryption functions, etc.
PJLIB
A small footprint, high performance, ultra portable abstraction library
and framework, used by PJSIP and PJMEDIA.
PJLIB is about the only library that PJLIB-UTIL, PJMEDIA, and PJSIP
should depend, as it provides complete abstraction not only to Operating System
dependent features, but it is also designed to abstract LIBC and provides some
useful data structures too.
Vovida Open Communication Application Library
(VOCAL)
The Vovida Open Communication Application Library (VOCAL) is an open
source project targeted at facilitating the adoption of VoIP in the
marketplace. VOCAL provides the development community with software and tools
needed to build new and exciting VoIP features, applications and services. The
software in VOCAL includes a SIP based Redirect Server, Feature Server,
Provisioning Server, Policy Server and Marshal Proxy along with protocol
translators from SIP to H.323 and SIP to MGCP. Our hope is that these modules
will act as building blocks to help you create better, faster and stronger VoIP
systems.
The GNU oSIP Library
oSIP is an implementation of SIP.
SIP stands for the Session Initiation Protocol and is described by the
RFC3261. This library aims to provide multimedia and telecom software
developers an easy and powerful interface to initiate and control SIP based
sessions in their applications. SIP is a open standard replacement from IETF
for H.323.
JVOIPLIB (Jori's Voice over IP library)
JVOIPLIB is an object-oriented Voice over IP (VoIP) library written in
C++.
eXosip
eXosip is a new library based on oSIP. It contains a high layer easier
to use for implementing SIP End point.
eXosip is a library that hides the complexity of using the SIP protocol
for mutlimedia session establishement. This protocol is mainly to be used by
VoIP telephony applications (endpoints or conference server) but might be also
usefull for any application that wish to establish sessions like multiplayer
games.
Free VoIP PBX Software
Asterisk
Asterisk is a complete PBX in software. It runs on Linux and provides
all of the features you would expect from a PBX and more. Asterisk does voice
over IP in three protocols, and can interoperate with almost all
standards-based telephony equipment using relatively inexpensive hardware.
Asterisk provides Voicemail services with Directory, Call Conferencing,
Interactive Voice Response, Call Queuing. It has support for three-way calling,
caller ID services, ADSI, SIP and H.323 (as both client and gateway).
Asterisk needs no additional hardware for Voice over IP. For
interconnection with digital and analog telephony equipment, Asterisk supports
a number of hardware devices, most notably all of the hardware manufactured by
Asterisk's sponsors, Digium. Digium has single and quad span T1 and E1
interfaces for interconnection to PRI lines and channel banks as well as a
single port FXO card and a one to four-port modular FXS and FXO card.
Also supported are the Internet Line Jack and Internet Phone Jack
products from Quicknet.
Asterisk supports a wide range of TDM protocols for the handling and
transmission of voice over traditional telephony interfaces. Asterisk supports
US and European standard signaling types used in standard business phone
systems, allowing it to bridge between next generation voice-data integrated
networks and existing infrastructure. Asterisk not only supports traditional
phone equipment, it enhances them with additional capabilities.
Using the Inter-Asterisk eXchange (IAX) Voice over IP protocol, Asterisk
merges voice and data traffic seamlessly across disparate networks. While using
Packet Voice, it is possible to send data such as URL information and images
in-line with voice traffic, allowing advanced integration of information.
Asterisk provides a central switching core, with four APIs for modular
loading of telephony applications, hardware interfaces, file format handling,
and codecs. It allows for transparent switching between all supported
interfaces, allowing it to tie together a diverse mixture of telephony systems
into a single switching network.
Asterisk is primarily developed on GNU/Linux for x/86. It is known to
compile and run on GNU/Linux for PPC along with OpenBSD, FreeBSD, and Mac OS X
Jaguar. Other platforms and standards based UNIX-like operating systems should
be reasonably easy to port for anyone with the time and requisite skill to do
so. Asterisk is available in the testing and unstable Debian archives,
maintained thanks to Mark Purcell.
GNU Bayonne
GNU Bayonne, the telephony server of GNU Telephony and the GNU project,
offers free, scalable, media independent software environment for development
and deployment of telephony solutions for use with current and next generation
telephone networks.
GNU Bayonne supports IVR scripting using hardware from Voicetronix,
Dialogic, Aculab, CAPI drivers, and Quicklink drivers under GNU/Linux. Bayonne
performs script driven IVR applications written in GNU Bayonne's native
scripting language, as well as access, conversion, and playing of audio from
remote URL's.
FreeSWITCH
FreeSWITCH is an open source telephony application written in C, built
from the ground up and designed to take advantage of as many existing software
libraries as possible. FreeSWITCH makes it possible to build an open source PBX
system or an open source voip switching platform as well as unite various
technologies such as SIP, H.323, IAX2, LDAP, Zeroconf, XMPP / Jingle etc. FreeSWITCH
can also be used to interface with other open source PBX systems such as
Asterisk, GNU Bayonne, or OpenPBX.
OpenPBX
OpenPBX.org is an open Source Private Branch Exchange System (PBX) in
software for the Linux Operating system. OpenPBX.org is licenesd under the GNU
General Public License or GPL.
Other VoIP Software
fobbit
Fobbit allows Creative VOIP Blaster hardware devices to be used under
NetBSD, Linux, and Microsoft Windows. It permits calls to be made to other
Fobbit users without the need for the original Creative Labs software, and
works from behind firewalls and NAT.
CPhone
CPhone is a cross-platform GUI for the OpenH323 VOIP libraries.
SIPTiger
SIPTiger is a web-based provisioning utility for Cisco's line of 7960
and 7940 Session Initiation Protocol (SIP) IP phones and Cisco SIP Proxy
Servers (CSPS). This utility is useful for anyone deploying Cisco 7960/7940 SIP
IP Phones.
SIPTiger version 2.3.1 is now available with expanded functionality and
several bug fixes. See the readme file for more details.
Cisco 7960/7940 SIP IP phones and Cisco SIP proxy servers are both
reliant upon a set of configuration files, which SIPTiger can parse and format
into a user-friendly web-based Graphical User Interface (GUI). After these
files are modified, the affected SIP phones can then be remotely reloaded to
allow the changes to take effect. SIPTiger also supports administrative-level
call forwarding configuration.