<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 12/13/19 11:48 AM, Julian Beach
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:255533612.20191213164821@trink.co.uk">
      <pre class="moz-quote-pre" wrap="">Hello Doug,

Friday, December 13, 2019, 11:03:37 AM, you wrote:

</pre>
      <blockquote type="cite" style="color: #000000;">
        <blockquote type="cite" style="color: #000000;">
          <pre class="moz-quote-pre" wrap="">This is exactly what I do - “press 1 for a human”
Works great
</pre>
        </blockquote>
      </blockquote>
      <blockquote type="cite" style="color: #000000;">
        <pre class="moz-quote-pre" wrap="">I do this as well, but I also do a database lookup to see if the number
is on our speeddial list and if so, pass the call directly on without 
the IVR prompts.
</pre>
      </blockquote>
    </blockquote>
    <br>
    <br>
    <font face="Courier New, Courier, monospace">For those that would
      like to see my code:<br>
      <br>
      exten => 517xxxxxxx,1,Answer()<br>
          same => n,Gosub(check_blacklist,s,1)<br>
          same => n,Gosub(get_callerid,s,1)<br>
          same => n,Gosub(check_for_direct,s,1)<br>
          same => n,Set(CHANNEL(musicclass)=music)<br>
          same => n,Gosub(extension_timeouts,s,1)<br>
          same => n,Dial(SIP/3501,${timeout.timeout},TtKk)<br>
          same => n,NoOP(Dial Status: ${DIALSTATUS})<br>
          same => n,NoOP(Hangup Cause: ${HANGUPCAUSE})<br>
          same => n,Gosub(s-${DIALSTATUS},s,1)<br>
      <br>
      [check_for_direct]<br>
      <br>
;**********************************************************************<br>
      ;* Check if there is a match of the inbound call to the speed dial
      list<br>
      ;* If not, make then go through the IVR menu<br>
      ;*******************************************<br>
      <br>
      exten =>
s,1,Set(ARRAY(speed.phone,speed.name)=${ODBC_MENU_DIRECT(drdos,${CALLERID(number)})})<br>
      <br>
      ;********************************************************<br>
      ;* If the contents of speed.phone is blank, assume that it<br>
      ;* is not programmed and force the call to use the IVR to<br>
      ;* prove they are not an automated call.<br>
      ;********************************************************<br>
      <br>
           same => n,GotoIf($["${speed.phone}" != ""
      ]?3:ivr_menu,s,1)<br>
           same => n,NoOP(${speed.name} is on the approved list)<br>
           same => n,Return()<br>
           same => n,Hangup()<br>
      <br>
      <br>
      <br>
    </font>
  </body>
</html>