Example #1
0
        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);
        }