[Freeswitch-users] DTMF Missing Digits

Chris Fowler chris at fowler.cc
Fri Mar 27 12:40:08 PDT 2009


>> Did you provide the menu you are using and what you expect to happen?

Here's the setup;  

Caller -> FlowRoute - > FreeSwitch

    <menu name="main_ivr"
          greet-long="phrase:welcome"
          greet-short="phrase:top-menu"
          invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
          exit-sound="ivr/ivr-operator.wav"
          timeout ="10000"
          inter-digit-timeout="1500"
          max-failures="2"
          max-timeouts="7"
          digit-len="4">
      <entry action="menu-exec-app" digits="/^(10[0-2][0-9])$/"
      param="transfer $1 XML public"/>
      <entry action="menu-exec-app" digits="/^(30\d{2})$/"
      param="transfer $1 XML default"/>
      <entry action="menu-exec-app" digits="0" param="transfer 1000 XML
      public"/>  <!-- Send to the operator extension -->
      <entry action="menu-exec-app" digits="#" param="transfer 6000 XML
      default"/>
    </menu>

    <macro name="welcome" pause="250">
      <input pattern="(.*)">
        <match>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/fr1.wav"/>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/fr2.wav"/>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/if-u-know-ext-dial.wav"/>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/fr3.wav"/>
        </match>
      </input>
    </macro>



    <macro name="top-menu" pause="250">
      <input pattern="(.*)">
        <match>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/if-u-know-ext-dial.wav"/>
          <action function="play-file"
          data="/usr/local/freeswitch/sounds/fr3.wav"/>
        </match>
      </input>
    </macro>



>> B: Right and that is the fix for this.  If you have the sleep's in your phrase macro's remove them and use the pause= param... you shouldn't have any problems.

Still seeing multiple issues logged during ivr process for
mis-interpreted DTMF.  Here's today's list from our production server.

2009-03-27 06:38:59 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input
'1100'
2009-03-27 07:20:33 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 07:20:41 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 08:33:25 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 09:41:14 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input
'1101'
2009-03-27 09:41:19 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '55'
2009-03-27 09:41:33 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '015'
2009-03-27 10:13:15 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 10:13:22 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 10:13:50 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 10:13:59 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 10:14:11 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input
'0000'
2009-03-27 10:56:00 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 10:57:44 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 10:57:57 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 10:58:09 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 10:59:06 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 11:58:35 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '028'
2009-03-27 11:59:27 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '050'
2009-03-27 12:01:52 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 12:02:01 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '000'
2009-03-27 12:02:41 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'
2009-03-27 12:02:53 [DEBUG] switch_ivr_menu.c:548
switch_ivr_menu_execute() IVR menu 'main_ivr' caught invalid input '006'


Any other debug I can capture to assist?

Thanks, Chris.




More information about the FreeSWITCH-users mailing list