email avec pièce jointe + html
cr88254-Jun-2009/9:10:54+2:00
hello,

pourriez vous m'aider à envoyer avec send un mail en html avec une pièce jointe pdf par exemple

merci

j'arrive

avec send/header à envoyer un content/type = HTML

avec send/attach à envoyer une pièce jointe

mais je ne sais pas comment réunir les 2 dans un mail avec rebol

merci d'avance pour votre aide !!!!
cr88254-Jun-2009/16:36:43+2:00
re,

obligé de modifier le prot-send.r livré avec reobl/command !!!!

et la cela fonctionne

voilou
deglingo8-Jun-2009/15:24:22+2:00
Bonjour à tous,

Suite à ce poste, je voulais savoir s'il était possible d'envoyer des emails "multi-part mime messages" avec Rebol/View (sans les composants payants) ?
En fait, je souhaiterais envoyer une newsletter avec :
+ dans la partie HTML : une image cliquable renvoyant vers un site web (<a href="<URL Site web>" ... ><img src="..."/></a>")
+ dans la partie Texte : un simple texte
(un peu comme sur le lien suivant : http://www.enewsletterpro.com/articles/multi_part_mime_messages.asp )

Merci d'avance si jamais vous pouvez me donner un tuyau là-dessus.
deglingo9-Jun-2009/0:22:47+2:00
En fait, c'est bon, j'ai réussi à me débrouiller en bricolant le script "attach.r" sur rebol.org et en remplaçant le type MIME par "multipart/alternative". Plutôt facile en fait...

Par-contre, j'ai une autre question sur un point de détail : y-a-t-il une astuce pour utiliser les adresses email au format suivant (nom <adresse email>) : toto <toto@toto.fr> ?
(de base, ça n'a pas l'air possible)

Merci d'avance.
Didec9-Jun-2009/15:22:32+2:00
Je t'invite à regarder le source de la fonction 'send.

Il suffit de l'adapter pour quelle fonctionne selon le format de stockage que tu choisi pour tes adresses avec nom.

Je te suggère un block! de nom / email, genre : ["toto" toto@aol.com "titi" titi@aol.com]
Plus qu'à le traiter correctement dans ta fonction 'send modifiée !
deglingo9-Jun-2009/16:27:23+2:00
Merci beaucoup pour l'info.

Concernant la structure contenant les adresses email, on peut aussi utiliser une variante (pour grouper les données de chaque adresse email) : [ ["toto" toto@aol.com] ["titi" titi@aol.com] ]

Sinon, à propos de la modif de la fonction SEND, j'ai juste à redéfinir la fonction comme n'importe quelle autre fonction ? OU bien, il me faut redéfinir le protocole SMTP de Rebol ?

Merci.
Didec10-Jun-2009/9:43:33+2:00
Je pense que tu peux la redéfinir comme si tu créais ta propre fonction.
Je ne pense pas qu'il y ai besoin de la 'binder quelquepart.

En tout cas, rien à toucher au niveau de SMTP, ce n'est qu'un problème de construction du texte de l'email, pour l'envoi. le protocole SMTP n'utilise de toute façon que l'adresse sans le nom (commande "TO: toto@aol.com").
none10-Jun-2009/11:58:06+2:00
OK, mais si SMTP n'utilise que l'adresse email au format "toto@toto.fr", comment cela se fait-il par exemple que l'on voit ceci au niveau de l'entête de certains emails que je reçois dans ma boite mail ?

.................
From : titi <toto@toto.fr>
To : tutu <tata@tata.fr>, test <test@test.fr>
.................

Les noms avant les adresses email sont transmis dans d'autres champs ?

En fait, le but pour moi est d'envoyer ces noms, sinon cela n'a pas grand intérêt de ne pas en tenir en compte dans la fonction SEND modifiée.

Merci.
deglingo10-Jun-2009/11:59:13+2:00
[JE N'ETAIS PAS IDENTIFIE]

OK, mais si SMTP n'utilise que l'adresse email au format "toto@toto.fr", comment cela se fait-il par exemple que l'on voit ceci au niveau de l'entête de certains emails que je reçois dans ma boite mail ?

.................
From : titi <toto@toto.fr>
To : tutu <tata@tata.fr>, test <test@test.fr>
.................

Les noms avant les adresses email sont transmis dans d'autres champs ?

En fait, le but pour moi est d'envoyer ces noms, sinon cela n'a pas grand intérêt de ne pas en tenir en compte dans la fonction SEND modifiée.

Merci.
Didec11-Jun-2009/13:36:55+2:00
Il y a le contenu de l'email (avec son entête) et il y a le dialogue avec le serveur SMTP pour l'envoyer.

Dans le protocole SMTP, le dialogue avec le serveur commence par une commande "FROM: <monemail@domaine.com>", suivi d'une ou plusieurs commande "RCPT TO: <destinataire1@sondomaine.com>" pour chaque adresse de destinataire. Ensuite, c'est le contenu du message précédé de son entête qui est envoyé.

C'est d'ailleurs pour ça que l'on peut mettre des destinataires invisibles (CCI ou BCC) : ces adresses sont énumérées dans les "RCPT TO:", mais n'apparaissent pas dans l'entête du message.

Dans le source de 'send, on trouve vers la fin :
...
    either only [
        address: copy address
        remove-each value address [not email? :value]
        message: head insert insert tail net-utils/export header-obj newline message
        insert smtp-port reduce [from address message]
    ] [
...

On voit que la fonction prend soins d'enlever de la liste des adresses (après l'avoir copiée) tout ce qui n'est pas un email!, puis l'envoi est fait par la ligne "insert smtp-port".

A noter que 'send utilise le protocole 'esmtp qui gère une éventuelle authentification de l'expéditeur. Mais à part ça, c'est comme le 'smtp.

Tu peux voir le fonctionnement de la fonction 'insert de ce protocole par "probe system/schemes/esmtp".
deglingo11-Jun-2009/14:26:49+2:00
Merci beaucoup pour l'explication.

Je résume :

si j'ai la liste d'expéditeur suivante :

[ ["toto" toto@aol.com] ["titi" titi@aol.com] ]

Je dois modifier la fonction SEND, de telle sorte qu'elle envoie les commandes suivantes (au niveau du dialogue avec le serveur SMTP avant l'envoi réel du message) :
+ RCPT TO: <toto@aol.com>
+ RCPT TO: <titi@aol.com>

Par-contre, lorsque le message est réellement envoyé, on peut avoir le champ "TO:" suivant (avec les noms) dans l'entête, malgré que l'on ait utilisé uniquement les adresses email dans le dialogue avec le serveur SMTP :

TO: toto <toto@aol.com>, titi <titi@aol.com>

C'est bien ça ?

Merci.
deglingo12-Jun-2009/10:39:10+2:00
J'ai trouvé un lien intéressant sur ce sujet, un patch pour le système d'envoi d'emails de Rebol 2 :

http://www.mail-archive.com/rebol-list@rebol.com/msg17428.html
(le patch : http://www.h-o-h.org/mail-patches-255.r )

Cela sera peut-être intégré à Rebol 3.0. D'ailleurs, qui sait où en sont les protocoles en Rebol 3 ?

Merci en tout cas pour les réponses.
Didec12-Jun-2009/16:11:39+2:00
Si on jete un oeuil au "help" de 'send :
>> help send
USAGE:
    SEND address message /only /header header-obj /attach files /subject subj /show

DESCRIPTION:
     Send a message to an address (or block of addresses)
     SEND is a function value.

ARGUMENTS:
     address -- An address or block of addresses (Type: email block)
     message -- Text of message. First line is subject. (Type: any)

REFINEMENTS:
     /only -- Send only one message to multiple addresses
     /header -- Supply your own custom header
         header-obj -- The header to use (Type: object)
     /attach -- Attach file, files, or [.. [filename data]]
         files -- The files to attach to the message (Type: file block)
     /subject -- Set the subject of the message
         subj -- The subject line (Type: any)
     /show -- Show all recipients in the TO field


En utilisant "send/only/show ..." rebol envoi un seul message avec tous les destinataires dans le champ "to:" de l'entête.

Dans ton cas, choisi :
- soit tu modifie 'send pour l'adapter à ton block de block d'adresses
- soit tu aplatis tes adresses dans un seul block ["titi" titi@aol.com "toto" too@aol.com ...]. Mais là, rebol va mettre dans le to : "to: titi, titi@aol.com, toto, toto@aol.com, ...". Pour l'éviter, il faut créer l'entête email du message avec les adresses dans le 'to et le passé à send avec /header.

Bref, y'a pleins de façon d'y arriver.

Login required to Post.


Powered by RebelBB and REBOL 2.7.8.4.2