Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Created by StackOverload
- * Date: 12/9/2013
- * Time: 7:55 PM
- * Last updated: 12/9/2013 18:49
- * Version: 0.1
- */
- using System;
- using System.Collections.Generic;
- using System.Drawing;
- using System.IO;
- using System.Windows.Forms;
- using System.Speech.Recognition;
- using System.Speech.Synthesis;
- namespace Jarvis
- {
- public partial class MainForm : Form
- {
- SpeechRecognitionEngine listener = new SpeechRecognitionEngine();
- SpeechSynthesizer JARVIS = new SpeechSynthesizer();
- Random rnd = new Random();
- //String variables
- string userFirst = "Jacob";
- string userLast = "Cross";
- string userTitle = "Mr";
- string userGender = "Sir";
- //Integer variables
- int rndGreet;
- int rndLeave;
- public MainForm()
- {
- InitializeComponent();
- }
- void MainFormLoad(object sender, EventArgs e)
- {
- listener.SetInputToDefaultAudioDevice();
- listener.LoadGrammar(new DictationGrammar());
- listener.LoadGrammar(new Grammar(new GrammarBuilder(new Choices(File.ReadAllLines(@"C:\JARVIS\Grammar\Commands.txt")))));
- listener.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(listener_SpeechRecognized);
- listener.RecognizeAsync(RecognizeMode.Multiple);
- }
- //Voice reconized event void
- void listener_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
- {
- string s = e.Result.Text;
- switch(s)
- {
- //Greetings
- case "Hello Jarvis":
- case "Hello":
- case "Hey Jarvis":
- case "Hey":
- case "Hi":
- case "Hi Jarvis":
- Greet();
- break;
- //Closing
- case "Goodbye Jarvis":
- case "Goodbye":
- case "Close Jarvis":
- leave();
- break;
- }
- }
- void Greet()
- {
- //Choose random greeting
- rndGreet = rnd.Next(1, 8);
- switch(rndGreet)
- {
- case 1:
- JARVIS.Speak("Hello, " + userGender);
- break;
- case 2:
- JARVIS.Speak("Hello, " + userTitle + " " + userLast);
- break;
- case 3:
- JARVIS.Speak("Hello, " + userFirst);
- break;
- case 4:
- JARVIS.Speak("Welcome, " + userGender);
- break;
- case 5:
- JARVIS.Speak("Welcome, " + userTitle + " " + userLast);
- break;
- case 6:
- JARVIS.Speak("Welcome, " + userFirst);
- break;
- case 7:
- JARVIS.Speak("Welcome back");
- break;
- case 8:
- JARVIS.Speak("Good to see you");
- break;
- }
- }
- void leave()
- {
- rndLeave = rnd.Next(1, 6);
- switch(rndLeave)
- {
- case 1:
- JARVIS.Speak("Goodbye, " + userGender);
- break;
- case 2:
- JARVIS.Speak("Good day, " + userGender);
- break;
- case 3:
- JARVIS.Speak("Goodbye, " + userTitle + " " + userLast);
- break;
- case 4:
- JARVIS.Speak("See you later, " + userFirst);
- break;
- case 5:
- JARVIS.Speak("Good day, " + userFirst);
- break;
- case 6:
- JARVIS.Speak("Goodbye");
- break;
- }
- Close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement