Sie sind auf Seite 1von 95

Design and Develop VOIP Dialer and Recording Database

CHAPTER 1
1. INTRODUCTION

1.1 What is Voice Over Internet Protocol?

Voice over Internet Protocol is a general term for a family of transmission


technologies for delivery of voice communications over internet protocol networks such
as the internet or other packet-switched networks. Other terms frequently encountered
and synonymous with voice over internet protocol are internet protocol telephony,
internet telephony, voice over broadband, broadband telephony, and broadband phone.
internet telephony refers to communications services — voice, facsimile, and/or voice-
messaging applications — that are transported via the internet, rather than the public
switched telephone network.

Fig 1.1:- Alternative voice over internet protocol Architectures

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.

1.2 Phone to Phone via the Internet

Fig 1.2:- Phone to phone via internet

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.3 Phone to Internet to Gateway to PSTN

Fig 1.3:- Phone to internet to gateway to PSTN

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.

1.5 History of Voice Over Internet Protocol

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:

1995=> The year in which to PCs are connected using PC software

1996=> The year of the IP telephony client.

1997=> The year of the Gateway.

1998=> The year of the Gatekeeper.

1999=> The year of the Application.

4
Design and Develop VOIP Dialer and Recording Database
CHAPTER 2
2. Voice Over Internet Protocol Components

The components of VoIP include: end-user equipment, network components,


call processors, gateways and protocols.

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.

2.2 Network components

It includes cabling, routers, switches and firewalls. Usually the existing IP


network is where a new Voice over internet protocol system is installed. The impact on
the internet protocol network is greater than merely adding more traffic. The added
traffic has more of an urgency to reach its destination than most of the data traffic that is
5
Design and Develop VOIP Dialer and Recording Database
already supported. Switches, routers and firewalls will need to recognize and act on
Voice over internet protocol data in order to keep latency down. Additional security
measures, addressed later, will complicate this process.

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

It can be categorized into three functional types: Signaling Gateways, Media


Gateways and Media Controllers. In general, they handle call origination and detection
and analog to digital conversion. Signaling gateways manage the signal traffic between
an internet protocol network and a switched circuit network, while media gateways
manage media signals between the two. Media Gateway Controllers manage traffic. The
most common gateway protocols are megaco. Both are composites or derivations of
previously but now less used protocols.6 Vulnerabilities can exist between the internal
internet protocol network and the “gated”, circuit switched network. Care should be
taken to ensure any vulnerabilities are mitigated.

Gateway communication should be secured with internet protocol Sec to prevent


interference with calls and to prevent unauthorized calls from being setup. The gateway
itself is vulnerable to internet protocol based attacks and can be mitigated by using
internet protocol Sec and by removing any unnecessary services and open ports, as
should be done with any server.

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.

Fig 3.1:-voice over internet protocol work service

The exploratory nature of this study produced focus groups as an appropriate


method for data collection. Our overarching goal was to improve our understanding of
how Latino voice over internet protocol users employ the technology and why they
select certain voice over internet protocol services and providers. In addition, we wanted

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.

The study participants were residents of Glendale, Cudahy, Huntington Park,


and South Gate, cities that are part of Los Angeles County, a large metropolitan area
with a significant and diverse Latino population. Glendale is the third largest city in Los
Angeles County and it is the most ethnically diverse area of the four in this study.
Twenty percent (20%) of the population is Latino, 21% is Armenian, 35% is White
(non-Armenian, non-Hispanic), and 16% is Asian from different countries of origin.
Approximately 40% of the residents are homeowners. The median household income is
$41,800 (U.S. Census, 2000). In Glendale, 70% of Latinos are connected to the Internet.
This is one of the highest connectedness rates across Latino communities in Los
Angeles County (Wilkin et al., 2007). The contiguous cities of Huntington Park, South
Gate, and Cudahy are in Southeast Los Angeles. Over 90% of the population is Latino,
and most residents are of Mexican origin. The median household income is about
$32,000, and only 24% of the population is connected to 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.

Fig 4.1:- Protocol Layers

4.1 H.323

H.323 is a protocol suite specified by the International Telecommunications


Union that lays a foundation for internet protocol based real-time communications
including audio, video and data.8 H.323 allows for different configurations of audio,
video and data. Possible configurations include audio only, audio & video, audio & data
and, audio, data and video. H.323 does not specify the packet network or transport
protocols. This standard specifies four kinds of components: Terminals, Gateways,
Gatekeepers and Multi-point Control Units .Terminals are the end-user equipment
discussed above. Gateways handle communication between unlike networks with
protocol translation and media format conversion. Gatekeepers provide services such as
addressing, authorization and authentication, accounting functions and call routing.
Multi-point Control Units handle conferencing.

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,

