public void Publish <T>(T @event, Dictionary <string, object> args = null) where T : IEvent { if (args == null) { _emitter.BasicEmit(@event, _channel, _connection); } else { _emitter.AdvancedEmit(args, @event, _channel, _connection); } }