New Cases not being created from Email and Return Emails not being Sent

Hello, as of 4 November 2020, I am using the latest version of Suite CRM. I have successfully set up a group Email address, I have configured it to create a case and to send an opened case notification Email back. The opened case notification Email does not send and the case does not get created. I have tested the outbound Email settings and the test Email there does send.

Thanks and Kind Regards,

indieben.

Hey,

Is this on version 7.11.17?

I’ve given it a try on a local copy and it seems to be working


Have you checked the suitecrm logs for any error messages around the time of your case being submitted?
Does anything of note appear?


I’d also recommend checking that both:

  • Crontab has been set up (Using the line found at the bottom of the Admin->Schedulers panel)
  • The “Check Inbound Mailboxes” scheduled job is enabled/running

If it is running, then you should see the “Last Successful Run” date updating, as well as items appearing in the “Job Log” subpanel on the Scheduled Job Record

How do those look?

1 Like

Hey John!

Thanks, yes it is on 7.11.7 - I do believe that this is a cron issue now thanks to your previous message - the check inbound mail scheduler has never run. I had asked the web host to add the cron job but something has gone awry seemingly. Please would you be kind enough to keep half an eye on this post for a reply? I have checked the log and there is nothing to report, that said, it is is set to ‘fatal’ BUT, would I be correct in saying that I shouldn’t expect it to be reporting an error as the task is not running in the first place to fail?

Thanks and Kind Regards,

indieben.

1 Like

Hey,

That’s right, if the Scheduled Jobs don’t look like they’re being fired, then it makes sense that no errors are being reported for them

(Especially, as it sounds like Email is working elsewhere in the system)

I’ll keep an eye on this thread, so let us know how things go! :slight_smile:

1 Like

Hey John,

I’ve been burnt out with quite a few things over the weekend relating to a new project I am working on so I have let it slide for now. The web hosts have been in and they’ve also checked that the cron job is correct on the backend - they somehow managed to get the job to run (maybe manually) as some cases came through. It’s not working automatically still though. Do you have any permissions goody tips to please? I ran into hellish problems with them?

Also - is being on a Linux Cpanel shared hosting environment important in terms of chown?

I’m slightly confused about a few things to - more widely case related if you’d be as kind and I am not taking advantage of your helpfulness that is:

  1. The case templates have a newspaper style layout - do I need to integrate with those position pieces that can be dragged in when I am doing custom Emails?

  2. In the replies I got from my test cases, it wasn’t parsing the Email account holder’s name/ - i’m not sure what I am doing wrong here?

  3. Does Suite CRM have any way of separating internal contacts from external ones as there seems to be a lot of collaboration abilities missing (I think Sugar came up with the Teams module to overcome this issue)

  4. Is it possible to see cases assigned to various different roles as Admin without signing the Admin account up to the roles?

  5. Whilst I am seeking volunteers (as usual, i’m doing grassroots community stuff and seeking micro time contributions from volunteers), it is possible for Suite CRM to generate an Email report (per day) of new cases that have come in and to what role (team) they have been allocated to - as I obviously need to be keeping an eye on these before handover.

Thanks and Kind Regards,

indieben.

Hey,

Interesting that it has fired off once, but not again.
This does give some hope that it can work, though!

After the run, I presume the Scheduled Job has updated in the CRM?
(ie: Last Successful Run date has changed / items in the “Job Log” subpanel?)
Is it continually updating along with the Cron’s schedule, or has it fired just one time?

If only once, it may be worth checking the Error logs again, around the time that it fired.
Perhaps something relevant has been added?


In terms of permissions, we typically recommend:

sudo chmod -R 755 .
sudo chmod -R 775 cache custom modules themes data upload config_override.php

and the chown being:

sudo chown -R {web server user}:{web server user} .

I’m not sure how it works in terms of Shared Hosting, but if the “chown” user is set to the Web Server User, then it should be fine


And, regarding your questions:

  1. I haven’t tried custom Emails via Code myself, but I don’t believe you’d need to stick to that template formatting.
    As far as I’m aware, those are just for quick building of Templates in the CRM

  2. The Account name should be parsed, If I add the “$account_name” variable to the Email Templates, the Account Name can be seen in Emails.
    By chance, which Email Template and Variable were you using?
    Or was this through custom code?

  3. I suppose it depends on how your scenario differentiates the two types of contacts, if “External” contacts are ones that are outside of the CRM, in another application, perhaps not.
    However, if you want something alike Teams, I believe Security Groups / Roles can perform similarly?
    Is this something like what you’re looking for?

  4. I don’t believe Roles can be assigned to anything other than Users and Security Groups.
    However, you should be able to see if a Security Group is associated with a Case record, via the “Security Group” subpanel on a Case’s Detailview

  5. Yeah, you can achieve this via Reports,
    Maybe something like these Fields/Conditions, to get started?:


