Как я могу заставить Cortana использовать мои новые или обновленные файлы определения голосовых команд?
Я использую следующий код для установки моего файла VCD ("грамматика") в Cortana:
Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("VoiceCommandDefinitions.xml")
.then(Windows.ApplicationModel.VoiceCommands.VoiceCommandDefinitionManager.installCommandDefinitionsFromStorageFileAsync)
.then(() => Debug.writeln("Successfully installed VCD file");
Сообщается об успехе, но когда я пишу запрос в Cortana, изменения, которые я внес в мой файл VCD, не отражаются в Cortana.
Как я могу заставить Cortana фактически использовать мою обновленную грамматику?
1 ответ
Кортана обновит свой кэш грамматик только по окончании голосового взаимодействия. Нажмите на кнопку микрофона Кортаны, а затем немедленно отклоните поле Кортаны. Вы должны увидеть изменения грамматики в течение нескольких секунд.
Установленные грамматики хранятся в %LOCALAPPDATA%\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\LocalState\Grammars\VoiceCommands.Components.0409.cfg
, Живые (т.е. кэшированные) грамматики хранятся в %LOCALAPPDATA%\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\LocalState\Grammars\ReadOnlyGrammars\VoiceCommands.Components.0409.cfg
, Эта копия обновляется каждый раз, когда пользователь выполняет голосовое взаимодействие с Cortana.
(Нет источника, извините. Эта информация основана на обмене электронной почтой с разработчиками Cortana в Microsoft.)