据我了解,<prompt>
元素的功能是定义要播放的提示音频,然后系统等待用户发声。我的印象来自VoiceXML 2.0 specification for prompts:
从概念上讲,提示会立即排队等待播放,因此解释将继续进行,直到用户需要提供输入为止。此时,将播放提示,系统等待用户输入。
此外,我了解到<block>
和<field>
之间的区别是:
<block>
是一个控制项,它是"not for gathering input",并且<field>
是一个输入项,其值为"gather[ed] from the user" 最后,我知道<prompt>
可以是<block>
和<field>
的直接子代。
我非常确定<prompt>
在<field>
内时会收集输入,但是当它在<block>
内时会发生什么,因为块是控制项目?
在<prompt>
中的<block>
不收集输入而仅播放音频的情况下,您为什么不将提示文本作为{{ 1}},省略了<block>
?
答案 0 :(得分:1)
没有区别。
1-是驱动输入过程的字段,而不是提示。在没有提示的情况下尝试。
2-如果您没有使用提示元素的任何其他功能,则没关系。
请注意,在您引用的文本中有一些重要的事情要实现。 “提示被即时排队”提示和类似的元素结构只是将音频排队。是的,如果有延迟,您通常会开始听到它们。但是,回放与元素是分开的。
关于为什么您可能要一个接一个地做,这可能只是开发风格或基于流程的逻辑。例如,在回放数据时,具有多个可以跳过以覆盖不同场景的块可能比复杂的字段/提示配置更干净。