ACD. Inc. Skype for Asterisk performance is superior to the proxy or gateway products available for connecting to the Skype community. There is no secondary piece of hardware to manage as Skype for Asterisk will run directly from an Asterisk-based PBX. Key Features
• • • • • • • • • • • • •
Make Skype to Skype calls Calls to landlines and mobile phones Receive calls with SkypeIn Make worldwide PSTN calls with SkypeOut Make and receive multiple concurrent Skype calls from the same Skype account Transfer Skype calls DTMF support for incoming and outgoing calls Read Skype profile fields from incoming calls Read Skype Credit balance Set and retrieve online status Set privacy settings Chat with Skype users Handle incoming Skype calls using all Asterisk applications (voicemail. etc. Adding Skype for Asterisk to any Asterisk server enables complete access to the Skype community. including low cost PSTN access and free calling to over 440+ million Skype users.
Page 6
.)
Digium.Chapter 1: Overview
Digium's Skype for Asterisk™ (SfA) is an add-on channel driver for Asterisk based systems. Skype for Asterisk integrates seamlessly with the Skype community. MeetMe conferencing.

The chan_skype Asterisk channel module is the Asterisk channel driver that provides calling services to and from the Skype community. Inc.digium. encrypted Asterisk-to-Asterisk calls. they may purchase additional license keys to register on their existing Asterisk system. Digium’s customers of Skype for Asterisk may purchase license keys coded for a specific number of channels.com. This module is provided in a binary-only form.
Page 7
.
• • •
Skype for Asterisk provides two components: res_skypeforasterisk and chan_skype. The res_skypeforasterisk Asterisk resource module contains the Skype engine.so. The aggregate number of channels across all registered license keys will be made available to Asterisk. etc. along with various libraries and other components required to talk to the Skype engine and manage user accounts.
Digium. calls. Each licensed channel allows Skype for Asterisk to initiate a single concurrent call to the Skype community. As customers need to expand their calling capacity. or to receive a single concurrent call from the Skype community. additional channels of Skype for Asterisk may be purchased from http://www.• •
Simultaneous access from both Asterisk and the Skype desktop client Supports G. If additional channels of Skype capability are required. using the library services provided by res_skypeforasterisk.729 (included) codecs
Key Benefits
•
Save money with:
◦
Free calling to 440+ million Skype users worldwide directly from your Asterisk server Great rates for worldwide inbound calling DIDs via online numbers (SkypeIn) Great rates for worldwide outbound calling to landline and mobile phones (SkypeOut). Please note that Skype for Business subscription prices do not apply. high quality. presence.711 and G.
◦ ◦
• •
Add Skype to your call routing tables to optimize global calling costs Add a click to call button to your web site or e-mail so customers can quickly contact you Allows customers to call via a local online number Perfect for the remote employee as the office is one click away with free calling Communicate securely with free.

Figure: Skype for Asterisk Application Scenario
Digium. Inc.
Page 8
.

for free. Unified messaging? No problem.
Digium. and Sun Solaris. It provides all of the features you would expect from a PBX including many advanced features that are often associated with high end (and high cost) proprietary PBXs. How about a replacement for your aging legacy voicemail system? Can do.3 Asterisk as a Gateway
It can also be built out as the heart of a media gateway. and connecting callers with the outside world over IP. analog (POTS). It’s in there. Asterisk's architecture is designed for maximum flexibility and supports Voice over IP in many protocols. enabling features.. Asterisk’s modular architecture allows it to convert between a wide range of communications protocols and media codecs. and can interoperate with almost all standards-based telephony equipment using relatively inexpensive hardware. Asterisk is released as open source under the GNU General Public License (GPL). Offering flexibility unheard of in the world of proprietary communications. and digital (T1/E1/J1/BRI) connections. and it is available for download free of charge.
Page 9
. What about an automated attendant? Asterisk does that too.2 Asterisk as a Phone Switch (PBX)
Asterisk can be configured as the core of an IP or hybrid PBX.1.
1. Asterisk runs on a wide variety of operating systems including Linux. Need a telephony interface for your web site? Okay. How about a conference bridge? Yep. FreeBSD.
1. switching calls. OpenBSD. bridging the legacy PSTN to the expanding world of IP telephony. Mac OS X. Inc.. Asterisk is the most popular open source telephony software available. managing routes. Asterisk empowers developers and integrators to create advanced communication solutions. with the Asterisk Community being the top influencer in VoIP.
1.1 What is Asterisk®?
Asterisk is the world’s leading open source telephony engine and tool kit.4 Asterisk as a Feature/Media Server
Need an IVR? Asterisk’s got you covered.

all based on Asterisk have helped reduce costs and enabled flexibility. and pre-paid calling solutions.7 Asterisk Everywhere
Asterisk has become the basis for thousands of communications solutions. advanced skills-based routing.
1.com.6 Asterisk in the Network
Internet Telephony Service Providers (ITSPs). Inc.1. Call center and contact center developers have built complete ACD systems based on Asterisk. Competitive Local Exchange Carriers (CLECs) and even first-tier incumbents have discovered the power of open source communications with Asterisk. Feature servers.org or http://www. and more. For more information on Asterisk.digium. If you need to communicate. hosted services clusters.
1.
Page 10
. visit http://www.
Digium.asterisk.5 Asterisk in the Call Center
Asterisk has been adopted by call centers around the world based on its flexibility. voicemail systems. predictive and bulk dialing. Asterisk has also added new life to existing call center solutions by adding remote IP agent capabilities. Asterisk is your answer.

Asterisk must be installed prior to installing the Skype for Asterisk package.0.0 Open Source Asterisk branch 1.6.
◦
◦
Asterisk Open Source Asterisk branch 1.
Page 11
.4 Open Source Asterisk branch 1.2 AsteriskNOW
Recommended Minimum Version 1. Inc.5 1.6.1.6.6.0 1.6.6.1 Open Source Asterisk branch 1. Important Notes:
◦
Skype for Asterisk is available for Linux only.2.5
Digium.4. Digium recommends a minimum version for the various offerings of Asterisk.25 1. The recommendations are provided in the table shown below.Chapter 2: Installation
This chapter will guide you through the necessary steps to install Digium's Skype for Asterisk.6 1. Versions prior to those recommended have not been tested.

729.1 Installation Overview
Once you have your Skype for Asterisk license key. there are a few tasks to perform in order to install Skype for Asterisk. Generate a valid Skype for Asterisk license key using the register utility. Choose the directory that closest matches your Asterisk version.digium. Install the Digium G.digium.2. Load the res_skypeforasterisk and chan_skype Asterisk modules. Each of these directories contains TAR files that include the Skype modules. 2. 1. The register utility may be downloaded from: http://downloads.com/pub/telephony/skypeforasterisk/ Note: Supported software builds are provided for 32-bit and 64-bit x86 platforms. Download and install the Skype for Asterisk package that is built for your platform. Note: Each Skype for Asterisk channel includes a channel license of G.
Digium.com/pub/register/ The Skype for Asterisk package may be downloaded from: http://downloads.729 software codec that is built for your platform. 3.
Page 12
. Inc. 4.

Page 13
. This will allow you to increase the total number of available Skype for Asterisk channels on your Asterisk server. There will be an additional Skype for Asterisk license file generated in the /var/lib/asterisk/licenses directory for each Skype for Asterisk key that is successfully registered to your Asterisk server. The unique Skype for Asterisk license file that is located in your /var/lib/asterisk/licenses directory is tied to the MAC address of all the Ethernet devices installed in your system.2 Register Skype for Asterisk
Registration of the Skype for Asterisk license key will be done using the Digium register utility in the same way as with other modules like Cepstral. added. New Skype for Asterisk keys may be registered to your Asterisk server using the same instructions provided above. You must have at least one Ethernet device in your Asterisk server in order for the registration process to successfully complete. Outgoing network traffic on TCP port 443 (SSL) must be allowed in order for the register utility to successfully communicate with Digium's license server and complete the registration process. Digium must be contacted by phone in order to request authorization to have your Skype for Asterisk key incremented.729. Inc. and G. Digium reserves the right to deny authorization for having a Skype for Asterisk key incremented. Multiple Skype for Asterisk keys may be registered on the same Asterisk server.2. It is extremely important that you follow the instructions provided in section 2. HPEC. A Skype for Asterisk key can only be re-registered once without authorization from Digium. or removed.7 whenever a new Skype for Asterisk key is successfully registered to your Asterisk server. Important Notes:
◦
Internet access is required from your Asterisk server in order to register your Skype for Asterisk key for licensed use. A Skype for Asterisk key must be re-registered if any of the Ethernet devices in your Asterisk server are changed. The registration utility will prompt you for your Skype for Asterisk license key.
◦
◦
Digium.