Fig 4.2:- H.323 Architecture

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:

� Annex D provides message integrity and/or authentication using symmetric


keys. It also has a voice encryption option.

� Annex E provides authentication, message Integrity and non-repudiation using


asymmetric methods.

� Annex F is a hybrid of Annex D and Annex E providing authentication, non-


repudiation and message integrity.

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.

4.1.1 H.323 Security Concerns

Using H.323 to setup voice over internet protocol connections is a complicated


process that is made more complex by adding security measures. Many of the protocols
used with the H.323 suite use random ports causing problems securing through firewalls
but may be able to be mitigated by using direct routed calls. Since the ports required for
H.323 are not set, a filtering firewall would have to have all possibly needed ports left
open. Therefore, the firewall would need to be H.323 aware allowing communication
without opening up the firewall to other traffic. A stateful firewall and/or application
firewall is required to ensure consistency of the characteristics of connections. Network
Address Translation is a problem for H.323 because the internet protocol and port on the
internet protocol header do not match those in the messages. This may be mitigated with
an H.323 aware firewall. Additionally, there will be restrictions in other security
measures if Network Address Translation is involved.

4.2 Session Internet Protocol

Session Initiation Protocol is a signaling protocol specified by the Internet


Engineering Task Force used to set up and tear down two-way communications
sessions. Session internet protocol operates on the application level so can be used with
several different protocols. Using transmission control protocol allows use of providing
12
Design and Develop VOIP Dialer and Recording Database
more security whereas, user datagram protocol allows for faster, lower latency,
connections. Usual components of an Session Internet Protocol system are the user
agent, proxy server, registrar server, and the redirect server. The usual components
software contains client and server components. The client piece makes outgoing calls
and the server is responsible for receiving incoming calls. The proxy server forwards
traffic, the registrar server authenticates requests, and the redirect server resolves
information for the usual components client. The endpoints begin by connecting with a
proxy and/or redirect server which resolves the destination number into an internet
protocol address. It then returns that information to the originating endpoint which is
responsible for transmitting the message directly to the destination. A security
advantage of session internet protocol is that it uses one port. The main concerns for
security of are confidentiality, message integrity, no repudiation, authentication and
privacy. New security mechanisms were not created for session internet protocol
instead, session internet protocol uses those provided by Hyper Text Transfer Protocol
and Simple Mail Transfer Protocol as well as Internet Protocol Security.

Fig 4.3:- Self-Provided Customer Architecture

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.

4.3 Network Address Translation

Network Address Translation allows one network address to be translated at a


gateway between two networks into another address so that the packet will have a valid
source address on the network it is on. Most commonly Network Address Translation is
used to change private internet protocol addresses into public, Internet routable, internet
protocol addresses. Ports may also be translated. Network Address Translation traversal
is usually only a concern if end-user devices connect directly with an external network
or if they connect to the internal network from an external network.

Fig 4.4:- Network Address Translation Architecture

Network Address Translation is a layer of security because it hides the real


addresses on the internal network from the public network. Network Address
Translation can however, be a problem, because the routing device does not know the
15
Design and Develop VOIP Dialer and Recording Database
actual internet protocol address of the device. The information defining the endpoint is
in the header. The routing device must be able to read the header and in some cases (i.e.
with proxy firewalls) change it. This is hampered when encryption is used. The best
solution is to not use Network Address Translation if at all possible. By removing the
issue, the problem disappears, though another problem may present itself. When
Network Address Translation is required, care must be taken to select application and
proxy firewalls that handle the implementation or, alternatively, consider a service offered
by the public networks.

4.4 Denial of Service

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.

Fig 4.5:- PSTN Architecture


16
Design and Develop VOIP Dialer and Recording Database
If Denial of Service is caused by bandwidth constraints, potential solutions are
increasing the bandwidth and/or isolating the voice over internet protocol traffic so that
it gets service first. Various methods of ensuring servers don’t stop working, such as
failover methods like clustering, can help reduce Denial of Service from failing
components. Each component of the voice over internet protocol system offered by the
vendor, should be evaluated, removing those that are unnecessary. Server size should be
planned such that all desired vendor services and expected traffic can be supported,
adding some percentage for expected growth.

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.

4.5 Other Concerns

Additional concerns of a VoIP system that need to be considered are databases,


web servers, additional VoIP services offered by the vendor, protocol stacks, access to
public or unknown networks, physical security and electrical power. Databases are
needed at some point of the VoIP implementation to store and retrieve information as
needed to accommodate various functions of the system. Database security principles
should be applied including changing the default administrator password, patches as
they become available, and best practices concerning access to the database, especially
from sources other than the voice over internet protocol system. A common feature of
end-user equipment is a web browser, the purpose of which is to provide additional
functionality and increased productivity. A voice over internet protocol system server
may have a web browser interface allowing management. If supported, patch the device
when the patch becomes available and use as strong authentication as can be supported.
Each vendor, having their own implementation of voice over internet protocol system,
may require any number of services to run on a server to support their product. As

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.

Fig 5.1:- Voice over internet protocol infrastructure

It is the combination of voice over internet protocol with point-of-service


applications that shows great promise for the longer term. The first measure of success for
voice over internet protocol will be cost saving for long distance calls as long as there
are no additional constraints imposed on the end user. For example, callers should not
be required to use a microphone on a pc. voice over internet protocol provides a
competitive threat to the providers of traditional telephone service that, at the very least,
will stimulate improvements in cost and function throughout the industry implemented
using an internet protocol network. This design would also apply if other types of packet
networks (such as frame relay) were being used.

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

Interconnection of the Internet to the public switched telephone network can be


accomplished using a gateway, either integrated into or provided as a separate device. A
PC-based telephone, for example, would have access to the public network by calling a
gateway at a point close to the destination (thereby minimizing long distance charges).

5.2 Internet-aware telephones

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

Fig 5.2:- overall architecture for VoIP an product developer arise

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.

4. public switched telephone network service interworking (and equipment


interoperability) involves gateways between the voice and data network environments.

5. System management, security, addressing (directories, dial plans) and accounting


must be provided, preferably consolidated with the public switched telephone network
operation support systems.

21
Design and Develop VOIP Dialer and Recording Database
CHAPTER 6
6. Comparison of VoIP software

VoIP software is used to conduct telephone-like voice conversations across


Internet Protocol (IP) based networks. VoIP stands for "Voice over IP". For residential
markets, VoIP phone service is often cheaper than traditional public switched telephone
network (PSTN) service and can remove geographic restrictions to telephone numbers,
e.g. have a New York PSTN phone number in Tokyo.

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.

Other VoIP software applications include conferencing servers, intercom systems,


virtual FXOs and adapted telephony software which concurrently support VoIP and
PSTN like IVR systems, dial in dictation, on hold and call recording servers.

6.1 General softphone clients

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

IM, File Transfer,


GPL / ICE, SIP, Desktop Sharing, 0.23.2
Linux, Mac OS,
Blink Free Yes MSRP, RFB sRTP, TLS Unlimited Multi-party (February
Windows
software (VNC) conference, 15, 2011)
Wideband

Text chat, File


Freeware transfer, Video chat,
Linux, Mac OS, / Closed Screen-shot, Screen- 3.0 (July
Brosix No Yes Unknown
Windows Proprietar sharing, 2010)
y Whiteboard, Co-
browse

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

Freeware IM, Conferencing,


/ Closed SIP, STUN, Voice, Video and Windows
Eyeball Chat Windows No Yes Unknown
Proprietar ICE, XMPP SIMPLE based 3.2
y presence

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"

Closed SIP AIM ICQ


Integrated, PBX January
iChat Mac OS X Proprietar No XMPP H263 Unknown Unknown
independent 2007
y H264

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)

Video, voice, IM,


GPL / 1.2
SIP, STUN, external Sessions,
KPhone Linux (KDE) Free Yes SRTP Unknown (November
NAPTR/SRV IPv6 support for
software 2008)
UDP

GPL /
Video, IM, STUN, 3.4.1 (Feb
Linphone Linux, Windows Free Yes SIP No Unknown
IPv6 2011)
software

IM, File transfer,


Voice, Presence,
Closed Server stored 8.5 (22.
Lotus Linux, Mac OS X, SIP, SIMPLE,
Proprietar No TLS Unknown contact list, HTTP December
Sametime Windows, mobile T.120 and H.323
y tunneling, plugins, 2009)
embedable in Lotus
Notes

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)

Chat with (limited)


embedded HTML,
ACLs for user
No max
management,
(limited
Customizable In-
TLS and only by 1.2.3
Linux, Mac OS X, Game Overlay,
Mumble BSD Yes CELT / Speex OCB- server (February
Windows Directional Audio,
AES128 bandwidt 19, 2011)
Plugin Support,
h and
Nested Channels,
memory)
Echo cancellation,
Logitech G15
support

