>> If your users change their preferences to get notifications straight away and are not then there is something wrong. This is not a cron issue.
I will disagree with you.
Notifications, in particular, work only via CRON.
Immediately- means notifications will be sent when your Cron runs right away.
Auto- means notifications will be sent when your Cron runs, but only after 2 days are passed and if user was not loged in to your site.
Regarding other emails.
Mass Mailing - runs via CRON as well.
Invite users via contact importer- runs via CRON as well.
You can always see which emails are sent by cron if you check orginal .php source code.
For example, source code of email.php ( ow_plugins/contact_importer/controllers).
The code says: OW::getMailer()->addListToQueue($mails); .
Whenever you see addListToQueue - means CRON is involved in the process.
Important thing to remember is if you enable SMTP, ALL emails will be sent when CRON runs.
For those who have installed fresh copy of 1.5.2 or 1.5.3 OR have older versions but have never set their CRON:
a) since your CRON is not set, you will be getting a notice in admin panel saying that you should set it up.
b) until you set your CRON and it actually runs first time, your CRON will be running every time somebody refreshes any page on your site. This is the new feature that was added in 1.5.2 version to make things easier for those who actually don't need and don't want to dig into setting CRON manually. How does this work with notifications?
Somebody comes to your site, refreshes your page>>Cron runs>>email notifications that were added to Queque will be sent>> 50 emails are sent every 10 minutes.
One day you will go to your control panel and decide to set your CRON. Once you do that, and if everything goes well, the feature that runs CRON every time the page is refreshed will be deactivated when your newly set CRON runs. From now on, all notifications will work only according to your CRON's settings.