New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix #10282 "Campaign Response by Recipient Activity" (Status page) ha… #10334
base: hotfix
Are you sure you want to change the base?
Fix #10282 "Campaign Response by Recipient Activity" (Status page) ha… #10334
Conversation
I have tested your code and I think I have found a mistake. |
Thank you for testing and finding that! Yes, it's allowing only |
ff424f7
to
0263350
Compare
@SinergiaCRM Updated. Please test again both methods of unsubscribe - click "unsubscsribe" in header, and click "remove me" link at end of email body. |
Hi, now the link included on campaigns works like a charm. Headers included seem to be ok (in fact the gmail button is showing): Besides a copuple of comments:
|
0263350
to
5c14274
Compare
OK @SinergiaCRM thanks for your feedback! I simplified the code, both methods of unsubscribing should be working now (click on New URL on Header of email, and click on Classic Tracker URL on Footer of email).
Please test this update, and post your feedback! |
Hi @chris001 , |
Thanks for checking @SinergiaCRM this sounds like a bug, I'll take a look. |
…tus page) has recently become unreliable. And others.
5c14274
to
0a6dd0f
Compare
@SinergiaCRM I added a fix, it should now recognize the |
Hi @chris001 , both methods seem to work properly with gmail. |
This pull request has been mentioned on SuiteCRM. There might be relevant details there: https://community.suitecrm.com/t/campaign-email-view-click-immediately/91992/4 |
…s recently become unreliable. And others.
With this I implement RFC8085, "Signaling One-Click Functionality for List Email Headers" to restore the accurate working of the SuiteCRM opt-out feature for Newsletters and Email Campaigns, by preventing email services from automatically opting-out subscribers by crawling links in the email message, which before this Fix, used to load the opt-out link, and perform the opt-out.
All major email services (Microsoft, Gmail, Yahoo, etc) are crawling the links in email messages, to protect users from malware, and that crawling has been triggering the unsubscribe ("opt-out") feature, the "Remove Me" link in the footer of every Campaign and Newsletter bulk email message.
The new way, required in 2024 for all mail sent to Microsoft, Gmail, and Yahoo (and many, many more cloud hosted email services), is for senders to add new headers in the email, telling the email client app exactly which URL to request, with a special
POST
action that crawlers don't use, to enable the user to do a one-click unsubscribe ("opt-out"), from inside their email app, for this subscriber, for this particular email Campaign or Newsletter. So the subscriber no longer has to leave their email client app, and visit the Remove Me web page on the CRM.Description
$log
and$mod_strings
.Motivation and Context
The top Email services have been crawling all the links in the Campaign and Newsletter emails for a long time. One load of the opt-out (unsubscribe) link was actually unsubscribing every single lead or target who received the email, before they could even open it and read it!
How To Test This
Without this Fix, try sending a Campaign or Newsletter to only gmail, yahoo, or microsoft hosted email address. All of your emails will unsubsribe immediately. That's the automated link scanners loading the opt-out link to check for malware!
Apply this Fix. Send a Campaign or Newsletter to only Gmail, Yahoo, and Microsoft hosted emil. The headers for RFC8085 should be present, and none of the recipients will unsubscribe until they have a chance to open up the email message and look at it. In the email app, the subscriber will see a new "Unsubscribe" button, located near the headers. Clicking on this new "Unsubscribe" button should perform the opt-out from the SuiteCRM Newsletter or Email Campaign, from inside the email app.
Types of changes
Final checklist