Beruflich Dokumente
Kultur Dokumente
CHAPTER 1
1. INTRODUCTION
The basic steps involved in originating an Internet telephone call are conversion of the
analog voice signal to digital format and compression/translation of the signal into
internet protocol packets for transmission over the internet; the process is reversed at the
receiving end. Voice over internet protocol systems employ session control protocols to
1
Design and Develop VOIP Dialer and Recording Database
control the set-up and tear-down of calls as well as audio codecs which encode speech
allowing transmission over an internet protocol network as digital audio via an audio
stream. Codec use is varied between different implementations of voice over internet
protocol (and often a range of codecs are used); some implementations rely on
narrowband and compressed speech, while others support high fidelity stereo codecs.
Voice over Internet Protocol is a technology for communicating using “Internet
protocol” instead of traditional analog systems. Some voice over internet protocol
services need only a regular phone connection, while others allow you to make
telephone calls using an Internet connection instead. Some voice over internet protocol
services may allow you only to call other people using the same service, but others may
allow you to call any telephone number - including local, long distance, wireless, and
international numbers. Voice over internet protocol is mainly concerned with the
realization of telephone service over internet protocol-based networks such as the
internet and intranet. Internet protocol telephony is currently breaking through to
become one of the most important service on the net. The actual breakthrough was made
possible by the high bandwidth available in an intranet and, increasingly, on the internet.
Another fundamental reason is the cost associated with the various implementations.
The public telephone network and the equipment makes it possible are taken for
granted in most parts of the world. Availability of a telephone and access to low-cost,
high quality worldwide network is considered to be essential in modern society
2
Design and Develop VOIP Dialer and Recording Database
(telephone are even expected to work when the power off).There is, however, a
paradigm shift beginning to occur since more and more communication is in digital
form and transported via packet networks such as internet protocol and Frame Relay
frames. Since data traffic, there has been considerable interest in transporting voice over
data networks. Support for voice communications using the internet protocol, which is
usually just called “Voice over internet protocol” or voice over internet protocol, has
become especially attractive given the low-cost, flat-rate pricing of the public Internet.
In fact, toll quality telephony over internet protocol has now become one of the key
steps leading to the convergence of the voice, video, and data communications
industries. The feasibility of carrying voice and signaling message over the internet has
already been demonstrated but delivering high-quality commercial products,
establishing public services, and convincing users to buy into the vision are just
beginning.
1.4 Definition
Voice over internet protocol can be defined as the ability to make telephone calls
and to send facsimiles over internet protocol- based data networks with a suitable
3
Design and Develop VOIP Dialer and Recording Database
quality of service and a much superior cost/benefit. Equipment producers see Voice
over internet protocol as a new opportunity to innovate and copete. The challenge for
then is turning this vision into reality by quickly developing new voice over internet
protocol-enabled equipment. For Internet service providers, the possibility of
introducing usage-based pricing and increasing their traffic volumes is very attractive.
Users are seeking new types of integrated voice/data applications as well as cost
benefits. Successfully delivering voice over packet networks presents a tremendous
opportunity; however, implementing the products is not as straightforward a task as it
may first appear. This document examines the technologies, infrastructures, software,
and systems that will be necessary to realize voice over internet protocol on a large
scale. The types of applications that will both drive the market and benefit the most
from the convergence of voice and data networks will be identified.
Voice over Internet Protocol owes its existence to the difference in price
between long-distance connections and the use of data networks. This technology uses
data networks such as the Internet to transmit voice information from a simple PC. A
telephone conversation is conducted via microphone and loudspeaker connected to the
sound card. Microsoft NetMeeting is the most common Internet telephony program. Its
feaures also include Internet video communication (image telephony). Or, a specially
adapter can be used to hook standard telephones up to the data network. All devices that
support the same standard can be connected over one data network. Gateways are also
available for connecting these devices to
telephones in the normal telephone network. These possibilities have led to the creation
of IP-based telephone systems using voice over internet protocol. The development of
voice over internet protocol technology is summarized and predicted in the following:
4
Design and Develop VOIP Dialer and Recording Database
CHAPTER 2
2. Voice Over Internet Protocol Components
2.1End-user equipment
It is used to access the VoIP system to communicate with another end point.
Connection to the network may be physically cabled or may be wireless. The end-user
equipment may be a phone that sits on a desk or a softphone that is installed on a
PC.Functions include voice and possibly video communication, and may contain instant
messaging, monitoring and surveillance capabilities. 7 Though end-user equipment is
often deployed on an internal, protected network, it is usually is not individually
protected by other devices (firewalls) and may be threatened if the equipment has
vulnerabilities. The threat, of course, is also dependent on the level of security that
exists on the internal network. If the device is allowed to reach or can be reached from a
public or unprotected network, there may be threats that are not normally found on the
internal network. Softphone software may have vulnerabilities, there may be
vulnerabilities in the operating system it is running on, and there may be vulnerabilities
of other applications running on the operating system. Patching operating system, soft
phone software and those other applications can help mitigate the risk of any threats that
are present. Additionally, some end-user equipment may have firmware upgrades that
can be applied or may be able to obtain updated software during registration. For
operating system based Voice over internet protocol solutions, consideration should be
given to virus detection and host based firewalls as well as host-based intrusion
detection. Centralization of management of these security components is best, allowing
the users of the solution to focus on their duties instead of security details, increasing
productivity.
Performance can be gained by separating the data traffic from the voice over
internet protocol traffic by putting them on different virtual local area networks. This
allows management of the data to be segregated so it can be handled based on data type.
Since the voice over internet protocol data must have a higher level, isolation of the data
types via virtual local area network can help increase the performance at the cost of that
on other virtual local area network. This cost may be very low to the other applications.
Although virtual local area network should not be relied on alone, they will add a layer
of security. The ability to listen to, or sniff, the network, potentially allows the hacker to
monitor calls and manipulate the voice over internet protocol system. It is generally
more difficult for a hacker to sniff or interfere with the voice traffic from the data virtual
local area network when the voice traffic is on its own virtual local area network, but it
can be done by manipulating the routing of the network. Encryption can also help
defend against sniffing. Another internet protocol network concern is network
slowdowns that might increase latency, jitter or packet loss. Slowdowns can be caused
for many reasons including configuration issues, denial of service attacks or high
bandwidth utilization by other systems on the network. Configuration issues are
probably best addressed with education and checking mechanisms, such as having a co-
worker verify configurations. Denial of service attacks are difficult to defend against,
but may be reduced by filtering the traffic that can communicate on the network to be
only that which is allowed. This may prove difficult due to the use of random ports by
voice over internet protocol. Regular network bandwidth analysis can help with tuning
of a network and helps with capacity planning. Being aware of bandwidth growth trends
helps network administrators know when bandwidth needs to be addressed.
Voice over internet protocol suffers from most of the same internet protocol
network vulnerabilities as other systems. A well secured internal network is the first step
to protecting the voice over internet protocol system as it was for the pre-existing
internet protocol network. Care must be taken to ensure security solutions keep latencies
low or the security solution itself may prove to be a denial of service.
6
Design and Develop VOIP Dialer and Recording Database
2.3 Call processor
These functions can include phone number to internet protocol translation, call
setup, call monitoring, user authorization, signal coordination, and may help control
bandwidth. 6 Call processors are usually software that runs on a popular OS. This leaves
it open to network attacks for the vulnerabilities of the given OS, the vulnerabilities of
the application and other applications running on the operating system.
2.4 Gateways
7
Design and Develop VOIP Dialer and Recording Database
CHAPTER 3
3.working
Voice over internet protocol converts the voice signal from your telephone into a
digital signal that can travel over the internet. If you are calling a regular telephone
number, the signal is then converted back at the other end. Depending on the type of
voice over internet protocol service, you can make a voice over internet protocol call
from a computer, a special voice over internet protocol phone, or a traditional phone
with or without an adapter. In addition, new wireless "hot spots" in public locations such
as airports, parks, and cafes allow you to connect to the Internet, and may enable you to
use Voice over internet protocol service wirelessly. If your Voice over internet protocol
service provider assigns you a regular telephone number, then you can receive calls
from regular telephones that don’t need special equipment, and most likely you’ll be
able to dial just as you always have.
8
Design and Develop VOIP Dialer and Recording Database
to learn about Latinos not connected to the Internet-what they know about voice over
internet protocol and why they are not online. Moreover, we sought to learn whether the
lower cost of telephone calls associated with voice over internet protocol are enough of
an incentive for non-Internet users to get online, and, if so, under what conditions. Four
focus groups of 9 to 12 participants were held in Los Angeles in August 2008 (total
sample size, N = 43). Two of the focus groups consisted of Latinos who are Internet
users and have either heard of or used some form of voice over internet protocol
technology and service. The other two groups consisted of Latinos who reported that
they do not use the Internet.
9
Design and Develop VOIP Dialer and Recording Database
CHAPTER 4
4. PROTOCOL
There are several protocols used for voice over internet protocol but two are
most common. They are H.323 and Session Initiation Protocol.
4.1 H.323
The International Telecommunications Union defines the H.323 zone that consists of
terminals, gateways, Multi-point Control Units, and a gatekeeper. The gatekeeper
10
Design and Develop VOIP Dialer and Recording Database
manages the zone. H.323 uses different protocols to manage different needs. There are
audio codecs and video codecs that encode and decode the audio and video data. H.225
covers registrations,
admissions & status and call signaling. Realtime Transport Control Protocol handles
various functions between the endpoints and the gateway, including registrations and
admission control as its name implies. It also manages changes in bandwidth and
disengage procedures. A Realtime Transport Control Protocol channel is opened, prior to
opening other channels, between the gateway and endpoint whereby Realtime Transport
Control Protocol messages are passed. Call signaling channels are opened between
endpoints and between an endpoint and a gatekeeper. They are used to set up
connections. Call setup and termination uses Q.931.9 H.245 is for channel negotiations
such as flow controls and general commands and H.235 specifies security. Real-time
Transport Protocol is used to transport data, typically via user datagram protocol and
provides a timestamp, sequence number, data type and ability to monitor delivery.
Realtime Transport Control Protocol is used mainly to monitor quality and manage
synchronization. As mentioned above, the H.235 protocols of H.323 are for security
profiles. These standards address authentication, integrity, privacy, and non-repudiation
10 and are expressed as Annexes to H.23 5 Version 2. They are Annexes D, E & F as
11
Design and Develop VOIP Dialer and Recording Database
follow:
The four security goals, authentication, integrity, privacy, and non-repudiation are
accomplished with the four mechanisms: configuration, authentication, key exchange
and encryption. During the initial stage of configuration, the device is authorized to the
network and may be authenticated. Integrity and privacy are accomplished through
encryption using symmetric or asymmetric keys. A signature is attached to gain the
fourth goal of non-repudiation.
13
Design and Develop VOIP Dialer and Recording Database
Signal confidentiality is best provided with full encryption, however, since some session
internet protocol message fields must be read and/or modified by some proxies, care
must be taken and possibly other methods used. If however, the proxy can be trusted,
then encryption at the transport and/or network layers may be the best solution. Security
at the transport and networking layers accomplishes full packet encryption using
internet protocol sec. TLS had been used, but has been deprecated. Full encryption
requires support of the encryption method at each end point where it is implemented.
Hyper text transfer protocol authentication uses the 401 and 407 response codes and
header fields. This provides a stateless challenge-base mechanism for authentication
whereby the challenge and user credentials are passed in the headers. When a proxy or
usual components receives a request, it may challenge to ensure the identity of the
sender. Once identity has been confirmed the receiver should also verify that the
requester is authorized. Details of this “digest” method may be found in RFC 326112.
Secure/Multipurpose Internet Mail Extension is an enhancement to Multipurpose
Internet Mail Extension that replaces Pretty Good Privacy. Since Multipurpose Internet
Mail Extension bodies are carried by session internet protocol, session internet protocol
may use to enhance security, Multipurpose Internet Mail Extension contains
components that can provide integrity and encryption for Multipurpose Internet Mail
Extension data and as RFC 2633 states Multipurpose Internet Mail Extension can be
used for “authentication, message integrity and non-repudiation of origin (using digital
signatures) and privacy and data security (using encryption). Multipurpose Internet Mail
Extension is useful when full encryption of the packet is not feasible due to the need of
network components to use data from the header fields. User identification is done via
certificate belonging to the user that is compared to the header information. Integrity of
the message is verified by matching the information in the outside header with that of
the inside header. Normally, Multipurpose Internet Mail Extension is used to encrypt
Session Description Protocol but there may be requirements to encrypt certain header
components. Session internet protocol can provide header privacy by encapsulating the
entire message using Multipurpose Internet Mail Extension type message/sip. If used for
anonymity the message will need to be decrypted before the certificate can be identified
and consequently validated. Session internet protocol Security Concerns hyper text
transfer protocol digest does not provide the best integrity. Without Multipurpose
Internet Mail Extension, spoofing of the header would not be difficult. Multipurpose
14
Design and Develop VOIP Dialer and Recording Database
Internet Mail Extension requires a public key infrastructure. Since certificates are
associated with users, moving from one device to another may be difficult. With
Multipurpose Internet Mail Extension there may be issues with firewalls or other proxy
devices that may require viewing and/or changing session internet protocol bodies. There
is information in session internet protocol headers that may be considered sensitive, i.e.
an unlisted phone number. Consideration may need to be given to providing per-user
options that allow protection of this information. Session internet protocol and H.323
both use protocols that may use random ports requiring that the firewall be able to open
and close ports as required. An H.323 or session internet protocol aware firewall may be
required. As with H.323, network address translation presents problems for session
internet protocol.
Denial of Service is caused by anything that prevents the service from being
delivered. A Denial of Service can be the result of unavailable bandwidth or voice over
internet protocol components being unavailable. Many things can cause a Denial of
Service including: a network getting congested to a level that it cannot provide the
bandwidth needed to support the application; servers not capable of handling the traffic;
extraneous services may be running that reduce the available resources to the server;
malicious programs such as viruses and Trojan horses; other malicious programs with
the purpose of causing Denial of Service or hacking activity.
Defending against malicious programs and activity is more difficult but should begin
with applying appropriate patches in a timely manner, and installing virus protection
with frequent updates. In addition, installation designers should consider a host based
firewall, intrusion detection and/or intrusion prevention. Defense against Denial of
Service attacks of public servers can best be done by locating the device with the public
available internet protocol addresses behind a firewall or other device that only allows
communication from trusted sources. Also, harden the operating systems in use,
removing all unnecessary services and applications from the servers and workstations,
patching, etc.
17
Design and Develop VOIP Dialer and Recording Database
mentioned before, keep patches up to date and turn off all unneeded services. If the risk
is great enough, consider encryption and/or protection by another device such as a
firewall. The voice application and the operating system have similar vulnerabilities and
should be patched as well. If the voice over internet protocol system stays within a
secured network and only connects to the public network through a gateway, the
gateway is a vulnerability that needs addressing. Deploy the hardened gateway behind
an appropriate firewall, i.e. one that is aware of the protocols used. Voice over internet
protocol system must process the protocols that it supports so it needs to have some
implementation of a network stack. Stack implementations are written by the vendor
purchased from another vendor. With the latter, all vendors that purchased a specific
vendor’s stack will share the same vulnerabilities. Patch if necessary, when patches
become available. Ensure that the components are physically secure. Access to the box
allows ownership. There are many methods of compromising a device, depending on the
device and the underlying operating system, with physical access. Good security
practices include removing the a-disk and the CD- ROM from the boot list and
password protect the configuration. If a component is unavailable, then there is a denial
or service.
18
Design and Develop VOIP Dialer and Recording Database
CHAPTER 5
5. APPLICATIONS AND BENEFITS
Voice communication will certainly remain a basic from of interaction for all of
us. The public switched telephone network mply cannot be replaced, or even
dramatically changed, in the short term (this may not apply to provide voice networks,
however). The immediate goal for voice over internet protocol service providers is to
reproduce existing telephone capabilities at a significantly lower “total cost of operation
“and to offer a technically competitive alternative to the public switched telephone
network.
Some example of voice over internet protocol applications that are likely to be useful
would be:
19
Design and Develop VOIP Dialer and Recording Database
5.1 Public switched telephone network gateways
The goal for developers is relatively simple: add telephone calling capabilities
( both voice transfer and signaling) to internet protocol-based networks and interconnect
these to the public telephone network and to private voice networks in such as way as to
maintain current voice quality standards and preserve the features everyone expects
from the teleph Fig illustrates an overall
Architecture for voice over internet protocol an Suggests that the challenges for
the product developer arise in five specific areas:
1. Voice quality should be comparable to what is available using the public switched
telephone network, even over networks having variable levels of operating system.
2. The underlying internet protocol network must meet strict performance criteria
including minimizing call refusals, network latency, packet loss and disconnects. This is
required even during congestion condition or when multiple users must share network
resources.
20
Design and Develop VOIP Dialer and Recording Database
3. Call control (signaling) must make the telephone calling process transparent so that
the callers need not know what technology is actually implementing the service.
21
Design and Develop VOIP Dialer and Recording Database
CHAPTER 6
6. Comparison of VoIP software
For businesses, VoIP obviates separate voice and data pipelines, channeling both types
of traffic through the IP network while giving the telephony user a range of advanced
capabilities.
Softphones are client devices for making and receiving voice and video calls over the IP
network with the standard functionality of most "original" telephones and usually allow
integration with IP phones and USB phones instead of utilizing a computer's
microphone and speakers (or headset). Most softphone clients run on the open Session
Initiation Protocol (SIP) supporting various codecs. Skype runs on a closed proprietary
network, though the network (but not the official Skype client software) also supports
SIP clients. Online "Chat" programs now also incorporate voice and video
communications.
Program Operating systems License Open Protocols/based Encryption Max Other capabilities Latest
22
Design and Develop VOIP Dialer and Recording Database
Source upon/compatibl conferenc
release
? e with e peers
Freeware
Video, file transfer,
AOL Instant Linux, Mac OS, / Closed SIP (Windows
No Unknown Unknown PC to phone, phone
Messenger Windows Proprietar ver. only), RTP
to PC
y
Cisco IP Closed
SCCP (Skinny), 7.0.3 (Aug
Communicat Windows Proprietar No sRTP Unknown
SIP, TFTP 2009)
or y
SIP, H.323,
H.263,
Linux, (Beta GPL / Video, IM, LDAP,
H.264/MPEG-4 3.2.7 (May
Ekiga Windows support), Free Yes No Unknown Call Forwarding,
AVC, STUN, 31, 2010)
OpenSolaris software Call Transfer
Theora,
Zeroconf
SIP, XMPP
GPL / IM, multi-user A/V, 2.32.0.1
(Jingle), ICE
Empathy Linux Free Yes No Unknown collaborative (2010-10-
(STUN/TURN),
software applications 04)
Zeroconf
Windows:
Record Calls,
4.0.5.395
Linux, Mac OS X, Forward Calls,
Freeware (23 Sep
Windows, Windows MSN IM, Windows
/ Closed 2009), Mac
Gizmo5 Mobile Phone, No SIP, XMPP SRTP Unknown Live Talk, Google
Proprietar OS:
Blackberry, Nokia, Talk, Talk with
y 4.0.0.269
PDA Java Yahoo, Messenger,
(23 Sep
XMPP
2009)
Google Talk Windows Closed No XMPP zRTP Unknown Video, chat, file 1.0.0.104
23
Design and Develop VOIP Dialer and Recording Database
Proprietar transfer, voicemail,
y (using mail via "GMail
libjingle) Integration"
Voice
encryption
updated
(SRTP and Text messaging,
Linux, Mac OS, LGPL / daily
SIP/SIMPLE, negotiation audio/video
Jitsi Windows XP/2000 Free Yes Unknown (December
XMPP with zRTP), telephony, IPv6, call
(all java supported) software 26, 2010; 2
Signaling recording
months ago)
encryption
(TLS)
GPL /
Video, IM, STUN, 3.4.1 (Feb
Linphone Linux, Windows Free Yes SIP No Unknown
IPv6 2011)
software
Mirial Windows Closed No SIP, H.323, DTLS-SRTP Unknown H.264 Full-HD 7.0.24 (May
Softphone 2000/XP/2003/Vista/ Proprietar RTSP 1080p video rx/tx, 26, 2010)
(Mirial 7 (including 64bit y Two independent
s.u.r.l.) versions), Mac OS X lines supporting
(x86) Call Control and 3-
Party
videoconference in
Continuous
Presence, G.722.1/C
wideband audio,
Call
recording/export,
DV/HDMI/Compon
ent capture,
Presentation (H.239,
RFC-4796),
Encryption, Far End
24
Design and Develop VOIP Dialer and Recording Database
Camera Control,
GPU accel (D3D
and OpenGL)
Freeware 1.86
Conferencing, call
/ Closed TLS, SRTP, (February
PhonerLite Windows No SIP 8 redirection, call
Proprietar ZRTP 10, 2011; 37
recording
y days ago)
Secure Multi-Party
No max Chat/Instant
Revation Closed (limited Messaging,
Windows TLS and 5.1 (March
Communicat Proprietar No SIP/SIMPLE by server Presence, VoIP,
2000/XP/Vista/7 SRTP 2011)
or y mixing Video, File
services) Transfer, Desktop
Sharing
SFLphone Linux GPL3 / Yes SIP, RTP, IAX2, Voice Unknown Gnome/KDE client, 0.9.12
Free STUN per encryption address book, (January 20,
software account, SRV (SRTP), multiple accounts, 2010)
Signaling unlimited number of
encryption calls, call transfer,
(TLS), call hold/unhold,
25
Design and Develop VOIP Dialer and Recording Database
Multiple
realms call recording,
authentificati Multi-way
on conferencing
mechanism
Video, voicemail,
phone in, phone out,
Freeware
SIP, multiparty calling,
/ Closed
SightSpeed Mac OS X, Windows No RTP,Proprietary Unknown Unknown conference 6.0
Proprietar
P2P protocol recording, text
y
messaging, NAT
traversal, video mail
The version
numbers are
not
synchronize
d, i.e. the
features in
Mac OS
2.0.0
version are
not the same
as those
26
Design and Develop VOIP Dialer and Recording Database
found in
Linux 2.0.0
version.)
Conferencing,
voicemail, PC to
Freeware
Windows phone, phone to PC,
/ Closed
Spikko 2000/XP/Vista/7/Mo No SIP Yes 8 Free international Dec 2010
Proprietar
bile , iPhone, phone numbers,
y
address book
integration;
Freeware
Linux, Windows, Closed / Yes Conferencing, File
TeamSpeak No Unknown 3.0.0-beta36
Mac OS X Proprietar (Optional) Transfers
y
BSD /
Address Book
Telephone Mac OS X 10.5 Free Yes SIP, STUN, ICE No Unknown 0.14.0
integration
Software
Conferencing, chat,
file transfer, Firefox
GPL / integration, call 1.4.2
Twinkle Linux Free Yes SIP SRTP, ZRTP Unknown redirection, (2009-02-
software voicemail, support 25)
of VoIP-to-Phone
services
Freeware IM (MSN),
Windows / Closed voicemail,
Vbuzzer No SIP TLS Unknown 2.0.282
2000/XP/Vista Proprietar personalized voice
y greeting.
27
Design and Develop VOIP Dialer and Recording Database
Freeware
/ Closed Conferencing, chat,
Ventrilo Mac OS X, Windows No No Unknown 3.0.7
Proprietar text-to-speech
y
Call forwarding,
Call transfer, Call
recording, Presence,
Outlook integration,
Voice Closed
Windows Windows
Operator Proprietar No SIP, RTP Unknown Unknown 1.3.2
2000/XP/Vista Messenger/MSN/Li
Panel y
ve integration,
CRM, Built-in web
browser & e-mailer,
LDAP, APS.
Freeware
/
Beta 2008-
Viewable
09-04
source
(Linux
Proprietar
Linux, Mac OS X, 0.9.224),
Zfone y No SIP, RTP SRTP, ZRTP Unknown
Windows (Mac OS
(includes
0.9.246),
time
(Windows
bomb
0.9.206)
provision
)
28
Design and Develop VOIP Dialer and Recording Database
CHAPTER 7
7. Virtual Box
Virtual Box is deceptively simple yet also very powerful. It can run everywhere from
small embedded systems or desktop class machines all the way up to datacenter
deployments and even Cloud environments.
The following screenshot shows you how Virtual Box, installed on a Mac computer, is
running Windows 7 in a virtual machine window:
29
Design and Develop VOIP Dialer and Recording Database
– Debian GNU/Linux 3.1 (“sarge”), 4.0 (“etch”), 5.0 (“lenny”) and 6.0 (“squeeze”)
– Fedora Core 4 to 14
– Gentoo Linux
– SUSE Linux 9, 10 and 11, openSUSE 10.3, 11.0, 11.1, 11.2, 11.3
7.3.1 Prerequisites
This will display the installation welcome dialog and allow you to choose where to
install Virtual Box to and which components to install. In addition to the Virtual Box
application, the following components are available:
U S B su p p ort This package contains special drivers for your Windows host that
Virtual Box re-quires to fully support USB devices inside your virtual machines.
31
Design and Develop VOIP Dialer and Recording Database
N et w ork in g This package contains extra networking drivers for your Windows
host that Virtual Box needs to support Bridged Networking (to make your VM’s virtual
network cards accessible from other machines on your physical network).
Py t h on Su p p ort This package contains Python scripting support for the Virtual
Box API. For this to work, an already working Windows Python installation on the
system is required.1
Depending on your Windows configuration, you may see warnings about “unsigned
drivers” or similar. Please select “Continue” on these warnings as otherwise Virtual
Box might not function correctly after installation.
The installer will create a “Virtual Box” group in the Windows “Start” menu which
allows you to launch the application and access its documentation.
Note: This feature must not be absent since it contains the minimum set of files
to have working Virtual Box installation.
7.3.3 Uninstallation
As Virtual Box uses the standard Microsoft Windows installer, Virtual Box can be
safely uninstalled at any time by choosing the program entry in the “Add/Remove
Programs” applet in the Windows Control Panel.
§ On a Windows host, in the standard “Programs” menu, click on the item in the
“
Virtual Box” group. On Vista or Windows 7, you can also type “Virtual Box” in the
32
Design and Develop VOIP Dialer and Recording Database
search box of the “Start” menu.
When you start Virtual Box for the first time, a window like the following should
come up:
This window is called the “Virtual Box Manager”. On the left, you can see a pane
that will later list all your virtual machines. Since you have not created any, the list is
empty. A row of buttons above it allows you to create new VMs and work on existing
VMs, once you have some. The pane on the right displays the properties of the virtual
machine currently selected, if any. Again, since you don’t have any machines yet, the
pane displays a welcome message.
To give you an idea what Virtual Box might look like later, after you have created many
machines, here’s another example:
33
Design and Develop VOIP Dialer and Recording Database
Click on the “New” button at the top of the Virtual Box Manager window. A
wizard will pop up to guide you through setting up a new virtual machine (VM):
On the following pages, the wizard will ask you for the bare minimum of information
that is needed to create a VM, in particular:
34
Design and Develop VOIP Dialer and Recording Database
The VM name will later be shown in the VM list of the Virtual Box Manager
window, and it will be used for the VM’s files on disk. Even though any name could
be used, keep in mind that once you have created a few VMs, you will appreciate if
you have given your VMs rather informative names; “My VM” would thus be less
useful than “Windows XP SP2 with Open Office”.
select the operating system that you want to install later. The supported
operating systems are grouped; if you want to install something very unusual that is
not listed, select “Other”. Depending on your selection, Virtual Box will enable or
disable certain VM settings that your guest operating system may require. This is partic-
ularly important for 64-bit guests. It is therefore recommended to always set it to the
correct value.
On the next page, select the memory (RAM) that Virtual Box should allocate
every time the virtual machine is started. The amount of memory given here will be
taken away from your host machine and presented to the guest operating system, which
will report this size as the (virtual) computer’s installed RAM.
35
Design and Develop VOIP Dialer and Recording Database
Note: Choose this setting carefully! The memory you give to the VM will not be
available to your host OS while the VM is running, so do not specify more than you
can spare. For example, if your host machine has 1 GB of RAM and you enter 512
MB as the amount of RAM for a particular virtual machine, while that VM is
running, you will only have 512 MB left for all the other software on your host. If
you run two VMs at the same time, even more memory will be allocated for the
second VM (which may not even be able to start if that memory is not available). On
the other hand, you should specify as much as your guest OS (and your applications)
will require to run properly.
A Windows XP guest will require at least a few hundred MB RAM to run properly,
and Windows Vista will even refuse to install with less than 512 MB. Of course, if
you want to run graphics-intensive applications in your VM, you may require even
more RAM.
So, as a rule of thumb, if you have 1 GB of RAM or more in your host computer, it is
usually safe to allocate 512 MB to each VM. But, in any case, make sure you always
have at least 256 to 512 MB of RAM left on your host operating system. Otherwise
you may cause your host OS to excessively swap out memory to your hard disk,
effectively bringing your host system to a standstill.
As with the other settings, you can change this setting later, after you have created the
VM.
36
Design and Develop VOIP Dialer and Recording Database
7.5.4 virtual hard disk:
Next, you must specify a virtual hard disk for your VM.There are many and
potentially complicated ways in which Virtual Box can provide hard disk space to a
VM, but the most common way is to use a large image file on your “real” hard disk,
whose contents Virtual Box presents to your VM as if it were a complete hard disk.
This file represents an entire hard disk then, so you can even copy it to another host
and use it with another Virtual Box installation.
§ To create a new, empty virtual hard disk, press the “New” button.
The drop-down list presented in the window contains all disk images which are cur-
rently remembered by Virtual Box, probably because they are currently attached to a
virtual machine (or have been in the past).
Alternatively, you can click on the small folder button next to the drop-down list to
bring up a standard file dialog, which allows you to pick any disk image file on your
host disk.
Most probably, if you are using Virtual Box for the first time, you will want to create
37
Design and Develop VOIP Dialer and Recording Database
a new disk image. Hence, press the “New” button.
This brings up another window, the “Create New Virtual Disk Wizard”, which
helps you create a new disk image file in the new virtual machine’s folder.
§ A dynamically expanding file will only grow in size when the guest actually
stores data on its virtual hard disk. It will therefore initially be small on the host hard
drive and only later grow to the size specified as it is filled with data.
§ A fixed-size file will immediately occupy the file specified, even if only a
fraction of the virtual hard disk space is actually in use. While occupying much more
38
Design and Develop VOIP Dialer and Recording Database
space, a fixed-size file incurs less overhead and is therefore slightly faster than a
dynamically expanding file.
To prevent your physical hard disk from running full, VirtualBox limits the size of the
image file. Still, it needs to be large enough to hold the contents of your operating
system and the applications you want to install – for a modern Windows or Linux
guest, you will probably need several gigabytes for any serious use:
After having selected or created your image file, again press “Next” to go to the next
page.
39
Design and Develop VOIP Dialer and Recording Database
Fig 7.11:- Summary of Virtual Hard Disk
7.5.5 Finish:
After clicking on “Finish”, your new virtual machine will be created. You will
then see it in the list on the left side of the Manager window, with the name you
entered initially.
§ select its entry in the list in the Manager window it and press the “Start” button at
the top or
§ for virtual machines created with VirtualBox 4.0 or later, navigate to the
“
VirtualBox VMs” folder in your system user’s home directory, find the subdirectory of
the machine you want to start and double-click on the machine settings file (with a
. v b o x file extension).
This opens up a new window, and the virtual machine which you selected will boot up.
Every-thing which would normally be seen on the virtual system’s monitor is shown in
the window.
40
Design and Develop VOIP Dialer and Recording Database
In general, you can use the virtual machine much like you would use a real computer.
There are couple of points worth mentioning however.
When a VM gets started for the first time, another wizard – the “First Start
Wizard” – will pop up to help you select an installation medium. Since the VM is
created empty, it would otherwise behave just like a real computer with no operating
system installed: it will do nothing and display an error message that no bootable
operating system was found.
For this reason, the wizard helps you select a medium to install an operating system
from.
§ If you have physical CD or DVD media from which you want to install your guest
operating system (e.g. in the case of a Windows installation CD or DVD), put the
media into your host’s CD or DVD drive.
Then, in the wizard’s drop-down list of installation media, select “Host drive” with
the correct drive letter (or, in the case of a Linux host, device file). This will allow
your VM to access the media in your host drive, and you can proceed to install from
there.
§ If you have downloaded installation media from the Internet in the form of an ISO
image file (most probably in the case of a Linux distribution), you would normally
burn this file to an empty CD or DVD and proceed as just described. With VirtualBox
41
Design and Develop VOIP Dialer and Recording Database
however, you can skip this step and mount the ISO file directly. VirtualBox will then
present this file as a CD or DVD-ROM drive to the virtual machine, much like it does
with virtual hard disk images.
For this case, the wizard’s drop-down list contains a list of installation media that
were previously used with VirtualBox.
If your medium is not in the list (especially if you are using VirtualBox for the
first time), select the small folder icon next to the drop-down list to bring up a
standard file dialog, with which you can pick the image file on your host disks.
In both cases, after making the choices in the wizard, you will be able to install your
operating system.
42
Design and Develop VOIP Dialer and Recording Database
Press “Finish”.
CHAPTER 8
8. Elastix
Elastix is an appliance software that integrates the best tools available for
Asterisk-based PBXs into a single, easy-to-use interface. It also adds its own set of
utilities and allows for the creation of third party modules to make it the best software
package available for open source telephony.
The goals of Elastix are reliability, modularity and ease-of-use. These characteristics
added to the strong reporting capabilities make it the best choice for implementing an
Asterisk-based PBX.
The features provided by Elastix are many and varied. Elastix integrates many software
packages, each including their own set of great features. However, Elastix adds new
interfaces for control and reporting of its own, to make it a complete package. Some of
the features provided natively by Elastix are:
• Virtualization support. You can run multiple Elastix virtual machines on the
same box.
43
Design and Develop VOIP Dialer and Recording Database
• Really friendly Web user interface.
• "Fax to email" for incoming faxes. Also, you can send any digital document to a
fax number through a virtual printer.
• Billing interface.
o English
o Spanish
o Russian
o Korean
o Greek
o Chinese
o Polish
o German
o French
44
Design and Develop VOIP Dialer and Recording Database
o Romanian
o Slovenian
o Portuguese
o Danish
o Italian
After we finish the First Run Wizard of Virtual Box, the following screen will
appear:
At this point Virtual Box has correctly booted off the CD, and you can either wait
and it will start the installation by itself, or you can press enter and it will commence
45
Design and Develop VOIP Dialer and Recording Database
immediately.
You will see it commence a basic start up, load a few drivers and will next stop at the
screen below
For these and all following screens, you use a combination of the up and down arrows,
the <TAB> button and the <SPACE> bar. The space bar acts as the <ENTER> button,
<TAB> moves between the sections (e.g. between selection of the language and the
OK button in the above screen). The <SPACE> bar is also used to toggle the * in
multiple selections.
Select your language using the arrow keys and then press <TAB> to move to the OK
button. Once the OK is highlighted you can then press <SPACE>.
46
Design and Develop VOIP Dialer and Recording Database
For most users, the US keyboard will suit, so press <TAB> to move the highlight to the
OK button and press the <SPACE> bar.
The next screen may or may not come up on your installation, depending on whether
you have a clean Hard Drive with no data or you have a Hard Drive with a partition
already on it. In this case we are working with a new hard drive. The black mark out in
the diagram below may vary from system to system, so I have blanked it out to avoid
confusion.
In this screen it is telling us that it wants to initialize the drive and erase all data. The
47
Design and Develop VOIP Dialer and Recording Database
YES button is already highlighted, so we proceed by pressing <SPACE>.
The reason for this is that the default selections need to be changed, as the defaults have
been set to avoid you accidentally erasing the data on your hard drive
You need to use the arrow keys to move the selection up to REMOVE ALL
PARTITIONS as shown in the previous screen. If you have multiple drives in your
system, you need to make sure that it has chosen the correct drive. Now use TAB to
move to the OK button and press the <SPACE> bar.
48
Design and Develop VOIP Dialer and Recording Database
Fig 8.6:- Warning
You need to use the <TAB> key to select the YES button and press SPACE if you are
sure that there is no useable data on this drive.
Again use the <TAB> key to move the highlight, this time to the NO button. Unless
you are very familiar with Linux Partitioning, then you don't want to review and
possibly change the partitioning, so just take the easy option and select NO.
The next screen allows us to configure the network card on your machine.
49
Design and Develop VOIP Dialer and Recording Database
So just press the <SPACE> bar and the next screen will appear
This is one of the screens where you need to use the space bar to select your options.
You definitely need to ACTIVATE ON BOOT (otherwise it will not start the Network
Card), and as a minimum select ENABLE lPv4 support. Unless you 100% know what
you are doing, I would leave lPv6 support not enabled.
Press the <TAB> key to move to highlight the OK button and proceed to the next screen
50
Design and Develop VOIP Dialer and Recording Database
This is where you set your Network card settings. If you want to use DHCP, then select
DHCP, and the Network card will pick up the settings from your DHCP server on your
network (if you have one). For 99% of systems however, most will be setup with a
STATIC IP (manual) address).
Here you set the Gateway, Primary DNS and Secondary DNS IP addresses. Again you
should know these. On many systems, the Gateway is your router, your primary DNS
server would normally be a DNS Server on your Network (e.g. a Windows or Linux
Server) and as a backup a good option if your router acts as a DNS proxy (most do),
then select your router as the secondary DNS.
Press <TAB> to get to the OK button and press <SPACE> to move to the next screen.
51
Design and Develop VOIP Dialer and Recording Database
Here you just select Manually (which is the default) and type in a name for your
server. It is not critical what the name is, just something unique to identify your
server on the network. Press <TAB> to highlight the OK button and press
<SPACE> to move to the next screen.
In this screen we set the time zone. Select the time zone you are in and press <TAB> to
move to the OK button and press <SPACE>.
52
Design and Develop VOIP Dialer and Recording Database
This is ROOT password screen and what you enter here needs to be written down. The
number of people who don't write this down, or forget it is, or say that this screen did
not come up is quite bad. The reason for this is that some more password screens come
up as part of the install, and they forget which password is which. The result of losing
this password results in a complete reinstall of the Elastix product, or a lot of technical
reading and understanding of Linux to understand how to reset this password. WRITE
IT DOWN before you enter it in here.
One other word of warning, make sure of the status of your <CAPS LOCK> Key,
especially with the use of the <TAB> key many inadvertently press the
<CAPSLOCK> key due their close proximity to each other.
You will now witness a variety of screens pop up, which include the formatting
screen, working out dependencies, transferring image, and finally you should see the
Package Installation screen. All these screens will occur without your input. As a
guide, the Package Installation screen should be started within a few minutes of your
last press of the OK button. However, this can vary especially on the formatting
screen if you have a large hard drive.
53
Design and Develop VOIP Dialer and Recording Database
This Package Installation screen will probably run anywhere between 5 - 18 minutes
depending on the speed of your machine / hard disks etc.
When it's finished the system will reboot, hopefully eject the CD (which you can now
and should remove. You will notice on boot up, that the various lines will have a green
OK next to each of them, except that there will probably be a red FAIL next to
WANPIPE. This is ok, don't panic. This will only ever be a OK when you use the
SANGOMA product, and have it configured properly.
The next screen that will pop up will be the password entry screen for MYSQL. Enter
a different password than what you used for the previous ROOT password. Again
WRITE IT DOWN now before you enter it. Check the <CAPS LOCK> status to make
sure you are entering it correctly.
54
Design and Develop VOIP Dialer and Recording Database
The next screen will ask you to confirm the MYSQL password you just entered. Enter it
again
It will then run off and perform some password scripts which complete and then come
up with the next screen.
This next screen will now ask you to set the password for the rest of the products
included with Elastix. These products include the Elastix Web Login, Freepbx, Vtiger,
and A2Billing. The user name is automatically admin, so you are just setting the
55
Design and Develop VOIP Dialer and Recording Database
default password here (don't worry they can be changed later within each application).
It is important that they have a decent password from the start. WRITE IT DOWN
before you enter it in here.
Complete these steps and then you will be rewarded with the following screen
after it has completed its startup scripts.
56
Design and Develop VOIP Dialer and Recording Database
At this point, your Elastix system is installed. Now you probably want to see the Web
GUI to start exploring your Elastix system. On a separate workstation, in your Internet
Browser (Firefox is the preferred browser) enter the following address into the address
bar: http://{YourElastixPrimarvlPAddress} and press enter (e.g. http://172.22.22.40)
You will then see the following screen but don't panic
On Firefox you click on I Understand the Risks and then click on Add Exception and
when the next page shows click on Confirm Security Exception.
At this point, you will now be presented with the main Elastix login page as
shown in the next diagram.
Use the admin login and password which hopefully you wrote down for the
Elastix GUI. That's it, now all that is left is to login and start exploring and
configuring.
58
Design and Develop VOIP Dialer and Recording Database
CHAPTER 9
9. WEB Administration Interface
9.1. WEB Configuration
Go to Network section.
Go to Port Details.
This area is for handsets, softphones, paging systems, or anything else that could
be considered an 'extension' in the classical PBX context.
Defining and editing extensions is probably the most common task performed by a
PBX administrator, and as such, you'll find you'll become very familiar with this page.
There are presently four types of devices supported - SIP, IAX2, ZAP and 'Custom'.
To create a “New Extension”, go to the “PBX” menu, which by default goes to the
“Configuration PBX” section; in this section, choose the option “Extensions” on the
left panel. Now we can create a new extension.
Generic SIP Device: SIP is the Standard protocol for VoIP handsets and ATA's.
59
Design and Develop VOIP Dialer and Recording Database
Generic IAX2 Device: IAX is 'Inter Asterisk Protocol', a newer protocol supported by
only a few devices (eg, PA1688 based phones, and the IAXy ATA).
Generic ZAP Device: ZAP is a hardware device connected to your Asterisk machine
- E.g., a TDM400, TE110P
Other (Custom) Device: Custom is a 'catch all', for any non standard device, eg
H323. It can also be used for "mapping" an extension to an "outside" number. For
example, to route extension 211 to 1-800-555-1212, you could create a custom
extension 211 and in the "dial" text box you could enter:
Local/18005551212@outbound-allroutes.
Note: Now we proceed to input the necessary fields (obligatory) to create a new
extension.
60
Design and Develop VOIP Dialer and Recording Database
User Extension: This must be unique. This is the number that can be dialled from any
other extension, or directly from the Digital Receptionist if enabled. This may be any
length, but conventionally a three or four digit extension is used.
Display Name: The Caller ID name for calls from this user will be set to this name.
Only enter the name. Not the number.
Secret: This is the password used by the telephony device to authenticate to the
Asterisk server. This is usually configured by the administrator before giving the
phone to the user, and is usually not required to be known by the user. If the user is
using a soft-phone, then they'll need to know this password to configure their
software.
Once we have downloaded and installed Zoiper, let's proceed to its configuration. For
that, click on the icon that looks like a tool and create a SIP extension. In this
example, extension 201 is configured and it's supposed that the IP assigned to the
system is 192.168.1.101.
61
Design and Develop VOIP Dialer and Recording Database
Next, let's go to the “Audio Codec’s” section and select all of the available codec’s. We
apply the changes and click on the “Register” button, so that our telephone registers in
the system.
This section describes how to record a message or activate one that was created
in another medium.
To access this module, go to the “PBX” menu, where the “Configuration PBX”
section will appear by default. In the left panel, choose the “System Recordings”
option.
The first option that we have is to create an announcement by recording it directly. For
this, we will need to enter the extension from which we want to make the recording,
which in this case is extension 201, then we can click on the “Go” button.
Next, Asterisk will be waiting for our recording at extension 201, and to continue, we
have to punch in *77. After recording our message, press the pound sign (#).
To review our recording, press *99, enter the name of the recording and click on the
“Save” button.
The second option that we have is to upload a recording that was created in another
medium. For that, we will need to have a file that's supported by Asterisk; click on the
“Find” button and locate our file. Then, continue to give the recording a name and,
finally, click on the “Save” button.
63
Design and Develop VOIP Dialer and Recording Database
9.1.6 Configuration of welcome IVR
The IVR allows us to record a welcome message and allows us to have a menu
controlled by the telephone keys (10 number keys, plus the symbols pound '#' and
asterisk '*'). With this, it is possible to send the call to another destination or to the
IVR that sent the announcement.
To access the “IVR” module, go to the “PBX” menu, which appears by default in the
“Configuration PBX” section. In the left panel, choose the “IVR” option.
IVR: “Thank you for calling Elastix. If you know the extension, please dial it now.
Otherwise, stay on the line and an operator will be with you shortly”.
64
Design and Develop VOIP Dialer and Recording Database
To add a new IVR, it's not necessary to complete all of the fields, and in our case (a
welcome/greeting IVR), we do not need options. The necessary fields are the
following:
Timeout: Waiting time (in seconds) before the call is routed to an operator after the
welcome message is played. For this example, we will use 3.
Enable direct dial: An option that permits the caller to dial an extension directly en
case he or she knows it, without having to wait for the operator.
Now we can proceed to configure certain options that are frequently used. The first is
the option 0 (zero) that allows us to go directly to the operator and the second is also
to go to the operator, but the caller has to listen to the welcome message and wait for
65
Design and Develop VOIP Dialer and Recording Database
the time that was configured earlier to pass.
Among the available options on the menu, in the left part there is a box where you
should put the option. For the first one (zero), we'll put that in the box and assign an
extension that was previously configured; this extension will be the operator.
Now we'll proceed to configure the second option (to go to the operator after the
welcome message is played and the waiting time is over). In the box to the left, put the
letter “t”, which means timeout and we'll assign the operator's extension.
Go to MENU: FAX.
The option “System Info” of the Menu “System” in Elastix lets us monitor the
server’s hardware resources. Within this option, we have two sections:
System Resources
“System Resource” shows us the values of actual use of both the memory as well as
the processor.
Hard Drives
This section shows a summary of the utilization of storage available on the server.
9.2.1.2 Network
The option “Network” of the Menu “System” in Elastix lets us view and
configure the parameters of the network of the server.
67
Design and Develop VOIP Dialer and Recording Database
Network Parameters
Default
IP Address of the Port of Connection (Default Gateway)
Gateway
To change any of these parameters, click on the button “Edit Network Parameters”.
Ethernet Interfaces List
This shows the list of network interfaces available on the server, with the following
data:
68
Design and Develop VOIP Dialer and Recording Database
Type The type of IP address that the Interface has, which could be
STATIC when the IP address is fixed or DHCP when the IP
address is obtained automatically when the equipment is booted
up. To use the second option, there should be a DHCP server in
the network.
Status Shows the physical status of the Interface, if it’s connected or not
To change the parameters of any of the Interfaces, click on the name of the device.
The only values that can be changed are: Type, IP and Mask
• Users
The option “Users” allows us to create and modify the users who will have
access to the Elastix Web Interface. There are three types or groups of users:
1 Administrator
2 Operator
3 Telephone User
Each of these groups represents distinct levels of access to the Elastix Web Interface.
These levels signify the group of menus to which each type of user has access. The
69
Design and Develop VOIP Dialer and Recording Database
distinct permissions for access to the menus are better illustrated in the following
table:
Operato
Menu Administrator Telephone User
r
Menu: System
Network Yes No No
Shutdown Yes No No
Operator Panel
Voicemails
Asterisk Recording
Yes Yes Yes
Interface
Fax
Reports
Billing
Rates Yes No No
Extras
70
Design and Develop VOIP Dialer and Recording Database
SugarCRM Yes Yes Yes
Downloads
• Group Permission
The list below shows the names of the Elastix menus; you should select the ones that
each group should have permission to access, and then click the “Apply” button.
9.2.1.4 Language
71
Design and Develop VOIP Dialer and Recording Database
The option “Language” of the Menu “System” in Elastix lets us configure the
language for the Elastix Web Interface.
Select the language from the list and click the “Change” button.
9.2.1.5 Date and Time Configuration
The option “Date and Time Configuration” of the Menu “System Info” in Elastix
lets us configure the Date, Hour and Time zone for the Elastix Web Interface.
Select the new date, hour and time zone and click on the “Apply changes” button.
To upload a new module, click on the “Examinar” button, select the file and,
finally, click on the “Save” button.
9.2.1.7 Backup
The option “Backup” of the Menu “System Info” in Elastix lets us choose the
configurations that we desire to backup Elastix.
72
Design and Develop VOIP Dialer and Recording Database
To make a Backup of the Elastix configurations, select from the available options, and
click on the “Process” button.
9.2.1.8 Restore
The option “Restore” of the Menu “System Info” in Elastix lets us choose the
configurations to restore Elastix, apart from the aforementioned “Backup”.
To restore the Elastix configurations, select from the available options, input the path
of the restore file and click on the “Process” button.
9.2.1.9 Shutdown
This option allows for the shutdown and rebooting of the telephone system.
Upon choosing whichever of the two options, you will be prompted to confirm the
desired option to execute.
73
Design and Develop VOIP Dialer and Recording Database
9.2.1.10 Themes
The option “Themes” of the Menu “System Info” in Elastix lets us choose a
theme for the Elastix Web Interface.
To change the theme, choose from the available options and click on the “Change”
button.
The option “Port Details” from the “System Information” menu in Elastix allows
us to detect telephone hardware that is available on our machine. That's to say, the
telephone cards that are installed.
The list that you will see after logging into this section will be all of the cards that
have been installed and are functioning. Also, you can see the ports that are still
available (not in use) for new telephone cards.
To detect new telephonic hardware, click on the “Detect Hardware” button and it will
74
Design and Develop VOIP Dialer and Recording Database
list all of the available cards including “Recently Installed New Cards”.
The option “PBX Configuration” of the Menu “PBX” lets us achieve the
configuration of Elastix.
In the left part, we can observe that we have different options for configuration.
Elastix uses the free software FreePBX like a tool for administration of Asterisk.
9.2.2.2 Asterisk-CLI
The option “Asterisk-CLI” of the Menu “PBX” in Elastix lets us input Asterisk
commands and execute them.
Example:
The “Flash Operator Panel” of the Menu “PBX” in Elastix is a Flash manager of
75
Design and Develop VOIP Dialer and Recording Database
extensions in Asterisk for monitoring channels and terminals that are produced in a
server with Asterisk.
9.2.2.4 Voicemail
The option “Voicemails” of the Menu “PBX” in Elastix lets us view a list with
details of the voicemails for the extension of a connected user.
9.2.2.5 Monitoring
The option “Monitoring” of the Menu “PBX” in Elastix lets us view a list with
details of calls recorded automatically or manually, for the extension of a connected
user.
76
Design and Develop VOIP Dialer and Recording Database
Also, we can listen to the calls by clicking on the option “Listen” for each call, or we
can download an audio file with the .wav extension of the selected call.
The option “File Editor” of the Menu “PBX” in Elastix lets us edit the files of
the configuration of Elastix.
To edit a file, click on the file and the file will appear in edit mode:
77
Design and Develop VOIP Dialer and Recording Database
Proceed to edit the file of configuration, and after it is complete, click on the “Saved”
button to save the new configuration. To return without saving the changes, click on
the “Back” button.
The option “Virtual Fax List” of the Menu “FAX” in Elastix lets us verify the
list of all the virtual faxes, including the status of each one.
78
Design and Develop VOIP Dialer and Recording Database
In the upper part, there are two buttons. The first button “Edit” lets us edit the data
about the virtual fax. And the second button “Delete” lets us delete the virtual fax. If
we proceed to edit, we’ll have the following:
Once we modify the values, click on the “Apply Changes” button to save the changes
or “Cancel” to return without saving the changes.
The option “New Virtual Fax” from the Menu “FAX” in Elastix lets us create a
new virtual fax. You should have previously created an IAX type of fax extension; for
To create a new virtual fax, input the name, e-mail, extension and secret code for the
79
Design and Develop VOIP Dialer and Recording Database
virtual fax --these are the required fields. Besides these, there are 2 other fields that are
the name of the Caller ID and the number of the Caller ID. After this information is
added, click on the “Save” button to save the virtual fax or “Cancel” to leave without
saving.
Note that the extension of the virtual fax will be used to receive the fax. Here are more
details about the data to input:
Fax Extension used for fax. This extension should have been
Extension previously created as a type IAX in the module “Extensions” of
(IAX): the Menu “PBX Configuration”.
Secret It should be the same as the one inputted at the creation of the
(IAX): fax extension.
Caller ID The number of the caller. Similar to the “Caller ID Name,” this
Number: field is not required. And if it is not filled in who receives the fax
at that extension, the number will not be shown.
The option “Fax Master” of the Menu “FAX” in Elastix lets us input the email
address of the administrator of the Fax, and this email will receive notifications of the
messages received, errors and other activities of the Fax Server.
80
Design and Develop VOIP Dialer and Recording Database
Proceed to input the email of the administrator of the fax and click on the “Apply
Changes” button.
The option “Fax Clients” of the Menu “FAX” in Elastix lets us input the IPs that
have permission to send faxes through Elastix.
Proceed to input the IPs, one IP per line and click on the “Apply Changes” button.
It is recommended that you input the IP 127.0.0.1 and local host in the configuration
because some processes might need to use them.
The option “Fax Visor” of the Menu “Fax” in Elastix lets us view a list with
details of the faxes received.
Besides this, we have the option to download the fax in PDF format, by clicking on
the desired file in the list of faxes received.
9.2.4.1 Domains
The option “Domains” of the Menu “Email” in Elastix lets us view and
configure the domains in the email server.
Clicking on the names of the domains will bring us to a screen that shows the
data of the domain.
Create Domain
To add a domain, click on the “Create Domain” button. A form will be shown
where you will input the name of the new domain:
82
Design and Develop VOIP Dialer and Recording Database
Fig 9.40:- New Domain
9.2.4.2 Accounts
The option “Accounts” of the Menu “Email” in Elastix lets us view and
configure the email accounts for each of the domains specified in the server.
Clicking on the name of the account will bring us to a screen that shows the data for
the account.
You can also modify the account information by clicking on the “Edit” button. The
information that can be changed are: Quota and Password.
Create Account
To add a new account, select the domain under which it will be created and click
on the “Create Account” button. A form will appear in which you will input the
83
Design and Develop VOIP Dialer and Recording Database
information for the following fields:
Email Address This is the text that comes before the @ symbol
Quota The maximum space that this email account can use for
the storage of emails on the server. The space is
measured in kilobytes, so please be aware of this when
the quota amounts are assigned for each user.
9.2.4.3 Relay
By default, the email server doesn’t receive emails for accounts that are not
found in the domains. The purpose of this is to prevent the server from being used for
spam applications or trash and to prevent the unnecessary utilization of system
resources. But there are some cases where it is necessary to activate this option for
certain networks, such as, the internal network of a company. This way, the users can
use the email server in Elastix to send emails to destinations that are outside of the
domain of the system. In the option “Relay” it is specified the networks in which
Elastix allows you to connect and use the server to send emails. The networks should
be inputted as IP/MASCARA. For example: 192.168.1.0/24.
The option “Webmail” of the Menu “Email” in Elastix lets us review the email
of the domains configured.
To enter, input your username and password, and click on the “Login” button.
The option “CDR Reports” of the Menu “Reports” in Elastix lets us view a list
with the details of the calls.
The option “Channels Usage” of the Menu “Reports” in Elastix lets us view
graphically the number of simultaneous calls for each channel.
9.2.5.3 Billing
• Rates
The option “Rates” of the Menu “Billing” in Elastix lets us view and configure
the rates that will be used for the billing of the calls.
86
Design and Develop VOIP Dialer and Recording Database
The link View will take us to a screen where we will see the rate details.
You can also modify the values of the rate by clicking on the “Edit” button. The only
values that can change are: Name, Rate and Rate Offset.
• Create Rate
To add a new rate, click on the “Create New Rate” button. A form will be shown
in which you will input the following fields:
87
Design and Develop VOIP Dialer and Recording Database
• Billing Report
The option “Billing Report” of the Menu “Billing” in Elastix lets us view the
details of the call with respect to cost and applied rate.
• Destination Distribution
88
Design and Develop VOIP Dialer and Recording Database
The option “Destination Distribution” of the Menu “Billing” in Elastix lets us
view graphically the distribution of the outgoing calls grouped by rate. The graph will
change depending the values of the filter:
Distribution by Time
89
Design and Develop VOIP Dialer and Recording Database
Distribution by Cost
• Billing Setup
90
Design and Develop VOIP Dialer and Recording Database
Within this option there are two sections:
The option “Default Rate Configuration” of the Menu “Billing” in Elastix lets us
determine the cost per minute of the connection for the route by omission.
The option “Trunk Configuration” of the Menu “Billing” in Elastix lets us determine
which of the trunks will be used for obtaining the calls for the billing process.
The list shows all of the registered trunks; you should select the ones that will be used
for billing and click on the “Billing Capable” button.
The option “Sugar CRM” of the Menu “Extras” in Elastix lets us use the
information system application, which allows us to administer all that is related to the
clients in a company.
91
Design and Develop VOIP Dialer and Recording Database
The option “Calling Cards” of the Menu “Extras” in Elastix offers us the
possibility of making international calls for a price that is lower than normal, through
a number that the telephone company provides for making calls. These companies can
be the typical telephone companies of each country or businesses specializing in
telephone services.
9.2.6.3 Softphones
The option “Softphones” lets us download Xten Lite or Idefisk, which are
software for the simulation of a conventional phone on a computer.
92
Design and Develop VOIP Dialer and Recording Database
To download any of these Utilities, click on the link corresponding to each software.
93
Design and Develop VOIP Dialer and Recording Database
9.2.6.5 Advanced Configuration
This is an easy task because Elastix 0.8 has the video codec’s already loaded. So
you just have to set a couple of things in your SIP configuration to get your video calls
working.
videosupport=yes
maxcallbitrate=384
allow=h261allow=h263allow=h263pallow=h264
Reload your Elastix configuration and that’s it! Yes, that’s it! To reload please run the
following command from the CLI.
CLI> reload Here is a list with some softphones that support video and have been
tested against Elastix. Our choice is Ekiga.
Tested sofphones
94
Design and Develop VOIP Dialer and Recording Database
Ekiga (Tested http://www.ekiga.org Linux
by Edgar)
Eyebeam Windows
http://www.counterpath.com/index.php?menu=Pro
(Tested by
ducts&smenu=eyeBeam
Gabriel25)
95