Inbound emails & case macro feature enhancement

Greetings all,

I’m contemplating on adding a new functionality to SuiteCRM and wanted to get your thought and guidance before I commit to the idea…

In an attempt to better manage my communication and allow for transparency with my team I started to route all my email communications through SutieCRM. It didn’t take long before I noticed that the system created cases for even generic emails; for example, notification for facebook comments, updated support ticket from hosting service,etc.

If a goal is to utilize CRM to help track of all communication interactions (with customers, vendors, partners, etc) then there is a need for a better way to manage the noise.

For example, instead of creating a new blank case for facebook notification, I think it might make sense to add an activity to a generic “Notification” case.
This would mean that the assigned user would take action and close the case again.
Similarly, if an email is being received, it should automatically be associated with a respective contact or account.

As I explored the creation of an extension, I realized that I would have to duplicate many of the underlying implementation modules (copy/paste), which means that I would have to merge changes with every SuiteCRM release.

To address this, it seems to make sense for me to refactor the main trunk to allow for this extensibility, or perhaps I should add the functionality in the main trunk.

The high-level pseudo code for this feature would look like this:


if (subject contains NO case macro) {

    if (fromEmail in Contacts) {

       if Contact has "Notification" case {
           caseNumber= notificationCaseNumber
       } else {
           caseNumber = Create a case under contacts
       }
     
    } else if (fromEmail in Accounts) {
         caseNumber = Create a case under Accounts
    } 

} // if (subject contains No case macro)

if (caseNumber != null) {
 subjectString = string( caseMacro + caseNumber) + subjectString
}

// continue normal case creation

I have no experiance contributing to the platform. Please let me know your thoughts with regards to use-case, implementation strategy, and other thoughts.

Thanks,
Edvin

P.S.
I don’t want to promise that I will implement this since I have more pressing projects; but, I do want to contribute back if I find the time.

It’s always nice to hear someone is considering a contribution to the code.

I am not the ideal person to comment on this because I don’t have experience using this feature with actual people in a real world scenario. But I think it’s good to improve this area of the app.

Maybe the “generic notification case” is the concept I’m having more trouble with, it might not really fit the concept of what a “Case” is in SuiteCRM. So maybe that part is not for the generic app, it’s more of a custom code solution for your specific case?

But I’d love to hear what others think, and more suggestions.

1 Like

Thanks for the feedback pgr.

I’m still trying to think through use-cases and would be grateful for your thoughts until others chime-in…

  1. I don’t know why “new Cases” are not automatically associated with a contact or an account (based on sender’s email) in absence of case macro in the subject (to associate with existing cases)? This would relieve a person from associating contact/account for every new case!
    If there is a legitimate reason (other than low priority or lack of interest), I assume that one reason for this might be that any recipient of email (via CC) can respond to a thread. However, with the current implementation, a new case is being created anyways, and it seems logical that every communication from recipients should be traceable back their respective contact.
    So, is it reasonable to assume that this feature can be added to main trunk as a “flag” to auto-associate contact/account during case-creation in email handling section of mail account info (Admin->Inbound Email->New Group Mail->Email handling section); or are there constraints that need to be considered?

  2. There is nothing wrong with managing all email communications through the CRM for traceability; but, but does it make sense to have a new case created for every email notification (e.g. someone posted a comment on your biz facebook, which requires an action); hence, my thought for having a “notification case” that would be updated with the new email activity. As you mentioned, this might be best for custom solution; but, is there a better way of thinking about solving this problem?

P.S.
I didn’t get email notification of your last post (I’m subscribing to post and have correct email profile settings).

About your PS: my forum email notifications seem to be working fine. Have you looked in your Spam folder? Sometimes it helps if you add our sender address (forum@suitecrm.com) to you Contacts list.

We can’t just create a new Case for every incoming email, that would be terrible for some companies workflows. For others, maybe it would be good. There are two levels to this:

  1. Associating the email to the contact if the email address matches.
  2. Associating it to a new Case related to that contact.

Not everyone will want number 2.

1 Like

Like Edvin I would also like to use inbound email for management of contact communication but not case management. I’m not sure if the CRM should be able to do this now or if this is still an issue for development.

I believe it is current functionality that if you import an email it will exist inside SuiteCRM and be connected to whichever contact has that email address.