using TelegramBotBase.Base; namespace TelegramBotBase.Experiments.ActionManager { public partial class ExternalActionManager { List actions = new List(); public void Add(IExternalAction action) { actions.Add(action); } public async Task ManageCall(UpdateResult ur, MessageResult mr) { foreach (var action in actions) { if (!action.DoesFit(mr.RawData)) continue; await action.DoAction(ur, mr); return true; } return false; } /// /// Creates an instance of the ExternalActionManager for configuration. /// /// /// public static ExternalActionManager Configure(Action action) { var eam = new ExternalActionManager(); action(eam); return eam; } } }