DIAL link is not perform any action.

All installation and configuration problems and questions

Moderators: gerski, enjay, williamconley, Op3r, Staydog, gardo, mflorell, MJCoate, mcargile, Kumba, Michael_N

DIAL link is not perform any action.

Postby sharad » Fri Sep 15, 2006 3:02 am

HI SIR

I have compleated all the steps of scratch install by using slackware 10.2.
sip phone is express talk
but i can not get success during call testing
actually after login through link
http://OURIP/agc/astguiclient.php
i gets new page in which DIAL link is not perform any action.and DIAL is not seen active in viewing.but linksPARKED CALL and LOCAL CALL EXTENSION are active in viewing
so what shold be actual reason behind it?
and how i can solve it?
Thanks[/b]
Last edited by sharad on Fri Sep 15, 2006 11:34 am, edited 1 time in total.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby gerski » Fri Sep 15, 2006 4:10 am

Last edited by gerski on Fri Sep 15, 2006 11:40 am, edited 1 time in total.
gerski
 
Posts: 432
Joined: Fri Jul 14, 2006 6:21 am

Postby sharad » Fri Sep 15, 2006 4:31 am

YES ALSO DIAL IS NOT WORKING.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Fri Sep 15, 2006 6:27 am

post the output of "screen -r" on your system
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Sat Sep 16, 2006 1:57 am

How do we decipher this or choose the appropriate screen.

