demo-ivr.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <include>
  2. <macro name="demo_ivr_count">
  3. <input pattern="^(\d+)$">
  4. <match>
  5. <action function="play-file" data="voicemail/vm-you_have.wav"/>
  6. <action function="say" data="$1" method="pronounced" type="name_spelled"/>
  7. <action function="play-file" data="voicemail/vm-messages.wav"/>
  8. </match>
  9. </input>
  10. </macro>
  11. <macro name="demo_ivr_main_menu" pause="100"> <!-- See conf/autoload_config/ivr.conf.xml for an example on how to use this macro in an IVR -->
  12. <input pattern="(.*)">
  13. <match>
  14. <!-- string together several existing sound files to create one long greeting -->
  15. <action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
  16. <action function="play-file" data="ivr/ivr-this_ivr_will_let_you_test_features.wav"/>
  17. <action function="play-file" data="ivr/ivr-you_may_exit_by_hanging_up.wav"/>
  18. <!-- note that you can do more than just play files, e.g. have pauses and do TTS -->
  19. <!-- Menu option 1: Call FreeSWITCH conference-->
  20. <action function="play-file" data="ivr/ivr-enter_ext_pound.wav"/>
  21. <action function="play-file" data="silence_stream://1500"/>
  22. <action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
  23. <action function="play-file" data="ivr/ivr-please.wav"/>
  24. <action function="play-file" data="voicemail/vm-press.wav"/>
  25. <action function="play-file" data="digits/1.wav"/>
  26. <!-- Menu option 2: Do FreeSWITCH echo test -->
  27. <action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
  28. <action function="play-file" data="ivr/ivr-please.wav"/>
  29. <action function="play-file" data="voicemail/vm-press.wav"/>
  30. <action function="play-file" data="digits/2.wav"/>
  31. <!-- Menu option 3: Listen to Music on Hold -->
  32. <action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
  33. <action function="play-file" data="ivr/ivr-please.wav"/>
  34. <action function="play-file" data="voicemail/vm-press.wav"/>
  35. <action function="play-file" data="digits/3.wav"/>
  36. <!-- Menu option 4: Register for ClueCon -->
  37. <action function="play-file" data="ivr/ivr-register_for_cluecon.wav"/>
  38. <action function="play-file" data="digits/4.wav"/>
  39. <!-- Menu option 5: Listen to screaming monkeys -->
  40. <action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
  41. <action function="play-file" data="ivr/ivr-please.wav"/>
  42. <action function="play-file" data="voicemail/vm-press.wav"/>
  43. <action function="play-file" data="digits/5.wav"/>
  44. <!-- Menu option 6: Hear a sample submenu -->
  45. <action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
  46. <action function="play-file" data="ivr/ivr-please.wav"/>
  47. <action function="play-file" data="voicemail/vm-press.wav"/>
  48. <action function="play-file" data="digits/6.wav"/>
  49. <!-- Menu option 9: Repeat these options -->
  50. <action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
  51. <action function="play-file" data="ivr/ivr-please.wav"/>
  52. <action function="play-file" data="voicemail/vm-press.wav"/>
  53. <action function="play-file" data="digits/9.wav"/>
  54. <action function="play-file" data="silence_stream://2000"/>
  55. </match>
  56. </input>
  57. </macro>
  58. <!-- The following macro is the same as demo_ivr_main_menu except it is the "short" version -->
  59. <!-- The short version has all the options but not the initial greeting -->
  60. <macro name="demo_ivr_main_menu_short" pause="100">
  61. <input pattern="(.*)">
  62. <match>
  63. <!-- Menu option 1: Call FreeSWITCH conference-->
  64. <action function="play-file" data="silence_stream://1000"/>
  65. <action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
  66. <action function="play-file" data="ivr/ivr-please.wav"/>
  67. <action function="play-file" data="voicemail/vm-press.wav"/>
  68. <action function="play-file" data="digits/1.wav"/>
  69. <!-- Menu option 2: Do FreeSWITCH echo test -->
  70. <action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
  71. <action function="play-file" data="ivr/ivr-please.wav"/>
  72. <action function="play-file" data="voicemail/vm-press.wav"/>
  73. <action function="play-file" data="digits/2.wav"/>
  74. <!-- Menu option 3: Listen to Music on Hold -->
  75. <action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
  76. <action function="play-file" data="ivr/ivr-please.wav"/>
  77. <action function="play-file" data="voicemail/vm-press.wav"/>
  78. <action function="play-file" data="digits/3.wav"/>
  79. <!-- Menu option 4: Hear a sample submenu -->
  80. <action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
  81. <action function="play-file" data="ivr/ivr-please.wav"/>
  82. <action function="play-file" data="voicemail/vm-press.wav"/>
  83. <action function="play-file" data="digits/4.wav"/>
  84. <!-- Menu option 5: Listen to screaming monkeys -->
  85. <action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
  86. <action function="play-file" data="ivr/ivr-please.wav"/>
  87. <action function="play-file" data="voicemail/vm-press.wav"/>
  88. <action function="play-file" data="digits/5.wav"/>
  89. <!-- Menu option 9: Repeat these options -->
  90. <action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
  91. <action function="play-file" data="ivr/ivr-please.wav"/>
  92. <action function="play-file" data="voicemail/vm-press.wav"/>
  93. <action function="play-file" data="digits/9.wav"/>
  94. <action function="play-file" data="silence_stream://2000"/>
  95. </match>
  96. </input>
  97. </macro>
  98. <!-- The following macro is the "long" greeting for the demo_ivr_sub_menu -->
  99. <macro name="demo_ivr_sub_menu">
  100. <input pattern="(.*)">
  101. <match>
  102. <action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
  103. <action function="play-file" data="ivr/ivr-sample_submenu.wav"/>
  104. <!-- Menu option *: Return to top menu -->
  105. <action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
  106. <action function="play-file" data="ivr/ivr-please.wav"/>
  107. <action function="play-file" data="voicemail/vm-press.wav"/>
  108. <action function="play-file" data="digits/star.wav"/>
  109. </match>
  110. </input>
  111. </macro>
  112. <!-- The following macro is the same as demo_ivr_sub_menu except it is the "short" version -->
  113. <!-- The short version has all the options but not the initial greeting -->
  114. <macro name="demo_ivr_sub_menu_short">
  115. <input pattern="(.*)">
  116. <match>
  117. <!-- Menu option *: Return to top menu -->
  118. <action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
  119. <action function="play-file" data="ivr/ivr-please.wav"/>
  120. <action function="play-file" data="voicemail/vm-press.wav"/>
  121. <action function="play-file" data="digits/star.wav"/>
  122. </match>
  123. </input>
  124. </macro>
  125. </include>
  126. <!--
  127. For Emacs:
  128. Local Variables:
  129. mode:xml
  130. indent-tabs-mode:nil
  131. tab-width:2
  132. c-basic-offset:2
  133. End:
  134. For VIM:
  135. vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
  136. -->