VoIP, SIP calling,


Video
Sharewar SIP, (XMPP,
conference/chat, 2.20
Symbian, Windows e / Closed STUN, ICE, TLS and
OctroTalk No Unknown live video (December
Mobile, Windows Proprietar Libjingle and SASL
streaming, P2P file 2010)
y RTP (media)
transfer, instant
messaging

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)

SRTP, but Video, IM (MSN,


key exchange AIM, ICQ, Yahoo!, 2.2 (18
GPL /
Linux, Mac OS X, via Everbee XMPP, Google October
QuteCom Free Yes SIP Unknown
Windows XP/2000 key Exchange Talk), voicemail, 2010; 4
software
which is not a wengo to phone, months ago)
Standard) conferencing.

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

Skype Linux, Mac OS X, Freeware No Proprietary P2P Yes 25 Conferencing, 5.2.60.113


Windows / Closed protocol; SIP starting video, file transfer, (Windows)
2000/XP/Vista/7/Mo Proprietar users can with voicemail, Skype to 5.0.0.7994
bile (no longer y connect to the version phone, phone to (Mac OS X)
supported), BREW, Skype network 3.6.0.216. Skype, additional 2.1.0.81
Android, iPhone, PSP using alternate 10 with P2P extensions (Linux)
software/hardwa 2.x (games, whiteboard, 1.5.0.12
re, but the Skype etc...); depending on (Symbian)
software does platform. (March 15,
not support it 2011; 4 days
directly ago
(Windows)
January 27,
2011; 51
days ago
(Mac OS X)
January 20,
2010; 13
months ago
(Linux)
December 1,
2010; 3
months ago
(Symbian).

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

Video calling, video


Freeware
conferencing, chat,
Mac OS X, Windows / Closed
Tokbox No Unknown Unknown Unknown IM (MSN, AIM, Unknown
XP/2000/Vista Proprietar
Yahoo!, Google
y
Talk)

Freeware Call Forwarding,


Windows / Closed PC to PSTN, PSTN
Tpad No SIP, STUN Unknown Unknown 3.0.1
2000/XP/Vista Proprietar to PC, Voicemail to
y email

Windows Chat, file transfer,


2000/XP/Vista/7, Freeware voicemail, inbound
Mac OS X, Linux / Closed numbers, integration
Tru App No SIP, XMPP Unknown Unknown
iOS, Android, Proprietar with GTalk,
Symbian, BlackBerry y Microsoft Live,
OS, Skype

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.

IM, single login


Windows /
Freeware account, for
Mac OS: 4.0
Mac OS, Windows, / Closed Windows and Mac
X-Lite No SIP, STUN, ICE Yes Unknown / Linux:
(Linux) Proprietar also Conferencing,
Discontinue
y Video and SIMPLE
d
based presence]

Mac OS (8, 9, X),


Freeware
Windows, SIP (using TLS) Video, file transfer,
Yahoo! / Closed
(Linux/FreeBSD No and RTP Unknown Unknown PC to phone, phone
Messenger Proprietar
version not VoIP (media) to PC
y
capable)

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 a cross-platform virtualization application. What does that mean?


For one thing, it installs on your existing Intel or AMD-based computers, whether they
are running Windows, Mac, Linux or Solaris operating systems. Secondly, it extends the
capabilities of your existing computer so that it can run multiple operating systems
(inside multiple virtual machines) at the same time. So, for example, you can run
Windows and Linux on your Mac, run Windows Server 2008 on your Linux server, run
Linux on your Windows PC, and so on, all alongside your existing applications. You can
install and run as many virtual machines as you like – the only practical limits are disk
space and memory.

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

Fig 7.1:- Virtual Box

7.1 Why is virtualization useful?

§ Running multiple operating systems simultaneously. Virtual Box allows you to


run more than one operating system at a time. This way, you can run software
written for one operating system on another (for example, Windows software on
Linux or a Mac) without having to reboot to use it. Since you can configure what
kinds of “virtual” hardware should be presented to each such operating system, you
can install an old operating system such as DOS or OS/2 even if your real
computer’s hardware is no longer supported by that operating system.

7.2 Supported host operating systems

Currently, Virtual Box runs on the following host operating systems:

7.2.1 Windows hosts:

– Windows XP, all service packs (32-bit)

– Windows Server 2003 (32-bit)

– Windows Vista (32-bit and 64-bit1).

