title: Twilio <Gather>, numDigits="3" or press 0
body: <p>I feel like this is a simple problem. Perhaps it's so simple that it's never been asked before? I just can not seem to find the answer or figure it out.</p>
  
  <p>The first TwiML that the caller is presented with looks like this. </p>
  
  <pre><code>&lt;Response&gt;
      &lt;Gather action="handle-extension.php" numDigits="3"&gt;
          &lt;Play&gt;greatings/maingreating.mp3&lt;/Play&gt;
          &lt;!-- Hello, if you know your party's 3 digit extenstion, please dial it at any time or press 0 for the directory. Otherwise, pelase hold while we find someone to take your call.  --&gt;
      &lt;/Gather&gt;
      &lt;!-- If customer doesn't input anything, prompt and try again. --&gt;
      &lt;Redirect&gt;handle-queue-main.php&lt;/Redirect&gt;
  &lt;/Response&gt; 
  </code></pre>
  
  <p>The caller should be able to dial a 3 digit extension and that information should be passed to  "handle-extension.php". This works fine, however... if the caller dials "0" for the directory, gather just keeps waiting for an additional 2 digits.</p>
  
  <p>While searching, I did find that apparently you can use "&lt;" and ">" in numDigits like so:</p>
  
  <pre><code>&lt;Gather action="handle-extension.php" numDigits="&amp;lt; 3"&gt;
  </code></pre>
  
  <p>But that gave me the same results as the original code.</p>
  
  <p>Another solution I thought of was to use:</p>
  
  <pre><code>&lt;Gather action="handle-extension.php" numDigits="3" finishOnKey="0"&gt;
  </code></pre>
  
  <p>But that didn't work for extensions that had zero in them (101 sends "1" to the next script, 110 sends "11", etc).</p>
  
  <p>Perhaps the easy solution would be to change the directory extension to #, but quite frankly thats not what I'm looking for. </p>
  
  <p>Any suggestions? Is what I am trying to do even possible?</p>
  
  <p>Thank you for your time! :)</p>