<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">On 6/17/23 08:47, Steve Matzura wrote:<br>
</div>
<blockquote type="cite"
cite="mid:032a3227-448f-ae67-f7c8-4cb7e5ae1c2f@noisynotes.com">
<p><font face="Courier New, Courier, monospace">Both Background()
and WaitExten() allow the caller to enter DTMF digits.
Asterisk then attempts to find an extension in the current
context that matches the digits that the caller entered. If
Asterisk finds a match, it will send the call to that
extension. <br>
</font></p>
<p><font face="Courier New, Courier, monospace"><br>
</font></p>
<p><font face="Courier New, Courier, monospace">My question then
is, is "*" a valid exension, as in:</font></p>
</blockquote>
<br>
<font face="Courier New, Courier, monospace">I'd have to assume
yes. I don't use WaitExten() and I set autofallthrough=no in the
/etc/asterisk.conf, since that is the way I've always expected
Asterisk to work; my dialplan examples are based on that.<br>
<br>
The below example shows a call coming into a DID, playing
background prompts and excepting input during play.<br>
<br>
<br>
;****************<br>
;* Auto attendant<br>
;****************<br>
<br>
exten => 5175551212,1,Gosub(check-blacklist,s,1)<br>
same => n,Gosub(check-hours,s,1)<br>
same => n,Gosub(holiday-check,s,1)<br>
same => n,Gosub(get-callerid,s,1)<br>
same => n,Goto(auto-attend,s,1)<br>
<br>
[auto-attend]<br>
<br>
include => dial-by-extension<br>
<br>
;*************<br>
;* Set timeouts<br>
;*************<br>
<br>
exten => s,1,Set(TIMEOUT(response)=8)<br>
same => n,Set(TIMEOUT(digit)=2)<br>
same => n,Set(LOOPCOUNT=0)<br>
<br>
same => n,GotoIf($["${Holiday}" = "YES"]?HOLIDAY:BEGIN)<br>
same => n(BEGIN),Answer()<br>
same => n,Wait(1)<br>
<br>
;****************************************************<br>
;* Play the 'Welcome message' and office hours message<br>
;****************************************************<br>
<br>
same => n,Background(${voice}/welcome)<br>
same => n,Background(${voice}/business_hours)<br>
same => n,Background(${voice}/8am_5pm)<br>
same => n(HOLIDAY),Background(${voice}/dial_anytime)<br>
same => n(DIRECTORY),Background(${voice}/directory_assist)<br>
same => n,Background(${voice}/press_1)<br>
same => n,Background(${voice}/to_ring_after_hours)<br>
same => n,Background(${voice}/press_2)<br>
same => n,Background(${voice}/absence_delay)<br>
same => n,Background(${voice}/press_3)<br>
<br>
;************************************<br>
;* If 1 is pressed, go to Dial by name<br>
;************************************<br>
<br>
exten => 1,1,Goto(directory,s,1)<br>
<br>
;***************************************<br>
;* If 2 is pressed, dial the Foyer phone<br>
;***************************************<br>
<br>
exten => 2,1,Goto(dial-by-extension,4255,1)<br>
<br>
;***********************************************<br>
;* If 3 is pressed, dial absence/delay extension<br>
;***********************************************<br>
<br>
exten => 3,1,Gosub(cellphone-callerid,s,1)<br>
exten => 3,n,Voicemail(3888@sip,us)<br>
exten => 3,n,Hangup()<br>
<br>
;********************************************<br>
;* If 8# is pressed, go to Voicemail Main menu<br>
;********************************************<br>
<br>
exten => 8#,1,VoiceMailMain(@sip)<br>
exten => 8#,2,Hangup()<br>
<br>
This is not the complete dialplan; I also have error checking and
a loop counter.<br>
<br>
Doug<br>
<br>
</font>
</body>
</html>