– Windows Server 2008 (32-bit and 64-bit)


30
Design and Develop VOIP Dialer and Recording Database
– Windows 7 (32-bit and 64-bit)

7.2.2 Mac OS X hosts:

– 10.5 (Leopard, 32-bit)

– 10.6 (Snow Leopard, 32-bit and 64-bit)

7.2.3 Linux hosts:

– Linux hosts (32-bit and 64-bit). Among others, this includes :


Ubuntu 6.06 (“Dapper Drake”), 6.10 (“Edgy Eft”), 7.04 (“Feisty Fawn”), 7.10 (“Gutsy
Gibbon”), 8.04 (“Hardy Heron”), 8.10 (“Intrepid Ibex”), 9.04 (“Jaunty Jackalope”),
9.10 (“Karmic Koala”), 10.04 (“Lucid Lynx”), 10.10 (“Maverick Meerkat).

– Debian GNU/Linux 3.1 (“sarge”), 4.0 (“etch”), 5.0 (“lenny”) and 6.0 (“squeeze”)

– Oracle Enterprise Linux 4 and 5

– Redhat Enterprise Linux 4, 5 and 6

– Fedora Core 4 to 14

– Gentoo Linux

– SUSE Linux 9, 10 and 11, openSUSE 10.3, 11.0, 11.1, 11.2, 11.3

– Mandriva 2007.1, 2008.0, 2009.1, 2010.0 and 2010.1

7.3 Installing on Windows hosts

7.3.1 Prerequisites

Windows Installer 1.1 or higher must be present on your system.

7.3.2 Performing the installation

The Virtual Box installation can be started by double-clicking on its executable


file (contains both 32- and 64-bit architectures)

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.

VBoxApplication Main binaries of Virtual Box.

Note: This feature must not be absent since it contains the minimum set of files
to have working Virtual Box installation.

VBoxUSB USB support.

VBoxNetwork All networking support; includes the VBoxNetworkFlt and


VBoxNetworkAdp features (see below).

VBoxNetworkFlt Bridged networking support.

VBoxNetworkAdp Host-only networking support.

VBoxPython Python support.

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.

7.4 Starting Virtual Box

After installation, you can start Virtual Box as follows:

§ 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:

Fig 7.2:- Welcome to Virtual Box

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

Fig 7.3:- Virtual Box Main Menu

7.5 Creating your virtual machine

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):

Fig 7.4:- Create New Virtual Machine

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

Fig 7.5:- Choosing Operating System

7.5.1 Virtual Machine Name :

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”.

7.5.2 Operating System Type :

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.

7.5.3 Virtual Machine RAM :

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

Fig 7.6:- Choosing Ram Size

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.

The wizard shows you the following window:

Fig 7.7:- Virtual Hard Disk

Here you have the following options:

§ To create a new, empty virtual hard disk, press the “New” button.

§ You can pick an existing disk image file.

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.

Fig 7.8:- Virtual Disk Wizard

Press Next to continue.

Fig 7.9:- Type of Virtual Hard Disk

Virtual Box supports two types of image files:

§ 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:

Fig 7.10:- Size of Virtual Hard Disk

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.

7.6 Running your virtual machine

Fig 7.12:- Running New Virtual Machine

To start a virtual machine, you have several options:

§ Double-click on its entry in the list within the Manager window or

§ 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.

7.6.1 Starting a new VM for the first time

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.

Fig 7.13:- First Run Wizard

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.

Fig 7.14:- Select Installation Media

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

Fig 7.15:- Summary First Run Wizard

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:

• VIDEO support. You can use videophones with Elastix!

• 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.

• Graphical configuration of network parameters.

• Resource usage reporting.

• Remote restart/shutdown options.

• Incoming/outgoing calls and channel usage reports.

• Integrated voicemail module.

• Voicemail Web interface.

• Integrated operator panel module.

• Extra SugarCRM and Calling Card modules included.

• Download section with commonly used accessories.

• Embedded help interface.

• Instant messaging server (Openfire) integrated.

• Multi-lingual support. Languages supported include:

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

• Mail server integrated including multi-domain support.

• Web based email interface.

8.1 ELASTIX Installation

After we finish the First Run Wizard of Virtual Box, the following screen will
appear:

Fig 8.1:- Elastix Installation

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

Fig 8.2:- Choosing Language

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>.

The following screen will appear

46
Design and Develop VOIP Dialer and Recording Database

Fig 8.3:- Keyboard Type

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.

Fig 8.4:- Warning

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>.

Now the next screen needs a little bit of tender care.

Fig 8.5:- Partitioning Type

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.

Fig 8.7:- Partitioning layout

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.

Fig 8.8:- Configure Network Interface

49
Design and Develop VOIP Dialer and Recording Database
So just press the <SPACE> bar and the next screen will appear

Fig 8.9:- Ethernet Configuration

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

Fig 8.10:- IPv4 Configuration for Ethernet

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).

Now <TAB> to the ok button and press <SPACE>

The following screen will appear

Fig 8.11:- Network Settings

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

Fig 8.12:- Host Name Configuration

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.

Fig 8.13:- Time Zone

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>.

The next screen and what you place in here is critical

52
Design and Develop VOIP Dialer and Recording Database

Fig 8.14:- Root Password

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.

<TAB> to the OK button and press <SPACE> bar.

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

Fig 8.15:- Package Installation

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

Fig 8.16:- MySQL Password

The next screen will ask you to confirm the MYSQL password you just entered. Enter it
again

Fig 8.17:- Confirm MySQL Password

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.

Fig 8.18:- Admin Password

The next screen will ask you to confirm it.

Fig 8.19:- Confirm Admin Password

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

Fig 8.20:- Elastix Login

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

Fig 8.21:- Elastix Web Interface


57
Design and Develop VOIP Dialer and Recording Database
This has popped up as the Elastix system utilizes SSL for all configuration pages, but
your system does not have a valid SSL Certificate. Depending on your need you can
purchase your own SSL Certificate, so in the meantime, we trust the system we are
communicating with and we need to let the browser know this. Each browser/version
has a different way of handling this, so you need to work out how it works on your
browser.

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.

Fig 8.22:- Elastix GUI

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

9.1.1 Network Parameters

Go to Network section.

9.1.2 Configuration of telephonic hardware

Go to Port Details.

9.1.3 Creation of new extension

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.

First, choose the device from among the available options:

Fig 9.1:- Add 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.

Once the correct device has been chosen, click on Login.

Note: Now we proceed to input the necessary fields (obligatory) to create a new
extension.

Continue to enter the corresponding information:

Fig 9.2:- Add Sip 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.

9.1.4 Configuration of softphone telephone

By configuring a softphone telephone, what we achieve is to have a connected


PC that serves the same functions as a conventional telephone. For this, we will need
to install a software that will convert your PC into a telephone. Also, headphones and
a microphone are necessary. There are various options for softphones.

For this case, we will use Zoiper.

Fig 9.3:- Zoiper Interface

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

Fig 9.4:- Add Sip Account

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.

Fig 9.5:- Audio Codec’s

Finally, you can make a call from one extension to another.


62
Design and Develop VOIP Dialer and Recording Database
9.1.5 Recording of welcome/greeting message

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.

Fig 9.6:- System Recordings

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.

Fig 9.7:- Digital Receptionist

To record a welcome or greeting message, go to the “System Recordings” section, for


example:

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

Fig 9.8:- Edit Menu Digital Receptionist

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:

Change Name: To change the name, we'll put Welcome.

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.

Announcement: This is the announcement or welcome message that was recorded


earlier. It will appear in a list with all of the available messages.

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.

These extensions will appear after the option “Core”.

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.

Finally, let's record the IVR.

9.1.7 Fax Configuration

Go to MENU: FAX.

9.2. Reference to available modules

9.2.1. MENU SYSTEM

9.2.1.1 System Info

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.

Fig 9.9:- System Resource


66
Design and Develop VOIP Dialer and Recording Database
CPU Info Information about brand, model and processor speed

Uptime Time from the last reboot of the server

CPU usage Percentage of use of processor capacity

Memory usage Percentage of RAM memory utilized

Swap usage Percentage of SWAP memory utilized

Here is a graphic with the statistics of simultaneous calls, percentage of use of


processor and percentage of use of RAM memory.

Fig 9.10:- System Resources Graphs

Hard Drives

This section shows a summary of the utilization of storage available on the server.

Fig 9.11:- Hard Drives

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.

Within this option we have two sections:

67
Design and Develop VOIP Dialer and Recording Database
Network Parameters

Fig 9.12:- Network Parameters

This corresponds to the general network parameters of the server:

Host Server Name, for example: pbx.subdomain.com

Default
IP Address of the Port of Connection (Default Gateway)
Gateway

Primary DNS IP Address of the Primary Domain Name Server (DNS)

Secundary IP Address of the Secondary or Alternative Domain Name


DNS Server (DNS)

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:

Fig 9.13:- Ethernet Interfaces Links

Device Name of the Operating System that is assigned to the Interface

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.

IP IP Address assigned to the Interface

Mask The Network Mask assigned to the Interface

MAC Physical Address of the network Interface


Address

HW Info Additional information about the network Interface

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

Fig 9.14:- Edit Interface

9.2.1.3 User Management

• 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

System Info Yes Yes No

PBX Configuration Yes No No

Network Yes No No

User Management Yes No No

Shutdown Yes No No

Operator Panel

Flash Operator Panel Yes Yes No

Voicemails

Asterisk Recording
Yes Yes Yes
Interface

Fax

Virtual Fax List Yes Yes No

New Virtual Fax Yes No No

Reports

CDR Report Yes Yes No

Channels Usage Yes Yes No

Billing

Rates Yes No No

Billing Report Yes No No

Destination Distribution Yes No No

Trunk Configuration Yes No No

Extras

70
Design and Develop VOIP Dialer and Recording Database
SugarCRM Yes Yes Yes

Calling Cards Yes Yes Yes

Downloads

Softphones Yes Yes Yes

Fax Utilities Yes Yes Yes

• Group Permission

The option “Group Permission” of the Menu “System” in Elastix lets us


determine the menus to which each group of users will have access.

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.

Fig 9.15:- Group Permission

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.

Fig 9.16:- Language

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.

Fig 9.17:- Date and Time Configuration

Select the new date, hour and time zone and click on the “Apply changes” button.

9.2.1.6 Load Module

To upload a new module, click on the “Examinar” button, select the file and,
finally, click on the “Save” button.

Fig 9.18:- Load Module

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

Fig 9.19:- Backup

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”.

Fig 9.20:- Restore

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

Fig 9.21:- Shutdown

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.

Fig 9.22:- Change Themes

To change the theme, choose from the available options and click on the “Change”
button.

9.2.1.11 Port Details

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.

Fig 9.23:- PCI Slot

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”.

9.2.2. MENU: PBX


9.2.2.1 PBX Configuration

The option “PBX Configuration” of the Menu “PBX” lets us achieve the
configuration of Elastix.

Fig 9.24:- Free PBX

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.

Fig 9.25:- Asterisk CLI

Example:

* show channelsShows whichever channel that is in use at the moment.

9.2.2.3 Flash Operator Panel

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.

Fig 9.26:- Extensions

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.

The report will change depending on the values of the filter:

Fig 9.27:- Voicemail

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

Fig 9.28:- Monitoring

The report will change depending on the values of the filter:

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.

9.2.2.6 File Editor

The option “File Editor” of the Menu “PBX” in Elastix lets us edit the files of
the configuration of Elastix.

Fig 9.29:- File Editor

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

Fig 9.30:- User..config

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.

9.2.3. MENU: FAX


9.2.3.1 Virtual Fax List

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.

Fig 9.31:- Virtual Fax List

Also, clicking in the virtual fax's name displays it's information:

78
Design and Develop VOIP Dialer and Recording Database

Fig 9.32:- View Virtual Fax

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:

Fig 9.33:- Edit Virtual Fax

Once we modify the values, click on the “Apply Changes” button to save the changes
or “Cancel” to return without saving the changes.

9.2.3.2 New Virtual Fax

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

Fig 9.34:- New Virtual Fax

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:

Virtual Fax Name to identify the virtual fax.


Name

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”.

Destination Email to which the notifications will be sent by the telephone


Email: system of the faxes received and of errors, in case there are any.

Secret It should be the same as the one inputted at the creation of the
(IAX): fax extension.

The name of the caller. This field is not mandatory; if it is not


Caller ID
filled in who receives the fax at that extension, the name will not
Name:
be shown.

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.

9.2.3.3 Fax Master

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.

Fig 9.35:- Fax Master Configuration

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.

9.2.3.4 Fax Clients

The option “Fax Clients” of the Menu “FAX” in Elastix lets us input the IPs that
have permission to send faxes through Elastix.

Fig 9.36:- Allowed Clients

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.

9.2.3.5 Fax Visor

The option “Fax Visor” of the Menu “Fax” in Elastix lets us view a list with
details of the faxes received.

Fig 9.37:- Fax Visor

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.

The report will change depending on the values of the filter:

Company Name: Name of the company that is sending the fax.


81
Design and Develop VOIP Dialer and Recording Database

Number of the Fax of the company that is sending the


Company Fax:
fax.

Fax Date: Sent date of fax.

