private void queueMessage() { string currentMessage = ""; long wordCount; while (true) { if (voiceInput.Message != "" && voiceInput.Message != null) { currentMessage = voiceInput.Message; voiceInputClear.UpdateMessage(""); messageCount++; var wordArray = currentMessage.Split(" "); var timeStamp = DateTime.UtcNow; wordCount = 0; foreach (var item in wordArray) { wordCount++; var voiceWord = new VoiceWord(item, timeStamp, wordCount, messageCount); rawWords.Add(voiceWord); } } rawWords.RemoveAll(x => x.TimeStamp.AddMinutes(1) < DateTime.UtcNow); Thread.Sleep(200); } }
private List <VoiceWord> analyzeWord(VoiceWord word) { var query = @"SELECT * FROM RobotAlias WHERE alias SOUNDS LIKE @word"; ; conn.Open(); List <VoiceWord> words = new List <VoiceWord>(); try { using (var cmd = new MySqlCommand(query, conn)) { cmd.Parameters.AddWithValue("word", word.Word); var rdr = cmd.ExecuteReader(); if (rdr.HasRows) { while (rdr.Read()) { var aliasWord = new VoiceWord(rdr["alias"].ToString(), word.TimeStamp, word.WordId, word.MessageId, true, VoiceWord.wordType.Alias); words.Add(aliasWord); } } } query = @"SELECT * FROM SystemCommand WHERE command SOUNDS LIKE @word"; using (var cmd = new MySqlCommand(query, conn)) { cmd.Parameters.AddWithValue("word", word.Word); var rdr = cmd.ExecuteReader(); if (rdr.HasRows) { while (rdr.Read()) { var systemWord = new VoiceWord(rdr["command"].ToString(), word.TimeStamp, word.WordId, word.MessageId, true, VoiceWord.wordType.SystemCommand); words.Add(systemWord); } } } query = @"SELECT * FROM ApplicationCommand WHERE command SOUNDS LIKE @word"; using (var cmd = new MySqlCommand(query, conn)) { cmd.Parameters.AddWithValue("word", word.Word); var rdr = cmd.ExecuteReader(); if (rdr.HasRows) { while (rdr.Read()) { var applicationWord = new VoiceWord(rdr["command"].ToString(), word.TimeStamp, word.WordId, word.MessageId, true, VoiceWord.wordType.ApplicationCommand, Convert.ToInt32(rdr["applicationId"].ToString())); words.Add(applicationWord); } } } query = @"SELECT * FROM CallWord WHERE callWord SOUNDS LIKE @word"; using (var cmd = new MySqlCommand(query, conn)) { cmd.Parameters.AddWithValue("word", word.Word); var rdr = cmd.ExecuteReader(); if (rdr.HasRows) { while (rdr.Read()) { var callWord = new VoiceWord(rdr["callWord"].ToString(), word.TimeStamp, word.WordId, word.MessageId, true, VoiceWord.wordType.CallWord); words.Add(callWord); } } } } catch (System.Exception ex) { conn.Close(); throw; } conn.Close(); return(words); }