Example #1
0
        private async void GetUpdatesAsync()
        {
            var parameters    = $@"offset={_offset}&allowed_updates={_parameters}";
            var updatesJToken = await CustomHttpClient.MakeRequest("getUpdates", parameters);

            var lastUpdateIdJToken = updatesJToken["result"].Last?["update_id"];

            if (lastUpdateIdJToken != null)
            {
                var lastUpdateId = int.Parse(lastUpdateIdJToken.ToString());
                _offset = lastUpdateId + 1;
            }
            OnUpdatesRecieved(updatesJToken);
        }
Example #2
0
        private async void MessageHandle(JToken message)
        {
            var dictionary = new Dictionary <int, int>();

            var chatId       = (int)message["chat"]["id"];
            var messageText  = (string)message["text"];
            var messageWords = messageText.Split();
            var maxPriority  = 0;

            for (int i = 0; i < _messagesBase.MessagesList.Count; i++)
            {
                var currentMessage = _messagesBase.MessagesList[i];
                var priority       = 0;
                foreach (var word in messageWords)
                {
                    if (currentMessage.Contains(word))
                    {
                        priority++;
                    }
                }
                if (maxPriority < priority)
                {
                    dictionary.Clear();
                    dictionary.Add(dictionary.Count, i);
                    maxPriority = priority;
                }
                if (maxPriority == priority)
                {
                    dictionary.Add(dictionary.Count, i);
                }
            }
            var resultAnswer = "";

            if (dictionary.Count > 0)
            {
                var resultIndex = new Random().Next(0, dictionary.Count);
                resultAnswer = _messagesBase.MessagesList[dictionary[resultIndex] + new Random().Next(0, dictionary.Count - resultIndex)];
            }
            else
            {
                resultAnswer = "мне нечего сказать(";
            }

            await CustomHttpClient.MakeRequest("sendMessage", $"chat_id={chatId}&text={resultAnswer}");
        }