9.2.4. MENU: EMAIL

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.

Fig 9.38:- Domain List

View and Delete

Clicking on the names of the domains will bring us to a screen that shows the
data of the domain.

Fig 9.39:- View Domain

To delete a domain, click on the “Delete” button.

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.

Fig 9.41:- Email Account List

View, Edit and Delete

Clicking on the name of the account will bring us to a screen that shows the data for
the account.

Fig 9.42:- View Account

To delete an account, click on the “Delete” button.

You can also modify the account information by clicking on the “Edit” button. The
information that can be changed are: Quota and Password.

Fig 9.43:- Edit Account

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:

Fig 9.44:- New Email Account

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.

Password The password of the user of the email account

Retype password Confirmation of the password of the 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.

Fig 9.45:- Relay Network


84
Design and Develop VOIP Dialer and Recording Database
9.2.4.4 Webmail

The option “Webmail” of the Menu “Email” in Elastix lets us review the email
of the domains configured.

Fig 9.46:- Web Mail

To enter, input your username and password, and click on the “Login” button.

9.2.5. MENU: REPORTS


9.2.5.1 CDR Reports

The option “CDR Reports” of the Menu “Reports” in Elastix lets us view a list
with the details of the calls.

Fig 9.47:- CDR Report List

The report will change depending on the values of the filter:

Start Date: The start date of the calls to be selected.

End Date: The end date of the calls to be selected.

Field: Additional fields for filtering: Source, Destination, Dst. Channel.

Status: Status of call: Answered, Busy, Failed, No Answer.


85
Design and Develop VOIP Dialer and Recording Database

9.2.5.2 Channels Usage

The option “Channels Usage” of the Menu “Reports” in Elastix lets us view
graphically the number of simultaneous calls for each channel.

Fig 9.48:- Channels Usage

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

Fig 9.49:- Rates List

View, Edit and Delete

The link View will take us to a screen where we will see the rate details.

Fig 9.50:- View Rate

To delete a rate, click on the “Delete” button.

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.

Fig 9.51:- Edit Rate

• 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

Fig 9.52:- New Rate

Prefix The telephone prefix in which the rate will be applied.

Name Name of the rate.

Rate Value of the rate.

Rate Offset Value of the connection.

• 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.

Fig 9.53:- Billing Report

The report will change depending on the values of the filter:

Start Date The start date for the calls to be selected.

End Date The end date for the calls to be selected.

Additional fields for filtering: Source, Destination, Dst.


Field
Channel

• 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:

Start Date The start date for calls to be selected.

End Date The end date for calls to be selected.

Criteria Criteria for distribution: Distribution by Time, Distribution


by Number of Calls, Distribution by Cost.

Distribution by Time

Fig 9.54:- Distribution by Time

Distribution by Number of Calls

89
Design and Develop VOIP Dialer and Recording Database

Fig 9.55:- Distribution by Number of Calls

Distribution by Cost

Fig 9.56:- Distribution by Cost

• Billing Setup
90
Design and Develop VOIP Dialer and Recording Database
Within this option there are two sections:

Default Rate Configuration

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.

Fig 9.57:- Default Rate Configuration

Trunk Bill Configuration

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.

Fig 9.58:- Trunk Bill Configuration

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.

9.2.6. MENU: EXTRAS

9.2.6.1 Sugar CRM

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

Fig 9.59:- Sugar Open Source

9.2.6.2 Calling Cards

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.

Fig 9.60:- Authentication

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

Fig 9.61:- Softphones

To download one of these Softphones, click on the link corresponding to each


software.

9.2.6.4 Fax Utilities

The option “Fax Utilities” lets us download JHylaFax or Winprint Hylafax,


software for sending and receiving faxes in a fast and easy manner.

Fig 9.62:- Fax Utilities

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

Calls with Video

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.

Fig 9.63:- Call With Video

Under sip.conf (’general’ section) add the following lines:

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

Software URL Platform

94
Design and Develop VOIP Dialer and Recording Database
Ekiga (Tested http://www.ekiga.org Linux
by Edgar)

Adore Video Windows


http://www.adoresoftphone.com/softphones/softph
(Tested by
one-video.html
Edgar)

Eyebeam Windows
http://www.counterpath.com/index.php?menu=Pro
(Tested by
ducts&smenu=eyeBeam
Gabriel25)

Bria 2.0 Windows


http://www.counterpath.com/index.php?menu=Pro
(Tested by
ducts&smenu=bria
Gabriel25)

95

Das könnte Ihnen auch gefallen