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;
                }
            }
        }
Ejemplo n.º 2
0
        // 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");
 }