matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.64k stars 2.62k forks source link

Visit summary graph is cached in mail client #4250

Open anonymous-matomo-user opened 10 years ago

anonymous-matomo-user commented 10 years ago

I've noticed this behavior in the iOS mail client for a long time, and it looks like Mail.app in Mavericks may have started this "helpful" behavior as well. I get about 30-40 email reports from Piwik each week. When I scroll through them the Visits Summary graphic gets cached and is the same image in every email. Im attaching two example screenshots. It seems the mail client is caching the inline attachment.

Looking at the email itself, I see that the filename is static:

Content-Type: image/png
Content-Transfer-Encoding: base64
Content-ID: <VisitsSummary_get>
Content-Disposition: inline; filename="Visits Summary.png"

Im going to make a guess that if a random string were appended to that filename and modified in the HTML body that it would no longer have this caching issue.

anonymous-matomo-user commented 10 years ago

Attachment: example1.png

anonymous-matomo-user commented 10 years ago

Attachment: example2.png

anonymous-matomo-user commented 10 years ago

In 108c105e927e9ab6cfd6ac2ebc551b557977b605: fixes #4250

anonymous-matomo-user commented 10 years ago

I was thinking this change would have gotten into the 2.0.x release but as of 2.0.2 it is not there. Image names still use the same file name and the mail client still caches them. Can this get added into the release code?

julienmoumne commented 10 years ago

This change has been released, see https://github.com/piwik/piwik/blob/2.0.2/plugins/ScheduledReports/API.php#L912

If it's still not working, please provide the necessary data to investigate the issue (such as the relevant mail source code fragments).

mattab commented 10 years ago

@Julien is the 'cid' the fix? where is it used in the email source?

mattab commented 10 years ago

Removing owner from tickets. from now on, I suggest we assign tickets to ourselves for cases when we we plan to actively work on them in the coming days/weeks. let's discuss if needed during our team call.

mattab commented 10 years ago

I can confirm the bug I could reproduce, eg. the source code is:

=0A        </table>=0A        <br/>=0A    <a style=3D"text-decoration:no=
ne; color: rgb(126,115,99); font-size: 9pt;" href=3D"#reportTop">=0A   =
     Retour haut de page=0A    </a>=0A<h2 id=3D"VisitsSummary_get" style=
=3D"color: rgb(126,115,99); font-size: 11pt;">=0A    R=C3=A9capitulatif=
 des visites=0A</h2>=0A=0A            <img alt=3D""=0A                 =
                   src=3D"cid:VisitsSummary_get"=0A                    =
            height=3D"200"=0A                width=3D"700"/>=0A    =0A =

the image reads: cid:VisitsSummary_get and the cache buster is missing.

julienmoumne commented 10 years ago

The fix I committed changes the filename but not the cid indeed.

At line [https://github.com/piwik/piwik/blob/2.0.2/plugins/ScheduledReports/API.php#L924] I would suggest :

$additionalFile['cid'] = $additionalFile['filename'];

html_report_body.tpl would also need to be updated.

This would need to be tested on different mail clients as Iam not sure we can set arbitrary characters in the cid attribute.

tsteur commented 6 months ago

Hi, if anyone still has this issue please comment

trondhuso commented 1 month ago

I am experiencing this issue. The reports are in my view empty. All e-mails from Matomo is more or less looking like this:

Content-Type: text/plain; charset=utf-8

Content-Transfer-Encoding: quoted-printable

Hi foo_bar_baz,=0A=0AA request to reset the password was received fr=

om