I have a dialplan that looks like this:
[dorecord]
exten => _*99XX,1,Verbose(2,Doing custom record)
exten => _*99XX,n,Answer()
exten => _*99XX,n,Verbose(2,Doing custom record - before wait)
exten => _*99XX,n,Wait(0.5)
exten => _*99XX,n,Verbose(2,Doing custom record - before record)
exten => _*99XX,n,Record(/tmp/prompt${EXTEN:3}.gsm)
exten => _*99XX,n,Verbose(2,Doing custom record - before second wait)
exten => _*99XX,n,Wait(2)
exten => _*99XX,n,Verbose(2,Doing custom record - before playback)
exten => _*99XX,n,Playback(/tmp/prompt${EXTEN:3})
exten => _*99XX,n,Verbose(2,Doing custom record - before third wait)
exten => _*99XX,n,Wait(1)
exten => _*99XX,n,Verbose(2,Doing custom record - before goodbye)
exten => _*99XX,n,Playback(vm-goodbye)
exten => _*99XX,n,Verbose(2,Doing custom record - before hangup)
exten => _*99XX,n,hangup()
In CLI it shows as this:
dialplan show dorecord
[ Context 'dorecord' created by 'pbx_config' ]
'_*99XX' => 1. Verbose(2,Doing custom record)
[pbx_config]
2. Answer()
[pbx_config]
3. Verbose(2,Doing custom record - before wait)
[pbx_config]
4. Wait(0.5)
[pbx_config]
5. Verbose(2,Doing custom record - before record)
[pbx_config]
6. Record(/tmp/prompt${EXTEN:3}.gsm)
[pbx_config]
7. Verbose(2,Doing custom record - before second wait)
[pbx_config]
8. Wait(2)
[pbx_config]
9. Verbose(2,Doing custom record - before playback)
[pbx_config]
10. Playback(/tmp/prompt${EXTEN:3})
[pbx_config]
11. Verbose(2,Doing custom record - before third wait)
[pbx_config]
12. Wait(1)
[pbx_config]
13. Verbose(2,Doing custom record - before goodbye)
[pbx_config]
14. Playback(vm-goodbye)
[pbx_config]
15. Verbose(2,Doing custom record - before hangup)
[pbx_config]
16. hangup()
[pbx_config]
When call this extension I see this:
[2009-07-21 07:48:43.897] == Using SIP RTP TOS bits 184
[2009-07-21 07:48:43.897] == Using SIP RTP CoS mark 5
[2009-07-21 07:48:43.897] == Using SIP VRTP TOS bits 136
[2009-07-21 07:48:43.897] == Using SIP VRTP CoS mark 6
[2009-07-21 07:48:44.004] -- Executing [*9901 at empl:1]
Playback("SIP/dickenson-174c2010", "vm-goodbye") in new
stack
[2009-07-21 07:48:44.120] -- <SIP/dickenson-174c2010> Playing
'vm-goodbye.gsm' (language 'en')
[2009-07-21 07:48:45.140] -- Executing [*9901 at empl:2]
Answer("SIP/dickenson-174c2010", "") in new stack
[2009-07-21 07:48:45.140] -- Executing [*9901 at empl:3]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
wait") in
new stack
[2009-07-21 07:48:45.140] == Doing custom record - before wait
[2009-07-21 07:48:45.140] -- Executing [*9901 at empl:4]
Wait("SIP/dickenson-174c2010", "0.5") in new stack
[2009-07-21 07:48:45.654] -- Executing [*9901 at empl:5]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
record")
in new stack
[2009-07-21 07:48:45.654] == Doing custom record - before record
[2009-07-21 07:48:45.654] -- Executing [*9901 at empl:6]
Record("SIP/dickenson-174c2010", "/tmp/prompt01.gsm") in new
stack
[2009-07-21 07:48:45.655] -- <SIP/dickenson-174c2010> Playing
'beep.gsm'
(language 'en')
[2009-07-21 07:48:49.398] -- Executing [*9901 at empl:7]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
second
wait") in new stack
[2009-07-21 07:48:49.398] == Doing custom record - before second wait
[2009-07-21 07:48:49.398] -- Executing [*9901 at empl:8]
Wait("SIP/dickenson-174c2010", "2") in new stack
[2009-07-21 07:48:51.446] -- Executing [*9901 at empl:9]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
playback")
in new stack
[2009-07-21 07:48:51.446] == Doing custom record - before playback
[2009-07-21 07:48:51.446] -- Executing [*9901 at empl:10]
Playback("SIP/dickenson-174c2010", "/tmp/prompt01") in new
stack
[2009-07-21 07:48:51.446] -- <SIP/dickenson-174c2010> Playing
'/tmp/prompt01.gsm' (language 'en')
[2009-07-21 07:48:54.365] -- Executing [*9901 at empl:11]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
third
wait") in new stack
[2009-07-21 07:48:54.365] == Doing custom record - before third wait
[2009-07-21 07:48:54.365] -- Executing [*9901 at empl:12]
Wait("SIP/dickenson-174c2010", "1") in new stack
[2009-07-21 07:48:55.392] -- Executing [*9901 at empl:13]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
goodbye")
in new stack
[2009-07-21 07:48:55.392] == Doing custom record - before goodbye
[2009-07-21 07:48:55.392] -- Executing [*9901 at empl:14]
Playback("SIP/dickenson-174c2010", "vm-goodbye") in new
stack
[2009-07-21 07:48:55.392] -- <SIP/dickenson-174c2010> Playing
'vm-goodbye.gsm' (language 'en')
[2009-07-21 07:48:56.411] -- Executing [*9901 at empl:15]
Verbose("SIP/dickenson-174c2010", "2,Doing custom record - before
hangup")
in new stack
[2009-07-21 07:48:56.411] == Doing custom record - before hangup
[2009-07-21 07:48:56.411] -- Executing [*9901 at empl:16]
Hangup("SIP/dickenson-174c2010", "") in new stack
[2009-07-21 07:48:56.411] == Spawn extension (empl, *9901, 16) exited
non-zero on 'SIP/dickenson-174c2010'
[2009-07-21 07:48:56.411] -- Executing [h at empl:1]
Verbose("SIP/dickenson-174c2010", "2,Hangup
SIP/dickenson-174c2010 with
cause 16") in new stack
[2009-07-21 07:48:56.411] == Hangup SIP/dickenson-174c2010 with cause 16
[2009-07-21 07:48:56.411] -- Executing [h at empl:2]
ExecIf("SIP/dickenson-174c2010",
"0?Set(DB(conf//haveadmin)=no)") in new
stack
Context empl includes context iax-servers which in turn includes dorecord
The problem is that the first step showing when run is a playback but the
dialplan has a verbose as the first step.
I am running version 1.6.0.9 of Asterisk.
How can the first step of the extension be a playback when I do a verbose?
Computers are REAL fun at times ;)
Any idea as to how to figure out what is going on would help.
TIA
--
Jim Dickenson
mailto:dickenson at cfmc.com
CfMC
http://www.cfmc.com/