Beruflich Dokumente
Kultur Dokumente
Administration Guide
This is a book-style Wiki (or a Wiki-style book) that will become complete Administrators Guide to
FreePBX.
To help, add a child page to this page, writing a section for each of the major items in the rough outline.
Pick whatever you like. If it's not one of the categories below, or belong to them, think carefully if it
belongs here at all. It may be more useful someplace else.
Rough outline:
Installation
1. Information gathering
2. Putting the system together
3. Starting from a blank slate
4. Creating and assigning extensions.
5. Setting up voicemail
6. Creating an IVR.
7. Creating Queues.
8. Setting up backup and restore
9. User control: How to let the user at a little bit...
10. User Portals and the ARI
11. Training New Users on how the system is configured
12. Transitioning to the new system
13. Running a help desk using voice, tickets, and email
14. Connecting POTS lines
15. Connecting PRI trunks
16. How to connect VOIP trunks
1. How to test a new IP line for VOIP quality
2. Two-way trunks
3. One-way trunks
17. Outbound routing
18. Inbound routing
Administration
1. Moves, adds, changes, and deletes: How to administer extensions with a minimum of pain.
2. Creating, changing and deleting IVRs.
3. Creating, changing and deleting Queues.
4. Backup and restore: From cron to Oh, No!
5. User control: How to let the user at a little bit...
6. Training New Users on how the system is configured
7. New Equipment: How to add with a minimum of disruption
8. Upgrades: How and when to do it.
9. Running a help desk using voice, tickets, and email
10. How to move a PRI
11. How to move a VOIP trunk.
12. How to test a new IP line for VOIP quality
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 2 of 42
Adding Extensions
Adding Extensions
A PBX without any extensions isn't very useful, so it's the first thing to do after installing FreePBX.
Extensions let you test all kinds of things, so it's the first thing to get right.
Shown at right are a few test extensions on a FreePBX installation on my t42 Ubuntu laptop.
There are several pages of information here. We'll go through each of them.
Display Name: This is the name that is used, at least internally, when placing an outbound call. Most
Caller Name services look up the name in a database, so this name setting might do nothing on your
outbound VOIP or PRI calls. It will certainly do nothing on outbound POTS calls.
CID Num Alias: The CallerID to show when dialing intracompany. Example Usage: James has a office
extension at 201, a softphone at 401, a home office phone at 601, and a FollowMe at 201 that rings
them all. 401 and 601 can use a CID Num Alias of 201, so that all internal call recipients see “201”
SIP Alias: Every 'clever' presentation of VOIP has an example of dialing by email address. This is hard
to do on most phones, but is nonetheless supported. Put only the name here, not the @ symbol or the
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 3 of 42
fully-qualified-domain name. That's used by the calling application or device to locate your PBX on the
Internet. To allow any party to call you, you'll need to have firewall rules that allow all SIP calls
regardless of IP address. This is only advisable if your Asterisk installation is up-to-date, and has no
current SIP security vulnerability.
Direct DID: This is where you enter the Direct Inward Dial (DID) you'd like to reach this extension. If
you forget, all calls to that DID will end up at the main IVR. Putting a value here eliminates the need to
create an Inbound Route.
Music on Hold: Set a different Music On Hold (MOH) class for this extension. Great for having
different music for different offices or companies that are served by the same PBX.
Outbound CID: Put the CallerID and preferred CallerIDName here for outbound usage.
Ring Time: How long to ring before a server-side transfer to voicemail. You'll usually use the default
here, and set a system-wide value in General Settings.
Call Waiting: Set the call waiting value. Also accessible by feature code from an individual extension
(by default *70 to activate and *71 to deactivate – see Feature Codes).
Emergency CID: The CallerID to be set when dialing a number labeled as emergency.
Device Options
Extensions - Device Options
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 4 of 42
canreinvite: Asterisk is a back-to-back useragent. This means that your phone calls it, and it calls your
VOIP, PRI or POTs line. All audio (RTP stream) is carried through the Asterisk process during the call.
Your VOIP service provider, for example, often will use a SIP REINVITE message to change the RTP
destinations after the call is set up. This reduces load on the equipment, as it's only doing call setup and
takedown.
Highly desirable if you're supporting remote users making VOIP calls and your VOIP provider supports
REINVITE.
However, it's tricky to get any of your FreePBX features to work in this scenario. Play with this, but
don't use it on a customer system unless you have tested the features you need.
context: Context is an Asterisk dialplan sphere-of-influence concept used to separate components from
each other (multi-tenant, for example, or outward facing customer service from backoffice).
From-internal means you can dial like you're a phone on premises with access to other extensions and
outbound trunks. Other common options are outbound-all-routes (dial out only), from-trunk (extensions
only, no outbound dialing)
host: dynamic or a static IP address. dynamic allows any device that can pass the SIP
challenge/authentication to register and make/receive calls.
type: friend or peer. Use friend for a phone. Peer is for SIP devices that are capable of carrying calls,
like a Trunk.
nat: yes or never. SIP is a nat-unfriendly protocol in that it specifies the return IP address for the call
audio stream deep inside a packet. NAT works by rewriting packet source and destination IP addresses,
but doesn't understand SIP (unless a good SIP Application Layer Gateway is installed). NAT is
therefore problem if both the phone and the server PBX are separated from the public Internet by
different NATs (e.g. a home router and and corporate one.) In such a situation, audio won't work, but
signaling will (phones will ring but no audio). To support remote home users behind conventional
NATs, use yes, and either give the server PBX a public IP address or do a 1:1 IP mapping from a public
IP to it's internal, then set IP_nat.conf to the public IP address of the system. NAT=yes instructs
Asterisk to send audio to the IP it receives it from, regardless of what the SIP SDP says, and lets you
have at least one NAT present and still have effective audio. Note that NATs vary widely as to how
long they stay 'open'. Best practice when using Non-STUN phones is to have SIP registration expire
every 60 seconds – the re-registration (outbound, by the phone) will keep the NAT open to receive
calls. NAT=yes doesn't hurt anything when the client device is on the same LAN.
callgroup:
pickupgroup:
disallow: enter codec overrides here. An extension or group of extensions on a low-bandwidth link
might want to disallow the higher-bandwidth codecs out of the general pool.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 5 of 42
logger reload: Reopen log files. Use after rotating the log files.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 6 of 42
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 7 of 42
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 8 of 42
sip show registry: Show SIP registration status (when Asterisk registers as a client to a SIP Proxy)
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 9 of 42
System 1
System 2
IAX Trunk
Trunk Name
Parramatta
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 10 of 42
MainOffice
Peer Details
host=xyz.com.au (or IP)
secret=xxxyyy
type=peer
username=91000
secret=xxxyyy
type=peer
username=90000
User Context
Leave blank
Leave blank
User Details
Leave blank
Leave blank
Register String
80000:xxxyyy@xyz.com.au
90000:xxxyyy@def.com.au
Note: Registration isn’t really necessary. It will still work without it unless you use Dynamic IP.
System 1
System 2
Extensions
Phone Protocol
IAX
IAX
Extension Number
90000
91000
Extension Password
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 11 of 42
xxxyyy
xxxyyy
Fullname
Parramatta
Main Office
System 1
System 2
Outbound Routing
Route Name
Parramatta
MainOffice
Route Password
Leave Blank
Leave Blank
Dial Patterns
6XXX(6001 to 6009 are Parramatta Office extensions)
XX.(Apart from Local extensions, all others go via City Office)
Trunk Sequence
IAX2/Parramatta
IAX2/MainOffice
The above Outbound Routing rule assumes that you do not wish to use
a dialling prefix. If you want to use a prefix to dial the remote
extensions and to use the remote routing rules, you may place a prefix
e.g. 9|6XXX and 9|XX. for system 1 and system 2 respectively instead of just 6XXX and XX.
The above example assumes that both Asterisk boxes have Public Fix
IP address. If you have Dynamic IP addresses, you will need to register
both the boxes with DynDns to obtain a valid DNS ID. If you are a part
of a Corporate LAN, than you will have no need to worry about DynDns
and what not.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 12 of 42
pass the Trunk ID only and all calls will seem to come from the same
trunk and not individual extension – I did say that this is a simple
solution.
Unlike the first method, this second method will pass the Caller ID
to the receiving party. The receiving party will actually get the
callers’ extension number/ID instead of the extension number of the
peer Asterisk box.
Note: You must provide for security, as this is pretty wide open.
Rather than being verbose, I will illustrate this method using tables as follows;
System 1
System 2
IAX2 Trunk
Trunk Name
InterOffice
InterOffice
Peer Details
host=xyz.com.au (or IP)
Qualify=yes
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 13 of 42
type=peer
Qualify=yes
type=peer
User Context
InterOffice-In
InterOffice-In
User Details
context=from-internal
type=user
context=from-internal
type=user
System 1
System 2
Outbound Routing
Route Name
InterOffice
InterOffice
Route Password
Leave Blank
Leave Blank
Dial Patterns
6XXX(6001 to 6009 are Parramatta Office extensions)
XX.(Apart from Local extensions, all others go via City Office)
Trunk Sequence
IAX2/InterOffice
IAX2/InterOffice
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 14 of 42
The following link will provide further reference for connecting two Asterisk boxes together
http://www.voip-info.org/wiki/view/Asterisk+dual+servers
If you require a complete solution tailored to your exact requirement, my advise to you is to hire a
VOIP consultant.
This lets you give office managers, for example, access to the
Extensions directory to change usernames and reset voicemail
passwords as employees come and go, without exposing trunks and other
settings they do not need.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 15 of 42
Creating an IVR
Digital Receptionist or IVR
Information
The 'Digital Receptionist' page is the interface used to setup your auto attendant when people call your
PBX. Normally heard as "Thanks you for calling MYBUSINESS, for Sales press 1, for Service press
2", etc.
Planning
While the urge is strong just to dive in by clicking on IVR, you should resist this impulse.
First, draw out on paper what you intend to to achieve. Run it by the customer (or your officemates).
Write out word-for-word what all the recordings are going to be.
1. Planning
2. Customer agreement with the plan.
3. Record the audio prompts using System Recordings and an extension.
4. Create any destinations that don't currently exist (queues, ring groups, day/night modes or time
conditions).
5. Test all of these. One way to do this is use miscellaneous destinations, assigning a * feature code
to whatever thing you want to test.
6. Then go create your IVR.
7. Show it to the customer, and then make the inevitable changes.
8. Now upgrade the voice prompts to a paid voice or designated employee (the office manager or
receptionist, etc.)
9. Bask in glory!
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 16 of 42
for reservations, press 2 for the front desk, press 3 for event sales, press 4 for hotel
administration, press 5 for hotel directions, press # to access the hotel directory, or press 0
for the operator.
3. Engineering/Product Company with Direct Sales and Support
1. Welcome to BUSINESSNAME. Please listen carefully as our options have changed. If you
know the extension of the person you are trying to reach, you may dial it at any time. Press
1 for sales, press 2 for customer service, press 3 for technical support, press 4 for
administration, press 5 for Press inquiries, press 6 for office directions, press # to access the
company directory, or press 0 for the operator.
4. Retail
1. Welcome to BUSINESSNAME. Please listen carefully as our options have changed. If you
know the extension of the person you are trying to reach, you may dial it at any time. Press
1 for sales, press 2 for customer service, press 3 for store hours, locations, and directions,
press 4 for administration, press 5 for Press inquiries, press # to access the company
directory, or press 0 for the operator.
Making recordings
Fire up the System Recordings module. Shown here is 3.3.5.1.
I strongly suggest you use an extension connected to the PBX to make your recordings. They'll be quick
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 17 of 42
and in the right format and you can worry about getting everything else right. When everything is all
finished, you can come back and replace those temporary recordings with paid or improved versions.
To use your extension to make a recording, enter your extension in Step 1 and press Go. Don't skip this
and go to Step 2, or you'll get a cryptic error.
Now dial *77 and make your recording after the beep. Dial *99 to listen to it. You don't have to be the
person doing this – I often enter a customer's extension and have a customer do this part while I do the
GUI work.
If the recording is good enough (and don't obsess here yet), name the recording and press Save.
For lame and silly reasons, spaces are not allowed in the names.
You can listen to your recording and add on other recordings (such as the built-in recordings) by
clicking on your recording in the right tool panel.
We're going to start with a simple 1-level IVR , so the single Welcome-to-ACME recording will be
enough.
Now that we've created a system recording, we can create our IVR.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 18 of 42
Unlike the old Digital Receptionist system, this creates the IVR (and calls it 'Unnamed') as soon as you
click 'Add' - You'll see it appear on the right straight away.
z Change Name: This is simply the descriptive name that appears on the right, and in the drop-
down menu of Destinations
z Timeout: This is the amount of time the system waits before sending the call to the 't' destination
z Enable Directory: If you switch this on, users will be able to dial the FeatureCodes">feature
code for Directory, usually #, from the IVR and access the Directory service.
z Directory Context: This is the asterisk context of the directory. Advanced users can then use
different IVRs to create a multi-tenant installation.
z Enable Direct Dial: If you enable that, users will, in addition to being able to dial the IVR
options, be able to directly dial an Extension number.
z Announcement: A System Recording that is played to users when they enter the IVR. This can
be set to 'nothing'. These announcements are great for “today is July 4th and we're closed for the
holiday” and then proceeding on to the regular call flow.
In the box on the left, enter the option for the user. This may be one, or a series of numbers, or, 'i', or 't'.
'i' and 't' have special meanings:
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 19 of 42
z i: This overrides the default invalid choice behavior, which is to play a 'invalid option' message
and immediately replay the current menu. E.G. If you only have 1 2 and 3 defined, and caller
pushes 4, it will jump to this destination.
z t: This overrides the default timeout behavior, which is to play the menu three times and hangup.
A standard configuration is to go the operator, to handle customers that don't have DTMF-
capable phones.
Options are only displayed if there is at least one entry created. For example, queues will not appear as
a possible IVR destination if no queues exist.
Use 'Increase Options' or 'Decrease Options' to alter the number of options available. This won't let you
decrease it to less than the number of options that are currently set.
When you're finished, click 'Save' and you have your new IVR.
To test it, give it an incoming route or set up a miscellaneous application (* code) to reach it.
There are several schemes for assigning extensions. Invariably, though, you'll find the following
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 20 of 42
Remember, when reserving DIDs, to get the whole block of interest if possible. It's usually low enough
cost, and it really hurts to run out.
;--------------------------------------------------------------------------------;
; Do NOT edit this file as it is auto-generated by FreePBX. All modifications to ;
; this file must be done via the web gui. There are alternative files to make ;
; custom modifications, details at: http://freepbx.org/configuration_files ;
;--------------------------------------------------------------------------------;
;
So here is the list of files as of version 2.4. Those owned by FreePBX will be in bold underline. If they
become owned in a later version that version will be stated to the right of the file name.
agents.conf
alarmreceiver.conf
applications.conf
asterisk.conf
backup.conf
{ This file contains the crontab line(s) that will get executed for backup job scheduling.
cdr_mysql.conf
{ if you want to use the userfield in the CDR reporting you will need to add this line to the file:
userfield=1
then restart Freepbx by typing amportal restart
Default file should look like this:
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 21 of 42
;
; Note - if the database server is hosted on the same machine as the
; asterisk server, you can achieve a local Unix socket connection by
; setting hostname=localhost
;
; port and sock are both optional parameters. If hostname is specified
; and is not "localhost", then cdr_mysql will attempt to connect to the
; port specified or use the default port. If hostname is not specified
; or if hostname is "localhost", then cdr_mysql will attempt to connect
; to the socket file specified by sock or otherwise use the default socket
; file.
;
[global]
hostname=localhost
dbname=asteriskcdrdb
password=amp109
user=asteriskuser
;port=3306
;sock=/tmp/mysql.sock
codecs.conf
dnsmgr.conf
dundi.conf
enum.conf
extconfig.conf
extensions.conf
{ if you need to modify existing code code/context in extensions.conf please place your
modifications in extensions_override_freepbx.conf as asterisk uses the code for the first context
referance and ignores additional occurances.
extensions_additional.conf
{ DO NOT EDIT THIS FILE, it get's regenerated each and every time you apply changes.
{ If you need to expand on functionality of a section of code check to see if there is a include
context line in the code (will end in _custom.conf) if so create that context in
extensions_custom.conf and it will get called.
{ If you need to replace the functionality in extensions_additional.conf please place it in
extensions_override_freepbx.conf but read the notes about this file first.
extensions_custom.conf
{ this is the file that you place all your custom contexts, and additional code enhancements to the
FreePBX dial plan. This file will not be overwritten.
extensions_override_freepbx.conf
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 22 of 42
features.conf
features_applicationmap_additional.conf
features_applicationmap_custom.conf
features_featuremap_additional.conf
features_featuremap_custom.conf
features_general_additional.conf
features_general_custom.conf
globals_custom.conf
iax.conf
iax_additional.conf
iax_custom.conf
iax_custom_post.conf
iax_general_additional.conf
iax_general_custom.conf
iaxprov.conf
iax_registrations.conf
iax_registrations_custom.conf
indications.conf
localprefixes.conf
logger.conf
manager_additional.conf
manager.conf
manager_custom.conf
meetme.conf
meetme_additional.conf
mgcp.conf
modem.conf
modules.conf
musiconhold_additional.conf
musiconhold.conf
musiconhold_custom.conf
oss.conf
parking_additional.inc (should no longer be used as parking was moved to features)
phone.conf
phpagi.conf
privacy.conf
queues.conf
{ Do not edit this file in any way. Anything you can think of putting in this file can be placed into
one of the _custom.comf files where it will not get removed or replaced.
queues_additional.conf
{ Do not edit this file in any way. Anything you can think of putting in this file can be placed into
one of the _custom.conf files where it will not get removed or replaced.
queues_custom.conf
{ This is the proper location for placing any of the context specific options and lines that you
might need to add before the processing of the queues_additional.conf file for your queues setup.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 23 of 42
queues_custom_general.conf
{ This is the proper location for placing any of the [general] context option lines that you might
need to add to your queues setup.
queues_general_additional.conf
{ Do not edit this file in any way. Anything you can think of putting in this file can be placed into
one of the _custom.comf files where it will not get removed or replaced.
queues_post_custom.conf
{ This is the proper location for placing any of the context specific options that you might need to
add to the end queues setup.
This is the file that allows you to add or remove values to those entries found in the auto-
generated queue_additional.conf file. So for example you have a queue 79 that need a additional
parameter added. create a context line: [79](+) then on the next line add the item(s) you need to
add. To remove use (-) instead followed by the line(s) you want removed.
res_mysql.conf
rtp.conf
sip.conf
{ Do not edit this file in any way. Anything you can think of putting in this file can be placed into
one of the _custom.comf files where it will not get removed or replaced. If you are looking to do
nat'ing, see sip_general_custom.conf or if it is a legacy system sip_nat.conf. If you want to add
additional setup parameters for your sip device see sip_custom_post.conf, etc. If you need to
adjust sip jitter or something else it will be sip_general_custom.conf (if it is for the general
context) or sip_custom.conf. If you do edit this file and place something new in it, it will get
overwritten at some point and next time you restart your system you will suddenly wonder why
things stopped working.
sip_general_additional.conf
{ This is where FreePBX places all of it's general context settings. If you need to override one of
these or add a new one please do so in sip_general_custom.conf.
sip_general_custom.conf
{ This is the proper location for placing any of the [general] context option lines that you might
need to add to your setup. This is also the place to add those lines needed to enable the nat'ing of
SIP when you go through a firewall.
Some of the required lines for nat'ing are externip=, nat=, localnet= (you can have more then one
occurrence of this line), and optionally fromdomain=. The first three are needed to properly setup
a box on protected network behind a firewall that is providing nat to a public IP. If you have a
legacy system these lines might have been placed in sip_nat.conf in the past, if so that is ok as
long as the lines only exist in one file and not both (or a big debugging mess will occur along
with hair loss as you pull it out while tracking it all down). See sip_nat.conf for more info.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 24 of 42
Example:
Server 192.168.1.2 on a 192.168.1.0/255.255.255.0 network
Phones inside the office are on the 192.168.2.0/255.255.255.0 subnet
sip_nat.conf
{ This is the old common location for placing the lines needed to enable the nat'ing of SIP. The
new preferred location is sip_general_custom.conf. If you move the lines from this file to
sip_general_custom.conf please remove them from this file or you'll experience hair loss as you
spend time debugging why things don't work as you expect.
sip_registrations.conf
sip_registrations_custom.conf
{ a custom file just in case there is ever a need to override a general registration that was auto-
generated by FreePBX.
sip_custom.conf
z This is the first file that is not under the general context. IT allows you to define contexts that you
need before the contexts that are auto-generated by FreePBX in sip_additional.conf.
sip_additional.conf
{ This is where FreePBX puts all sip extensions, sip trunks, etc. If you need to add a additional
parameter to a extension, trunk, etc., see sip_custom_post.conf.
sip_custom_post.conf
{ This is the file that allows you to add/remove values to those entries found in the auto-generated
sip_additional.conf file. So for example you have an extension 1000 that needs an additional
parameter added. Create a context line: [1000](+) then on the next line add the item(s) you need
to add. To remove use (-) instead followed by the line(s) you want removed.
sip_notify.conf
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 25 of 42
skinny.conf
voicemail.conf
{ This file is both editable by you and by FreePBX, so please be careful. The structure of this file is
as follows:
[general]
#include vm_general.inc
#include vm_email.inc
[default]
Once you have configured a system with voicemail there will be values after the context
[default]. These lines will be generated by FreePBX every time you add/edit/delete a extension.
If you are looking to customize the e-mail message that get's send out with a voice mail please
edit the vm_email.inc file. If you need to edit the mail sending parameters edit the
vm_general.inc file. 99% of the world needs to edit two lines in the vm_general.inc file at the
initial build time.
The most common change to this file is to create a context called [zonemessages]. This context
allows you to create timezones so that when you have extensions in multiple time zones they can
date time stamp recorded messages properly for any given extension. If you create this context it
should be placed after the second #include line and before the [default] line.
[general]
#include vm_general.inc
#include vm_email.inc
[zonemessages]
eastern = America/New_York|'vm-received' q 'digits/at' IMp
central = America/Chicago|'vm-received' q 'digits/at' IMp
mountain = America/Denver|'vm-received' q 'digits/at' IMp
pacific = America/Tijuana|'vm-received' q 'digits/at' IMp
eastern24 = America/New_York|'vm-received' q 'digits/at' R
central24 = America/Chicago|'vm-received' q 'digits/at' R
mountain24 = America/Denver|'vm-received' q 'digits/at' R
pacific24 = America/Tijuana|'vm-received' q 'digits/at' R
deutschland = Europe/Berlin | 'vm-received' Q 'digits/at' kM
england = Europe/London | 'vm-received' Q 'digits/at' R
germany = Europe/Berlin | 'vm-received' Q 'digits/at' kM
alberta = Canada/Mountain | 'vm-received' Q 'digits/at' HM
madrid = Europe/Paris|'vm-received' Q 'digits/at' R
paris = Europe/Paris|'vm-received' Q 'digits/at' R
sthlm = Europe/Stockholm|'vm-recieved' Q 'digits/at' R
europa = Europe/Berlin|'vm-received' Q 'digits/at' kM
italia = Europe/Rome|'vm-received' Q 'digit/at' HMP
military = Zulu | 'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
[default]
vm_email.inc
{ this file contains the e-mail subject line and message body for any voice mails that are e-mailed.
vm_general.inc
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 26 of 42
zapata.conf
zapata-auto.conf
zapata_additional.conf
zapata_custom_chan_default.conf
Hardware examples
Add child pages to enter hardware examples here.
Make sure and note what call levels (and conferences, etc.) the system acheives.
z Redistributions of source code must retain the above copyright notice, this list of conditions and
the following disclaimer.
z Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
z Neither the name of the University of California, Berkeley
nor the names of its contributors may be used to endorse or promote
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 27 of 42
Interfacing to a PSTN
9.1 DIGIUM WILDCARD X100P FXO PCI CARD
This card allows you to connect a POTS (plain Old Telephone
System) line to your Asterisk@Home box (See Notes for Patch
information).
Next go into the AMP web interface to create a trunk and you will
notice that there is already a trunk called ZAP/g0. You need to edit
this.
1. Enter the phone number for you pots line in the Caller ID field
2. Enter 1 for Maximum channels
3. Set a dial rule you want for this trunk
4. Select an outbound dial prefix to select this trunk when dialing
5. Set the Zap Identifier to 1 (the default is g0)
Once the card is configured, you must add a route for Incoming Calls or asterisk will not answer this
line
If you have this card installed, you will need to edit the
following files; zapata.conf, zaptel.conf and modules.conf for AAH 1.x
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 28 of 42
or modprobe.conf for AAH 2.x. The last 2 files live in the /etc
directory – use a text editor to edit them.
9.1.1 zapata.conf
Under [channels] edit the following lines:
[channels]
busydetect=yes
busycount=6
Ensure the following exist in zapata.conf. It is located at the end of the file.
channel => 1
#include zapata_additional.conf
9.1.2 zaptel.conf
Change the loadzone and defaultzone to 'au'
# Global data
loadzone = au
defaultzone = au
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 29 of 42
If this card is installed after Asterisk has been loaded, you will
need to configure it just like the X100P by using the following command
on the command line:
genzaptelconf
9.2.1 zapata-auto.conf
Next, using config edit, look in the zapata-auto.conf file and you
will see a list of all your channels in your TDM400P. Set up the trunks
as trunks and the extensions as extensions in AMP.
When you open the zapata_auto.conf file, it will look something like the illustration below (see the red
highlight)
zapata-auto.conf
signaling=fxo_ks
channel => 1 < - -this would have been defined already by the config
signaling=fxs_ks
context=from-pstnchannel => 2 < - -this would have been defined already by the config
Once this is done, reboot your PC and when Asterisk starts, use AMP
to add a route for incoming calls or asterisk will not answer your
trunk. Similarly, to make outbound calls you will need an outbound
route. Set them up as per setting up routes in the earlier chapters of
this document.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 30 of 42
If you have this card installed, you will need to edit the
following files; zapata.conf and zaptel.conf as per the X100P card in
the previous section.
The example below is for AAH 1.x. where you need to add the following line;
Your modules.conf (AAH 1.x) should look like the example below:
You will only need to add the line in red. Do not change anything else.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 31 of 42
Note: as of Zaptel
Drivers 1.2.4, by selecting opermode=AUSTRALIA the zaptel drivers
automatically add the 'boostringer=1 , fxshonormode=1'
Log into your new server as root and issue the following commands:
cd /usr/src/kernels/2.6.9-34.EL-i686/ include/linux
mv spinlock.h spinlock.h.old
wget http://nerdvittles.com/aah27/spinlock.h
Once the file has been retrieved, reboot using the following command:
shutdown -r now
When the reboot completes, you can start rebuilding the support for
your ZAP devices or for that matter, ztdummy if you don’t have any ZAP
devices.
rebuild_zaptel
shutdown -r now
amportal stop
genzaptelconf
shutdown -r now
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 32 of 42
Now reset SPA-3000 back to factory defaults, because I'm only going
to list the minimum changes required to keep things simple. Take
another snapshot now too, in case you ever want to know what the
defaults were.
DHCP: No
NetMask: 255.255.255.0
Regional tab
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 33 of 42
Ring 3 Cadence:
60
(1.5/3.4,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2,.4/.2,.4/2)
Line 1 tab
Register Expires: 60
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 34 of 42
Register: no
Password: password
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 35 of 42
Or alternatively you may want to adopt the second method for the PSTN Line Tab, which I am
currently using.
Register: no
Password: password
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 36 of 42
User 1 tab
Default Ring: 3
Default CWT: 8
Maximum Channels: 1
0011+ZXXXXXXXXXX.
Peer Details:
canreinvite=no
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 37 of 42
context=from-pstn
insecure=very
nat=no
qualify=yes
secret=password
type=peer
username=PSTN
User Details:
canreinvite=no
context=from-pstn
insecure=very
nat=no
secret=password
type=user
username=PSTN
Then add a DID Route of T0298765432 (for example), which goes to your chosen Destination. (Source
reference: Colin Swan)
See the alternative configuration that I am currently using for the PSTN Tab in Notes
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 38 of 42
Assuming that you already have a broadband service, a router, and a Windows PC to run the softphone,
the cost will be minimal.
Some VSPs like Pennytel, Astratel, Spantalk etc will register you
for SIP communication for free provided that you do not need to make
PSTN calls.
All these “Major Expenses" will be recovered when you receive your monthly Telstra or Optus phone
bills.
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 39 of 42
asterisk -r
Interrupt Information
cat /proc/interrupts
Running tcpdump
tcpdump -A -s 10000 port <port> and host <host>
Duplexing Diagnostics
mii-tool
Rsync Usage
rsync -av -essh /path/to/file <remote_site>:/path/to/file
SCP Usage
scp /path/to/file <remote_host>:/path/to/file
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 40 of 42
Setting up Phones
Some docs on how to setup up hard and soft phones with freepbx
Setting Up Voicemail
Setting up Voicemail
Voicemailboxes are typically created when used for the first time.
Assigning Voicemail PasswordsYou must enter a voicemail password when creating an extension
enabled with voicemail. Choose a password that is at least 4 digits. Resist the impulse to standardize the
default. Most people won't change it, and the system will be insecure.
Instructing New Users
New users should, as matter of policy, be sent an email with both general instructions, their voicemail
initial password, and directions to change it.
In order for these emails to pass through spam filters, the following are recommended:
1. Set your hostname to be a fully-qualified domain name. Use dyndns.org if you don't want to pay
for a real one.
2. Don't send from dynamic IP addresses.
This gives a short description of the message envelope, suitable for emailing to a wireless carrier's
email gateway.
This optional feature lets users set up a short menu before voicemail takes the actual message. Common
options are 'press 1 for my cell, 2 for my assistant or just leave a message after the tone.'
Resetting
It's commonplace to have to reset the passwords as people leave the company.
System Tools
Area for additional system tools for Asterisk and FreePBX
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 41 of 42
Putty
PuTTY
PuTTY is a free implementation of Telnet and SSH for Win32 and
Unix platforms, along with an xterm terminal emulator. It is written
and maintained primarily by Simon Tatham and can be downloaded from the
following link.
http://www.putty.nl/download.html
WEBMIN
WEBMIN
Those who want to use Web Admin to maintain the Asterisk System may download Webmin from here
or from CLI, do the following:
wget http://superb-east.dl.sourceforge.net/sourceforge/webadmin/webmin-1.260-
1.noarch.rpm
http://www.terrasoftsolutions.com/support/solutions/ydl_general/webmin.shtml
You may connect to Webmin remotely through your browser using the
following address http://<YourAsterisk_IPAddress>:10000. E.g.
192.168.0.101:10000
To update WebMin
http://www.freepbx.org/book/export/html/1854 4/20/2011
Administration Guide Page 42 of 42
WINSCP
WINSCP
WinSCP is an open source freeware SFTP client for Windows using
SSH. Legacy SCP protocol is also supported. Its main function is safe
copying of files between a local and a remote computer. It can be
downloaded from the following link.
http://winscp.net/eng/index.php
http://www.freepbx.org/book/export/html/1854 4/20/2011