Ik loop (waarschijnlijk) tegen een bug aan in Mac Mail. Een minimale testcase:
Korte samenvatting: ik bouw een (HTML) mailtje met daarin een embedded (inline) image; gewoon een logo'tje en een tweede attachment welke gewoon een willekeurige PDF (een factuur) is.
Kei mooi, m'n mailtje komt prima aan en als ik in diverse mail clients kijk zie ik daadwerkelijk een logo en een PDF-bijlage. Dit werkt in o.a. Outlook, Gmail, Roundcube etc... So far so good.
Echter...
In Mail (4.3, OSX) zie ik 't volgende:

Note:

Note:
Als ik ALT+⌘+U doe (Raw view zeg maar) zie ik wel degelijk dat de PDF aanwezig is in de mail.
You. Explain.
Heeft iemand toevallig weet van een bekend probleem met OSX Mail (4.3 in dit geval) waarbij bijlages verdwijnen als je inline images gebruikt? Ik kom wel her-en-der op Google wat soortgelijke gevallen tegen maar nergens is er sprake van inline images als eventuele oorzaak...
Zaken die al geprobeerd zijn:
[1] Dit is na sluiten van Mac mail en her-openen foetsie. Dit gooi ik op caching ofzo omdat de imageid hetzelfde is/blijft. Met per-mail random ID's is dit opgelost. Maak ik me verder niet zo druk om, maar 't hoort natuurlijk niet...
Voor degenen die een Mac tot hun beschikking hebben heb ik een test-case online staan. Ik heb 't topic in PRG gezet omdat ik denk/hoop/vermoed dat met een beetje creatief de mail ver-knutselen het probleem wel opgelost is. De PDF is overigens ook gewoon via onze site te downloaden als alternatief dus dat is geen probleem; ik wil het echter gewoon werkend hebben zoals het hoort voor onze klanten met een Mac. En de inline image achterwege laten wil ik dan ook weer niet... En om nou een klant een instelling te geven "Ik heb een Mac, verstuur mij versie Y i.p.v. X van de mails" ik ook zowat
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| require_once 'phpmailer/class.phpmailer.php'; //Setup PHPMailer... $mail = new PHPMailer(); $mail->IsSMTP(); $mail->Host = 'mail.foo.bar'; $mail->SMTPAuth = false; $mail->Port = 25; $mail->CharSet = 'utf-8'; $mail->SetFrom('foo@bar.com', 'RobIII'); //Set subject/body/recipient $mail->Subject = 'Test '.UniqID(); $mail->MsgHTML('<body><p><img src="cid:logoimg" width="176" height="55" alt="Logo"></p><p>Test</p></body>'); $mail->AddAddress('info@foo.bar'); //Add embedded image $mail->AddEmbeddedImage('logo.gif', 'logoimg', 'logo.gif'); //Add attachment $mail->AddAttachment('KC143123.pdf', 'KC143123.pdf', 'base64', 'application/pdf'); //Send echo $mail->Send(); |
Korte samenvatting: ik bouw een (HTML) mailtje met daarin een embedded (inline) image; gewoon een logo'tje en een tweede attachment welke gewoon een willekeurige PDF (een factuur) is.
Kei mooi, m'n mailtje komt prima aan en als ik in diverse mail clients kijk zie ik daadwerkelijk een logo en een PDF-bijlage. Dit werkt in o.a. Outlook, Gmail, Roundcube etc... So far so good.
Echter...
In Mail (4.3, OSX) zie ik 't volgende:

Note:
- Volgens het attachments kolommetje rechtsboven: 2 items; klopt want embedded image + PDF.
- Mail size: 25.5 Kb (klopt)
- Inline image: Aanwezig en zichtbaar
- Volgens de mail zelf maar 1 attachment, 3.1 Kb
- PDF is nergens te bekennen

Note:
- Volgens het attachments kolommetje rechtsboven: 1 item; klopt want embedded image is niet ingevoegd
- Mail size: 23.3 Kb (klopt, embedded image is niet ingevoegd)
- Inline image: Zichtbaar
WTF? [1]
- Volgens de mail zelf 1 attachment, 22,6 Kb
- PDF is aanwezig (en Mail toont 'm ook als "Quickview"/"Preview"/"Hoe_heet_het" in de mail)

You. Explain.

Heeft iemand toevallig weet van een bekend probleem met OSX Mail (4.3 in dit geval) waarbij bijlages verdwijnen als je inline images gebruikt? Ik kom wel her-en-der op Google wat soortgelijke gevallen tegen maar nergens is er sprake van inline images als eventuele oorzaak...
Zaken die al geprobeerd zijn:
- Regel 18 en 20 omdraaien: Geen verschil. De attachments staan (as intended) andersom in de 'raw view' van de mail maar de PDF is nog steeds nergens te bekennen
- Het ligt niet aan de PDF want als ik een willekeurig ander bestand (in mijn test een .bin en een .zip) attach verschijnen ze ook niet
- Met/zonder AltBody maakt geen verschil
- MIME type 'application/pdf' of 'application/octet-stream' maakt ook geen verschil.
[1] Dit is na sluiten van Mac mail en her-openen foetsie. Dit gooi ik op caching ofzo omdat de imageid hetzelfde is/blijft. Met per-mail random ID's is dit opgelost. Maak ik me verder niet zo druk om, maar 't hoort natuurlijk niet...
Voor degenen die een Mac tot hun beschikking hebben heb ik een test-case online staan. Ik heb 't topic in PRG gezet omdat ik denk/hoop/vermoed dat met een beetje creatief de mail ver-knutselen het probleem wel opgelost is. De PDF is overigens ook gewoon via onze site te downloaden als alternatief dus dat is geen probleem; ik wil het echter gewoon werkend hebben zoals het hoort voor onze klanten met een Mac. En de inline image achterwege laten wil ik dan ook weer niet... En om nou een klant een instelling te geven "Ik heb een Mac, verstuur mij versie Y i.p.v. X van de mails" ik ook zowat
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij