I have successfully setup local eGroupware installation. I’m having troubles setting notification about InfoLog entries when they are started or due. Everything is correctly set up in Preferences (for Group Default and for all users).
Async services are started from cron. TestJob is correctly sending emails every 5 minutes, and I can see that “infolog-async-notification” job will execute at 2:00 a.m. every day.
Now, here are inconsistencies.
I haven’t been receiving any notifications regarding due InfoLog entries, so I checked postfix log:
Mar 22 02:00:01 mercury crond[27629]: pam_unix(crond:session): session opened for user apache by (uid=0)
Mar 22 02:00:01 mercury CROND[27630]: (root) CMD (test -x /usr/sbin/run-crons && /usr/sbin/run-crons)
Mar 22 02:00:01 mercury CROND[27632]: (apache) CMD (/usr/bin/php -q -d memory_limit=-1 /var/www/localhost/htdocs/egroupware/api/asyncservices.php default)
Mar 22 02:00:01 mercury postfix/smtpd[27625]: connect from mercury.ambraspace.com[::1]
Mar 22 02:00:01 mercury postfix/smtpd[27625]: disconnect from mercury.ambraspace.com[::1] ehlo=2 starttls=1 quit=1 commands=4
Mar 22 02:00:01 mercury CROND[27629]: pam_unix(crond:session): session closed for user apache
That’s all. No emails sent.
I’m guessing that “starttls=1” could be the culprit. There is a SMTP only mail account valid for Everyone which is used for sending emails. TestJob uses this account and correctly sends emails. This account is set not to use any security as the SMTP server is on the same host, so “infolog-async-notification” task shouldn’t be trying to establish TLS connection. The same is with personal email accounts - no SMTP server uses TLS or SSL.
The other inconsistency with Async tasks is following.
I uncommented debugging line in api/asyncservices.php file (define(‘ASYNC_LOG’,’/tmp/async.log’) and this is what I get in /tmp/async.log:
2017/03/22 09:55:01 default: asyncservice started
2017/03/22 10:55:01 default: Nothing to execute
2017/03/22 10:00:01 default: asyncservice started
2017/03/22 11:00:01 default: 2 job(s) executed
2017/03/22 10:05:01 default: asyncservice started
2017/03/22 11:05:01 default: Nothing to executed
I’m wondering why the first and the second line differ in time for 1 hour? They are obviously run almost at the same time, but date() PHP function returns different strings. I couldn’t find anything in the code that could hint the difference - the function usages for both lines are identical. I’m really puzzled.
I’m going to run async task debugging for a longer time to see what will happen when “infolog-async-notification” runs. Maybe I’ll get more info and I’ll post it here.
Regards!