public OhMyDispatch(OMD.omd.utils.IniFile iniFile) { isRecording = false; iniConfiguration = iniFile; language = iniFile.Read("language", "RECOGNITION"); OMD.Main.Logger.Trace("Config of language: " + language); string startRecordingKeyS = iniFile.Read("startReco", "KEYS"); OMD.Main.Logger.Trace("Config of key start: " + startRecordingKeyS); startRecordingKey = ConvertStringToKeys(startRecordingKeyS); string startRecordingModifierS = iniFile.Read("startModifier", "KEYS"); OMD.Main.Logger.Trace("Config of modifer start: " + startRecordingModifierS); startRecordingModifier = ConvertStringToKeys(startRecordingModifierS); string stopRecordingKeyS = iniFile.Read("stopReco", "KEYS"); OMD.Main.Logger.Trace("Config of key stop: " + stopRecordingKeyS); stopRecordingKey = ConvertStringToKeys(stopRecordingKeyS); string stopRecordingModifierS = iniFile.Read("stopModifier", "KEYS"); OMD.Main.Logger.Trace("Config of modifer stop: " + stopRecordingModifierS); stopRecordingModifier = ConvertStringToKeys(stopRecordingModifierS); OMD.omd.loader.ConfigurationLoader configurationLoader = new OMD.omd.loader.ConfigurationLoader(); commandsPerInput = configurationLoader.GetInputs(); OMD.omd.loader.ModuleLoader moduleLoader = new OMD.omd.loader.ModuleLoader(iniFile); processors = moduleLoader.GetProcessors(); speechRecognitionEngine = InitSpeechRecognitionEngine(); }
public ConfigurationLoader() { commandsPerInput = new CommandsPerInput(); OMD.Main.Logger.Info("Start scanning the directory for config..."); string[] configPaths = Directory.GetFiles(configPath, configPattern); for (int i = 0; i < configPaths.Length; i++) { string currentConfigPath = configPaths[i]; OMD.Main.Logger.Info("Read config file: " + currentConfigPath); XmlSerializer serializer = new XmlSerializer(typeof(Configuration)); using (FileStream fileStream = new FileStream(currentConfigPath, FileMode.Open)) { Configuration config = (Configuration)serializer.Deserialize(fileStream); foreach (Input input in config.inputs) { commandsPerInput.AddInput(input.phrase, input.actions); } } } OMD.Main.Logger.Info("Number of inputs in total: " + commandsPerInput.NumberOfInputs()); }