root@phone:~# screen -r
There are several suitable screens on:
6275.ASTsend (Detached)
6221.ASTVDauto (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
You have mail in /var/spool/mail/root

after following
root@phone:~# screen [-d]
[screen is terminating]
You have mail in /var/spool/mail/root
root@phone:~# screen [-r]
[screen is terminating]
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Sat Sep 16, 2006 2:37 am

Looks like not everything is running properly, there should be at least 5 screens listed when you run that command if everything has been setup properly.

Please check your manager.conf and try running "AST_update.pl --debug" manually to see what error it outputs.
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Mon Sep 18, 2006 7:34 am

hi

i got only 2 or sometimes 3 screens.Is it not ok? yes than where should be mistake?

o/p of debug command

root@local:~# /home/cron/AST_update.pl --debugx

---- SUPER-DUPER DEBUGGING -----
BUILD: 60411-1032
LOOKING FOR Zap clients assigned to this server:
|SELECT extension FROM phones where protocol = 'Zap' and
server_ip='our telecom provider ip'|
LOOKING FOR IAX2 clients assigned to this server:
|SELECT extension FROM phones where protocol = 'IAX2' and
server_ip='our telecom provider ip'|
LOOKING FOR SIP clients assigned to this server:
|SELECT extension FROM phones where protocol = 'SIP' and
server_ip='our telecom provider ip'|
Zap Clients: |
IAX2 Clients: |
SIP Clients: |


manager.conf is like that

; AMI - The Asterisk Manager Interface
;
; Third party application call management support and PBX event supervision
;
; This configuration file is read every time someone logs in
;
; Use the "show manager commands" at the CLI to list available manager commands
; and their authorization levels.
;
; "show manager command <command>" will show a help text.
;
; ---------------------------- SECURITY NOTE -------------------------------
; Note that you should not enable the AMI on a public IP address. If needed,
; block this TCP port with iptables (or another FW software) and reach it
; with IPsec, SSH, or SSL vpn tunnel
;
[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
;displayconnects = yes

;[mark]
;secret = mysecret
;deny=0.0.0.0/0.0.0.0
;permit=209.16.236.73/255.255.255.0
;
; If the device connected via this user accepts input slowly,
; the timeout for writes to it can be increased to keep it
; from being disconnected (value is in milliseconds)
;
; writetimeout = 100
;
; Authorization for various classes
;read = system,call,log,verbose,command,agent,user
;write = system,call,log,verbose,command,agent,user

[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
[cron]
secret = 1234
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
[updatecron]
secret = 1234
read = command
write = command
[listencron]
secret = 1234
read = system,call,log,verbose,command,agent,user
write = command
[sendcron]
secret = 1234
read = command
write = system,call,log,verbose,command,agent,user


Last edited by sharad on Tue Sep 19, 2006 8:55 am, edited 1 time in total.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Mon Sep 18, 2006 9:25 am

You should not have the General context in manager.conf listed twice.

Please post the contents of your servers table in mysql.
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Mon Sep 18, 2006 3:09 pm

Thanks for your response. I will delete the General Context listed on the top and add the displayconnects = yes line to the 2nd General Context.

1. In General Context it says: port = 5038. Our Softphone is using port 5060 as default. Do we need to change 5038 to 5060?

2. Our [mark] setting is as follows:
[mark]
;secret = mysecret
;deny=0.0.0.0/0.0.0.0
;permit=209.16.236.73/255.255.255.0

Which IP is represented by permit=209.16.236.73/255.255.255.0. Which IP does 209.16.236.73 refer to here?

3. When we run the command listed below...we get output for all - Zap, SIP, and IAX. Our provider only uses SIP. Should we be getting that ouput in this case and can we find out if Asterisk is connecting to our telecom provider? I will be sending you the contents of our servers table in Mysql in a separate post. Thanks again.

root@local:~# /home/cron/AST_update.pl --debugx

---- SUPER-DUPER DEBUGGING -----
BUILD: 60411-1032
LOOKING FOR Zap clients assigned to this server:
|SELECT extension FROM phones where protocol = 'Zap' and
server_ip='our telecom provider ip'|
LOOKING FOR IAX2 clients assigned to this server:
|SELECT extension FROM phones where protocol = 'IAX2' and
server_ip='our telecom provider ip'|
LOOKING FOR SIP clients assigned to this server:
|SELECT extension FROM phones where protocol = 'SIP' and
server_ip='our telecom provider ip'|
Zap Clients: |
IAX2 Clients: |
SIP Clients: |
Last edited by sharad on Tue Sep 19, 2006 8:54 am, edited 1 time in total.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Mon Sep 18, 2006 3:22 pm

Leave the port to 5038.

Leave the permit/deny the way it is stated in the SCRATCH_INSTALL

If you want to see registration status, go to your Asterisk CLI and type "IAX2 show registry" or "SIP show registry"
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Mon Sep 18, 2006 10:26 pm

Thanks for your feedback. If our telecom provider only supports SIP, should we have configured it for IAX and ZAP? Should we delete those 2?

oot@local:~# /home/cron/AST_update.pl --debugx

----- SUPER-DUPER DEBUGGING -----
BUILD: 60411-1032
LOOKING FOR Zap clients assigned to this server:
|SELECT extension FROM phones where protocol = 'Zap' and
server_ip='our telecom provider ip'|
LOOKING FOR IAX2 clients assigned to this server:
|SELECT extension FROM phones where protocol = 'IAX2' and
server_ip='our telecom provider ip'|
LOOKING FOR SIP clients assigned to this server:
|SELECT extension FROM phones where protocol = 'SIP' and
server_ip='our telecom provider ip'|
Zap Clients: |
IAX2 Clients: |
SIP Clients: |
Last edited by sharad on Tue Sep 19, 2006 8:53 am, edited 1 time in total.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Tue Sep 19, 2006 5:30 am

We are not even to the point of thinking about your trunks because not all of your server software is running.

Please post your "crontab -l"
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Tue Sep 19, 2006 7:59 am

Thanks for your response. The results of crontab -l are posted in a seaparate post below. This post contains:
(1) contents of servers tabe and (2) our extensions.conf settings.
We are supposed to be using SIP but I only see IAX and Zap settings here?

The content of servers table is
mysql> select * from servers;
+------------+---------------------------------+---------------+--------+------------------+---------------------+-------------+-------------+----------------+--------------+----------------------+----------------------+--------------------+-----------+----------------------+-----------------------+-------------+
| server_id | server_description | server_ip |
active | asterisk_version | max_vicidial_trunks | telnet_host |
telnet_port | ASTmgrUSERNAME | ASTmgrSECRET | ASTmgrUSERNAMEupdate |
ASTmgrUSERNAMElisten | ASTmgrUSERNAMEsend | local_gmt |
voicemail_dump_exten | answer_transfer_agent | ext_context |
+------------+---------------------------------+---------------+--------+------------------+---------------------+-------------+-------------+----------------+--------------+----------------------+----------------------+--------------------+-----------+----------------------+-----------------------+-------------+
| TESTasteri | Test install of Asterisk server | ourasteriskserverip| Y
| 1.2.6 | 96 | localhost | 5038
| cron | 1234 | updatecron | listencron
| sendcron | -5 | 85026666666666 | 8365
| default |
| TESTasteri | Test install of Asterisk server | ourasteriskserverip| Y
| 1.2.6 | 96 | localhost | 5038
| cron | 1234 | updatecron | listencron
| sendcron | -5 | 85026666666666 | 8365
| default |
+------------+---------------------------------+---------------+--------+------------------+---------------------+-------------+-------------+----------------+--------------+----------------------+----------------------+--------------------+-----------+----------------------+-----------------------+-------------+
2 rows in set (0.03 sec)


and also extension.conf contains following:

; XXX Not yet implemented XXX
;
static=yes
;
; if static=yes and writeprotect=no, you can save dialplan by
; CLI command 'save dialplan' too
;
writeprotect=no
;
; If autofallthrough is set, then if an extension runs out of
; things to do, it will terminate the call with BUSY, CONGESTION
; or HANGUP depending on Asterisk's best guess (strongly recommended).
;
; If autofallthrough is not set, then if an extension runs out of
; things to do, asterisk will wait for a new extension to be dialed
; (this is the original behavior of Asterisk 1.0 and earlier).
;
autofallthrough=yes
;
; If clearglobalvars is set, global variables will be cleared
; and reparsed on an extensions reload, or Asterisk reload.
;
; If clearglobalvars is not set, then global variables will persist
; through reloads, and even if deleted from the extensions.conf or
; one of its included files, will remain set to the previous value.
;
clearglobalvars=no
;
; If priorityjumping is set to 'yes', then applications that support
; 'jumping' to a different priority based on the result of their operations
; will do so (this is backwards compatible behavior with pre-1.2 releases
; of Asterisk). Individual applications can also be requested to do this
; by passing a 'j' option in their arguments.
;
priorityjumping=no
;
; You can include other config files, use the #include command
; (without the ';'). Note that this is different from the "include" command
; that includes contexts within other contexts. The #include command works
; in all asterisk configuration files.
;#include "filename.conf"

; The "Globals" category contains global variables that can be referenced
; in the dialplan with ${VARIABLE} or ${ENV(VARIABLE)} for Environmental
; variables,
; ${${VARIABLE}} or ${text${VARIABLE}} or any hybrid
;
[globals]
CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g1
TRUNK=Zap/g2 ; Trunk interface
;
; Note the 'g2' in the TRUNK variable above. It specifies which group (defined
; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
; the specified group. The four possible options are:
;
; g: select the lowest-numbered non-busy Zap channel
; (aka. ascending sequential hunt group).
; G: select the highest-numbered non-busy Zap channel
; (aka. descending sequential hunt group).
; r: use a round-robin search, starting at the next highest channel than last
; time (aka. ascending rotary hunt group).
; R: use a round-robin search, starting at the next lowest channel than last
; time (aka. descending rotary hunt group).
;
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

;
; Any category other than "General" and "Globals" represent
; extension contexts, which are collections of extensions.
;
; Extension names may be numbers, letters, or combinations
; thereof. If an extension name is prefixed by a '_'
; character, it is interpreted as a pattern rather than a
; literal. In patterns, some characters have special meanings:
;
; X - any digit from 0-9
; Z - any digit from 1-9
; N - any digit from 2-9
; [1235-9] - any digit in the brackets (in this example, 1,2,3,5,6,7,8,9)
; . - wildcard, matches anything remaining (e.g. _9011. matches
; anything starting with 9011 excluding 9011 itself)
; ! - wildcard, causes the matching process to complete as soon as
; it can unambiguously determine that no other matches are possible
;
; For example the extension _NXXXXXX would match normal 7 digit dialings,
; while _1NXXNXXXXXX would represent an area code plus phone number
; preceeded by a one.
;
; Each step of an extension is ordered by priority, which must
; always start with 1 to be considered a valid extension. The priority
; "next" or "n" means the previous priority plus one, regardless of whether
; the previous priority was associated with the current extension or not.
; The priority "same" or "s" means the same as the previously specified
; priority, again regardless of whether the previous entry was for the
; same extension. Priorities may be immediately followed by a plus sign
; and another integer to add that amount (most useful with 's' or 'n').
; Priorities may then also have an alias, or label, in
; parenthesis after their name which can be used in goto situations
;
; Contexts contain several lines, one for each step of each
; extension, which can take one of two forms as listed below,
; with the first form being preferred. One may include another
; context in the current one as well, optionally with a
; date and time. Included contexts are included in the order
; they are listed.
;
;[context]
;exten => someexten,priority[+offset][(alias)],application(arg1,arg2,...)
;exten => someexten,priority[+offset][(alias)],application,arg1|arg2...
;
; Timing list for includes is
;
; <time range>|<days of week>|<days of month>|<months>
;
;include => daytime|9:00-17:00|mon-fri|*|*
;
; ignorepat can be used to instruct drivers to not cancel dialtone upon
; receipt of a particular pattern. The most commonly used example is
; of course '9' like this:
;
;ignorepat => 9
;
; so that dialtone remains even after dialing a 9.
;

;
; Sample entries for extensions.conf
;
;
[dundi-e164-canonical]
;
; List canonical entries here
;
;exten => 12564286000,1,Macro(std-exten,6000,IAX2/foo)
;exten => _125642860XX,1,Dial(IAX2/otherbox/${EXTEN:7})

[dundi-e164-customers]
;
; If you are an ITSP or Reseller, list your customers here.
;
;exten => _12564286000,1,Dial(SIP/customer1)
;exten => _12564286001,1,Dial(IAX2/customer2)

[dundi-e164-via-pstn]
;
; If you are freely delivering calls to the PSTN, list them here
;
;exten => _1256428XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Expose all of 256-428
;exten => _1256325XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Ditto for 256-325

[dundi-e164-local]
;
; Context to put your dundi IAX2 or SIP user in for
; full access
;
include => dundi-e164-canonical
include => dundi-e164-customers
include => dundi-e164-via-pstn

[dundi-e164-switch]
;
; Just a wrapper for the switch
;
switch => DUNDi/e164

[dundi-e164-lookup]
;
; Locally to lookup, try looking for a local E.164 solution
; then try DUNDi if we don't have one.
;
include => dundi-e164-local
include => dundi-e164-switch
;
; DUNDi can also be implemented as a Macro instead of using
; the Local channel driver.
;
[macro-dundi-e164]
;
; ARG1 is the extension to Dial
;
exten => s,1,Goto(${ARG1},1)
include => dundi-e164-lookup

;
; Here are the entries you need to participate in the IAXTEL
; call routing system. Most IAXTEL numbers begin with 1-700, but
; there are exceptions. For more information, and to sign
; up, please go to www.gnophone.com or www.iaxtel.com
;
[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

;
; The SWITCH statement permits a server to share the dialplain with
; another server. Use with care: Reciprocal switch statements are not
; allowed (e.g. both A -> B and B -> A), and the switched server needs
; to be on-line or else dialing can be severly delayed.
;
[iaxprovider]
;switch => IAX2/user:[key]@myserver/mycontext

[trunkint]
;
; International long distance through trunk
;
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunkld]
;
; Long distance context accessed through trunk
;
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunklocal]
;
; Local seven-digit dialing accessed through trunk interface
;
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunktollfree]
;
; Long distance context accessed through trunk interface
;
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[international]
;
; Master context for international long distance
;
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
;
; Master context for long distance
;
ignorepat => 9
include => local
include => trunkld

[local]
;
; Master context for local, toll-free, and iaxtel calls only
;
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider
;
; You can use an alternative switch type as well, to resolve
; extensions that are not known here, for example with remote
; IAX switching you transparently get access to the remote
; Asterisk PBX
;
; switch => IAX2/user:password@bigserver/local
;
; An "lswitch" is like a switch but is literal, in that
; variable substitution is not performed at load time
; but is passed to the switch directly (presumably to
; be substituted in the switch routine itself)
;
; lswitch => Loopback/12${EXTEN}@othercontext
;
; An "eswitch" is like a switch but the evaluation of
; variable substitution is performed at runtime before
; being passed to the switch routine.
;
; eswitch => IAX2/context@${CURSERVER}

[macro-stdexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
;
exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status
(NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to
voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail
w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the
user into VoicemailMain

[macro-stdPrivacyexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
; ${ARG3} - Optional DONTCALL context name to jump to (assumes the
s,1 extension-priority)
; ${ARG4} - Optional TORTURE context name to jump to (assumes the
s,1 extension-priority)`
;
exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds
maximum, call screening option (or use P for databased call screening)
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status
(NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to
voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail
w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose
to send this call to a polite "Don't call again" script.

exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose
to send this call to a telemarketer torture script.

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the
user into VoicemailMain

[demo]
;
; We start with what to do when a call first comes in.
;
exten => s,1,Wait,1 ; Wait a second, just for fun
exten => s,n,Answer ; Answer the line
exten => s,n,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
exten => s,n(restart),BackGround(demo-congrats) ; Play a congratulatory message
exten => s,n(instruct),BackGround(demo-instruct) ; Play some instructions
exten => s,n,WaitExten ; Wait for an extension to be dialed.

exten => 2,1,BackGround(demo-moreinfo) ; Give some more information.
exten => 2,n,Goto(s,instruct)

exten => 3,1,Set(LANGUAGE()=fr) ; Set language to french
exten => 3,n,Goto(s,restart) ; Start with the congratulations

exten => 1000,1,Goto(default,s,1)
;
; We also create an example user, 1234, who is on the console and has
; voicemail, etc.
;
exten => 1234,1,Playback(transfer,skip) ; "Please hold while..."
; (but skip if channel is not up)
exten => 1234,n,Macro(stdexten,1234,${CONSOLE})

exten => 1235,1,Voicemail(u1234) ; Right to voicemail

exten => 1236,1,Dial(Console/dsp) ; Ring forever
exten => 1236,n,Voicemail(u1234) ; Unless busy

;
; # for when they're done with the demo
;
exten => #,1,Playback(demo-thanks) ; "Thanks for trying the demo"
exten => #,n,Hangup ; Hang them up.

;
; A timeout and "invalid extension rule"
;
exten => t,1,Goto(#,1) ; If they take too long, give up
exten => i,1,Playback(invalid) ; "That's not valid, try again"

;
; Create an extension, 500, for dialing the
; Asterisk demo.
;
exten => 500,1,Playback(demo-abouttotry); Let them know what's going on
exten => 500,n,Dial(IAX2/guest@misery.digium.com/s@default) ; Call the
Asterisk demo
exten => 500,n,Playback(demo-nogo) ; Couldn't connect to the demo site
exten => 500,n,Goto(s,6) ; Return to the start over message.

;
; Create an extension, 600, for evaulating echo latency.
;
exten => 600,1,Playback(demo-echotest) ; Let them know what's going on
exten => 600,n,Echo ; Do the echo test
exten => 600,n,Playback(demo-echodone) ; Let them know it's over
exten => 600,n,Goto(s,6) ; Start over
; Extension 3001 rings IAX phone
exten => 301,1,Dial(IAX2/firefly01@firefly01/s)
exten => 301,2,Voicemail,u301 ; Send to voicemail...

;
; Give voicemail at extension 8500
;
exten => 8500,1,VoicemailMain
exten => 8500,n,Goto(s,6)
;
; Here's what a phone entry would look like (IXJ for example)
;
;exten => 1265,1,Dial(Phone/phone0,15)
;exten => 1265,n,Goto(s,5)

;[mainmenu]
;
; Example "main menu" context with submenu
;
;exten => s,1,Answer
;exten => s,n,Background(thanks) ; "Thanks for calling press 1 for
sales, 2 for support, ..."
;exten => s,n,WaitExten
;exten => 1,1,Goto(submenu,s,1)
;exten => 2,1,Hangup
;include => default
;
;[submenu]
;exten => s,1,Ringing ; Make them comfortable with 2 seconds of ringback
;exten => s,n,Wait,2
;exten => s,n,Background(submenuopts) ; "Thanks for calling the sales
department. Press 1 for steve, 2 for..."
;exten => s,n,WaitExten
;exten => 1,1,Goto(default,steve,1)
;exten => 2,1,Goto(default,mark,2)

[default]
;
; By default we include the demo. In a production system, you
; probably don't want to have the demo there.
;
include => demo

;
; An extension like the one below can be used for FWD, Nikotel, sipgate etc.
; Note that you must have a [sipprovider] section in sip.conf
;
;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r)

; Real extensions would go here. Generally you want real extensions to be
; 4 or 5 digits long (although there is no such requirement) and start with a
; single digit that is fairly large (like 6 or 7) so that you have plenty of
; room to overlap extensions and menu options without conflict. You can alias
; them with names, too, and use global variables

;exten => 6245,hint,SIP/Grandstream1&SIP/Xlite1,Joe Schmoe ; Channel
hints for presence
;exten => 6245,1,Dial(SIP/Grandstream1,20,rt) ; permit transfer
;exten => 6245,n(dial),Dial(${HINT},20,rtT) ; Use hint as listed
;exten => 6245,n,Voicemail(u6245) ; Voicemail (unavailable)
;exten => 6245,s+1,Hangup ; s+1, same as n
;exten => 6245,dial+101,Voicemail(b6245) ; Voicemail (busy)
;exten => 6361,1,Dial(IAX2/JaneDoe,,rm) ; ring without time limit
;exten => 6389,1,Dial(MGCP/aaln/1@192.168.0.14)
;exten => 6394,1,Dial(Local/6275/n) ; this will dial ${MARK}

;exten => 6275,1,Macro(stdexten,6275,${MARK}) ; assuming ${MARK} is
something like Zap/2
;exten => mark,1,Goto(6275|1) ; alias mark to 6275
;exten => 6536,1,Macro(stdexten,6236,${WIL}) ; Ditto for wil
;exten => wil,1,Goto(6236|1)
;
; Some other handy things are an extension for checking voicemail via
; voicemailmain
;
;exten => 8500,1,VoicemailMain
;exten => 8500,n,Hangup
;
; Or a conference room (you'll need to edit meetme.conf to enable this room)
;
;exten => 8600,1,Meetme(1234)
;
; Or playing an announcement to the called party, as soon it answers
;
;exten = 8700,1,Dial(${MARK},30,A(/path/to/my/announcemsg))
;
; For more information on applications, just type "show applications" at your
; friendly Asterisk CLI prompt.
;
; 'show application <command>' will show details of how you
; use that particular application in this file, the dial plan.
;
[general]
static=yes
writeprotect=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
TRUNK=Zap/g1 ; Trunk interface
TRUNKX=Zap/g2 ; 2nd trunk interface
TRUNKIAX=IAX2/ASTtest1:test@xx.xxx.xxx.xx (ourtelecom provider ip):4569 ; IAX trunk interface

[default]
; Extension 8600 + 8601 conference rooms
exten => 8600,1,Meetme,8600
exten => 8601,1,Meetme,8601

; Extension 102 - Grandstream hardphone
exten => 102,1,Playback,transfer|skip ; "Please hold while..."
exten => 102,2,Dial,sip/gs102|20|to ; Ring, 20 secs max
exten => 102,3,Voicemail,u102 ; Send to voicemail...
; Extension 2000 Sipura line 1
exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max
exten => 2000,2,Voicemail,u2000 ; Send to voicemail...
; Extension 2001 Sipura line 2
exten => 2001,1,Dial,sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2001 ; Send to voicemail...
; Extension 2020 rings both sipura lines
exten => 2001,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2000 ; Send to voicemail...
; Extension 301 rings the firefly softphone
exten => 301,1,Dial,(IAX2/firefly01@firefly01/s)
exten => 301,2,Hangup

; Extension 3429 - Inbound 800 number (1-800-555-3429)
exten => _**3429,1,Ringing
exten => _**3429,2,Answer
exten => _**3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => _**3429,4,Voicemail,u2000 ; Send to voicemail...
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,Answer
exten => _*NXXNXXXXXX*3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30
secs max
exten => _*NXXNXXXXXX*3429,4,Voicemail,u2000 ; Send to voicemail...

; dial a long distance outbound number to the UK
exten => _01144XXXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
exten => _01144XXXXXXXXXX,2,Hangup

; dial a long distance outbound number to Australia
exten => _901161XXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _901161XXXXXXXXX,2,Hangup

; dial an 800 outbound number
exten => _1800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1800NXXXXXX,2,Hangup
exten => _1888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1888NXXXXXX,2,Hangup
exten => _1877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1877NXXXXXX,2,Hangup
exten => _1866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1866NXXXXXX,2,Hangup

; dial a local 727 outbound number with area code
exten => _727NXXXXXX,1,Dial(${TRUNK}/1${EXTEN:1},,tTo)
exten => _727NXXXXXX,2,Hangup

; dial a local 813 outbound number with area code
exten => _813NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _813NXXXXXX,2,Hangup

; dial a long distance outbound number
exten => _1NXXNXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _1NXXNXXXXXX,2,Hangup

; dial a local outbound number (modified because of only LD T1)
exten => _NXXXXXX,1,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
exten => _NXXXXXX,2,Hangup

; barge monitoring extension
exten => 8159,1,ZapBarge
exten => 8159,2,Hangup

; # timeout invalid rules
exten => #,1,Playback(invalid) ; "Thanks for trying the demo"
exten => #,2,Hangup ; Hang them up.
exten => t,1,Goto(#,1) ; If they take too long, give up
exten => i,1,Playback(invalid) ; "That's not valid, try again"

; Give voicemail at extension 8500
exten => 8500,1,VoicemailMain
exten => 8500,2,Goto(s,6)

; ASTERISK AGENTS LOGINS FOR QUEUES (NOT part of VICIDIAL)
; the following assumes phone agent login and exten are 3 digits and the same
; also assumes that 3-digit login is present in agents.conf and queueus.conf
;Agent Logout then stay onhook, DIAL 54 + 3-digit ID
exten => _54XXX,1,AgentCallbackLogin(||)
; the following are used to login and logout of Asterisk Queues from phone
;Agent Login then stay offhook on the phone, DIAL 55 + 3-digit ID
exten => _55XXX,1,AgentLogin(${EXTEN:1})
;Agent Login then stay onhook, phones will ring, DIAL 56 + 3-digit ID
exten => _56XXX,1,AgentCallbackLogin(||${EXTEN:1}@default)

######------ END extensions.conf example ------######


### OPTIONAL SIP trunk extensions entries for long distance dialing over SIP
exten => _1NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1NXXNXXXXXX,2,Dial(sip/${EXTEN}@SIPtrunk,55,o)
exten => _1NXXNXXXXXX,3,Hangup


r older versions
exten => h,1,DeadAGI(call_log.agi,${EXTEN}) ; DeadAGI is new
exten => h,2,DeadAGI(VD_hangup.agi,PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME})

; Extension 3429 - Inbound 800 number (1-800-555-3429)
exten => _**3429,1,Ringing
exten => _**3429,2,AGI(call_log.agi,${EXTEN})
exten => _**3429,3,Answer
exten => _**3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _**3429,5,Voicemail,u2000
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
exten => _*NXXNXXXXXX*3429,3,Answer
exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000

; Extension 7275551212 - Inbound local number from PRI with 10 digit delivery
exten => 7275551212,1,Ringing
exten => 7275551212,2,Wait(1)
exten => 7275551212,3,AGI(call_logCID.agi,${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME})
exten => 7275551212,4,Answer
exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to
exten => 7275551212,6,Voicemail,u2000

; dial a long distance outbound number to the UK
exten => _01144XXXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _01144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
exten => _01144XXXXXXXXXX,3,Hangup

; dial a long distance outbound number to Australia
exten => _01161XXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _01161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _01161XXXXXXXXX,3,Hangup

; dial an 800 outbound number
exten => _1800NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1800NXXXXXX,3,Hangup
exten => _1888NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1888NXXXXXX,3,Hangup
exten => _1877NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1877NXXXXXX,3,Hangup
exten => _1866NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1866NXXXXXX,3,Hangup

; dial a local 727 outbound number with area code
exten => _727NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _727NXXXXXX,2,Dial(${TRUNK}/1${EXTEN:1},,tTo)
exten => _727NXXXXXX,3,Hangup

; dial a local 813 outbound number with area code
exten => _813NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _813NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _813NXXXXXX,3,Hangup

; dial a long distance outbound number
exten => _1NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _1NXXNXXXXXX,3,Hangup

nbound 800-----x-----y-----z-----w)
exten => _**3429,4,Answer
exten => _**3429,5,Dial,sip/spa2000&sip/spa2001|30|to
exten => _**3429,6,Voicemail,u2000
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
exten => _*NXXNXXXXXX*3429,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound
800-----x-----y-----z-----w)
exten => _*NXXNXXXXXX*3429,3,Answer
exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000


; parameters for agi-VDADcloser.agi (2 fields separated by five dashes "-----"):
; 1. the full extension formatted by VICIDIAL for internal transfers * separated
; 2. the word START to denote the beginning of the acceptance of the transfer
; inbound VICIDIAL transfer calls [can arrive through PRI T1 crossover
or IAX channel]
exten => _0009.,1,Answer ; Answer the line
exten => _0009.,2,AGI(agi-VDADcloser.agi,${EXTEN}-----START)
exten => _0009.,3,Hangup

; parameters for agi-VDADcloser_inbound....agi (7 fields separated by
five dashes "-----"):
; 1. the full name of the IN GROUP to be used in vicidial for the inbound call
; 2. the phone number that was called, for the log entry
; 3. the callerID or lead_id of the person that called(usually overridden)
; 4. the park extension audio file name if used
; 5. the status of the call initially(usually not used)
; 6. the list_id to insert the new lead under if it is new (and
callerID available)
; 7. the phone dialing code to insert with the new lead if new (and
callerID available)

; inbound VICIDIAL call with CID delivery through T1 PRI
exten => 1234,1,Ringing ; call ringing
exten => 1234,2,Wait(1) ; Wait 1 second for CID
delivery from PRI
exten => 1234,3,Answer ; Answer the line
exten => 1234,4,AGI(agi-VDADcloser_inboundCID.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,5,Hangup

; inbound VICIDIAL call with ANI delivery through robbed-bit T1
(*NXXNXXXXXX*DNIS)
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDADcloser_inboundANI.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,3,Hangup

; inbound VICIDIAL call with prompt for 4-digit fronter code
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDADcloser_inbound.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,3,Hangup; dial a local outbound number (modified because
of only LD T1)
exten => _NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _NXXXXXX,2,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
exten => _NXXXXXX,3,Hangup



; ZapBarge direct channel extensions
exten => 8612001,1,ZapBarge(1)
exten => 8612002,1,ZapBarge(2)
exten => 8612003,1,ZapBarge(3)
exten => 8612004,1,ZapBarge(4)
exten => 8612005,1,ZapBarge(5)
exten => 8612006,1,ZapBarge(6)
exten => 8612007,1,ZapBarge(7)
exten => 8612008,1,ZapBarge(8)
exten => 8612009,1,ZapBarge(9)
exten => 8612010,1,ZapBarge(10)
exten => 8612011,1,ZapBarge(11)
exten => 8612012,1,ZapBarge(12)
exten => 8612013,1,ZapBarge(13)
exten => 8612014,1,ZapBarge(14)
exten => 8612015,1,ZapBarge(15)
exten => 8612016,1,ZapBarge(16)
exten => 8612017,1,ZapBarge(17)
exten => 8612018,1,ZapBarge(18)
exten => 8612019,1,ZapBarge(19)
exten => 8612020,1,ZapBarge(20)
exten => 8612021,1,ZapBarge(21)
exten => 8612022,1,ZapBarge(22)
exten => 8612023,1,ZapBarge(23)
exten => 8612024,1,ZapBarge(24)


exten => 8600011,1,Meetme,8600011|q
exten => 8600012,1,Meetme,8600012|q
exten => 8600013,1,Meetme,8600013|q
exten => 8600014,1,Meetme,8600014|q
exten => 8600015,1,Meetme,8600015|q
exten => 8600016,1,Meetme,8600016|q
exten => 8600017,1,Meetme,8600017|q
exten => 8600018,1,Meetme,8600018|q
exten => 8600019,1,Meetme,8600019|q
exten => 8600020,1,Meetme,8600020|q
exten => 8600021,1,Meetme,8600021|q
exten => 8600022,1,Meetme,8600022|q
exten => 8600023,1,Meetme,8600023|q
exten => 8600024,1,Meetme,8600024|q
exten => 8600025,1,Meetme,8600025|q
exten => 8600026,1,Meetme,8600026|q
exten => 8600027,1,Meetme,8600027|q
exten => 8600028,1,Meetme,8600028|q
exten => 8600029,1,Meetme,8600029|q


exten => 8600051,1,Meetme,8600051
exten => 8600052,1,Meetme,8600052
exten => 8600053,1,Meetme,8600053
exten => 8600054,1,Meetme,8600054
exten => 8600055,1,Meetme,8600055
exten => 8600056,1,Meetme,8600056
exten => 8600057,1,Meetme,8600057
exten => 8600058,1,Meetme,8600058
exten => 8600059,1,Meetme,8600059
exten => 8600060,1,Meetme,8600060
exten => 8600061,1,Meetme,8600061
exten => 8600062,1,Meetme,8600062
exten => 8600063,1,Meetme,8600063
exten => 8600064,1,Meetme,8600064
exten => 8600065,1,Meetme,8600065
exten => 8600066,1,Meetme,8600066
exten => 8600067,1,Meetme,8600067
exten => 8600068,1,Meetme,8600068
exten => 8600069,1,Meetme,8600069
exten => 8600070,1,Meetme,8600070
exten => 8600071,1,Meetme,8600071
exten => 8600072,1,Meetme,8600072
exten => 8600073,1,Meetme,8600073
exten => 8600074,1,Meetme,8600074
exten => 8600075,1,Meetme,8600075
exten => 8600076,1,Meetme,8600076
exten => 8600077,1,Meetme,8600077
exten => 8600078,1,Meetme,8600078
exten => 8600079,1,Meetme,8600079
exten => 8600080,1,Meetme,8600080
exten => 8600081,1,Meetme,8600081
exten => 8600082,1,Meetme,8600082
exten => 8600083,1,Meetme,8600083
exten => 8600084,1,Meetme,8600084
exten => 8600085,1,Meetme,8600085
exten => 8600086,1,Meetme,8600086
exten => 8600087,1,Meetme,8600087
exten => 8600088,1,Meetme,8600088
exten => 8600089,1,Meetme,8600089
exten => 8600090,1,Meetme,8600090
exten => 8600091,1,Meetme,8600091
exten => 8600092,1,Meetme,8600092
exten => 8600093,1,Meetme,8600093
exten => 8600094,1,Meetme,8600094
exten => 8600095,1,Meetme,8600095
exten => 8600096,1,Meetme,8600096
exten => 8600097,1,Meetme,8600097
exten => 8600098,1,Meetme,8600098
exten => 8600099,1,Meetme,8600099
exten => 8600100,1,Meetme,8600100
; quiet entry and leaving conferences for VICIDIAL
exten => 78600051,1,Meetme,8600051|q
exten => 78600052,1,Meetme,8600052|q
exten => 78600053,1,Meetme,8600053|q
exten => 78600054,1,Meetme,8600054|q
exten => 78600055,1,Meetme,8600055|q
exten => 78600056,1,Meetme,8600056|q
exten => 78600057,1,Meetme,8600057|q
exten => 78600058,1,Meetme,8600058|q
exten => 78600059,1,Meetme,8600059|q
exten => 78600060,1,Meetme,8600060|q
exten => 78600061,1,Meetme,8600061|q
exten => 78600062,1,Meetme,8600062|q
exten => 78600063,1,Meetme,8600063|q
exten => 78600064,1,Meetme,8600064|q
exten => 78600065,1,Meetme,8600065|q
exten => 78600066,1,Meetme,8600066|q
exten => 78600067,1,Meetme,8600067|q
exten => 78600068,1,Meetme,8600068|q
exten => 78600069,1,Meetme,8600069|q
exten => 78600070,1,Meetme,8600070|q
exten => 78600071,1,Meetme,8600071|q
exten => 78600072,1,Meetme,8600072|q
exten => 78600073,1,Meetme,8600073|q
exten => 78600074,1,Meetme,8600074|q
exten => 78600075,1,Meetme,8600075|q
exten => 78600076,1,Meetme,8600076|q
exten => 78600077,1,Meetme,8600077|q
exten => 78600078,1,Meetme,8600078|q
exten => 78600079,1,Meetme,8600079|q
exten => 78600080,1,Meetme,8600080|q
exten => 78600081,1,Meetme,8600081|q
exten => 78600082,1,Meetme,8600082|q
exten => 78600083,1,Meetme,8600083|q
exten => 78600084,1,Meetme,8600084|q
exten => 78600085,1,Meetme,8600085|q
exten => 78600086,1,Meetme,8600086|q
exten => 78600087,1,Meetme,8600087|q
exten => 78600088,1,Meetme,8600088|q
exten => 78600089,1,Meetme,8600089|q
exten => 78600090,1,Meetme,8600090|q
exten => 78600091,1,Meetme,8600091|q
exten => 78600092,1,Meetme,8600092|q
exten => 78600093,1,Meetme,8600093|q
exten => 78600094,1,Meetme,8600094|q
exten => 78600095,1,Meetme,8600095|q
exten => 78600096,1,Meetme,8600096|q
exten => 78600097,1,Meetme,8600097|q
exten => 78600098,1,Meetme,8600098|q
exten => 78600099,1,Meetme,8600099|q
exten => 78600100,1,Meetme,8600100|q
; quiet monitor extensions for meetme rooms (for room managers)
exten => 68600051,1,Meetme,8600051|mq
exten => 68600052,1,Meetme,8600052|mq
exten => 68600053,1,Meetme,8600053|mq
exten => 68600054,1,Meetme,8600054|mq
exten => 68600055,1,Meetme,8600055|mq
exten => 68600056,1,Meetme,8600056|mq
exten => 68600057,1,Meetme,8600057|mq
exten => 68600058,1,Meetme,8600058|mq
exten => 68600059,1,Meetme,8600059|mq
exten => 68600060,1,Meetme,8600060|mq
exten => 68600061,1,Meetme,8600061|mq
exten => 68600062,1,Meetme,8600062|mq
exten => 68600063,1,Meetme,8600063|mq
exten => 68600064,1,Meetme,8600064|mq
exten => 68600065,1,Meetme,8600065|mq
exten => 68600066,1,Meetme,8600066|mq
exten => 68600067,1,Meetme,8600067|mq
exten => 68600068,1,Meetme,8600068|mq
exten => 68600069,1,Meetme,8600069|mq
exten => 68600070,1,Meetme,8600070|mq
exten => 68600071,1,Meetme,8600071|mq
exten => 68600072,1,Meetme,8600072|mq
exten => 68600073,1,Meetme,8600073|mq
exten => 68600074,1,Meetme,8600074|mq
exten => 68600075,1,Meetme,8600075|mq
exten => 68600076,1,Meetme,8600076|mq
exten => 68600077,1,Meetme,8600077|mq
exten => 68600078,1,Meetme,8600078|mq
exten => 68600079,1,Meetme,8600079|mq
exten => 68600080,1,Meetme,8600080|mq
exten => 68600081,1,Meetme,8600081|mq
exten => 68600082,1,Meetme,8600082|mq
exten => 68600083,1,Meetme,8600083|mq
exten => 68600084,1,Meetme,8600084|mq
exten => 68600085,1,Meetme,8600085|mq
exten => 68600086,1,Meetme,8600086|mq
exten => 68600087,1,Meetme,8600087|mq
exten => 68600088,1,Meetme,8600088|mq
exten => 68600089,1,Meetme,8600089|mq
exten => 68600090,1,Meetme,8600090|mq
exten => 68600091,1,Meetme,8600091|mq
exten => 68600092,1,Meetme,8600092|mq
exten => 68600093,1,Meetme,8600093|mq
exten => 68600094,1,Meetme,8600094|mq
exten => 68600095,1,Meetme,8600095|mq
exten => 68600096,1,Meetme,8600096|mq
exten => 68600097,1,Meetme,8600097|mq
exten => 68600098,1,Meetme,8600098|mq
exten => 68600099,1,Meetme,8600099|mq
exten => 68600100,1,Meetme,8600100|mq


; park channel for client GUI parking, hangup after 30 minutes
; create a GSM formatted audio file named "park.gsm" that is 30 minutes long
; and put it in /var/lib/asterisk/sounds
exten => 8301,1,Answer
exten => 8301,2,AGI(park_CID.agi)
exten => 8301,3,Playback(park)
exten => 8301,4,Hangup
exten => 8303,1,Answer
exten => 8303,2,AGI(park_CID.agi)
exten => 8303,3,Playback(conf)
exten => 8303,4,Hangup

; park channel for client GUI conferencing, hangup after 30 minutes
; create a GSM formatted audio file named "conf.gsm" that is 30 minutes long
; and put it in /var/lib/asterisk/sounds
exten => 8302,1,Answer
exten => 8302,2,Playback(conf)
exten => 8302,3,Hangup

; default audio for safe harbor 2-second-after-hello message then hangup
; create a GSM formatted audio file complies with safe harbor rules
; and put it in /var/lib/asterisk/sounds then change filename below
exten => 8307,1,Answer
exten => 8307,2,Playback(vm-goodbye)
exten => 8307,3,Hangup

; this is used for recording conference calls, the client app sends the filename
; value as a callerID recordings go to /var/spool/asterisk/monitor (WAV)
exten => 8309,1,Answer
exten => 8309,2,Monitor(wav,${CALLERIDNAME})
exten => 8309,3,Wait,3600
exten => 8309,4,Hangup

; this is used for recording conference calls, the client app sends the filename
; value as a callerID recordings go to /var/spool/asterisk/monitor (GSM)
exten => 8310,1,Answer
exten => 8310,2,Monitor(gsm,${CALLERIDNAME})
exten => 8310,3,Wait,3600
exten => 8310,4,Hangup

; this is used for playing a message to an answering machine forwarded
from AMD in VICIDIAL
; replace conf with the message file you want to leave
exten => 8320,1,WaitForSilence(2000,2) ; AMD got machine. leave
message after recording
exten => 8320,2,Playback(conf)
exten => 8320,3,AGI(VD_amd_post.agi,${EXTEN})
exten => 8320,4,Hangup

; this is used to allow the GUI to send you directly into voicemail
; don't forget to set GUI variable $voicemail_exten to this extension
exten => 8501,1,VoicemailMain(s${CALLERIDNUM})
exten => 8501,2,Hangup

; this is used to allow the GUI to send live calls directly into voicemail
; don't forget to set GUI variable $voicemail_dump_exten to this extension
exten => _85026666666666.,1,Wait(2)
exten => _85026666666666.,2,Voicemail(${EXTEN:14})
exten => _85026666666666.,3,Hangup

; this is used for sending DTMF signals within conference calls, the client app
; sends the digits to be played in the callerID field
; sound files must be placed in /var/lib/asterisk/sounds
exten => 8500998,1,Answer
exten => 8500998,2,Playback(silence)
exten => 8500998,3,AGI(agi-dtmf.agi)
exten => 8500998,4,Hangup

; prompt recording AGI script, ID is 4321
exten => 8168,1,Answer
exten => 8168,2,AGI(agi-record_prompts.agi)
exten => 8168,3,Hangup

; playback of recorded prompts
exten => _851XXXXX,1,Answer
exten => _851XXXXX,2,Playback(${EXTEN})
exten => _851XXXXX,3,Hangup

; VICIDIAL_auto_dialer transfer script:
exten => 8365,1,AGI(call_log.agi,${EXTEN})
exten => 8365,2,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,3,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,4,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,5,Hangup

; VICIDIAL_auto_dialer transfer script SURVEY at beginning:
exten => 8366,1,AGI(call_log.agi,${EXTEN})
exten => 8366,2,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,3,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,4,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,5,Hangup

; VICIDIAL_auto_dialer transfer script Load Balance Overflow:
exten => 8367,1,AGI(call_log.agi,${EXTEN})
exten => 8367,2,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,3,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,4,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,5,Hangup

; VICIDIAL_auto_dialer transfer script Load Balanced:
exten => 8368,1,AGI(call_log.agi,${EXTEN})
exten => 8368,2,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,3,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,5,Hangup

; VICIDIAL_auto_dialer transfer script AMD with Load Balanced:
exten => 8369,1,AGI(call_log.agi,${EXTEN})
exten => 8369,2,AMD(3500|1500|300|5000|120|50|5|256)
exten => 8369,3,AGI(VD_amd.agi,${EXTEN})
exten => 8369,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,5,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,6,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,7,Hangup

; VICIDIAL auto-dial reminder script
exten => 8372,1,AGI(call_log.agi,${EXTEN})
exten => 8372,2,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,5,Hangup

### OPTIONAL IAX Load Balance extens to allow for Overflow and Balanced VDAD
### In this setup, the serverIP is the prefix followed by agent conf_exten
### If you have more than 1 server doing VICIDIAL outbound, these lines are
### REQUIRED for Load Balancing to work properly
### server 1 extens:
exten => _our telecom provider ip*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _our telecom provider ip*8600XXX,2,Hangup
### server 2 extens:
exten => _our server ip*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
exten => _our server ip*8600XXX,2,Hangup
Last edited by sharad on Tue Sep 19, 2006 9:25 am, edited 5 times in total.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby sharad » Tue Sep 19, 2006 8:04 am

o/p of crontab -l is

root@local:~# crontab -l
# If you don't want the output of a cron job mailed to you, you have to direct
# any output to /dev/null. We'll do this here since these jobs should run
# properly on a newly installed system, but if they don't the average newbie
# might get quite perplexed about getting strange mail every 5 minutes. :^)
#
# Run the hourly, daily, weekly, and monthly cron jobs.
# Jobs that need different timing may be entered into the crontab as before,
# but most really don't need greater granularity than this. If the exact
# times of the hourly, daily, weekly, and monthly cron jobs do not suit your
# needs, feel free to adjust them.
#
# Run hourly cron jobs at 47 minutes after the hour:
47 * * * * /usr/bin/run-parts /etc/cron.hourly 1> /dev/null
#
# Run daily cron jobs at 4:40 every day:
40 4 * * * /usr/bin/run-parts /etc/cron.daily 1> /dev/null
#
# Run weekly cron jobs at 4:30 on the first day of the week:
30 4 * * 0 /usr/bin/run-parts /etc/cron.weekly 1> /dev/null
#
# Run monthly cron jobs at 4:20 on the first day of the month:
20 4 1 * * /usr/bin/run-parts /etc/cron.monthly 1> /dev/null

### recording mixing for Asterisk run every 5 minutes
1,6,11,16,21,26,31,36,41,46,51,56 * * * 1,2,3,4,5,6 /home/cron/AST_CRON_mix_recordings_BASIC.pl

### keepalive script for Asterisk updaters
* * * * * /home/cron/ADMIN_keepalive_AST_update.pl

### keepalive script for Asterisk manager queue system
* * * * * /home/cron/ADMIN_keepalive_AST_send_listen.pl

### keepalive script for Asterisk VICIDIAL autodial system
* * * * * /home/cron/ADMIN_keepalive_AST_VDautodial.pl

### keepalive script for VICIDIAL remote agents
* * * * * /home/cron/ADMIN_keepalive_AST_VDremote_agents.pl

### kill Hangup script for Asterisk updaters
* * * * * /home/cron/AST_manager_kill_hung_congested.pl

### updater for voicemail
* * * * * /home/cron/AST_vm_update.pl

### updater for conference validator
* * * * * /home/cron/AST_conf_update.pl

### flush queue DB table every hour for entries older than 1 hour
11 * * * * /home/cron/AST_flush_DBqueue.pl -q

### fix the vicidial_agent_log once every hour
33 * * * * /home/cron/AST_cleanup_agent_log.pl

### updater for VICIDIAL hopper
* * * * * /home/cron/AST_VDhopper.pl -q

### adjust the GMT offset for the leads in the vicidial_list table
1 1 * * * /home/cron/ADMIN_adjust_GMTnow_on_leads.pl --debug

### reset several temporary-info tables in the database
2 1 * * * /home/cron/AST_reset_mysql_vars.pl

### optimize the database tables within the asterisk database
3 1 * * * /home/cron/AST_DB_optimize.pl

## adjust time on the server with ntp
30 * * * * /usr/local/bin/ntpdate -u 18.145.0.30 2>/dev/null 1>&2

### VICIDIAL agent time log weekly summary report generation
2 0 * * 0 /home/cron/AST_agent_week.pl

o/p of following

*CLI> SIP show registry
Host Username Refresh State
*CLI> IAX2 show registry
Host Username Perceived Refresh State

Thankyou in advance.
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Tue Sep 19, 2006 9:52 am

It looks like you are using the 1.1.12-3 release. You should really be using the 2.0.1 release.

Try running the crontab command manually and see if you get any errors.
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Tue Sep 19, 2006 1:13 pm

Yes we are using the 1.1.12-3 release . We followed the Scratch Install because it has taken us over 2 months to get to this point. We are under extreme time constraint and trying to make this work. If try the other version - I don't how many days it will take us. Is there any way to solve this issue on this version. It would be of great help.

Also, what do you think of our Extensions.conf settings listed below. Please provide feedback:

and also extension.conf contains following:

; XXX Not yet implemented XXX
;
static=yes
;
; if static=yes and writeprotect=no, you can save dialplan by
; CLI command 'save dialplan' too
;
writeprotect=no
;
; If autofallthrough is set, then if an extension runs out of
; things to do, it will terminate the call with BUSY, CONGESTION
; or HANGUP depending on Asterisk's best guess (strongly recommended).
;
; If autofallthrough is not set, then if an extension runs out of
; things to do, asterisk will wait for a new extension to be dialed
; (this is the original behavior of Asterisk 1.0 and earlier).
;
autofallthrough=yes
;
; If clearglobalvars is set, global variables will be cleared
; and reparsed on an extensions reload, or Asterisk reload.
;
; If clearglobalvars is not set, then global variables will persist
; through reloads, and even if deleted from the extensions.conf or
; one of its included files, will remain set to the previous value.
;
clearglobalvars=no
;
; If priorityjumping is set to 'yes', then applications that support
; 'jumping' to a different priority based on the result of their operations
; will do so (this is backwards compatible behavior with pre-1.2 releases
; of Asterisk). Individual applications can also be requested to do this
; by passing a 'j' option in their arguments.
;
priorityjumping=no
;
; You can include other config files, use the #include command
; (without the ';'). Note that this is different from the "include" command
; that includes contexts within other contexts. The #include command works
; in all asterisk configuration files.
;#include "filename.conf"

; The "Globals" category contains global variables that can be referenced
; in the dialplan with ${VARIABLE} or ${ENV(VARIABLE)} for Environmental
; variables,
; ${${VARIABLE}} or ${text${VARIABLE}} or any hybrid
;
[globals]
CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g1
TRUNK=Zap/g2 ; Trunk interface
;
; Note the 'g2' in the TRUNK variable above. It specifies which group (defined
; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
; the specified group. The four possible options are:
;
; g: select the lowest-numbered non-busy Zap channel
; (aka. ascending sequential hunt group).
; G: select the highest-numbered non-busy Zap channel
; (aka. descending sequential hunt group).
; r: use a round-robin search, starting at the next highest channel than last
; time (aka. ascending rotary hunt group).
; R: use a round-robin search, starting at the next lowest channel than last
; time (aka. descending rotary hunt group).
;
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

;
; Any category other than "General" and "Globals" represent
; extension contexts, which are collections of extensions.
;
; Extension names may be numbers, letters, or combinations
; thereof. If an extension name is prefixed by a '_'
; character, it is interpreted as a pattern rather than a
; literal. In patterns, some characters have special meanings:
;
; X - any digit from 0-9
; Z - any digit from 1-9
; N - any digit from 2-9
; [1235-9] - any digit in the brackets (in this example, 1,2,3,5,6,7,8,9)
; . - wildcard, matches anything remaining (e.g. _9011. matches
; anything starting with 9011 excluding 9011 itself)
; ! - wildcard, causes the matching process to complete as soon as
; it can unambiguously determine that no other matches are possible
;
; For example the extension _NXXXXXX would match normal 7 digit dialings,
; while _1NXXNXXXXXX would represent an area code plus phone number
; preceeded by a one.
;
; Each step of an extension is ordered by priority, which must
; always start with 1 to be considered a valid extension. The priority
; "next" or "n" means the previous priority plus one, regardless of whether
; the previous priority was associated with the current extension or not.
; The priority "same" or "s" means the same as the previously specified
; priority, again regardless of whether the previous entry was for the
; same extension. Priorities may be immediately followed by a plus sign
; and another integer to add that amount (most useful with 's' or 'n').
; Priorities may then also have an alias, or label, in
; parenthesis after their name which can be used in goto situations
;
; Contexts contain several lines, one for each step of each
; extension, which can take one of two forms as listed below,
; with the first form being preferred. One may include another
; context in the current one as well, optionally with a
; date and time. Included contexts are included in the order
; they are listed.
;
;[context]
;exten => someexten,priority[+offset][(alias)],application(arg1,arg2,...)
;exten => someexten,priority[+offset][(alias)],application,arg1|arg2...
;
; Timing list for includes is
;
; <time range>|<days of week>|<days of month>|<months>
;
;include => daytime|9:00-17:00|mon-fri|*|*
;
; ignorepat can be used to instruct drivers to not cancel dialtone upon
; receipt of a particular pattern. The most commonly used example is
; of course '9' like this:
;
;ignorepat => 9
;
; so that dialtone remains even after dialing a 9.
;

;
; Sample entries for extensions.conf
;
;
[dundi-e164-canonical]
;
; List canonical entries here
;
;exten => 12564286000,1,Macro(std-exten,6000,IAX2/foo)
;exten => _125642860XX,1,Dial(IAX2/otherbox/${EXTEN:7})

[dundi-e164-customers]
;
; If you are an ITSP or Reseller, list your customers here.
;
;exten => _12564286000,1,Dial(SIP/customer1)
;exten => _12564286001,1,Dial(IAX2/customer2)

[dundi-e164-via-pstn]
;
; If you are freely delivering calls to the PSTN, list them here
;
;exten => _1256428XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Expose all of 256-428
;exten => _1256325XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Ditto for 256-325

[dundi-e164-local]
;
; Context to put your dundi IAX2 or SIP user in for
; full access
;
include => dundi-e164-canonical
include => dundi-e164-customers
include => dundi-e164-via-pstn

[dundi-e164-switch]
;
; Just a wrapper for the switch
;
switch => DUNDi/e164

[dundi-e164-lookup]
;
; Locally to lookup, try looking for a local E.164 solution
; then try DUNDi if we don't have one.
;
include => dundi-e164-local
include => dundi-e164-switch
;
; DUNDi can also be implemented as a Macro instead of using
; the Local channel driver.
;
[macro-dundi-e164]
;
; ARG1 is the extension to Dial
;
exten => s,1,Goto(${ARG1},1)
include => dundi-e164-lookup

;
; Here are the entries you need to participate in the IAXTEL
; call routing system. Most IAXTEL numbers begin with 1-700, but
; there are exceptions. For more information, and to sign
; up, please go to www.gnophone.com or www.iaxtel.com
;
[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

;
; The SWITCH statement permits a server to share the dialplain with
; another server. Use with care: Reciprocal switch statements are not
; allowed (e.g. both A -> B and B -> A), and the switched server needs
; to be on-line or else dialing can be severly delayed.
;
[iaxprovider]
;switch => IAX2/user:[key]@myserver/mycontext

[trunkint]
;
; International long distance through trunk
;
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunkld]
;
; Long distance context accessed through trunk
;
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunklocal]
;
; Local seven-digit dialing accessed through trunk interface
;
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunktollfree]
;
; Long distance context accessed through trunk interface
;
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[international]
;
; Master context for international long distance
;
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
;
; Master context for long distance
;
ignorepat => 9
include => local
include => trunkld

[local]
;
; Master context for local, toll-free, and iaxtel calls only
;
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider
;
; You can use an alternative switch type as well, to resolve
; extensions that are not known here, for example with remote
; IAX switching you transparently get access to the remote
; Asterisk PBX
;
; switch => IAX2/user:password@bigserver/local
;
; An "lswitch" is like a switch but is literal, in that
; variable substitution is not performed at load time
; but is passed to the switch directly (presumably to
; be substituted in the switch routine itself)
;
; lswitch => Loopback/12${EXTEN}@othercontext
;
; An "eswitch" is like a switch but the evaluation of
; variable substitution is performed at runtime before
; being passed to the switch routine.
;
; eswitch => IAX2/context@${CURSERVER}

[macro-stdexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
;
exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status
(NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to
voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail
w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the
user into VoicemailMain

[macro-stdPrivacyexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
; ${ARG3} - Optional DONTCALL context name to jump to (assumes the
s,1 extension-priority)
; ${ARG4} - Optional TORTURE context name to jump to (assumes the
s,1 extension-priority)`
;
exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds
maximum, call screening option (or use P for databased call screening)
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status
(NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to
voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail
w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose
to send this call to a polite "Don't call again" script.

exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose
to send this call to a telemarketer torture script.

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the
user into VoicemailMain

[demo]
;
; We start with what to do when a call first comes in.
;
exten => s,1,Wait,1 ; Wait a second, just for fun
exten => s,n,Answer ; Answer the line
exten => s,n,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
exten => s,n(restart),BackGround(demo-congrats) ; Play a congratulatory message
exten => s,n(instruct),BackGround(demo-instruct) ; Play some instructions
exten => s,n,WaitExten ; Wait for an extension to be dialed.

exten => 2,1,BackGround(demo-moreinfo) ; Give some more information.
exten => 2,n,Goto(s,instruct)

exten => 3,1,Set(LANGUAGE()=fr) ; Set language to french
exten => 3,n,Goto(s,restart) ; Start with the congratulations

exten => 1000,1,Goto(default,s,1)
;
; We also create an example user, 1234, who is on the console and has
; voicemail, etc.
;
exten => 1234,1,Playback(transfer,skip) ; "Please hold while..."
; (but skip if channel is not up)
exten => 1234,n,Macro(stdexten,1234,${CONSOLE})

exten => 1235,1,Voicemail(u1234) ; Right to voicemail

exten => 1236,1,Dial(Console/dsp) ; Ring forever
exten => 1236,n,Voicemail(u1234) ; Unless busy

;
; # for when they're done with the demo
;
exten => #,1,Playback(demo-thanks) ; "Thanks for trying the demo"
exten => #,n,Hangup ; Hang them up.

;
; A timeout and "invalid extension rule"
;
exten => t,1,Goto(#,1) ; If they take too long, give up
exten => i,1,Playback(invalid) ; "That's not valid, try again"

;
; Create an extension, 500, for dialing the
; Asterisk demo.
;
exten => 500,1,Playback(demo-abouttotry); Let them know what's going on
exten => 500,n,Dial(IAX2/guest@misery.digium.com/s@default) ; Call the
Asterisk demo
exten => 500,n,Playback(demo-nogo) ; Couldn't connect to the demo site
exten => 500,n,Goto(s,6) ; Return to the start over message.

;
; Create an extension, 600, for evaulating echo latency.
;
exten => 600,1,Playback(demo-echotest) ; Let them know what's going on
exten => 600,n,Echo ; Do the echo test
exten => 600,n,Playback(demo-echodone) ; Let them know it's over
exten => 600,n,Goto(s,6) ; Start over
; Extension 3001 rings IAX phone
exten => 301,1,Dial(IAX2/firefly01@firefly01/s)
exten => 301,2,Voicemail,u301 ; Send to voicemail...

;
; Give voicemail at extension 8500
;
exten => 8500,1,VoicemailMain
exten => 8500,n,Goto(s,6)
;
; Here's what a phone entry would look like (IXJ for example)
;
;exten => 1265,1,Dial(Phone/phone0,15)
;exten => 1265,n,Goto(s,5)

;[mainmenu]
;
; Example "main menu" context with submenu
;
;exten => s,1,Answer
;exten => s,n,Background(thanks) ; "Thanks for calling press 1 for
sales, 2 for support, ..."
;exten => s,n,WaitExten
;exten => 1,1,Goto(submenu,s,1)
;exten => 2,1,Hangup
;include => default
;
;[submenu]
;exten => s,1,Ringing ; Make them comfortable with 2 seconds of ringback
;exten => s,n,Wait,2
;exten => s,n,Background(submenuopts) ; "Thanks for calling the sales
department. Press 1 for steve, 2 for..."
;exten => s,n,WaitExten
;exten => 1,1,Goto(default,steve,1)
;exten => 2,1,Goto(default,mark,2)

[default]
;
; By default we include the demo. In a production system, you
; probably don't want to have the demo there.
;
include => demo

;
; An extension like the one below can be used for FWD, Nikotel, sipgate etc.
; Note that you must have a [sipprovider] section in sip.conf
;
;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r)

; Real extensions would go here. Generally you want real extensions to be
; 4 or 5 digits long (although there is no such requirement) and start with a
; single digit that is fairly large (like 6 or 7) so that you have plenty of
; room to overlap extensions and menu options without conflict. You can alias
; them with names, too, and use global variables

;exten => 6245,hint,SIP/Grandstream1&SIP/Xlite1,Joe Schmoe ; Channel
hints for presence
;exten => 6245,1,Dial(SIP/Grandstream1,20,rt) ; permit transfer
;exten => 6245,n(dial),Dial(${HINT},20,rtT) ; Use hint as listed
;exten => 6245,n,Voicemail(u6245) ; Voicemail (unavailable)
;exten => 6245,s+1,Hangup ; s+1, same as n
;exten => 6245,dial+101,Voicemail(b6245) ; Voicemail (busy)
;exten => 6361,1,Dial(IAX2/JaneDoe,,rm) ; ring without time limit
;exten => 6389,1,Dial(MGCP/aaln/1@192.168.0.14)
;exten => 6394,1,Dial(Local/6275/n) ; this will dial ${MARK}

;exten => 6275,1,Macro(stdexten,6275,${MARK}) ; assuming ${MARK} is
something like Zap/2
;exten => mark,1,Goto(6275|1) ; alias mark to 6275
;exten => 6536,1,Macro(stdexten,6236,${WIL}) ; Ditto for wil
;exten => wil,1,Goto(6236|1)
;
; Some other handy things are an extension for checking voicemail via
; voicemailmain
;
;exten => 8500,1,VoicemailMain
;exten => 8500,n,Hangup
;
; Or a conference room (you'll need to edit meetme.conf to enable this room)
;
;exten => 8600,1,Meetme(1234)
;
; Or playing an announcement to the called party, as soon it answers
;
;exten = 8700,1,Dial(${MARK},30,A(/path/to/my/announcemsg))
;
; For more information on applications, just type "show applications" at your
; friendly Asterisk CLI prompt.
;
; 'show application <command>' will show details of how you
; use that particular application in this file, the dial plan.
;
[general]
static=yes
writeprotect=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
TRUNK=Zap/g1 ; Trunk interface
TRUNKX=Zap/g2 ; 2nd trunk interface
TRUNKIAX=IAX2/ASTtest1:test@xx.xxx.xxx.xx (ourtelecom provider ip):4569 ; IAX trunk interface

[default]
; Extension 8600 + 8601 conference rooms
exten => 8600,1,Meetme,8600
exten => 8601,1,Meetme,8601

; Extension 102 - Grandstream hardphone
exten => 102,1,Playback,transfer|skip ; "Please hold while..."
exten => 102,2,Dial,sip/gs102|20|to ; Ring, 20 secs max
exten => 102,3,Voicemail,u102 ; Send to voicemail...
; Extension 2000 Sipura line 1
exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max
exten => 2000,2,Voicemail,u2000 ; Send to voicemail...
; Extension 2001 Sipura line 2
exten => 2001,1,Dial,sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2001 ; Send to voicemail...
; Extension 2020 rings both sipura lines
exten => 2001,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2000 ; Send to voicemail...
; Extension 301 rings the firefly softphone
exten => 301,1,Dial,(IAX2/firefly01@firefly01/s)
exten => 301,2,Hangup

; Extension 3429 - Inbound 800 number (1-800-555-3429)
exten => _**3429,1,Ringing
exten => _**3429,2,Answer
exten => _**3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => _**3429,4,Voicemail,u2000 ; Send to voicemail...
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,Answer
exten => _*NXXNXXXXXX*3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30
secs max
exten => _*NXXNXXXXXX*3429,4,Voicemail,u2000 ; Send to voicemail...

; dial a long distance outbound number to the UK
exten => _01144XXXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
exten => _01144XXXXXXXXXX,2,Hangup

; dial a long distance outbound number to Australia
exten => _901161XXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _901161XXXXXXXXX,2,Hangup

; dial an 800 outbound number
exten => _1800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1800NXXXXXX,2,Hangup
exten => _1888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1888NXXXXXX,2,Hangup
exten => _1877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1877NXXXXXX,2,Hangup
exten => _1866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1866NXXXXXX,2,Hangup

; dial a local 727 outbound number with area code
exten => _727NXXXXXX,1,Dial(${TRUNK}/1${EXTEN:1},,tTo)
exten => _727NXXXXXX,2,Hangup

; dial a local 813 outbound number with area code
exten => _813NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _813NXXXXXX,2,Hangup

; dial a long distance outbound number
exten => _1NXXNXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _1NXXNXXXXXX,2,Hangup

; dial a local outbound number (modified because of only LD T1)
exten => _NXXXXXX,1,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
exten => _NXXXXXX,2,Hangup

; barge monitoring extension
exten => 8159,1,ZapBarge
exten => 8159,2,Hangup

; # timeout invalid rules
exten => #,1,Playback(invalid) ; "Thanks for trying the demo"
exten => #,2,Hangup ; Hang them up.
exten => t,1,Goto(#,1) ; If they take too long, give up
exten => i,1,Playback(invalid) ; "That's not valid, try again"

; Give voicemail at extension 8500
exten => 8500,1,VoicemailMain
exten => 8500,2,Goto(s,6)

; ASTERISK AGENTS LOGINS FOR QUEUES (NOT part of VICIDIAL)
; the following assumes phone agent login and exten are 3 digits and the same
; also assumes that 3-digit login is present in agents.conf and queueus.conf
;Agent Logout then stay onhook, DIAL 54 + 3-digit ID
exten => _54XXX,1,AgentCallbackLogin(||)
; the following are used to login and logout of Asterisk Queues from phone
;Agent Login then stay offhook on the phone, DIAL 55 + 3-digit ID
exten => _55XXX,1,AgentLogin(${EXTEN:1})
;Agent Login then stay onhook, phones will ring, DIAL 56 + 3-digit ID
exten => _56XXX,1,AgentCallbackLogin(||${EXTEN:1}@default)

######------ END extensions.conf example ------######


### OPTIONAL SIP trunk extensions entries for long distance dialing over SIP
exten => _1NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1NXXNXXXXXX,2,Dial(sip/${EXTEN}@SIPtrunk,55,o)
exten => _1NXXNXXXXXX,3,Hangup


r older versions
exten => h,1,DeadAGI(call_log.agi,${EXTEN}) ; DeadAGI is new
exten => h,2,DeadAGI(VD_hangup.agi,PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME})

; Extension 3429 - Inbound 800 number (1-800-555-3429)
exten => _**3429,1,Ringing
exten => _**3429,2,AGI(call_log.agi,${EXTEN})
exten => _**3429,3,Answer
exten => _**3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _**3429,5,Voicemail,u2000
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
exten => _*NXXNXXXXXX*3429,3,Answer
exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000

; Extension 7275551212 - Inbound local number from PRI with 10 digit delivery
exten => 7275551212,1,Ringing
exten => 7275551212,2,Wait(1)
exten => 7275551212,3,AGI(call_logCID.agi,${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME})
exten => 7275551212,4,Answer
exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to
exten => 7275551212,6,Voicemail,u2000

; dial a long distance outbound number to the UK
exten => _01144XXXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _01144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
exten => _01144XXXXXXXXXX,3,Hangup

; dial a long distance outbound number to Australia
exten => _01161XXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _01161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _01161XXXXXXXXX,3,Hangup

; dial an 800 outbound number
exten => _1800NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1800NXXXXXX,3,Hangup
exten => _1888NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1888NXXXXXX,3,Hangup
exten => _1877NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1877NXXXXXX,3,Hangup
exten => _1866NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _1866NXXXXXX,3,Hangup

; dial a local 727 outbound number with area code
exten => _727NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _727NXXXXXX,2,Dial(${TRUNK}/1${EXTEN:1},,tTo)
exten => _727NXXXXXX,3,Hangup

; dial a local 813 outbound number with area code
exten => _813NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _813NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _813NXXXXXX,3,Hangup

; dial a long distance outbound number
exten => _1NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _1NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _1NXXNXXXXXX,3,Hangup

nbound 800-----x-----y-----z-----w)
exten => _**3429,4,Answer
exten => _**3429,5,Dial,sip/spa2000&sip/spa2001|30|to
exten => _**3429,6,Voicemail,u2000
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
exten => _*NXXNXXXXXX*3429,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound
800-----x-----y-----z-----w)
exten => _*NXXNXXXXXX*3429,3,Answer
exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000


; parameters for agi-VDADcloser.agi (2 fields separated by five dashes "-----"):
; 1. the full extension formatted by VICIDIAL for internal transfers * separated
; 2. the word START to denote the beginning of the acceptance of the transfer
; inbound VICIDIAL transfer calls [can arrive through PRI T1 crossover
or IAX channel]
exten => _0009.,1,Answer ; Answer the line
exten => _0009.,2,AGI(agi-VDADcloser.agi,${EXTEN}-----START)
exten => _0009.,3,Hangup

; parameters for agi-VDADcloser_inbound....agi (7 fields separated by
five dashes "-----"):
; 1. the full name of the IN GROUP to be used in vicidial for the inbound call
; 2. the phone number that was called, for the log entry
; 3. the callerID or lead_id of the person that called(usually overridden)
; 4. the park extension audio file name if used
; 5. the status of the call initially(usually not used)
; 6. the list_id to insert the new lead under if it is new (and
callerID available)
; 7. the phone dialing code to insert with the new lead if new (and
callerID available)

; inbound VICIDIAL call with CID delivery through T1 PRI
exten => 1234,1,Ringing ; call ringing
exten => 1234,2,Wait(1) ; Wait 1 second for CID
delivery from PRI
exten => 1234,3,Answer ; Answer the line
exten => 1234,4,AGI(agi-VDADcloser_inboundCID.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,5,Hangup

; inbound VICIDIAL call with ANI delivery through robbed-bit T1
(*NXXNXXXXXX*DNIS)
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDADcloser_inboundANI.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,3,Hangup

; inbound VICIDIAL call with prompt for 4-digit fronter code
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDADcloser_inbound.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,3,Hangup; dial a local outbound number (modified because
of only LD T1)
exten => _NXXXXXX,1,AGI(call_log.agi,${EXTEN})
exten => _NXXXXXX,2,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
exten => _NXXXXXX,3,Hangup



; ZapBarge direct channel extensions
exten => 8612001,1,ZapBarge(1)
exten => 8612002,1,ZapBarge(2)
exten => 8612003,1,ZapBarge(3)
exten => 8612004,1,ZapBarge(4)
exten => 8612005,1,ZapBarge(5)
exten => 8612006,1,ZapBarge(6)
exten => 8612007,1,ZapBarge(7)
exten => 8612008,1,ZapBarge(Cool
exten => 8612009,1,ZapBarge(9)
exten => 8612010,1,ZapBarge(10)
exten => 8612011,1,ZapBarge(11)
exten => 8612012,1,ZapBarge(12)
exten => 8612013,1,ZapBarge(13)
exten => 8612014,1,ZapBarge(14)
exten => 8612015,1,ZapBarge(15)
exten => 8612016,1,ZapBarge(16)
exten => 8612017,1,ZapBarge(17)
exten => 8612018,1,ZapBarge(1Cool
exten => 8612019,1,ZapBarge(19)
exten => 8612020,1,ZapBarge(20)
exten => 8612021,1,ZapBarge(21)
exten => 8612022,1,ZapBarge(22)
exten => 8612023,1,ZapBarge(23)
exten => 8612024,1,ZapBarge(24)


exten => 8600011,1,Meetme,8600011|q
exten => 8600012,1,Meetme,8600012|q
exten => 8600013,1,Meetme,8600013|q
exten => 8600014,1,Meetme,8600014|q
exten => 8600015,1,Meetme,8600015|q
exten => 8600016,1,Meetme,8600016|q
exten => 8600017,1,Meetme,8600017|q
exten => 8600018,1,Meetme,8600018|q
exten => 8600019,1,Meetme,8600019|q
exten => 8600020,1,Meetme,8600020|q
exten => 8600021,1,Meetme,8600021|q
exten => 8600022,1,Meetme,8600022|q
exten => 8600023,1,Meetme,8600023|q
exten => 8600024,1,Meetme,8600024|q
exten => 8600025,1,Meetme,8600025|q
exten => 8600026,1,Meetme,8600026|q
exten => 8600027,1,Meetme,8600027|q
exten => 8600028,1,Meetme,8600028|q
exten => 8600029,1,Meetme,8600029|q


exten => 8600051,1,Meetme,8600051
exten => 8600052,1,Meetme,8600052
exten => 8600053,1,Meetme,8600053
exten => 8600054,1,Meetme,8600054
exten => 8600055,1,Meetme,8600055
exten => 8600056,1,Meetme,8600056
exten => 8600057,1,Meetme,8600057
exten => 8600058,1,Meetme,8600058
exten => 8600059,1,Meetme,8600059
exten => 8600060,1,Meetme,8600060
exten => 8600061,1,Meetme,8600061
exten => 8600062,1,Meetme,8600062
exten => 8600063,1,Meetme,8600063
exten => 8600064,1,Meetme,8600064
exten => 8600065,1,Meetme,8600065
exten => 8600066,1,Meetme,8600066
exten => 8600067,1,Meetme,8600067
exten => 8600068,1,Meetme,8600068
exten => 8600069,1,Meetme,8600069
exten => 8600070,1,Meetme,8600070
exten => 8600071,1,Meetme,8600071
exten => 8600072,1,Meetme,8600072
exten => 8600073,1,Meetme,8600073
exten => 8600074,1,Meetme,8600074
exten => 8600075,1,Meetme,8600075
exten => 8600076,1,Meetme,8600076
exten => 8600077,1,Meetme,8600077
exten => 8600078,1,Meetme,8600078
exten => 8600079,1,Meetme,8600079
exten => 8600080,1,Meetme,8600080
exten => 8600081,1,Meetme,8600081
exten => 8600082,1,Meetme,8600082
exten => 8600083,1,Meetme,8600083
exten => 8600084,1,Meetme,8600084
exten => 8600085,1,Meetme,8600085
exten => 8600086,1,Meetme,8600086
exten => 8600087,1,Meetme,8600087
exten => 8600088,1,Meetme,8600088
exten => 8600089,1,Meetme,8600089
exten => 8600090,1,Meetme,8600090
exten => 8600091,1,Meetme,8600091
exten => 8600092,1,Meetme,8600092
exten => 8600093,1,Meetme,8600093
exten => 8600094,1,Meetme,8600094
exten => 8600095,1,Meetme,8600095
exten => 8600096,1,Meetme,8600096
exten => 8600097,1,Meetme,8600097
exten => 8600098,1,Meetme,8600098
exten => 8600099,1,Meetme,8600099
exten => 8600100,1,Meetme,8600100
; quiet entry and leaving conferences for VICIDIAL
exten => 78600051,1,Meetme,8600051|q
exten => 78600052,1,Meetme,8600052|q
exten => 78600053,1,Meetme,8600053|q
exten => 78600054,1,Meetme,8600054|q
exten => 78600055,1,Meetme,8600055|q
exten => 78600056,1,Meetme,8600056|q
exten => 78600057,1,Meetme,8600057|q
exten => 78600058,1,Meetme,8600058|q
exten => 78600059,1,Meetme,8600059|q
exten => 78600060,1,Meetme,8600060|q
exten => 78600061,1,Meetme,8600061|q
exten => 78600062,1,Meetme,8600062|q
exten => 78600063,1,Meetme,8600063|q
exten => 78600064,1,Meetme,8600064|q
exten => 78600065,1,Meetme,8600065|q
exten => 78600066,1,Meetme,8600066|q
exten => 78600067,1,Meetme,8600067|q
exten => 78600068,1,Meetme,8600068|q
exten => 78600069,1,Meetme,8600069|q
exten => 78600070,1,Meetme,8600070|q
exten => 78600071,1,Meetme,8600071|q
exten => 78600072,1,Meetme,8600072|q
exten => 78600073,1,Meetme,8600073|q
exten => 78600074,1,Meetme,8600074|q
exten => 78600075,1,Meetme,8600075|q
exten => 78600076,1,Meetme,8600076|q
exten => 78600077,1,Meetme,8600077|q
exten => 78600078,1,Meetme,8600078|q
exten => 78600079,1,Meetme,8600079|q
exten => 78600080,1,Meetme,8600080|q
exten => 78600081,1,Meetme,8600081|q
exten => 78600082,1,Meetme,8600082|q
exten => 78600083,1,Meetme,8600083|q
exten => 78600084,1,Meetme,8600084|q
exten => 78600085,1,Meetme,8600085|q
exten => 78600086,1,Meetme,8600086|q
exten => 78600087,1,Meetme,8600087|q
exten => 78600088,1,Meetme,8600088|q
exten => 78600089,1,Meetme,8600089|q
exten => 78600090,1,Meetme,8600090|q
exten => 78600091,1,Meetme,8600091|q
exten => 78600092,1,Meetme,8600092|q
exten => 78600093,1,Meetme,8600093|q
exten => 78600094,1,Meetme,8600094|q
exten => 78600095,1,Meetme,8600095|q
exten => 78600096,1,Meetme,8600096|q
exten => 78600097,1,Meetme,8600097|q
exten => 78600098,1,Meetme,8600098|q
exten => 78600099,1,Meetme,8600099|q
exten => 78600100,1,Meetme,8600100|q
; quiet monitor extensions for meetme rooms (for room managers)
exten => 68600051,1,Meetme,8600051|mq
exten => 68600052,1,Meetme,8600052|mq
exten => 68600053,1,Meetme,8600053|mq
exten => 68600054,1,Meetme,8600054|mq
exten => 68600055,1,Meetme,8600055|mq
exten => 68600056,1,Meetme,8600056|mq
exten => 68600057,1,Meetme,8600057|mq
exten => 68600058,1,Meetme,8600058|mq
exten => 68600059,1,Meetme,8600059|mq
exten => 68600060,1,Meetme,8600060|mq
exten => 68600061,1,Meetme,8600061|mq
exten => 68600062,1,Meetme,8600062|mq
exten => 68600063,1,Meetme,8600063|mq
exten => 68600064,1,Meetme,8600064|mq
exten => 68600065,1,Meetme,8600065|mq
exten => 68600066,1,Meetme,8600066|mq
exten => 68600067,1,Meetme,8600067|mq
exten => 68600068,1,Meetme,8600068|mq
exten => 68600069,1,Meetme,8600069|mq
exten => 68600070,1,Meetme,8600070|mq
exten => 68600071,1,Meetme,8600071|mq
exten => 68600072,1,Meetme,8600072|mq
exten => 68600073,1,Meetme,8600073|mq
exten => 68600074,1,Meetme,8600074|mq
exten => 68600075,1,Meetme,8600075|mq
exten => 68600076,1,Meetme,8600076|mq
exten => 68600077,1,Meetme,8600077|mq
exten => 68600078,1,Meetme,8600078|mq
exten => 68600079,1,Meetme,8600079|mq
exten => 68600080,1,Meetme,8600080|mq
exten => 68600081,1,Meetme,8600081|mq
exten => 68600082,1,Meetme,8600082|mq
exten => 68600083,1,Meetme,8600083|mq
exten => 68600084,1,Meetme,8600084|mq
exten => 68600085,1,Meetme,8600085|mq
exten => 68600086,1,Meetme,8600086|mq
exten => 68600087,1,Meetme,8600087|mq
exten => 68600088,1,Meetme,8600088|mq
exten => 68600089,1,Meetme,8600089|mq
exten => 68600090,1,Meetme,8600090|mq
exten => 68600091,1,Meetme,8600091|mq
exten => 68600092,1,Meetme,8600092|mq
exten => 68600093,1,Meetme,8600093|mq
exten => 68600094,1,Meetme,8600094|mq
exten => 68600095,1,Meetme,8600095|mq
exten => 68600096,1,Meetme,8600096|mq
exten => 68600097,1,Meetme,8600097|mq
exten => 68600098,1,Meetme,8600098|mq
exten => 68600099,1,Meetme,8600099|mq
exten => 68600100,1,Meetme,8600100|mq


; park channel for client GUI parking, hangup after 30 minutes
; create a GSM formatted audio file named "park.gsm" that is 30 minutes long
; and put it in /var/lib/asterisk/sounds
exten => 8301,1,Answer
exten => 8301,2,AGI(park_CID.agi)
exten => 8301,3,Playback(park)
exten => 8301,4,Hangup
exten => 8303,1,Answer
exten => 8303,2,AGI(park_CID.agi)
exten => 8303,3,Playback(conf)
exten => 8303,4,Hangup

; park channel for client GUI conferencing, hangup after 30 minutes
; create a GSM formatted audio file named "conf.gsm" that is 30 minutes long
; and put it in /var/lib/asterisk/sounds
exten => 8302,1,Answer
exten => 8302,2,Playback(conf)
exten => 8302,3,Hangup

; default audio for safe harbor 2-second-after-hello message then hangup
; create a GSM formatted audio file complies with safe harbor rules
; and put it in /var/lib/asterisk/sounds then change filename below
exten => 8307,1,Answer
exten => 8307,2,Playback(vm-goodbye)
exten => 8307,3,Hangup

; this is used for recording conference calls, the client app sends the filename
; value as a callerID recordings go to /var/spool/asterisk/monitor (WAV)
exten => 8309,1,Answer
exten => 8309,2,Monitor(wav,${CALLERIDNAME})
exten => 8309,3,Wait,3600
exten => 8309,4,Hangup

; this is used for recording conference calls, the client app sends the filename
; value as a callerID recordings go to /var/spool/asterisk/monitor (GSM)
exten => 8310,1,Answer
exten => 8310,2,Monitor(gsm,${CALLERIDNAME})
exten => 8310,3,Wait,3600
exten => 8310,4,Hangup

; this is used for playing a message to an answering machine forwarded
from AMD in VICIDIAL
; replace conf with the message file you want to leave
exten => 8320,1,WaitForSilence(2000,2) ; AMD got machine. leave
message after recording
exten => 8320,2,Playback(conf)
exten => 8320,3,AGI(VD_amd_post.agi,${EXTEN})
exten => 8320,4,Hangup

; this is used to allow the GUI to send you directly into voicemail
; don't forget to set GUI variable $voicemail_exten to this extension
exten => 8501,1,VoicemailMain(s${CALLERIDNUM})
exten => 8501,2,Hangup

; this is used to allow the GUI to send live calls directly into voicemail
; don't forget to set GUI variable $voicemail_dump_exten to this extension
exten => _85026666666666.,1,Wait(2)
exten => _85026666666666.,2,Voicemail(${EXTEN:14})
exten => _85026666666666.,3,Hangup

; this is used for sending DTMF signals within conference calls, the client app
; sends the digits to be played in the callerID field
; sound files must be placed in /var/lib/asterisk/sounds
exten => 8500998,1,Answer
exten => 8500998,2,Playback(silence)
exten => 8500998,3,AGI(agi-dtmf.agi)
exten => 8500998,4,Hangup

; prompt recording AGI script, ID is 4321
exten => 8168,1,Answer
exten => 8168,2,AGI(agi-record_prompts.agi)
exten => 8168,3,Hangup

; playback of recorded prompts
exten => _851XXXXX,1,Answer
exten => _851XXXXX,2,Playback(${EXTEN})
exten => _851XXXXX,3,Hangup

; VICIDIAL_auto_dialer transfer script:
exten => 8365,1,AGI(call_log.agi,${EXTEN})
exten => 8365,2,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,3,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,4,AGI(agi-VDADtransfer.agi,${EXTEN})
exten => 8365,5,Hangup

; VICIDIAL_auto_dialer transfer script SURVEY at beginning:
exten => 8366,1,AGI(call_log.agi,${EXTEN})
exten => 8366,2,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,3,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,4,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
exten => 8366,5,Hangup

; VICIDIAL_auto_dialer transfer script Load Balance Overflow:
exten => 8367,1,AGI(call_log.agi,${EXTEN})
exten => 8367,2,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,3,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,4,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,5,Hangup

; VICIDIAL_auto_dialer transfer script Load Balanced:
exten => 8368,1,AGI(call_log.agi,${EXTEN})
exten => 8368,2,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,3,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,5,Hangup

; VICIDIAL_auto_dialer transfer script AMD with Load Balanced:
exten => 8369,1,AGI(call_log.agi,${EXTEN})
exten => 8369,2,AMD(3500|1500|300|5000|120|50|5|256)
exten => 8369,3,AGI(VD_amd.agi,${EXTEN})
exten => 8369,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,5,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,6,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8369,7,Hangup

; VICIDIAL auto-dial reminder script
exten => 8372,1,AGI(call_log.agi,${EXTEN})
exten => 8372,2,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
exten => 8372,5,Hangup

### OPTIONAL IAX Load Balance extens to allow for Overflow and Balanced VDAD
### In this setup, the serverIP is the prefix followed by agent conf_exten
### If you have more than 1 server doing VICIDIAL outbound, these lines are
### REQUIRED for Load Balancing to work properly
### server 1 extens:
exten => _our telecom provider ip*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _our telecom provider ip*8600XXX,2,Hangup
### server 2 extens:
exten => _our server ip*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
exten => _our server ip*8600XXX,2,Hangup
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Tue Sep 19, 2006 2:29 pm

You really didn't need to post your extensions.conf twice.

Two Months? Have you given any thought to hiring a consultant to help you with this?

Any of them can setup a simple single-server VICIDIAL setup in one day.
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby sharad » Tue Sep 19, 2006 2:55 pm

We did hire an onsite consultant around 3 weeks ago. This is where we are after the consultant has done the installation and configuration.

Can you provide any feedback on how we can salvage this? Can we use what we have or can we upgrade to the newer version without adding more complexities?
sharad
 
Posts: 36
Joined: Fri Jul 21, 2006 7:47 am

Postby mflorell » Tue Sep 19, 2006 3:26 pm

If this is how the consultant left it, then this is not a working setup and you should get your money back. Please PM the consultant info to me.
mflorell
Site Admin
 
Posts: 18338
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida


Return to Support

Who is online

Users browsing this forum: No registered users and 91 guests