<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi Christopher,<br>
    <br>
    The questions are cleared to me now. Many thanks for your
    explanations!<br>
    <br>
    Best regards,<br>
    <br>
    Xing<br>
    <br>
    <br>
    On 16/11/11 15:52, Christopher Rienzo wrote:
    <blockquote
cite="mid:CAD-qRkhsPQYDHVS7xSq+hGtBKSsWf=_N1g6hcxDvFAZ9pSNJ1w@mail.gmail.com"
      type="cite"><br>
      Responses inline<br>
      <br>
      <br>
      <div class="gmail_quote">
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> Now it works in my ESL
            app though I am just able to do one dialogue ( I need to add
            the event catching for furthur dialgoues).<br>
            <br>
            I have a couple of questions here:<br>
            <br>
            &nbsp; 1. In the first try, my Nuance server was able to be
            accessed somehow (FS says the MRCP is not responding in
            5000ms, <br>
            &nbsp;&nbsp;&nbsp; something like that), then FS says: [WARNING]
            rtsp_client.c:386 () Failed to Connect to RTSP Server <a
              moz-do-not-send="true" href="http://99.185.85.31:554"
              target="_blank"><font color="red"><b>MailScanner warning: numerical links are often malicious:</b></font> 99.185.85.31:554</a>,<br>
            &nbsp;&nbsp;&nbsp; later FS says: <br>
            &nbsp;&nbsp;&nbsp;&nbsp; [ERR] mod_unimrcp.c:1860 (TTS-6) SYNTHESIZER channel
            error!<br>
            &nbsp;&nbsp;&nbsp;&nbsp; [ERR] switch_ivr_play_say.c:2439 Invalid TTS module!&nbsp; <br>
            &nbsp;&nbsp;&nbsp; <br>
            &nbsp;&nbsp; The SYNTHESIZER channel error and Invalid TTS module
            error are obvious.<br>
            <br>
            &nbsp;&nbsp;&nbsp; What I don't understand is why it went to this stange
            address: <a moz-do-not-send="true"
              href="http://99.185.85.31:554" target="_blank"><font color="red"><b>MailScanner warning: numerical links are often malicious:</b></font> 99.185.85.31:554</a>?<br>
          </div>
        </blockquote>
        <div><br>
          check your unimrcp configuration.&nbsp; Make sure the default TTS
          and ASR profiles are set to actual servers.<br>
          &nbsp;</div>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> &nbsp; 2. I specified TTS
            engine in play_and_detect_speech as<br>
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "say:unimrcp:nuance5-mrcp1-1: the text to speak"<br>
            &nbsp;&nbsp;&nbsp;&nbsp; It works though I didn't specify the TTS voice.<br>
            <br>
            &nbsp;&nbsp;&nbsp;&nbsp; How do I specify the TTS voice? In the mrcp profile
            (how?)? or something like:<br>
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "say:unimrcp:nuance5-mrcp1-1:Serena: the text to
            speak" (this seems not right.)<br>
          </div>
        </blockquote>
        <div><br>
          That won't work.&nbsp; Set the tts_engine variable as I explained
          previously, or use say:unimrcp:voice:text to speak with the
          desired voice and the correct default TTS profile defined in
          unimrcp.conf.xml.&nbsp; This is a limitation of the say: notation.&nbsp;
          Alternatively, the voice can be defined with the tts_voice
          channel variable.<br>
          <br>
          &nbsp;</div>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> &nbsp; 3. The barge-in works
            well, thanks!. Is the barge-in configurable? In some
            scenarios, we might not allow barge-in.<br>
          </div>
        </blockquote>
        <div><br>
          If you don't want to barge in, just do "playback (or speak)"
          first, then "play_and_detect_speech" with a silence prompt.<br>
          &nbsp;</div>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> <br>
            &nbsp; 4. How could I get the text which has spoken to the user
            when barge-in occurs?<br>
            &nbsp;&nbsp;&nbsp;&nbsp; Or Could I get the time when barge-in occurs? If I know
            the barge-in time and rough totale time for the whole text<br>
            &nbsp;&nbsp;&nbsp;&nbsp; to be spoken I can figure out the spoken text by
            manually checking the recorded audio file later, which would
            be painful.<br>
          </div>
        </blockquote>
        <div><br>
          If this is necessary, you might want to use the lower-level
          functions instead to watch for the begin-speaking event.<br>
          &nbsp;</div>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> <br>
            &nbsp; 5. when I use "speak" and "detect_speech" apps in ESL, I
            can catch event: DETECTED_SPEECH and speech-type:
            begin-speaking<br>
            &nbsp;&nbsp;&nbsp;&nbsp; and "detected-speech", then I do the recognition
            results processing.<br>
            &nbsp;&nbsp;&nbsp;&nbsp; <br>
            &nbsp;&nbsp;&nbsp; The new app play_and_detect_speech seems not generate
            these events any more. The way that I can think of to get
            the results<br>
            &nbsp;&nbsp;&nbsp; is to catch event:CHANNEL_EXECUTE_COMPLETE then check if
            variable_current_application=play_and_detect_speech, then
            get<br>
            &nbsp;&nbsp;&nbsp; the results from variable_detect_speech_result.<br>
            <br>
            &nbsp;&nbsp;&nbsp; Is this the proper way to get the results in ESL app? Or
            will play_and_detect_speech later on be consistent with
            detect_speech <br>
            &nbsp;&nbsp;&nbsp; in term of ASR events?<br>
          </div>
        </blockquote>
        <div><br>
          play_and_detect_speech is a higher level abstraction to
          simplify things.&nbsp; If you want to have more control, go back to
          using the ESL events.&nbsp; Reading the code in mod_dptools and
          switch_ivr_async will give you hints about how to do it
          correctly.<br>
          &nbsp;</div>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div text="#000000" bgcolor="#FFFFFF"> <br>
            &nbsp; 6. I'd like to set start-input-timers=false in the initial
            request then start the recognition timers
            (start-input-timers=true)<br>
            &nbsp;&nbsp;&nbsp;&nbsp; after the TTS finishes.<br>
            &nbsp;&nbsp;&nbsp;&nbsp; How possibly could I do this?<br>
          </div>
        </blockquote>
        <div><br>
          This is automatically done in the&nbsp;
          switch_ivr_play_and_detect_speech() function.&nbsp; You just need
          to specify start-input-timers=false in the beginning.<br>
        </div>
      </div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
<a class="moz-txt-link-abbreviated" href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a>

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
<a class="moz-txt-link-freetext" href="http://www.cudatel.com">http://www.cudatel.com</a>

Official FreeSWITCH Sites
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://wiki.freeswitch.org">http://wiki.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.cluecon.com">http://www.cluecon.com</a>

FreeSWITCH-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a>
UNSUBSCRIBE:<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
</pre>
    </blockquote>
    <br>
  <br>
<hr>
<br>
<img src="cid:hw_uni_of_year.jpg" align=left 
alt="Scottish University of the Year 2011-12">
<font face="arial,helvetica">
&nbsp; <b>Heriot-Watt University is the Sunday Times<br> 
&nbsp; Scottish University of the Year 2011-2012</b>
</font>
<br><br>
<font face="arial,helvetica" size="-1">
&nbsp; Heriot-Watt University is a Scottish charity<br>
&nbsp; registered under charity number SC000278.
<br>
</font>

</body>
</html>