Example #1
0
        async void OnMessage(object sender, MessageEventArgs eventArgs)
        {
            try
            {
                var message = eventArgs.Message;
                var userId  = message.From.Id;

                LogMessage(message);

                if (!_userStorage.HasUser(userId))
                {
                    var mappedUser = _mapper.Map <UserDbo>(message);

                    await _userStorage.AddNewUser(mappedUser);

                    _eventManager.InvokeNewUser(mappedUser);
                }

                await _inputProcessor.ProcessUserInput(message.Text, message.Chat.Id);
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"OnMessage: {ex.ToString()}");
            }
        }