예제 #1
0
        public async Task <string> HandleMessage(Message msg)
        {
            if (string.IsNullOrWhiteSpace(msg.Text))
            {
                return("❌Вы не указали команду!❌");
            }
            var result = "";
            var split  = msg.Text.Split(' ', 2); // [команда, параметры]
            var cmd    = split[0].ToLower();

            //var cmd = msg.Text.ToLower();
            if (_info.Aliases.Contains(cmd))
            {
                return(await _info.Execute(msg));
            }

            foreach (var command in Commands)
            {
                if (!command.Aliases.Contains(cmd))
                {
                    continue;
                }

                result = await command.Execute(msg);

                break;
            }

            if (string.IsNullOrEmpty(result)) // если никакая из команд не выполнилась, посылаем сообщение об ошибке
            {
                result = ErrorMessage;
            }

            return(result);
        }