public static void OpenOrClose(string proc) { if (proc.StartsWith("abrir")) { proc = proc.Replace("abrir", ""); // remove o comando proc = proc.Trim(); // remove espaços m branco Speaker.SpeakOpenningProcess(proc); switch (proc) // verificando o argumento { case "bloco de notas": Process.Start("notepad"); break; case "prompt de comando": Process.Start("cmd"); break; case "windows media player": Process.Start("wmplayer"); break; case "gerenciador de tarefas": Process.Start("taskmgr"); break; case "minhas pastas": Process.Start("explorer"); break; case "calculadora": Process.Start("calc.exe"); break; case "mapa de caracteres": Process.Start("charmap"); break; case "limpeza de disco": Process.Start("cleanmgr"); break; case "gerenciamento de cores": Process.Start("colorcpl"); break; case "serviços de componente": Process.Start("comexp.msc"); break; case "gerenciamento de computador": Process.Start("compmgmt.msc"); break; case "definir programas padrão": Process.Start("ComputerDefaults"); break; case "painel de controle": Process.Start("control.exe"); break; case "otimizador de texto": Process.Start("cttune.exe"); break; case "calibragem de cores": Process.Start("dccw.exe"); break; case "desfragmentador de disco": Process.Start("dfrgui.exe"); break; case "adicionar um novo dispositivo": Process.Start("DevicePairingWizard"); break; case "gerenciador de dispositivos": Process.Start("devmgmt.msc"); break; case "discagem telefônica": Process.Start("dialer.exe"); break; case "gerenciamento de disco": Process.Start("diskmgmt.msc"); break; } } else if (proc.StartsWith("fechar")) { proc = proc.Replace("fechar", ""); proc = proc.Trim(); switch (proc) { case "bloco de notas": CloseProcess("notepad", proc); break; case "windows media player":; CloseProcess("wmplayer", proc); break; case "gerenciador de tarefas": CloseProcess("taskmgr", proc); break; case "calculadora": CloseProcess("calc", proc); break; } } }
// Método do evento do reconhecimento private void reconhecido(object s, SpeechRecognizedEventArgs e) // passamos a classe EventArgs SpeechRecognized { string speech = e.Result.Text; // criamos uma variável que contêm a palavra ou frase reconhecida double confidence = e.Result.Confidence; // criamos uma variável para a confiança if (confidence > 0.4) // pegar o resultado da confiança, se for maior que 35% faz algo { label1.Text = "Reconhecido:\n" + speech; // mostrar o que foi reconhecido switch (e.Result.Grammar.Name) // vamos usar o nome da gramática para executar as ações { case "Chats": // caso for uma conversa Conversation.SaySomethingFor(speech); // vamos usar a classe que faz algo sobre break; case "Dumme": if (DummeIn.InStartingConversation.Any(x => x == speech)) { int randIndex = rnd.Next(0, DummeOut.OutStartingConversation.Count); Speaker.Speak(DummeOut.OutStartingConversation[randIndex]); } else if (DummeIn.InQuestionForDumme.Any(x => x == speech)) { int randIndex = rnd.Next(0, DummeOut.OutQuestionForDumme.Count); Speaker.Speak(DummeOut.OutQuestionForDumme[randIndex]); } else if (DummeIn.InDoWork.Any(x => x == speech)) { int randIndex = rnd.Next(0, DummeOut.OutDoWork.Count); Speaker.Speak(DummeOut.OutDoWork[randIndex]); } else if (DummeIn.InDummeStatus.Any(x => x == speech)) { int randIndex = rnd.Next(0, DummeOut.OutDummeStatus.Count); Speaker.Speak(DummeOut.OutDummeStatus[randIndex]); } else if (DummeIn.InJarvis.Any(x => x == speech)) { int randIndex = rnd.Next(0, DummeOut.OutJarvis.Count); Speaker.Speak(DummeOut.OutJarvis[randIndex]); } break; case "Commands": switch (speech) { case "quais são as notícias": newsFromG1 = G1FeedNews.GetNews(); Speaker.Speak("Já carreguei as notícias"); break; case "próxima notícia": Speaker.Speak("Título da notícia.. " + newsFromG1[newsIndex].Title + " .. " + newsFromG1[newsIndex].Text); newsIndex++; break; } if (speech == "até mais jarvis") { ExitNow(); // chama oo método } else if (speech == "minimizar a janela principal") { MinimizeWindow(); // minimizar } else if (speech == "mostrar janela principal") { BackWindowToNormal(); // mostrar janela principal } else { Commands.Execute(speech); } break; case "Jokes": break; case "Calculations": Calculations.DoCalculation(speech); break; case "Process": ProcessControl.OpenOrClose(speech); break; case "Sites": // caso sites string[] replaces = { "abrir", "iniciar", "carregar", "ir para o" }; string site = ""; for (int i = 0; i < replaces.Length; i++) { if (speech.StartsWith(replaces[i])) // verifica se string começa com um destes, se sim remove ele. { site = speech.Replace(replaces[i], ""); } } site = site.Trim(); foreach (KeyValuePair <string, string> entry in dictCmdSites) { if (entry.Key == site) { Speaker.SpeakOpenningProcess(site); Process.Start(entry.Value); } } break; case "Control": motionDetection = new MotionDetection(); motionDetection.Show(); break; case "Search": string[] parts = speech.Split(' '); string text = ""; for (int k = 0; k < parts.Length; k++) { if (System.Text.RegularExpressions.Regex.IsMatch(parts[k], "[A-Z]")) { text += parts[k] + " "; } } if (speech.ToLower().EndsWith("youtube")) { if (speech.Contains(" ")) { speech = speech.Replace(" ", "+"); } Speaker.SpeakRand("certo pesquisando " + text + " no youtube", "tudo bem", "okei, buscando por " + text); loadPage(); webLoader.Start("https://www.youtube.com/results?search_query=" + text); } else if (speech.ToLower().EndsWith("google")) { if (speech.Contains(" ")) { speech = speech.Replace(" ", "+"); } Speaker.SpeakRand("certo pesquisando " + text + " no google", "tudo bem", "okei, buscando por " + text, "okei, buscando por " + text + " no google"); loadPage(); webLoader.Start("http://images.google.com/images?q=" + text + "&start=900&filter=1"); } break; case "QA": foreach (var t in commandsForQA) { if (speech.StartsWith(t)) { speech = speech.Replace(t, ""); } } Speaker.Speak(AIML.GetOutputChat(speech)); break; default: // caso padrão Speaker.Speak(AIML.GetOutputChat(speech)); // pegar resposta break; } } }
private void pictureBox5_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("vlc media player"); Process.Start(@"C:\Program Files\VideoLAN\VLC\vlc.exe"); }
private void pictureBox6_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("windows media player"); Process.Start("wmplayer"); }
private void pictureBox4_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("media player classic"); Process.Start(@"C:\Program Files\MPC-HC\mpc-hc.exe"); }
private void pictureBox3_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("facebook"); Process.Start("http://www.facebook.com"); }
private void pictureBox2_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("youtube"); Process.Start("http://www.youtube.com"); }
private void AppsDialog_Load(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("janela de sites e aplicativos"); }
private void pictureBox1_Click(object sender, EventArgs e) { Speaker.SpeakOpenningProcess("google"); Process.Start("http://www.google.com"); }