2
AsteriskNOW
AsteriskNOW 1.5 systems have the ability to easily download and install the register utility.2.
2.
# yum install register # register
Follow the prompts provided by the registration utility and provide the information it requests to activate your Skype for Asterisk license key. An example is provided below. Inc. Be sure to run these commands as the root user.1
Open Source Asterisk
An example for 32-bit Linux using Open Source Asterisk is provided below.com/pub/register/x86-32/register chmod 500 /root/register /root/register
Follow the prompts provided by the registration utility and provide the information it requests to activate your Skype for Asterisk license key.digium. Be sure to run these commands as the root user.2.2.
Digium.
Page 14
.
# # # #
cd /root wget http://downloads.

etc. compile.0_1.3.0/x86-32/skypeforasterisk-1.1.1
Open Source Asterisk
Extract.0 is provided below. In this document. Otherwise.0_1.tar.conf file is not installed.0-x86_32. Inc.
2.2.6.6. 1. and install the contents of the Skype for Asterisk package for Open Source Asterisk. There are frequently updated builds of Skype for Asterisk posted.gz # tar xzvf skypeforasterisk-1.
Digium.4.6.6. there is a single version for Asterisk 1.tar. but when you read this document the current build number may be different (higher). This version number is part of the filename. Be sure to run these commands as the root user.1.0-x86_32.6. Please be sure that you download the correct version of Skype for Asterisk for your Asterisk version.1.x point releases (1.
Page 15
.).3 Install Skype for Asterisk
There are different versions of Skype for Asterisk that contain both source code and binaryonly components for various Asterisk releases.1.conf file will need to be installed by executing the following command.com/pub/telephony/skypeforasterisk/\ asterisk-1. and there are versions for Asterisk 1. then the chan_skype.6. build number 1. The RPM packaged versions of Skype for Asterisk for AsteriskNOW are binary only.gz # cd skypeforasterisk-1. and each build has a version number.25 and above.
# wget http://downloads. An example for 32-bit Linux using Open Source Asterisk branch 1.0_1.1.0.6. skip this step. but will only work with the specific version for which they are designed to be used.6.
# make samples
Note: Skype for Asterisk will not properly function if the chan_skype.0-x86_32 # make # make install
If the chan_skype.digium. Take note that these modules are not loadable in prior releases of Asterisk.conf file had not been installed from a previous installation of Skype for Asterisk.0 is used as an example.

5 is provided below.5 is not capable of installing or configuring the Skype for Asterisk product.
# yum update asterisk14 # yum install asterisk14-skypeforasterisk
If you are upgrading Skype for Asterisk from a previous version on AsteriskNOW. Inc. Skype for Asterisk's product configuration must be managed by direct editing of its configuration file. instead of executing “yum install asterisk14-skypeforasterisk”.2
AsteriskNOW
Install the Skype for Asterisk RPM package for AsteriskNOW.
Page 16
.3. An example for 32-bit Linux using AsteriskNOW 1.
Digium. Be sure to run these commands as the root user.
# yum update asterisk14-skypeforasterisk
Note: The FreePBX GUI interface that is provided as part of AsteriskNOW 1. use the following command.2.

