语音修改命令

修改可用语音命令的列表。

标识符: speech_modify_commands_in_grammar

属性

  • 修改: 这使用户能够添加或删除命令。
    • 可能的值:add_commands 、remove_commands、remove_all_commands
    • 必需: 是
    • 默认值: 空
  • reset_before: 删除特定插槽中的所有命令。
    • 可能的值: true、false
    • 必需: 否
    • 默认值: False
  • 槽: 命令的位置
    • 可能的值:wf_editor_slot
    • 必需: 否
    • 默认值: wf_editor_slot
  • 语法: 应该使用的语法。
    • 可能的值:xGuide
    • 必需: 否
    • 默认值: 空

元素

  • 命令: 包含要添加或删除的命令元素的列表。
    • 默认值: 空

命令属性

  • 名字: 定义语音值。
    • 可能的值: 发短信
    • 必需: 是
    • 默认值: 空
  • 描述: 显示有关属性的信息。
    • 可能的值: 发短信
    • 必需: 否
    • 默认值: 空

例子

添加命令

将两个命令添加到允许的语音命令列表中:

<speech_modify_commands_in_grammar id=“speech_add_commands”>
    <参数名称=“语法”>xGuide</param>
    <参数名称=“插槽”>wf_editor_slot</参数>
    <参数名称=“修改”>add_commands</参数>
    <列表名称=“命令” listType=“未命名”>
        <列表名称=“登录” listType=“NAMED”>
            <参数名称=”name“>LOGIN</param>
            <param name=”description“>Login</param>
        </list>
        <list name=”logout“ listType=”NAMED“>
            <param name=”name“>LOGOUT</param>
            <param name=”description“>Logout</param>
         </list>
     </list>
     <param name=”reset_before“ type=”bool“>false</param>
</speech_modify_commands_in_grammar>

使用 JavaScript 生成命令

<speech_modify_commands_in_grammar id=“speech_add_commands”>
    <参数名称=“语法”>xGuide</param>
    <参数名称=“插槽”>wf_editor_slot</参数>
    <参数名称=“修改”>add_commands</参数名称>
    <参数名称=“命令”><![CDATA[?{
        var cmds = [];
        VAR I;
        cmds.push({ 'name': 1 + “ 标签”, 'description': '[1-50] 标签'});
        for(i = 2; i <= 50; i++){
            cmds.push({ 'name': i + “ 标签”, 'description': '[1-50] 标签'});
            
        }
        cmds
    }?]]></param>
    <参数名称=“reset_before”类型=“bool”>false</param>
</speech_modify_commands_in_grammar>



删除命令

从当前自定义命令中删除一个命令:

<speech_modify_commands_in_grammar id=“remove_save_selection”>
    <param name=“slot”>wf_editor_slot</param>
    <param name=“commands”>Logout</param>
    <param name=“modification”>remove_commands</param>
    <param name=“reset_before” type=“bool”>false</param>
</speech_modify_commands_in_grammar>

删除所有自定义命令

<speech_modify_commands_in_grammar id=“add_save_selection”>
    <参数名称=“修改”>remove_all_commands</参数>
</speech_modify_commands_in_grammar>

语音修改语法规则

此操作允许用户激活和停用语法中的特定插槽。

标识符: speech_modify_rules_in_grammar

属性

  • 修改: 语法槽的修改类型。
  • 可能的值: ACTIVATE、ACTIVATE_ALL、DEACTIVATE DEACTIVATE_ALL
  • 必需: 是
  • 默认值: 空

元素

  • rules: 包含可激活或停用的规则元素列表。
  • 默认值: 空

Rules 属性

  • name: 定义应激活或停用的语法槽。
    • 必需: 是
    • 默认值: 空
  • description: 显示该插槽的“显示命令”屏幕中显示的信息。
    • 必需: 否
    • 默认值: 空

例子

禁用所有语法槽。将不再识别任何语音命令。