This would show each Case created Last Week, displaying the Security Group associated with it.
Then, you can schedule this report to be Emailed at set intervals:
https://docs.suitecrm.com/user/advanced-modules/reports/#_scheduled_reports

(Although this would depend on Cron running succesfully, to fire on schedule)


Hopefully the above makes sense, and can help.
Let us know if you have any questions :slight_smile:

1 Like

Thanks for this John! I’ve let the shared web host log in although I think they probably should have a better way of doing it - luckily the system is not live yet so it doesn’t contain any private data. As far as I can see, if the SMTP and the IMAP connection works, it isn’t an issue that needs a login request?

I will reply more when I can get back in but I figured i’d leave them to it first - hopefully they don’t make a mess!

Thanks again and Kind Regards,

indieben.

Hey,

Yeah, I believe that’s correct

If you’re able to get results when:

  • Sending test Email in Admin->Email Settings
  • “Test Settings” to confirm connection on the Group Account in Admin->Inbound mail

It should be fine, I don’t believe you’d need Login Credentials to send/receive


Let us know how things go!

1 Like

Hey John,

Just had this back from them:
"Everything on the cpanel for email is configured correctly, the DNS is also correct for us to host the email.

We have checked over the cron and tested that it works, I have just ran it again for you from the command line to see if it updates within the CRM.
The CRM is not something we will know anything about when it comes to configuring it, we have checked over how this is configured given our limited knowledge of the CRM.

How quickly after running the cron would you expect to see this updated within the:
admin > admin -> Schedulers -> Check Inbound Email.

Checking the logs I am not seeing any errors."

Also, should the “job” within check inbound mail be “AOP Poll Monitored Inboxes” when there is a job “check inbound mailboxes?”

And I know they altered the cron to only run every 5 minutes so would them only setting it for every 5 mins at their end cause problems?

Thanks :slight_smile:

Hey,

As far as I’m aware, when cron runs, the Scheduled Job records should update pretty much as soon as Cron has finished


Regarding the “Job” itself, that’s correct.

Out of the box, the “Job” selected is “AOP Poll Monitored Inboxes”, and the Record itself is named “Check Inbound Mailboxes”

image


And, I don’t think there’d be any issues with having it run every 5 minutes

Although, If the interval has been changed on the Scheduled Job record, it might end up trying to run at a time when Cron itself is not running.
(ie: between each 5th minute)

So, it might be worth checking the “Execute if Missed” option on the Record.
(This will ensure that, if the scheduled run times do not meet up, it runs on the next Crontab run)


If you’re still having issues, there may be some other things to try:

I’ve found some older threads wherein users have had trouble with Cron on Shared Hosting.

These two note that it is necessary to specify that cron.php has to be run via the php cli.
Meaning that, this needs to be included in the Cron command

https://community.suitecrm.com/t/cron-job/48797/14
https://community.suitecrm.com/t/setting-up-cron-jobs-for-suitecrm-on-bluehost/12756

I don’t know if either of those posts have the same, or similar, hosting solutions to the one you are using?
However, it may be worth confirming with your hosts if this is a non-issue for them, or if this needs to specified?

(Such as how the 1st of the above linked posts notes that they had to specify full-paths):

/usr/local/php56/bin/php-cli -f /home/user_name/public_html/crm/cron.php > /dev/null 2>&1

Another thing worth checking is what web-server user Cron is running under.
There is a section in the config.php file, wherein you can specify web-server users that Cron is allowed to run on:
ie:

 'allowed_cron_users' =>
	 array (
		0 => 'www-data',
	 ),

If Cron is running under a user that is not in this Array, it may be worth adding them


Though, if it’s still having issues if all of the above are fine, I’m not too certain on what to check next… :confused:

But, let us know how you get on, hopefully the above can assist :slight_smile:

Hi John,

I don’t have a cron_allowed_users in my config.php - should I add this? If so, where? Have I written this correctly please?

),
‘chartEngine’ => ‘Jit’,
‘common_ml_dir’ => ‘’,
‘create_default_user’ => false,
‘cron’ =>
array (
‘max_cron_jobs’ => 10,
‘max_cron_runtime’ => 30,
‘min_cron_interval’ => 30,
‘allowed_cron_users’ =>
array (
0 => ‘www-data’,
),
),