729 codec for their Skype calls.729 Software Codec Module
The Digium G. This allows Skype for Asterisk users to use the G.com/support.729 software codec module (codec_g729a.729 software codec module.
Page 17
.0 or later of the Digium G.729 channel at no additional cost.729 software codec module.0.729 README that is available in the documentation section at http://www. Your Skype for Asterisk license key may be used to activate a G.so) will need to be installed in addition to Skype for Asterisk. This requires version 3. This is commonly required for SkypeIn and SkypeOut calls.2. please read the G.
Digium. Inc. For more information regarding the Digium G.digium.4 Digium G.

conf is enabled by default. then you will need to add the following lines to the bottom of the [modules] section of the /etc/asterisk/modules. By default. Some Linux distributions mount the /tmp directory with the noexec flag which does not allow files to be executed. The autoload option in /etc/asterisk/modules. There are a few important things that you should know before loading these modules.5 Load Skype for Asterisk Modules
The res_skypeforasterisk resource module and the chan_skype channel module must be loaded in Asterisk in order to use the Skype for Asterisk channels.2. and then removed. An example is provided below. During Skype for Asterisk's initialization process. simply reload the module using the following command.
Page 18
.so module contains a binary Skype engine called skyhost.so
If you already have chan_skype.so is loaded. it is extracted into the /tmp directory.so loaded and have registered a new license key to increase the number of Skype for Asterisk channels.
load => res_skypeforasterisk.so
Note: These modules must be loaded in the order provided above. As long as you have not disabled it.conf file.conf file must be modified to use a directory that will allow the Asterisk process write access and that will allow files to be executed. Inc.so *CLI> module load chan_skype. If Asterisk is already running. then the Skype for Asterisk modules will be loaded the next time you start Asterisk. If your system is configured to mount the /tmp directory with the noexec flag. This engine automatically runs as a separate Linux process called skypeforasterisk once chan_skype.
Digium. If you have disabled the autoload option. launched. the engine is extracted into a temporary directory.so load => chan_skype. Skype for Asterisk communicates with skyhost to make and manage connections to the Skype community.
*CLI> module load res_skypeforasterisk. The res_skypeforasterisk. the engine_directory configuration option in the chan_skype. you may load the Skype for Asterisk modules from the Asterisk CLI.

# asterisk -rx “restart when convenient”
Digium.
Page 19
. If there are active Skype calls. Inc.*CLI> module reload chan_skype. or schedule Asterisk to restart once there are no active calls by executing the following command.so
Reloading this module will only be successful if no Skype calls are in progress. you will either have to wait until they have completed to manually reload the module.

This can be verified by issuing "skype show licenses" in the Asterisk CLI.2. Digium reserves the right to deny authorization for having a Skype for Asterisk key incremented.Key: S4A-ABCDEFGHIJKL -. The unique Skype for Asterisk license file that is located in your /var/lib/asterisk/licenses directory is tied to the MAC address of all the Ethernet devices installed in your system. Note: A Skype for Asterisk key must be re-registered if any of the Ethernet devices in your Asterisk server are changed.6 Verify Installation
Verify that the number of Skype for Asterisk channels available to Asterisk matches the number of Skype for Asterisk channels that you purchased. This directory contains the Host-ID specific license files for your system.
# asterisk -rvvv *CLI> skype show licenses Skype for Asterisk Licensing Information ======================================== Total licensed channels: 100 Licenses Found: File: S4A-ABCDEFGHIJKL. Inc.Host-ID: ab:cd:12:34:ab:cd:12:34:ab:cd:12:34:ab:cd:12:34:ab:cd:12:34 -Channels: 100 (OK)
2.Expires: 203907-31 -. added. An example is provided below. or removed.lic -. These license files are tied to the MAC address of all the Ethernet devices installed in your system. Take into consideration any previous Skype for Asterisk channels that you may have already had registered to your Asterisk server before verifying the output.7 Backup License File
It is extremely important that you backup all of the files located in the /var/lib/asterisk/licenses directory. A Skype for Asterisk key can only be re-registered once without authorization from Digium. Creating a backup of this directory will allow you to restore your Skype for Asterisk licenses in case you need to reinstall your operating system.
Page 20
. Digium must be contacted by phone in order to request authorization to have your Skype for Asterisk key incremented.
Digium.

so does not provide passthrough G.729 support like other Asterisk channel drivers. and then clicking the Create a business account button. The current version of chan_skype. The administrator account for the Business Control Panel is a regular Skype account. Important Notes:
◦
Only accounts created from the Business Control Panel will be usable with Skype for Asterisk. The Skype Business Control Panel is a web-based tool that is free to setup and use. This chapter provides an explanation of the configuration options that are available. Inc. Due to this fact. This will be improved in a future release of Skype for Asterisk. When a Skype call wants to use G.skype. it is suggested to configure your users to only allow G. and G.711 ulaw and/or alaw in the chan_skype. Inviting users by Skype name or e-mail address is not currently supported.conf file unless you have G.com/business.so module must be loaded.
Page 21
. the codec_g729a.Chapter 3: Configuration
Digium's Skype for Asterisk has a variety of configuration options.729.729 licensed channels must be available. For this release.
◦
◦
Digium. It is accessible from Skype's web site at http://www.729 licensed channels available. All Skype For Asterisk users must be created by clicking on Add Members. the administrator account will not be able to use Skype for Asterisk.

conf file is mandatory and is placed in the /etc/asterisk directory during the installation process.1 chan_skype. Inc. including how to define users and log them into the Skype community.3. This file documents the configuration options available for the Skype for Asterisk channel driver.conf
The chan_skype.
Page 22
.
Digium.

Disable automatic TCP ports in Skype engine.1 0 (random)
general Enable/disable debugging (very verbose) general IP address to use for Skype engine general IP address to use for RTP media TCP port to use for Skype engine.0. you can specify the proxy server here (either as a hostname or IP address followed by an optional ':' and port number). Enable use of an HTTPS proxy in Skype engine. If your network requires that outbound HTTPS connections be made through a general SOCKS5 compatible proxy server.
default_user debug bind_address rtp_address bind_port
<username> yes | no <ip_address> <ip_address> <tcp_port>
none no 0. If your HTTPS proxy requires a username. the proxy server can be specified here (either as a hostname or IP address followed by an optional ':' and port number).0 (any) 127. respectively). This is done because it usually allows for easier connections through firewalls.
Page 23
. it will automatically fall back to using a random port. This directory must allow executable files to be present and executed. This setting is only a suggestion to general the Skype engine. If your network requires that outbound HTTPS connections be made through a general standard HTTPS proxy server.
Parameter engine_directory Section Definition Values <directory> Default /tmp
Directory that will be used to hold the Skype engine and its working general database.0. If your SOCKS5 proxy requires a username. In cases where UDP connections cannot or should not be used. the Skype engine will listen on a random TCP port or the port specified in general 'bindport'. The Skype engine will normally general use UDP ports for media streams. Password for SOCKS5 proxy.
disable_tcpauto
yes | no
no
disable_udp
yes | no
no
https_proxy
<hostname[:port]> | <ip_address[:port]>
none
https_proxy_user
<username> <password>
none none
https_proxy_password general
socks5_proxy
Enable use of a SOCKS5 proxy for Skype engine.0.conf file. If your HTTPS proxy requires a password. If your SOCKS5 proxy requires a password. general Username for HTTPS proxy. if it cannot us the specified port.The general section contains settings that apply to the entire channel driver and all defined users. Password for HTTPS proxy. it can be specified here. and will attempt to listen on ports 80 and 443 (HTTP and HTTPS. By default. general Username for SOCKS5 proxy. this can be disabled. it can be specified here. Inc. The general section appears as [general] in the chan_skype. it can be specified here.0. Disable use of UDP in Skype engine.
<hostname[:port]> | <ip_address[:port]>
none
socks5_proxy_user
<username> <password>
none none
socks5_proxy_password general
Digium. general Username that will be used for outgoing calls and presence requests if no explicit username is specified. it can be specified here.

<password> (authorized accept | request if supplied password was sent by requester). <codec>.Each user section identifies a Skype user that the channel driver should log in to the Skype community. and ignore (ignore deny | block | ignore request. <codec>. <username> The extension in the target context that incoming calls should be directed to for this user. you can use this option to disable the retrieval and update process. A value of hints will allow only buddies that receive a presence information request to be added to the buddy list. If there are specific users for which you have no need for buddy presence state information. If this option is set toe “passthrough”. … <codec>. <username> The codecs that should be allowed for calls to/from this user. When chan_skype receives a presence state request for a Skype user from a dialplan hint or some other mechanism. A value of buddies will automatically add all buddies that have been authorized to receive that user's presence information to the buddy list.
Page 24
.<password> | (deny request and block future requests from the requester). <username> Allowed call directions
auth_policy
Incoming buddy list authorization requests. this could generate a significant amount of load in Asterisk processing presence updates. <username> Specifies which music class to suggest to the peer channel when this channel places the peer on hold.
Parameter secret context exten disallow allow direction Section <username> The user's password <username> The dialplan context that incoming calls should be directed to for this user. Setting this option will automatically attempt to add the target user to the requesting user's buddy list. Buddy list presence updates. Definition Values <password> <dialplan_context> <extension> <codec>.
no | hints | buddies | buddies. g729 both
<username> The codecs that should be disallowed for calls to/from this user. … Incoming | outgoing | both Default none default <username> all ulaw. if that target user is not already on the requesting user's buddy list. By default. For users with large buddy lists. there are various ways it can be handled: accept (authorize requested). the channel driver will retrieve presence state and updates for all of these users and pass it into buddy_presence <username> Asterisk. alaw. then future presence state changes for the buddy_autoadd <username> target user will be received by chan_skype and forwarded into the other Asterisk modules that requested them. no response to requester). A value of 'buddies. then the Skype community will not allow the presence state to be seen.hints' will cause both of these to occur. block <username> accept. It is possible to provide multiple values for this setting.conf file. In some cases. the first match will be used to generate the response. When this user receives a request to authorize being added to another Skype user's buddy list. Specifies a preference for which music on hold class this channel should listen to when put on hold if the music class has not been set on the channel with Set(CHANNEL(musicclass)=whatever) in the dialplan. and the peer channel putting <username> this channel on hold did not suggest a music class. accept. then the hold message will always be passed through as signalling instead of generating hold music locally. Skype users may have an extremely large number of Skype users on their buddy lists. They will be processed in the order they are listed. If the target user authorizes the request. Inc. The user sections appear as [<username>] in the chan_skype.
accept
Outgoing buddy list addition requests. deny (deny request).hints
no
yes | no
yes
mohinterpret
<music_class>
default
mohsuggest
<music_class>
none
Digium.

The settings which will not be modified are engine_directory. disable_udp.
Digium.so Asterisk channel module must be fully unloaded and loaded again in order to change these values.There are some settings that will not be modified by issuing a reload command on the Asterisk CLI.
Page 25
. The chan_skype. and rtp_address. Inc. This will occur anytime that Asterisk is restarted. disable_tcpauto.

The following sections describe how to make outgoing calls and receive incoming calls using Skype for Asterisk. The dial plan technology type provided by Skype for Asterisk is simply referred to as Skype.1
Outgoing Calls
When calls are placed on the Skype community. Inc. The syntax for making an outgoing call using Skype for Asterisk is as follows:
Dial(Skype/[<originator>@]<destination>)
The destination is mandatory and can be defined as a Skype user or a SkypeOut number.. Skype for Asterisk must select one of the defined Skype users to be the originator of a call.1. Additionally.
exten => exten =>
..
exten => .Dial(Skype/+12564286000)
Digium. they are placed to their destination by a Skype user associated with the Asterisk server... on a call-by-call basis.. For that purpose. Both of the examples provided below would result in the james_bond Skype user placing the call to the destination.3. the default_user option in the chan_skype.
Page 26
. The originator is optional and can be defined as a Skype user associated with the Asterisk server.2 Dial Technology
The use of Skype for Asterisk channels is similar to other Asterisk channel drivers.Dial(Skype/austin_powers) exten => ....1.conf file will be defined as the originator of the call..1....2. the user specified in the default_user option in the chan_skype.Dial(Skype/james_bond@austin_powers) .
3.conf file can be set to control which user is the default originator of a call.Dial(Skype/james_bond@+12564286000)
The examples provided below show how to make an outgoing call by specifying only a destination Skype user or SkypeOut number.1. In these cases. the originator of a call can be defined by prefixing the destination Skype user or SkypeOut number with the name of the originator's Skype user.

2
Incoming Calls
Specified on a per-user basis.conf file will handle incoming calls for that user.conf file will handle incoming calls for that user. The default configuration will use the name of the destination Skype user as the target extension.1. incoming calls can be directed to a specific extension within a context.1.Dial(SIP/shoe-phone)
Digium.n.
[demo] exten => 007.conf file. then placing the following entries in the extensions. then placing the following entries in the extensions.3. If the james_bond Skype user is configured with context=demo and exten=007 in the chan_skype.conf file. If the james_bond Skype user is configured with context=demo in the chan_skype.NoOp(Incoming Skype Call!) exten => 007. Optionally. Inc.2.Dial(SIP/shoe-phone)
Skype users can be mapped to numeric extensions by specifying the exten option for that user in the chan_skype.conf file.
Page 27
.n.
[demo] exten => james_bond.NoOp(Incoming Skype Call!) exten => james_bond. Skype for Asterisk can direct incoming calls to any desired dial plan context.

3 Functions
The CHANNEL and CALLERID dial plan functions may be used to retrieve Skype values from a call that originates on a Skype channel. Function options with a type of RW allow Read and Write access.
Digium. These details can be retrieved by using the CHANNEL function in the dial plan. In addition. multiple user details may be available about a caller's Skype user when connected to an Asterisk channel. Inc. This function's syntax is as follows:
CHANNEL(<property>)
The Skype-related options available to the CHANNEL dial plan function are listed in the table below.
3. Function options with a type of RO allow Read Only access.3.3.
Page 28
. The following sections describe these functions. Skype for Asterisk provides a few native dial plan functions that can be used to set and retrieve values on the Skype community regardless of the type of channel that originated the call.1
Channel Function
Depending on privacy policies. Note: It is important to understand the meaning of the values in the type column of the function description tables provided in this section.

This commonly includes a URL with query parameters that can be used to dial a Skype user with a particular topic set. skype_token – This option will set or retrieve the access call token.Set(CHANNEL(language)=${CHANNEL(skype_language)})
Digium.
exten => . If specified. The call topic is a user-provided string that can identify the topic of the call.
•
The example provided below shows how to set the channel's language to the language that a caller's Skype user prefers.1. the voicemail application. Inc.. and many other Asterisk applications...
Page 29
. The language setting is read by prompt playback.Property skype_language skype_topic skype_token skype_about skype_birthday skype_gender skype_homepage skype_homephone skype_officephone skype_mobilephone skype_city skype_province skype_country
Type RO RO RO RO RO RO RO RO RO RO RO RO RO
Description Reads a space-separated list of language identifiers for the call Reads the call topic Reads the access call token Reads the caller's about profile Reads the caller's birthday Reads the caller's gender Reads the caller's home page Reads the caller's home phone Reads the caller's office phone Reads the caller's mobile phone Reads the caller's city Reads the caller's province Reads the caller's country
Values <string> [<string> …] <string> <string> <string> <YYYYMMDD> 1 (male) | 2 (female) <string> <string> <string> <string> <string> <string> <string>
Below are descriptions of options that may not be intuitive. Skype users who know the access call token can “call in” to the call.
•
skype_topic – This option will retrieve the call topic.

or the Skype account name for a Skype-to-Skype call..NoOp(Caller's Skype account name is ${CALLERID(num)})
Digium.. Reads the caller's PSTN number for a PSTN-based call. Inc.
exten => . This function's syntax is as follows:
CALLERID(<item>)
The Skype-related options available to the CALLERID dial plan function are listed in the table below. Values <string>
num
RO
<string>
The example provided below shows how to retrieve a caller's Skype account name for a Skype-to-Skype call. These details can be retrieved by using the CALLERID function in the dial plan.2
CallerID Function
The CALLERID function may be used to retrieve details about a caller's Skype user when connected to an Asterisk channel.
Property name Type RO Description Reads the caller's full name if available.3.
Page 30
..3.1.

..1. token – This option will set or retrieve the access call token.1. The call topic is a user-provided string that can identify the topic of the call.
Page 32
..
•
•
The example provided below shows how to set the topic call property..(Read/Write) can also be defined using the setvar parameter in the chan_skype.Set(SKYPE_CALL_PROPERTY(topic)=Secret Plans)
The example provided below shows how to retrieve the topic call property.
exten => .conf file. Skype users who know the access call token can “call in” to the call. This commonly includes a URL with query parameters that can be used to dial a Skype user with a particular topic set.. If specified. about – This option will read the caller's about profile.
•
topic – This option will set or retrieve the call topic.NoOp(Topic is ${SKYPE_CALL_PROPERTY(topic)})
Digium. Below are descriptions of options that may not be intuitive. Inc. Many Skype users include a short description of themselves in their about profile..
exten => .

The SKYPE_ACCOUNT_PROPERTY function provides an interface to Skype in the Asterisk dial plan. and geographical information.3. birthday.
Digium. These settings can be set and retrieved using the SKYPE_ACCOUNT_PROPERTY dial plan function. Inc. the CHANNEL dial plan function cannot always be used to retrieve Skype call properties.
Page 33
. Skype account properties are stored on the Skype community and include information such as account availability.3. This function's syntax is as follows:
SKYPE_ACCOUNT_PROPERTY(<account>.<property>)
The options available to the SKYPE_ACCOUNT_PROPERTY dial plan function are listed in the table below.4
Skype Account Property Function
Since an outbound Skype call may originate from a non-Skype channel.

Note: The value of SKYPE_ACCOUNT_PROPERTY function options that are RW (Read/Write) can also be defined using the setvar parameter in the chan_skype.conf file. Below is a description of options that may not be intuitive.
•

about – This option will set or retrieve the Skype user's about profile. Many Skype users include a short description of themselves in their about profile. mood_text - Mood messages are simple little messages that tell your friends the mood you are in, a witty comment, quote, a web link or any random piece of information you'd like everyone to see.

•

The example provided below shows how to set the gender account property to male.

exten => ...,1,Set(SKYPE_ACCOUNT_PROPERTY(gender)=1)

The example provided below shows how to retrieve the fullname account property.

exten => ...,1,NoOp(Aston's full name is $ {SKYPE_ACCOUNT_PROPERTY(aston,fullname)})

Digium, Inc.

Page 35

3.3.5

Skype Buddy Functions

Skype for Asterisk provides a way to retrieve the buddy list and status of all buddies for a Skype user. This is accomplished by using the SKYPE_BUDDIES and SKYPE_BUDDY_FETCH dial plan functions. The SKYPE_BUDDIES function will return an id to pass to the SKYPE_BUDDY_FETCH function to enumerate the buddies. The SKYPE_BUDDIES function's syntax is as follows:

SKYPE_BUDDIES(<account>)

The SKYPE_BUDDY_FETCH function will retrieve the next buddy, including status, from the buddy list id retrieved by the SKYPE_BUDDIES function. This information is returned as a string in the format of '<buddy name>,<buddy status>' . This format is suitable for use with the ARRAY dial plan function. The SKYPE_BUDDY_FETCH function's syntax is as follows:

SKYPE_BUDDY_FETCH(<id>)

The example provided below shows how to retrieve the status of all buddies that are on the james_bond Skype user's buddy list.

Page 37
.3.NoOp(Received message: ${message})
The SkypeChatSend application will send a Skype chat message to a user.The Skype account sending the message to – The Skype account that will be receiving the message
Digium.to.<from>. The example provided below shows how to receive a Skype chat message. The SKYPE_CHAT_RECEIVE function's syntax is as follows:
SKYPE_CHAT_RECEIVE(<account>. This is accomplished by using the SKYPE_CHAT_RECEIVE function and the SkypeChatSend application in the dial plan. If no matching message arrives before “timeout”.The Skype account that will be sending the message timeout .
exten => s.n.Set(message=${SKYPE_CHAT_RECEIVE(touser.fromuser.6
Skype Chat Function
Skype for Asterisk provides a way to send and receive chat messages with other Skype users.<timeout>)
Syntax Description:
• • •
to .The Skype account receiving the message from .30)}) exten => s. Inc.message)
Syntax Description:
• •
from .The number of seconds to wait for the message
The SKYPE_CHAT_RECEIVE function will receive a Skype chat message sent from “from” and to “to”. The SKYPE_CHAT_RECEIVE function will wait to receive a Skype chat message from a user.1.3. The SkypeChatSend application's syntax is as follows:
SkypeChatSend(from. the return value will be empty.

exten => s.touser.message)
Note: Messages should be sent in plain text. Inc.SkypeChatSend(fromuser. The example provided below shows how to send a Skype chat message.
Digium. Newlines are not permissible.
Page 38
.1.•
message – The message to send
The SkypeChatSend application will send the value of “message” as a Skype chat message sent from “from” and to “to”.

hints'. this means that the james_bond Skype user would have to add the austin_powers Skype user to his buddy list. Most interactive Skype clients display the presence state of Skype users using a graphical representation.
Digium. only buddies that receive a presence information request. presence state requests must originate from a Skype user associated with the Asterisk server. The buddy_autoadd option can be set to buddies. The concept of device state as represented by other channel drivers do not apply to Skype users. That would cause Asterisk to always report the austin_powers Skype user as busy. such as from a dial plan hint. In the example shown above. Skype for Asterisk does provide a mechanism for subscribing to and being notified of changes in the presence state of Skype users. the chan_skype..hint. Lastly. hints. setting this option to 'buddies. The Skype community does not allow a user (User A) to see another user's (User B) state unless User A has added User B to his or her buddy list and User B has authorized that addition. and the austin_powers Skype user would need to authorize that addition.conf file has a configuration parameter to make adding buddies easier.Skype:james_bond@austin_powers
It is important to note the use of ':' instead of '/' to separate the device state provider name from the item being watched. Skype for Asterisk provides a custom device state provider called Skype that can be used with hints. will be added to the buddy list. When setting this option to hints. Using ':' instead will cause Asterisk to trust the Skype for Asterisk module to report back the state of the austin_powers Skype user and to not infer what the state of that Skype user might be from other sources. Since Skype for Asterisk will often be configured to use Skype user accounts that are never used with an interactive Skype client.4 Hints
Unlike other Asterisk channel drivers. or 'buddies. Inc. Skype for Asterisk does not manage devices at all. There is another important point to consider.. A Skype user must always be prefixed to the Skype user whose state will be subscribed. Using '/' will make Asterisk treat the austin_powers Skype user as a device and look for channels open to that Skype user.hints' will cause both of these to occur. and make their presence state available to Asterisk to be used by dial plan hints.
Page 39
.
The example provided below shows how the james_bond Skype user can subscribe to the presence state of the austin_powers Skype user. The difference is that there is no default user setting. Setting this option to buddies will automatically add all buddies that have been authorized to receive that user's presence information to the buddy list.
exten => ..3. However. Similar to placing outgoing calls.

you may have Skype users logged in via Skype for Asterisk. but you are not interested in presence updates for those users' Skype buddies.In some cases.
Page 40
.conf file for the relevant users. Inc. you can disable presence updates by setting the buddy_presence option in the chan_skype. In that case.
Digium.

1 Manager Events
The Skype for Asterisk modules will send various types of manager events to manager sessions that are capable of receiving SYSTEM class manager events. Multiple resources are available to obtain more information about Asterisk and Digium products.Chapter 4: Troubleshooting
This chapter provides various methods for obtaining the necessary information to troubleshoot most problems relating to Digium's Skype for Asterisk.
• • •
Skype Account Status Events Skype Buddy Status Events Skype Chat Message Events
4. An example Skype account status event is provided below. These resources are listed on page 57.
4.
Page 45
.all Username: james_bond Status: Logged In
The possible Status values are:
• •
Logged In Logged Out
Digium. Inc.1.1
Skype Account Status Events
One Skype account status event is always sent when a Skype for Asterisk user logs in or out of the Skype community. The manager events listed below are sent by the Skype for Asterisk modules and detailed in this section.
Event: SkypeAccountStatus Privilege: system.

13
skype show version
This CLI operation displays the version of the Skype for Asterisk modules that are loaded.
Page 50
. Inc.4.2.
Digium.

6. and 1.2 (release 1.6.conf file is a mandatory configuration file that will need to be modified to meet your specific needs.6.25 or newer).6. Page 51
.
Should I add a load line for res_skypeforasterisk and/or chan_skype to my /etc/asterisk/modules. 1.0.
Does Skype for Asterisk provide the same capabilities when used with Open Source Asterisk 1.1.6.6.4. The autoload option is enabled by default.0. 1.
Does issuing the reload command on the Asterisk CLI reload all of the Skype for Asterisk settings? No.6 or newer).1 (release 1.6.2.
What branches of Open Source Asterisk are compatible with Skype for Asterisk? Open Source Asterisk branches 1.4 (release 1.so or chan_skype.3 Frequently Asked Questions
This section provides frequently asked questions and resolutions as identified by Digium Technical Support and Engineering. Inc.4.6. 1.6. Asterisk will automatically load them using the autoload option. 1.conf file? It is not required or recommended to specify a load line in the /etc/asterisk/modules. There are some settings that will not be modified by issuing a reload command on the Digium.1.
Is Skype for Asterisk available on an operating system other than Linux? No.2? Yes.conf for the res_skypeforasterisk.so files. and 1.0 or newer) are compatible.5 or newer). Skype for Asterisk is available for Linux only.
What configuration file(s) must be modified? The /etc/asterisk/chan_skype.4.0 (release 1.

Edit /etc/selinux/config. use the following command to give the res_skypeforasterisk. Asterisk's spool directory is located at /var/spool/asterisk.
Why is there an XML database file for Skype being stored under Asterisk's spool directory? The Skype engine creates a small database of information for users that it logs in to the Skype community.so module contains a binary Skype engine called skyhost.conf specifies a different path for this directory using the astspooldir option. This engine automatically runs as a separate Linux process called skypeforasterisk once chan_skype. The first involves disabling SELinux using the steps shown below. By default. Set SELINUX=disabled.so A symptom of this issue is a message similar to the following: Digium.so module the proper execution privileges: chcon -t texrel_shlib_t /usr/lib/asterisk/modules/res_skypeforasterisk. 2. Skype for Asterisk communicates with skyhost to make and manage connections to the Skype community. Page 52
. 3. This prevents Skype for Asterisk from properly functioning.so is loaded. Inc. then Skype for Asterisk will use that directory instead. If the use of SELinux is mandated by you or another authority within your organization. This database is stored in a sub-directory called skype under Asterisk's spool directory. If your asterisk. How do I resolve this? There are two resolutions to this issue. 1. Reboot.Why is there a process by the name of skypeforasterisk running when Asterisk is loaded? The res_skypeforasterisk.
I receive a warning or error from SELinux regarding one of the Skype for Asterisk modules when Asterisk starts.

Can I use Skype for Asterisk with AsteriskNOW? Yes. Execute 'kill -9 <PID>'.
Can I use Skype for Asterisk on Switchvox systems? Not at this time. 1. Restart Asterisk.
Will Skype for Asterisk run on other open source distributions of Asterisk such as TrixBox CE? Yes. This is planned for a future release of Switchvox. 2 concurrent calls will be used. the skypeforasterisk process may still be running on your system. If that is the case.
What defines a channel of Skype for Asterisk? A single concurrent call on the Skype community
How many users can share a concurrent call? Each user making a call will use a channel.
Digium.
Page 53
. How do I resolve this? If Asterisk is not shut down cleanly. Inc. follow the steps shown below. Now Skype for Asterisk does not properly function when Asterisk starts. Execute 'ps ax' to determine the process ID (PID) of the skypeforasterisk process. This will require manual configuration unless a 3rd-party GUI wrapper is created for those systems. 2.“cannot restore segment prot after reloc: Permission denied”
Asterisk did not cleanly shut down. For calls from one user to another user managed on the same Asterisk server. 3.

Page 54
.
Is there a monthly charge for using Skype for Asterisk? No.This module is the Asterisk channel driver that provides calling services to and from the Skype community.729 README that is available in the documentation section at http://www.729 codec for their Skype calls. This will be improved in a future release of Skype for Asterisk.711 ulaw and/or alaw in the chan_skype.
What components are provided with Skype for Asterisk? The Skype for Asterisk product consists of two Asterisk loadable modules:
•
res_skypeforasterisk. This allows Skype for Asterisk users to use the G. along with various libraries and other components required to talk to the Skype engine and manage user accounts. This requires version 3.729 support like other Asterisk channel drivers.0 or later of the Digium G. presence.0. calls. When a Skype call wants to use G. The Digium G.so.digium. using the library services provided by res_skypeforasterisk.so . Your Skype for Asterisk license key may be used to activate a G.729 included with each channel of Skype for Asterisk? Yes.
•
Digium.729 licensed channels available. etc.so module must be loaded.conf file unless you have G.so .729 channel at no additional cost. chan_skype.Will production systems be able to use Skype for Asterisk without reinstalling? Yes. There is a one time charge for each channel.so does not provide passthrough G.729 licensed channels must be available. Inc. For this release. the codec_g729a.729 software codec module. it is suggested to configure your users to only allow G.so) will need to be installed in addition to Skype for Asterisk.729 software codec module (codec_g729a.729 software codec module.729. The current version of chan_skype. This is commonly required for SkypeIn and SkypeOut calls.This module contains the Skype engine. This module is provided in a binary-only form. For more information regarding the Digium G.
Is G. and G.com/support. please read the G.

How do I purchase Skype for Asterisk?
• • • •
End users: A Digium reseller Resellers: A Digium Distributor Distributors: Direct from Digium For those not serviced by a reseller: Digium direct at https://www. Only accounts created from the Business Control Panel will be usable with Skype for Asterisk. It is a web-based tool that is free to setup and use.digium.com/skype.Will Skype for Asterisk support any type of Skype user? No.
Where can I find knowledge base articles for Skype for Asterisk? Please visit the Skype for Asterisk category of the Digium Knowledge Base: http://kb.
Is there a cost to use the Skype Business Control Panel? No. Inc. The administrator account for the Business Control Panel is a regular Skype account. the administrator account will not be able to use Skype for Asterisk.skype.
Page 55
.
How can I access the Skype Business Control Panel? Visit Skype’s web site at http://www.
Can Skype for Asterisk and Skype For SIP coexist on the same Asterisk Server? Yes.com/?CategoryID=273
Digium.digium.com/business. Due to this fact.

digium. type “skype set debug on”.
What do I submit to Support when I'm having Skype problems? Perform the following steps: 1.How do I get support for Skype for Asterisk? Skype for Asterisk comes with installation support for the first 90 days from purchase. type “core set verbose 6”. type “skype show version”. 7. 3. Submit Asterisk CLI output and manager session output to Support. type “skype set vedebug on user <username>” for the user that is having the problem.
Digium. Reproduce the issue. 2. Inc. If you need support. 6. For subscriptions covering Open Source Asterisk or Asterisk Business Edition. At the Asterisk CLI. 5. Redirect a manager session (with SYSTEM class permissions) to a file. 4.
Page 56
. At the Asterisk CLI. please contact Digium’s support team at http://www. one incident can be used to support Skype for Asterisk with a current subscription. At the Asterisk CLI.com/support. Verbosity can be 6 or higher. At the Asterisk CLI.

or Toll Free in the U.428.6000 or send an e-mail to sales@digium.6161).256.net)
Subscription Services Program Digium is dedicated to supporting your Asterisk system by offering full technical support through our Subscription Services Program.Friday.com) IRC channel #asterisk on (irc. Inc. Asterisk users mailing list (www.asterisk.
Digium.256.344. lists.S.digium.
Page 57
.4861).877. Monday .428. you can be at ease knowing that your business will always have access to the Asterisk experts.freenode.Where can I find answers to additional questions? There are several places to inquire for more information about Asterisk Digium products: Digium Technical Support (+1.com.org. Through this program. Pricing on Subscription Services may be obtained from your nearest reseller or you may call Digium Sales for referral to your nearest reseller at +1. (1. is available 7am-8pm Central Time (GMT -6).

Appendix A:
Glossary and Acronyms
ANSI
American National Standards Institute
An organization that proposes and establishes standards for international communications. Asynchronous communications are often found in internet access and remote office applications.
bps
bits per second
A measurement of transmission speed across a data connection. Higher bandwidth indicates the ability to transfer more data in a given time period. not timed to an outside clock source.
Page 58
.
bit The smallest element of information in a digital system. Transmission is controlled by start bits at the beginning and stop bits at the end of each character. Inc. A bit can be either a zero or a one.
asynchronous Not synchronized.
broadband
Digium.
bandwidth The capacity to carry traffic.
attenuation The dissipation of a transmitted signal’s power as it travels over a wire.

See also LEC and ILEC. and television set-top boxes. The channels take up different frequencies on the cable.
CLEC
competitive local exchange carrier
A term for telephone companies established after the Telecommunications Act of 1996 deregulated the LECs. Inc.
Page 59
. terminals. This includes telephones. and video over one line. integrating voice.
Cat5E Category of Performance for wiring and cabling.Broadband transmission shares the bandwidth of a particular medium (copper or fiber optic) to integrate multiple signals. CLECs compete with ILECs to offer local service. All local access lines in a particular geographic area terminate at this facility (usually owned and operated by an ILEC). Cat 5 cabling support applications up to 100 MHz. data.
CO
central office
The CO houses local switching equipment.
Digium. modems.
channel A generic term for an individual data stream.
Cat5 Category of Performance for wiring and cabling.
CPE
customer premises equipment
Terminal equipment that is connected to the telecommunications network and that resides within the home or office of the customer. routers. Service providers can use multiplexing techniques to transmit multiple channels over a common medium. Category 5 Enhanced wiring supports signal rates up to 100 MHz but adheres to stricter quality specifications.

Digium.DAHDI
Digium Asterisk Hardware Device Interface
A telephony project dedicated to implementing a reasonable and affordable computer telephony platform into the world marketplace.
DS1
Digital Signal.
Page 60
.
E3 The European equivalent of North American T3. DS1/T1/E1 lines are part of the PSTN.
E1 The European equivalent of North American T1.
DS0
Digital Signal.up to 32 voice channels (DS0s).368 Mbps. the collective name for the Digiumprovided drivers for Digium telephony interface products. up to 512 voice channels (DS0s).544 Mbps in North America (T1) and Japan (J1) -up to 24 voice channels (DS0s). Level 3
T3 in North America and Japan. Level 0
A voice grade channel of 64 Kbps. Inc.048 Mbps. transmits data at 34. The worldwide standard speed for digitizing voice conversation using PCM (Pulse Code Modulation). Also. Up to 672 voice channels (DS0s).
DS3
Digital Signal.048 Mbps in Europe (E1) . Level 1
1. 2. transmits data at 2. E3 in Europe. DS3/T3/E3 lines are not part of the PSTN
DTMF
Dual Tone Multi-Frequency
Push-button or touch tone dialing. Equivalent to 16 E1 lines. up to 32 voice channels (DS0s).

723.
G.
FXS
Foreign Exchange Station
Initiates and sends ringing voltage. It defines a number of wiring and signaling standards for the Physical Layer of the OSI networking model.
Ethernet Ethernet is a family of frame-based computer networking technologies for local area networks (LANs). and a common addressing format. This algorithm is used for digital telephone sets on digital PBX.ECM
Error Correction Mode
EMI
Electromagnetic Interference
Unwanted electrical noise present on a power line.
FXO
Foreign Exchange Office
Receives the ringing voltage from an FXS device.
Page 61
.
G.711 A recommendation by the Telecommunication Standardization Sector (ITU-T) for an algorithm designed to transmit and receive mulaw PCM voice and A-law at a digital bit rate of 64 Kbps.1
Digium. Inc. through means of network access at the Media Access Control (MAC) / Data Link Layer.
full duplex Data transmission in two simultaneous directions.

33 kbps (frame length = 30ms) and 15. It is an IETF standard used to enable VoIP connections between Asterisk servers.
Page 62
.
ILBC
internet Low Bitrate Codec
A free speech codec used for voice over IP.2 kbps (frame length = 20 ms).323 A recommendation by the Telecommunication Standardization Sector (ITU-T) for multimedia communications over packet-based networks.3 Kbps or 5.
H.
half duplex Data transmission in only one direction at a time. and between servers and clients that also use the IAX protocol. It is designed for narrow band speech with a payload bitrate of 13.A recommendation by the Telecommunication Standardization Sector (ITU-T) for an algorithm designed to transmit and receive audio over telephone lines at 6.
G.729a A recommendation by the Telecommunication Standardization Sector (ITU-T) for an algorithm designed to transmit and receive audio over telephone lines at 8 Kbps.
interface
Digium. Inc.
IAX
Inter-Asterisk eXchange
The native VoIP protocol used by Asterisk.
ILEC
incumbent local exchange carrier
The LECs that were the original carriers in the market prior to the entry of competition and therefore have the dominant position in the market.3 Kbps.

feature-packed open source operating system based on Unix that remains freely available on the internet. FDM (frequency division multiplexing) and TDM (time division multiplexing) are the two most common methods. networks. and TDM separates signals by interleaving bits one after the other.
MUX
multiplexer
Digium. Asterisk is supported exclusively on Linux.
MGCP
Media Gateway Control Protocol
multiplexing Transmitting multiple signals over a single line or channel.
ISO
International Standards Organization
LED
light-emitting diode
Linux A robust. FDM separates signals by dividing the data onto different carrier frequencies. It boasts dependability and offers a wide range of compatibility with hardware and software.
MAC address
Media Access Control address
A quasi-unique identifier assigned to most network adapters or network interface cards (NICs) by the manufacturer for identification.A point of contact between two systems.
Page 63
. Inc. or devices.
loopback A state in which the transmit signal is reversed back as the receive signal. typically by a far end network element.

open source Software distributed as source code under licenses guaranteeing anybody rights to freely use. modify. Inc. PDF is used for representing two-dimensional documents in a manner independent of the application software.
PDF
Portable Document Format
A file format created by Adobe Systems Incorporated for document exchange.
PCI
peripheral component interconnect
A standard bus used in most computers to connect peripheral devices.
PBX
private branch exchange
A smaller version of a phone company’s large central switching office.
packet A formatted unit of data carried by a packet mode computer network. A POP is usually a network node serving as the equivalent of a CO to a network service provider or an interexchange carrier. Digium. See multiplexing. Page 64
. and redistribute the code.
POP
point of presence
The physical connection point between a network and a telephone network.A device that transmits multiple signals over a single communications line or channel. and operating system. hardware.
OSI Reference Model
Open Systems Interconnection Reference Model
An abstract description for layered communications and computer network protocol design. Example: Asterisk.

323.
Digium.
Page 65
. It is currently the leading signaling protocol for Voice over IP.
PPP
point-to-point protocol
Type of communications link that connects a single device to another single device.
SIP
Session Initiation Protocol
An IETF standard for setting up sessions between one or more clients. the PSTN is now almost entirely digital. Inc.
PSTN
public switched telephone network
The public switched telephone network (PSTN) is the network of the world's public circuitswitched telephone networks. Originally a network of fixed-line analog telephone systems. modems. such as a remote terminal to a host computer. This service provides analog bandwidth of less than 4 kHz.
QoS
quality of service
A measure of telephone service.
source code Any collection of statements or declarations written in some human-readable computer programming language. and fax machines in residential and business settings to PBX or the local telephone CO. gradually replacing H.POTS
plain old telephone service
Standard phone service over the public switched telephone network (PSTN). as specified by the Public Service Commission.
RJ11 A six-pin jack typically used for connecting telephones. and now includes mobile as well as fixed telephones.

4 and T.
TDM
time division multiplexer
A device that supports simultaneous transmission of multiple data streams into a single highspeed data stream.30 A recommendation by the Telecommunication Standardization Sector (ITU-T) for Group 3 fax machines that specifies the handshaking.38 A recommendation by the Telecommunication Standardization Sector (ITU-T) to permit faxes to be transported across IP networks between existing Group 3 fax terminals in real time. and compression scheme.
T1 A dedicated digital carrier facility that transmits up to 24 voice channels (DS0s) and transmits data at 1.30 make up the complete standard for Group 3 fax.
Page 66
. Commonly used to carry traffic to and from private business networks and ISPs. Inc.544 Mbps.30 make up the complete standard for Group 3 fax. resolutions. TDM separates signals by interleaving bits one after the other.4 and T.736 Mbps.4 A recommendation by the Telecommunication Standardization Sector (ITU-T) for Group 3 fax machines that specifies the page dimensions. T.
T. T.
T3 A dedicated digital carrier facility that consists of 28 T1 lines and transmits data at 44.
T.
telco
Digium. Equivalent to 672 voice channels (DS0s). and error correction.T. protocols.

Page 67
.
TIFF
Tagged Image File Format
A file format for storing images.27ter
Digium. named after the physical appearance of the contact areas on the jack plug. and PTTs.
V
volts
V.600 bps to allow transmission over noisier lines. It is a variant of the original Bell 103 modulation format. The wires are wrapped loosely around each other to minimize radio frequency interference or interference from other pairs in the same bundle. It adds TCM to the V.200 and 9. Inc.
twisted pair Two copper wires commonly used for telephony and data communications. LECs.A generic name that refers to the telephone companies throughout the world.17 A recommendation by the Telecommunication Standardization Sector (ITU-T) that uses TCM modulation at 12.21 A recommendation by the Telecommunication Standardization Sector (ITU-T) for asynchronous full-duplex communication between two analog dial-up modems using audio frequency-shift keying modulation (FSK) at 300 baud to carry digital data at 300 bit/s.
V.400 bps for Group 3 fax transmissions.
V.29 standard at 7. including RBOCs.000 and 14.
tip and ring The standard termination on the two conductors of a telephone circuit.

800 bps half-duplex modems using DPSK modulation on dial-up lines.600 and 7.600 bps transfer modes (PSK and QAM modulations).400 and 4.200.
Page 68
.
VoIP
Voice over IP
Technology used for transmitting voice traffic over a data network using the Internet Protocol. Inc. V. 7. and 9.200 bps.
Digium.A recommendation by the Telecommunication Standardization Sector (ITU-T) for synchronous 2.
V.27ter is used in Group 3 fax transmission without the back channel. It includes an optional 75 bps back channel.29 A recommendation by the Telecommunication Standardization Sector (ITU-T) for full-duplex modems allowing synchronous 4. It has been adapted for Group 3 fax transmission over dial-up lines at 9.800.

or (b) which is directly or indirectly owned or controlled by Digium.1 of this Agreement) providing hosted services to third-parties.skype.r.l under the terms of the Skype Business End User license at http://www. Digium grants you a non-exclusive.Appendix B: DIGIUM END-USER PURCHASE AND LICENSE AGREEMENT
July 2009 IMPORTANT . “you”. and Digium hereby represents that only Open Source Components with licenses that intend to grant permissions no less broad than the license granted in this Section 2 are included in the Software. then you should not install the Software or Hardware and should remove any installed Software and Hardware from your computer.com/go/business. By downloading or installing the Software or installing the Hardware. and any Digium computer electronics (“Hardware”).eula for use with Skype communications products that are provided by Skype Communications S. bug fixes or modified versions (“Upgrades”) or backup copies of the Software supplied to you by Digium or an authorized reseller. entitlements granted pursuant to a Subscription Agreement. Digium will provide a list of Open Source Components for a particular version of the Software upon your request. “Software” shall include any upgrades. To the extent required by the licenses covering Open Source Components.a. leasing. “You” or “your”) of the Digium distribution media.r. Subject to the terms and conditions of this Agreement. or are not authorized to accept the terms and conditions of this Agreement. The Product Skype for Asterisk contains third party software that is licensed for use by Skype Software S. software and related documentation (the "Software").l under
Digium.PLEASE READ CAREFULLY 1. provided you hold a valid license to the original Software and have paid any applicable fee for Upgrades.
Page 69
. non-sublicenseable. This Digium End-User Purchase and License Agreement (the "Agreement") is a legal agreement between Digium and its Affiliates (collectively referred to as "Digium") and the licensee. the terms of such licenses will apply in lieu of the terms of this Agreement. you agree to and accept the terms and conditions of this Agreement. Inc. If you do not accept. Notwithstanding the foregoing. such restrictions will not apply . purchaser and end user respectively (hereinafter. and related manuals (collectively the "Products"). GRANT OF LICENSE. updates. To the extent which the licenses applicable to Open Source Components prohibit any of the restrictions in this Agreement with respect to such Open Source Component. you acknowledge that certain components of the Software may be covered by so-called “open source” software licenses (“Open Source Components”). Affiliates means an entity which is (a) directly or indirectly controlling Digium. sub license. non-transferable license to use the Software for internal business purposes and not for resale. or (except for those Products excluded in Section 2. 2. Digium services (“Services”).a.

and that specialized experience and training may
Digium.729 for Asterisk FAX for Asterisk HPEC for Asterisk 3. you may be required to pay retroactively annual fees for all Products from the date of the lapse in order to reinstate such Services. trademark.1 PRODUCTS EXCLUDED FROM HOSTED SERVICES RESTRICTION The following Products are excluded from the hosted services restriction of Section 2 of this Agreement. The Product Skype for Asterisk is excluded from this Section 4. are not authorized for commercial business use in production or deployment. but are made available only for demonstration or evaluation purposes. including title. trade secret and any other rights and interests. 4. You understand and acknowledge that the Products may be used to implement. You understand and acknowledge that users of the system on which you install the Products may attempt to use that system to place emergency calls. Skype for Asterisk does not support any emergency calls and You acknowledge that if You are using Skype for Asterisk it is Your responsibility to purchase. certain government regulations may apply to their implementation or use.the terms of the Skype Business Terms of Service at http://www. and may not be resold or transferred to any third party without prior written permission from Digium. that such configuration may be beyond the scope of the documentation supplied with the Products.com/go/business. G. as more explicitly referred to in the Skype Business End User License Agreement and the Skype Business Terms of Service. For purposes of clarification. and the Skype products are provided. traditional wireless or fixed line telephone services that offer access to emergency services. The Skype software is licensed. and compliance with such regulations is your sole responsibility. and that in some cases. You acknowledge and agree that: the Products must be properly configured for your system or application. Except for the limited license rights expressly granted in this Agreement. supplement. 2. You will own only the Hardware (exclusive of Software embedded in the Hardware) and the physical media on which the Software and associated documentation are reproduced and distributed.skype. to end users for their own communication purposes only and any other use is strictly prohibited. You are free to use the Products in this Section 2. or replace telephone systems and telecommunications services. copyright. ownership. If you allow an existing Services or Subscription Agreement plan to lapse. patent.
Page 70
. RESERVATION OF RIGHTS. or are marked with the legend “For Evaluation Only” or a similar notation. separately from the Skype software and Skype Products. Inc. Digium reserves all rights in and to the Software and any modifications thereto. that the nature of the Products and any networks they may operate upon allow many possible configurations.terms. Products that are provided or sold as demo or evaluation units.1 to provide hosted services to third parties. EMERGENCY CALLS.

incidental or consequential (including. and that any system or application based on the Products complies with all applicable laws and regulations. but not limited to: initially and regularly testing the operation of the Products. LIMITATION OF LIABILITY. but not limited to. You further acknowledge and agree that it is your sole and ongoing responsibility to ensure the proper operation of any emergency calling system based on the Products. even if Digium has been advised of the possibility of such damages. WARRANTY. or use of the Products provides for the proper handling or routing of emergency calls. The sole remedy for a breach of the foregoing limited warranty is repair. to ensure that your configuration. You acknowledge and agree that telephone and telecommunications systems can be complex and must be installed. The foregoing express written warranties and remedies are exclusive and in lieu of any other warranties or remedies. Inc.be required to properly configure the Products. notifying and training all users of any system on which the Products are installed how to use the system for emergency calls. replacement or refund of the defective or non-conforming Product(s). By using the Products under this Agreement. 5. The terms under which Digium's Products are warranted are defined in the Digium Standard Warranty Policy. liability. For purposes of clarification. The maximum liability of Digium under this Agreement is limited to the purchase price of the Product(s) which is the subject of the dispute. negligence. Digium is not liable under any contract. To the maximum extent permitted by law. whether special. or obligation to train you or any users of your system regarding the proper configuration. strict liability or other legal or equitable theory for any loss of use of the Products. express. implemented. including testing the operation with emergency services. and that you or your authorized agents have the qualifications necessary to properly implement and configure the Products to handle emergency calls. or use of the Products or any system or network they are used in conjunction with on which it is installed. failure of connected equipment or programs.
Page 71
. if applicable. operation. and notifying such users of any and all limitations of your configuration and implementations of the Products and any network or system the Products are used on or with. work stoppage. 6. relating to warranty service. duty. implied or statutory. to the maximum extent allowed by applicable law Digium is not liable in any amount for Excluded Product(s) as those Product(s) are provided at no charge. inconvenience or indirect damages of any character. including but not limited to damages for copyright or patent infringement. including. loss of revenue or profit. implementation.
Digium. and configured by the appropriate technically qualified personnel. You acknowledge and agree that it is your sole responsibility to ensure that the Products and associated networks and systems are implemented and configured such that emergency calls are properly handled. loss of information or data or loss of goodwill) resulting from the use of the Products. you explicitly release Digium from any warranty. or to ensure that your use of the Products is in compliance with any applicable laws and regulations.digium. available on www. the terms of which are included herein and incorporated by this reference.com. computer failure or malfunction. or arising out of any breach of this Agreement.

nor defeat. PROPRIETARY WORKS. certain Digium Products and Product families are not covered by Digium’s Standard Warranty Policy (“Excluded Products”). EXEPT TO THE EXTENT OTHERWISE AGREED IN WRITING BY SUCH PERSON OR ENTITY. The Excluded Products are defined in the follow subsections. trade secrets and/or copyrighted materials of Digium or its suppliers. OFFICERS. WITH RESPECT TO THE PRODUCTS. ITS THIRD PARTY LICENSORS OR SUPPLIERS. Inc. EMPLOYEES. INCLUDING INCIDENTAL. WEHTHER BASED ON CONTRACT. 6. NEITHER DIGIUM. For purposes of clarification.729 for Asterisk HPEC for Asterisk 7. EXCEPT TO THE EXTENT OTHERWISE SPECIFICALLY AGREED IN WRITING BY SUCH PERSON OR ENTITY. bypass.6. 7. NOR ITS DIRECTORS. NOR ITS THIRD-PARTY LICENSORS OR SUPPLIERS.1 PRODUCTS EXCLUDED FROM DIGIUM’S STANDARD WARRANTY POLICY The following Excluded Products are not covered by Digium’s Standard Warranty Policy and Digium expressly disclaims any liability arising from use of such Excluded Products pursuant to Section 6.1 WARRANTY EXCLUSIONS. decompile. FITNESS FOR A PARTICULAR PURPOSE. OR ECONOMIC DAMAGE OR INJURY TO PROPERTY. OR NON-INFRINGEMENT. INCLUDING. TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW. EMPLOYEES. : Asterisk Desktop Assistant (ADA) FAX for Asterisk G. except to the extent such restriction is expressly prohibited by
Digium. TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW. The Product(s) contain trademarks. CONSEQUENTIAL. IN NO EVENT SHALL DIGIUM.1 You agree not to reverse engineer.
Page 72
. LOST PROFITS OR LOST REVENUES. EITHER EXPRESS OR IMPLIED. or disassemble the Software. NOR ITS DIRECTORS. FOR THE EXCLUDED PRODUCTS. BUT NOT LIMITED TO WARRANTIES OR REPRESENTATIONS OF MERCHANTIBILITY. AFFILLIATES OR LICENSORS BE LIABLE TO YOU FOR ANY DAMAGES OF ANY KIND. apply to the Excluded Products as detailed in this Agreement.1. remove or otherwise interfere with any licensing mechanism which may be provided in or with the Software.1. OR AFFILIATES MAKE ANY REPRESENTATIONS OR WARRANTIES OF ANY KIND TO ANY END USER. OFFICERS. All terms and conditions of this Agreement. TORT (INCLUDING NEGLIGENCE) OR OTHER THEORY AND REGARDLESS OF WHETHER SUCH PERSON OR ENTITY SHALL BE ADVISED OR HAVE REASON TO KNOW OF THE POSSIBLITY OF SUCH DAMAGES.

Libya. North Korea. is of United States origin. you may move the Software to different internal computers to the extent consistent with the scope of license you have purchased to the Software.R. You shall not disclose or make available such trade secrets or copyrighted material (including any information pertaining to any licensing mechanism which may be provided in or with the Software) in any form to any third party nor remove any trademark notices. TERMINATION. North Korea. GOVERNING LAW AND JURISDICTION AND DISPUTE RESOLUTION. 12. Notwithstanding the foregoing. 10. Syria or any other country to which the United States embargoes goods and that you are not a person on the Table of Denial Orders. 7. Sudan. trademarks. Sudan. 10. 6. This Agreement is to be construed in accordance with and governed by laws of the State of Alabama.applicable law. or the List of Specially Designated Nationals. Digium and you agree to submit to the
Digium. Iran. The export and re-export of the Software is controlled by the United States Export Administration Regulations and such Software may not be exported or re-exported to Cuba.212. use the name. U. GOVERNMENT USERS. If Digium grants you a right to use the aforementioned. or if you do not comply with other materials terms and conditions of this Agreement.R. the Entity List or the List of Specially Designated Nationals. Syria or any other country to which the United States embargoes goods. 9. Libya. This Agreement and the rights and obligations under it are not assignable by you without the prior written approval of Digium. This Agreement shall inure to the benefit of the successors and assigns of Digium. 11. 2.
Page 73
. voluntarily or by operation of law. excluding its conflict of law provisions. In the event of a breach of the scope of use permitted by the grant in Section 2. 8. you are certifying that you are not a national of Cuba. You acknowledge that the Software. 11. Inc.2 You will not (except with regard to fair use or nominative use) without Digium written consent. the provisions of Sections 5. the Entity List. In addition. 12 and 13 shall survive termination of this Agreement. 9. This Agreement shall terminate upon either destruction of the Products or return of the Products by you to Digium.F. you will do so only in strict compliance with Digium trademark policies. or the name of any product or service of Digium. 12.S. Any attempt by you to assign this Agreement without such approval shall be void. Iran. All Government users acquire the Software and documentation with only those rights herein that apply to non-governmental customers of Digium. with the possible exception of certain third-party components. EXPORT RESTRICTION. 8. or licensing terms from the Software or any components therein. By downloading or using a Digium Software Product. Iraq. The Software and documentation qualify as “commercial items” as defined at 48 C. trade names or logos of Digium. in any manner. in which case you must promptly destroy or return all Products to Digium.101 and 48 C. the Software may not be distributed to persons on the Table of Denial Orders. Digium shall have the right to immediately terminate this Agreement. TRANSFER AND ASSIGNMENT. 7. Notwithstanding the foregoing. Iraq. copyright notices.F.

the Alabama State or Federal Courts located in the County of Madison. This Agreement constitutes the entire understanding between the parties relating to the subject matter hereof and supersede all prior writings. the other provisions shall continue in full force and effect. 13. and agree that venue is proper in. invalid. for any such legal action or proceeding. Digium EUPLA 20090728
Digium. ENTIRE AGREEMENT. The provisions of this Agreement shall take precedence over any conflicting terms in any subsequent purchase order. Digium and you agree to attempt to resolve any dispute by direct communication between representatives of each party who are authorized to finally resolve the dispute. the application of which is expressly excluded. unenforceable or illegal. Alabama. The parties agree that this Agreement may be executed electronically and that electronic copies of this Agreement shall be binding upon the parties. other than injunctions. Inc. The United Nations Convention on International Sale of Goods.personal and exclusive jurisdiction of. The parties agree to attempt to resolve the dispute within fourteen (14) days of notice of the dispute having been provided to the party not invoking this clause and agree not to resort to legal action. during the fourteen day dispute resolution period.
Page 74
. Digium and you hereby expressly waive any right to a trial by jury and consent to a bench trial in the event of a dispute. If any provision of this EULA is held to be void. negotiations or understandings with respect thereto. does not govern this Agreement. documentation or collateral.