<speech_modify_rules_in_grammar id=“deactivate_all” 修改=“DEACTIVATE_ALL”/>

激活语法槽并将其描述添加到“显示命令”窗口。

<speech_modify_rules_in_grammar id=“remove_login_command” modification=“ACTIVATE”>
    <rules>
        <rule name=“wf_editor_slot” description=“选择 <1 到 10>”/>
    </rules>
</speech_modify_rules_in_grammar>

语音单词过滤器

它允许您控制将哪些语音命令传递到处理逻辑。

标识符: speech_word_filter

元素

  • words: 包含可添加或删除的语音命令列表。
  • regex_words: 包含可以添加或删除的正则表达式语音命令。

参数属性

  • action: 定义当前语音筛选器列表的修改方式。可能的值: ADD、REPLACE、REMOVE、RESET
  • 必需: 是
  • 默认值: 空

将一些命令添加到筛选的语音命令列表中。

<speech_word_filter id=“speech_actions”>
    <参数名称=“操作”>ADD</param>

    <列表名称=“words” listType=“未命名”>
       <elem>命令</elem>
    </list>

    <list name=“regex_words” listType=“UNNAMED”>
       <elem>start .*</elem>
    </list>
</speech_word_filter>

语音词映射

控制语音输入的映射方式。

标识符: speech_word_mapping

参数属性

  • action: 定义语音值。
    • 可能的值: ADD
    • 必需: 是
    • 默认值: 空
  • input: 应映射的输入。
    • 可能的值: 文本
    • 必需: 是
    • 默认值: 空
  • output: 从映射的输入生成的结果。
    • 可能的值: 发短信
    • 必需: 是
    • 默认值: 空
  • is_regex: 是否指定了正则表达式。
    • 可能的值: True、False
    • 必需: 否
    • 默认值: False
  • sub_mapping: 单个整数作为字符串参数或一组整数。使用正则表达式将匹配的组映射到输出时,这是必需的。
    • 可能的值: 1
    • 必需: 否
    • 默认值: 空

将两个命令添加到允许的语音命令中。这两个命令在“显示命令”窗口中应具有相同的描述。

<speech_word_mapping id=“speech_actions”>
    <参数名称=“操作”>添加</参数>
    <参数名称=“输入”>输入</参数>
    <参数名称=“输出”>输出</参数>
    <参数名称=“is_regex”>true</参数>
</speech_word_mapping>

使用正则表达式的完整示例

在此示例中,添加了带有动态数字的语音命令“Zoom Level X”,如下所示:

<speech_modify_commands_in_grammar id=“speech_add_commands”>
    <参数名称=“语法”>xGuide</参数>
    <参数名称=“插槽”>wf_editor_slot</参数>
    <参数名称=“修改”>add_commands</参数名称>
    <参数名称=“命令”><![CDATA[?{
                    var cmds = [];
                    VAR I;
                    for(i = 1; i <= 5; i++){
                        cmds.push({ 'name': “ANDRRES_zoom_level ” + i, 'description': 'ANDRRES_zoom_level [1-5]'});
                    }
                    cmds
            }?]]></param>
    <参数名称=“reset_before”type=“bool”>false</param>
</speech_modify_commands_in_grammar>

对于“ANDRRES_zoom_level”,我们使用的是来自 Frontline Workplace 的资源字符串,该字符串将根据用户语言自动翻译。在此规则中,我们要对语音命令做出反应。但是,我们总是希望将其与相同的命令进行比较,而不是与命令的翻译进行比较。因此,该 speech_word_mapping 操作用于将转换后的命令映射到我们将在规则中使用的命令。

<speech_word_mapping id=“zoom_level_mapping_action_add”>
    <参数名称=“操作”>添加</参数>
    <参数名称=“输入”>ANDRRES_zoom_level ([1-5])</参数>
    <参数名称=“输出”>缩放级别 $1</参数>
    <参数名称=“is_regex”>true</参数>
    <参数名称=“sub_mapping”>1</参数>
</speech_word_mapping>