Thanks ever so much!

Hey,

Yeah, that looks right

For reference, this is how it looks on my end:
image

1 Like

Thanks for this - is the route to php specified in the config.php file, is so where exactly and how please or just in the cron command? The host has suggested I should add it but they haven’t specified where.

I have updated the config with the www-data section per the above and did a quick repair and rebuild but no joy. Is the fact that the cron user wasn’t included in the config file indicative of anything?

Thanks ever so much again!

Hey,

I don’t believe the PHP location is specified in the config.php file
I think it would be in the cron command itself

So I imagine the command would change to something alike:

cd [suiteCRM location]; [php executable location]php -f cron.php > /dev/null 2>&1 

So my local instance would be something like:

cd /var/www/html/Suite7.11.15; /usr/bin/php -f cron.php > /dev/null 2>&1 

While I’m not sure how it’d be laid out for cPanel usage, I imagine it would be somewhat similar to the above


I’d noticed a thread where in users mentioned needing “php-cli”, rather than “php”
Which might be something worth noting too, as this user noted cPanel in his initial post:
https://community.suitecrm.com/t/cron-job-fix/35247/3


Regarding missing “allowed_cron_users”:
The CRM seems to build that section during installation, using the web-server user:
image

Which is grabbed by

So, if cPanel doesn’t permit “exec” commands, that would explain why it wasn’t built


Let us know how things go, after adding the php executable’s full path to the cron command
Though, if it still is not succeeding, has anything new popped up in the Suitecrm error log?

Hopefully, there’s something of note, as I’m running out of ideas :confused:

1 Like

Hey John,

Thanks for all of your help! The cron job in cpanel was set up incorrectly! I ended up fixing it myself by noticing a different cron job in the proper format!

I have got the cron up and running but new case templates are not being generated automatically.

Happy New Year and Thanks :slight_smile:

Distribution Method: Round-Robin
New Case Auto-Reply Template: Public and Registry Helpdesk
“Reply-to” Address: removed@removed.uk
Auto-Reply Template: None Allow users to send emails using the “From” Name and Address as the reply to address: Yes
No Auto-Reply to this Domain: none Number of Auto-responses: 10
Leave Messages On Server: Yes
1 Like

Hey,

Good to hear you got the Cron sorted!

Sorry, with the Case Template issue, I just want to double-check, but I assume you mean that the Users aren’t receiving the “Case Created” Email on new Cases?
Is that right?


If so, are Cases being created successfully from email now?

If not, it would be worth checking the “Check Inbound Mailboxes” schedule task again, as well as its “Job Log” Subpanel, to see if it is running well


Additionally, it may instead be worth checking/using Email Template(s) in Admin->“AOP Settings” panel, rather than on the Inbound Mailbox

In this panel, is AOP enabled?
Also, are there Templates selected for the various “xxxxx Template” options at the bottom of this area?

I believe there was a discussion on the forums previously around this, and it seems that the “auto-reply” option on the Inbound Mailbox itself can have some issues:Problem New Case Auto-Reply
Which might be worth reading into

Hey John,

Thanks for your reply, I will come back to this one! Currently I am having associated problems where there appears to be no way to give a user access to group mailboxes, the documentation doesn’t contain anything and one of the Devs posted about 8 months ago to say that the only way at that point to assign access was from the admin -> user management section but that functionality has since disappeared. Any ideas please as it’s all very well having an issue with creating cases from Emails and getting the appropriate automated Emails to go out to those who complete contact forms but it the work cannot be delegated, the whole thing is functionally pointless.

Thanks :slight_smile:

Hey,

hmmm, I am able to see the Group Mail Accounts on the User’s profile, under “Email Settings”->“Settings”->“Mail Accounts”

It seems like you might need to enable both:
“Allow users to send emails using the “From” Name and Address as the reply to address” on the Group Mail Account itself
“Users may send as themselves” in Admin->Email Settings


However, I’ve not had much luck beyond this.
I’m having trouble seeing the Group account when logged in as this user, as well as not being able to see it under “Folder Management” when viewing the User’s Email settings


It is possible that functionality was removed at some point, if you have noticed previous discussion around this
Though it is equally possible that there’s simply a bug with the functionality

I’ll keep having a look, but it may be worth raising on the Github repository, if there is not a bug already, so that this can be tracked

Thanks for this John - I’ve raised it under https://github.com/salesagility/SuiteCRM/issues/9028 but it would be helpful if you would add your views too please :slight_smile: Thanks!