Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Video URL: https://www.youtube.com/watch?v=dXAl510Bf4U
- Hier ist der Teil nur für Wikipedia:
- case "was ist youtube":
- s.SpeakAsync("Ich suche mal schnell, hmm hier ich habe etwas gefunden das dich interessieren könnte");
- lbl_ans.Text = "Ich habe folgendes gefunden";
- WebClient client = new WebClient();
- using (Stream stream = client.OpenRead("http://de.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&explaintext=1&titles=YouTube"))
- using (StreamReader reader = new StreamReader(stream))
- {
- JsonSerializer ser = new JsonSerializer();
- Result result = ser.Deserialize<Result>(new JsonTextReader(reader));
- foreach (Page page in result.query.pages.Values)
- txt_info.Text = page.extract;
- s.SpeakAsync(txt_info.Text);
- }
- break;
- Und die Klassen:
- public class Result
- {
- public Query query { get; set; }
- }
- public class Query
- {
- public Dictionary<string, Page> pages { get; set;}
- }
- public class Page
- {
- public string extract { get; set;}
- }
- Und hier ist noch einmal der gesamte Code:
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using MaterialSkin;
- using MaterialSkin.Controls;
- using System.Speech.Synthesis;
- using System.Speech.Recognition;
- using System.Xml;
- using System.Web;
- using System.IO;
- using System.Net;
- using System.Text.RegularExpressions;
- using System.Windows.Forms.VisualStyles;
- using Newtonsoft.Json;
- namespace d3nce_voicerecognition
- {
- public partial class Form1 : MaterialForm
- {
- #region Deklaration der Engine
- SpeechRecognitionEngine h = new SpeechRecognitionEngine();
- SpeechSynthesizer s = new SpeechSynthesizer();
- #endregion
- #region Startup Configuration
- public Form1()
- {
- InitializeComponent();
- var materialSkinManager = MaterialSkinManager.Instance;
- materialSkinManager.AddFormToManage(this);
- materialSkinManager.Theme = MaterialSkinManager.Themes.LIGHT;
- materialSkinManager.ColorScheme = new ColorScheme(Primary.Red800, Primary.Red600, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE);
- }
- #endregion
- private void Form1_Load(object sender, EventArgs e)
- {
- lbl_time.Text = DateTime.Now.ToShortTimeString();
- lbl_date.Text = DateTime.Now.ToLongDateString();
- Choices commands = new Choices();
- commands.Add(new string[]{"hallo","wie geht es dir","wie spät ist es","welcher tag ist heute","youtube ist da","was ist youtube", "was ist youtube"});
- GrammarBuilder gbuilder = new GrammarBuilder();
- gbuilder.Append(commands);
- Grammar grammar = new Grammar(gbuilder);
- h.LoadGrammar(grammar);
- h.SetInputToDefaultAudioDevice();
- h.SpeechRecognized += recEngine_SpeechRecognized;
- h.RecognizeAsync(RecognizeMode.Multiple);
- s.SelectVoiceByHints(VoiceGender.Female,VoiceAge.Adult);
- s.SpeakAsync("Wie kann ich dir helfen");
- }
- void recEngine_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
- {
- lbl_quest.Text = e.Result.Text;
- switch (e.Result.Text)
- {
- #region hallo
- case "hallo":
- s.SpeakAsync("hallo dence");
- lbl_ans.Text = "hallo d3nce";
- break;
- #endregion
- #region wie geht es dir
- case "wie geht es dir":
- s.SpeakAsync("gut und dir");
- lbl_ans.Text = "gut und dir?";
- break;
- #endregion
- #region welcher tag ist heute
- case "welcher tag ist heute":
- s.SpeakAsync("heute ist der " + DateTime.Now.ToString("d"));
- lbl_ans.Text = "heute ist der " + DateTime.Now.ToString("d");
- break;
- #endregion
- #region wie spät ist es
- case "wie spät ist es":
- s.SpeakAsync("es ist " + DateTime.Now.ToString("HH:mm"));
- lbl_ans.Text = "es ist " + DateTime.Now.ToString("HH:mm") + "Uhr";
- break;
- #endregion
- #region youtube ist da
- case "youtube ist da":
- s.SpeakAsync("Wunderbar, Willkommen bei einem neuen Tutorial zum Thema Artificial Intelligence. Viel Spaß dabei");
- lbl_ans.Text = "Wunderbar, Willkommen bei einem…";
- break;
- #endregion
- #region Wikipedia
- case "was ist youtube":
- s.SpeakAsync("Ich suche mal schnell, hmm hier ich habe etwas gefunden das dich interessieren könnte");
- lbl_ans.Text = "Ich habe folgendes gefunden";
- WebClient client = new WebClient();
- using (Stream stream = client.OpenRead("http://de.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&explaintext=1&titles=YouTube"))
- using (StreamReader reader = new StreamReader(stream))
- {
- JsonSerializer ser = new JsonSerializer();
- Result result = ser.Deserialize<Result>(new JsonTextReader(reader));
- foreach (Page page in result.query.pages.Values)
- txt_info.Text = page.extract;
- s.SpeakAsync(txt_info.Text);
- }
- break;
- #endregion
- }
- }
- #region Methoden für Wikipedia
- public class Result
- {
- public Query query { get; set; }
- }
- public class Query
- {
- public Dictionary<string, Page> pages { get; set;}
- }
- public class Page
- {
- public string extract { get; set;}
- }
- #endregion
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement