Dan, thank you for your answer. I have another question. <br>
<p class="MsoNormal">We are interested in the functionality where a free text can
be entered through TTY (or through free speech recognition). </p>
<p class="MsoNormal">For example, a user can be asked to describe the event. The
grammar for this description is not available, so we want to store all of the
typed ( or recognized) text, and/or a URL of the recorded speech <span style=""> </span>into the concept in a dialog manager. </p>
<p class="MsoNormal">We need to bypass the parser. I would need to make changes
to the RavenClaw to accommodate this, right?</p>
<p class="MsoNormal">Currently the user input from the TTY (or ASR) <span style=""> </span>is processed by the parser. </p>
<p class="MsoNormal"> The control flow is determined by the .pgm file. This entry
causes it to call process_parse when an output from the parser is available:</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">;; If we have a confidence annotated hypothesis, but<br>
;; no parse, call phoenix to parse it<br>
;; ---<br>
RULE: :confhyps & !:parses --> phoenix.phoenixparse<br>
IN: :confhyps :npow :pow :clip_info<br>
OUT: :total_numparses :parses :input_source<br>
LOG_OUT: :parses</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">So I plan to add another entry:</p>
<p class="MsoNormal"> ;; If we have a confidence annotated hypothesis, but<br>
;; no parse, call DM directly<br>
;; ---<br>
RULE: :confhyps & !:parses --> DM.process_raw<br>
IN: :confhyps :npow :pow :clip_info<br>
OUT:<br>
LOG_OUT:<br>
<br>
</p>
<p class="MsoNormal">Add process_raw() to </p>
<p class="MsoNormal">Libraries/RavenClaw/DMInterfaces/GalaxyInterfaceFunctions.h& implement in GalaxyInterface.cpp<br>
</p>
<p class="MsoNormal">process_raw() function will be called whenever an output
from the TTY (or ASR) is received. So, this output will go to both parser and
DialogManager.process_raw.<br>
process_raw() <span style=""> </span>assigns
the text to a concept (but only in the case when the concept is currently expected):<br>
For every expected concept as compiled by <span style="font-size: 10pt; font-family: "Courier New";">CDMCoreAgent::compileExpectationAgenda():<br>
</span>If a concept is a "raw speech" concept, <span style=""> </span>set its value to the raw text received in an <span style=""> </span>input frame <span style=""> </span>to process_raw <br>
I would have to add a type to a concept to indicate that it
allows "raw text" input.</p>
<p class="MsoNormal"><br>
Does this implementation plan make sense? </p>
<p class="MsoNormal">Could you please make any suggestions?</p>
<p class="MsoNormal">Jahanzeb must have done something similar because his
application can record user's input. Do you know how that was implemented?</p>
<p class="MsoNormal"> </p>
Thank you,<br>
Svetlana<br>
<br>
<br>
<br>