locked
MSS2004's Prompt speech control not in 2007? RRS feed

  • Question

  •  

    I'm porting an application from SALT using MSS 2004 to using OCS 2007. 

     

    I want to play some "ear"con music between page transitions while the new page loads.   In MSS 2004 I used a Prompt that referred to a WAV file containing music, and Queued it, etc.

     

    Apparently, the 2007 Microsoft.Speech controls are missing a definition for the Prompt control.  Is there a new way to handle this in SALT in OCS2007?  We're not rewriting the app to managed code just yet.

     

    Thanks,

     

    Eric

     

    Tuesday, November 6, 2007 10:25 PM

Answers

  •  

    I can play a wav file by importing it into a prompts database and giving it an ID.  The transcription is music1.   So, if I add <pemlBig Smileiv>music1</pemlBig Smileiv> to a prompt it'll play the music wav.  Keep in mind, you should change the alignments - the auto-align doesn't label the entire sound file, just the end of it.

     

    Now, if I could figure out how to execute a QA control and have it complete immediately.  Time to review the SALT interpreter's execution algorithm.  Any solutions will be appreciated.

     

    Eric
    Thursday, November 15, 2007 6:38 PM
  •  

    I added a control named FetchAudioQA, and checked "Play Once" and "Async" and unchecked everything else.

    To make sure the Fetch audio played during multiple page loads (because we're validating account information server-side), I added some client-side script to the previous QA that was collecting an account number:

     

    FetchAudioQA.HasPlayed = false;

     

    If I unchecked "Play Once," the application the music kept looping and FetchAudioQA never released control to RunSpeech.

     

    The 1.1 SDK Help manual helped, using the index, see "RunSpeech, algorithm example" and "RunSpeech, scripting."

     

    In the previous message, it should read <pemlBig Smileiv>music1</pemlBig Smileiv>

     

    Eric

    Thursday, November 15, 2007 8:13 PM

All replies

  •  

    You should be able to use the QA control to do what you need.

     

    Was this app on a separate webserver? If so you could have just pointed Mss 2007 to the start page without making any app changes at all until you decide to rewrite it in managed code.

    Wednesday, November 7, 2007 1:12 AM
  •  

    I'm porting this app to run on OCS2007SS.  I can not install it on another web server, and the 2004 server is going away.

     

    The instructions in the documentation explain how to do upgrade a 2004 SALT application to run as a 2007 SALT application (open the project in VS2005, update the speech control references to use the 2.0 controls, etc.).

     

    The Prompt control doesn't exist in VS2005. 

     

    I can have a QA control play a message asynchronously, not waiting for an answer, and navigate to another aspx page?  I didn't look into using the QA control, because I figured it would want to stay in the current aspx page until the recognition has a resulting event.

     

     

     

     

    Friday, November 9, 2007 4:44 PM
  • If you don't assign any grammars it won't do recognition.
    Saturday, November 10, 2007 3:07 AM
  • I'm in the middle of some other tasks.  I'll get follow up on this one by EOW.  Thanks!

    Wednesday, November 14, 2007 8:26 PM
  •  

    Two issues:

    1. I used to be able to play a WAV file which had music in it.  The QA control doesn't support this is the same way the Prompt control did.  How do I play a WAV file now?
    2. I added a prompt instead of the sound file to the new QA control, and all I added was the prompt text.  It keeps looping on that step and doesn't post the page.  Is there some sort of client-side event handling I can use to avoid this?

    Thanks,

     

    Eric

    Thursday, November 15, 2007 3:25 PM
  •  

    I can play a wav file by importing it into a prompts database and giving it an ID.  The transcription is music1.   So, if I add <pemlBig Smileiv>music1</pemlBig Smileiv> to a prompt it'll play the music wav.  Keep in mind, you should change the alignments - the auto-align doesn't label the entire sound file, just the end of it.

     

    Now, if I could figure out how to execute a QA control and have it complete immediately.  Time to review the SALT interpreter's execution algorithm.  Any solutions will be appreciated.

     

    Eric
    Thursday, November 15, 2007 6:38 PM
  •  

    I added a control named FetchAudioQA, and checked "Play Once" and "Async" and unchecked everything else.

    To make sure the Fetch audio played during multiple page loads (because we're validating account information server-side), I added some client-side script to the previous QA that was collecting an account number:

     

    FetchAudioQA.HasPlayed = false;

     

    If I unchecked "Play Once," the application the music kept looping and FetchAudioQA never released control to RunSpeech.

     

    The 1.1 SDK Help manual helped, using the index, see "RunSpeech, algorithm example" and "RunSpeech, scripting."

     

    In the previous message, it should read <pemlBig Smileiv>music1</pemlBig Smileiv>

     

    Eric

    Thursday, November 15, 2007 8:13 PM
  • You can play a wave file without using prompt databases by using the the content tag.

    e.g. <content href="123.wav" />

    Friday, November 16, 2007 7:03 PM