簡體   English   中英

通過安陽語音識別庫輸入多個參數(* val)的最佳/建議方法是什么?

[英]What is the best / suggested method to input more than 1 parameter (*val) through Annyang speech recognition library?

Annyang命令使用* val向回調函數輸入值。 如果要輸入多個項目怎么辦?

例如,我想根據用戶輸入來更新表單。 所以我可以有一個命令

set Name *val

那么val將包含我可以分配給該字段的Name值。 但是,如果我的表單有很多字段,那么為所有字段編寫這樣的命令可能會很乏味。 相反,我本來可以

set *FieldName *FieldVal

此命令將返回兩個參數,而不是FieldName和FieldVal。 如果FieldName是頁面上可用字段的有效名稱,則可以使用FieldVal更新該值,或者忽略該命令。

實現此目的的一種方法是,當然解析val以首先從類似以下命令的字段中獲取FieldName,然后獲取FieldVal

set *val

但我認為這不會總會帶來干凈的解決方案。

有建議的方法來實現這一目標嗎?

你要找的是不是“圖示”運算符( * ),但“命名變量”操作符( : )。

您的命令將如下所示

var commands = {
    'set :FormId with :Value':setForms,
}
annyang.addCommands(commands);

function setForm(formId, value){
    if(isValidForm(formId)){
        forms[formId].value = value;
    }
}

現在說“使用bar設置foo”會將Forms [“ foo”]的值設置為“ bar”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM