public void Send(User user, string text) { if (string.IsNullOrEmpty(text)) { return; } Message message = new Message(user, text); m_messages.Enqueue(message); HubGroup.Send(message.User.Name, message.Text, message.TimestampMs); if (m_messages.Count > MaxHistory) { m_messages.TryDequeue(out Message tmp_message); } if (text.StartsWith("!")) { m_cmdparser.Exec(text); } else { Message?.Invoke(this, message); } }
public int Run() { var cmdparser = new CommandParser(); cmdparser.Add <int, int>("!add {0}+{1}", (a, b) => Console.WriteLine("a + b = {0}", a + b)); cmdparser.Exec("!add 2+4"); return(0); }