private IEnumerable <(string channel, string message)> GenerateMessages(string message) { List <(string channel, string message)> macrosReturn = new List <(string channel, string message)>(); var macrosToRun = Id == "all" ? _macroService.GetMacroByCommand(message) : _macroService.GetMacrosByChannelCommand(this, message); if (macrosToRun.Count() == 0) { foreach (var channelString in ChannelStrings) { macrosReturn.Add((channelString, message)); } } else { foreach (var channelString in ChannelStrings) { foreach (var macro in macrosToRun) { if (macro.Channel.ChannelStrings.Contains(channelString)) { macrosReturn.Add((channelString, macro.Response)); } } } } return(macrosReturn); }