Insérer une image dans une notification par email

Bonjour,

Un email ne peut pas contenir une image/url vers une ressource habilitées de l’application. Et le client de messagerie tronque généralement tout appel externe (flag marketing caché dans un image en GET…), un email doit être auto-suffisant = multi-parts.

Le token [IMAGERESOURCEURL] est donc inopérant dans un email.

Les alertes ne savent pas gérer autre chose que des pièces jointes [ATTACH:mydocfield] en plus des valeurs champs [VALUE:myfield] et du [DIRECTURL] vers l’objet métier.

Vous pouvez utiliser le MailTool pour insérer une image et l’utiliser via son “cid” comme src dans un envoi de mail spécifique :

MailTool mail = new MailTool(getGrant());
mail.addRcpt("contact@domain.fr");
mail.setSubject("Test image");
String id = mail.addImage(mail.getMail().resourceImage("MY_IMAGE", false));
mail.setBody("<p>Hello</p><img src=\"cid:"+id+"\" />");
mail.send();

L’image sera une pièce jointe (multi-part) dans le mail, et référencée dans le corps du mail sans être supprimée par le client de messagerie qui la jugerait douteuse/externe.

@scampano une idée pour faire autrement ?