Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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);
        }