RE: Option d'expédition d'email

Suite au problème de non-fonctionnemennt du système de recommandation par e-mail sur online.fr, je me suis informé au service technique, qui me répond ce qui suit. Il renvoie vers une page (voir le contenu plus bas) qui est du chinois pour moi.
Quelqu'un peut-il m'aider à transférer ça en SPIP?
Patrick
---------------- Begin Forwarded Message ----------------
Date: 07/11 16:05
Received: 07/11 17:38
From: Support Online (M. Chemloul), mchemloul@pro.proxad.net
Reply-To: support@online.net
To: Patrick Albray, albray@actuabd.com
             support@online.net

Bonjour,

Effectivement, nous avons désactivé la fonction mail() du PHP et remplacé
celle-ci par la fonction email() pour des raisons de lutte anti spam, nous
vous indiquons toute la procédure sur l'adresse suivante:
http://online.net/support/fr/php/email.html

Cordialement

Mehdi Chemloul Assistant technique
_______________________________________
Support technique Online.net ®
www.online.net
Support technique: support@online.net
Support hébergement: hebergement@online.net

-----Message d'origine-----
De : Patrick Albray [mailto:albray@actuabd.com]
Envoyé : Tuesday, November 06, 2001 5:17 PM
À : support@online.net
Objet : Option d'expédition d'email

Bonjour.
Pour mon site actuabd.com, j'ai installé SPIP, qui fonctionne à merveille.
Une fonction de recommandation d'articles à un ami via un e-mail pose
cependant problème: alors que le site semble bien accepter l'expédition, le
destinataire ne reçoit pas le message.
Y a-t-il un bridage des e-mails expédiés par les pages web? Si oui, comment
le désactiver?
Bien cordialement,
Patrick

----------------- End Forwarded Message -----------------

Envoyer un mail en PHP

Nous avons rajouté la fonction spécialeemail dans Php. Cette fonction permet d'envoyer un mail (tout comme la fonction originale mail de Php), mais deux champs d'entête sont rajoutés:

* L'url originale du site envoyant le mail. Exemple: X-URI-Orig: /mon.domaine.net/email.php3
* L'indication de l'adresse:X-Abuse: abuse@proxad.net

Toute plainte d'utilisation abusive de cette fonction (spam...) entrainera des sanctions.

Email

email -- envoi de mail

Description

bool email(string From, string To, string Sujet, string Message, string [Reply To]);

email envoie un mail provenant de l'adresse From@votredomaine ` l'adresse To. Un seul destinataire est possible par envoi.

Exemple d'utilisation

<?php
$sujet="Test de mail";
$msg="Bonjour,\n ceci est un mail par php3";

if(!email("webmaster","a.remplir@aremplir.fr",$sujet,$msg)){
print "le mail n'a été envoyé<br>";
}
?>

Détail des paramètres

From: une adresse simple (sans le domaine). Le nom de domaine est automatiquement rajouté. Ce paramètre ne peut pas être vide.

To: adresse de destination. Ce champ ne peut pas être vide.

Sujet: sujet.

Message: corps du message. Limité à 100 Ko.

Reply-To: ce paramètre est facultatif. S'il est mis, il indique une adresse de retour. Cela doit être une adresse simple (sans le domaine). Le nom du domaine est automatiquement rajouté.

Comment traiter les mails invalides ?

Un mail invalide est un mail qui va revenir, par ce que par exemple le destinataire n'existe pas ou que son email est invalide. par defaut, les mails invalides sont perdus. Cependant, si vous souhaitez les recevoir, vous pouvez utiliser email() avec les param suivants et les recevoir dans la boite aux lettres qu'ils vous plaira.

Exemple :

email($From, $To, $Sujet, $Message, $ReplyTo,"Return-path: uneadresse@email");
c'est le dernier paramêtre qu'il faut modifier , en mettant par exemple "Return-path: mailing@titi.fr" si votre domaine est "titi.fr" et que vous avez crée un compte ou un alias "mailing" dans ce but précis.

En réponse à Patrick Albray <albray@actuabd.com>:

Suite au problème de non-fonctionnemennt du système de recommandation
par e-mail sur online.fr, je me suis informé au service technique, qui
me répond ce qui suit. Il renvoie vers une page (voir le contenu plus
bas) qui est du chinois pour moi.
Quelqu'un peut-il m'aider à transférer ça en SPIP?

J'ai vérifié dans SPIP 1.2.1, la fonction envoyer_mail() de spip fait bien appel
à email() si l'hébergeur est online. Le problème est donc dans mon script de
recommandation, il doit y avoir un truc que je n'initialise pas comme je
devrais. Je tacherais de debugger cela ce soir.

Une question, les autres fonctions d'envoi d'email de SPIP marchent correctement
non ? (envois de newsletter, suivi de forum etc.)

--
H.Lefebvre aegir@free.fr http://www.linuxfrench.net
LINUX : Ne jetez plus votre argent par les fenêtres !

J'ai vérifié dans SPIP 1.2.1, la fonction envoyer_mail() de spip fait bien appel
à email() si l'hébergeur est online. Le problème est donc dans mon script de
recommandation, il doit y avoir un truc que je n'initialise pas comme je
devrais. Je tacherais de debugger cela ce soir.

C'est ecrire/inc_version.php3 qui initialise la variable globale $hebergeur.

Question : on devrait passer cette discussion sur spip-dev, et voir comment
intégrer cette fonction dans la distrib standard, non ?

-- Fil

En réponse à Fil <fil@rezo.net>:

> J'ai vérifié dans SPIP 1.2.1, la fonction envoyer_mail() de spip fait
bien appel
> à email() si l'hébergeur est online. Le problème est donc dans mon
script de
> recommandation, il doit y avoir un truc que je n'initialise pas comme
je
> devrais. Je tacherais de debugger cela ce soir.

C'est ecrire/inc_version.php3 qui initialise la variable globale
$hebergeur.

Ben oui tu me l'avais déjà dit. Et j'ai bien ajouté cet include dans la v1.03 :

http://www.linuxfrench.net/fichier/mail-1.03.tgz

Question : on devrait passer cette discussion sur spip-dev, et voir
comment intégrer cette fonction dans la distrib standard, non ?

Ben ouais, c sûr... mais sauf qu'il y a encore pas mal de boulot :

Aujourd'hui, l'article est envoyé sous forme d'une page HTML attachée au mail.
Mais quand je vois à quoi ressemble la fonction email() de online, j'ai
l'impression qu'on ne peut pas toucher aux headers de l'email... donc pour les
mail en HTML c pas possible.

Il va donc falloir ajouter une option mail HTML/Mail texte, et que je trouve un
moyen pour transformer l'article brut (avec raccourcis typo) en texte ASCII. Sur
ce point, SPIP doit déjà avoir les fonctions qu'il faut vu que c'est fait dans
la newsletter.

De plus, faut que j'ajoute le "boundary index" pour ne pas avoir besoin de
cliquer sur la pièce jointe pour ouvrir la page HTML ...

--
H.Lefebvre aegir@free.fr http://www.linuxfrench.net
LINUX : Ne jetez plus votre argent par les fenêtres !

Il va donc falloir ajouter une option mail HTML/Mail texte, et que je trouve un
moyen pour transformer l'article brut (avec raccourcis typo) en texte ASCII. Sur

a priori c'est la fonction textebrut()

De plus, faut que j'ajoute le "boundary index" pour ne pas avoir besoin de
cliquer sur la pièce jointe pour ouvrir la page HTML ...

Le mail au format HTML, bof bof.

-- Fil

En réponse à Fil <fil@rezo.net>:

Le mail au format HTML, bof bof.

Ca c'est une question de choix.

Mon idée était de pouvoir proposer par email l'article complet (c'est à dire
avec les illustrations/images/schemas qui l'accompagne - sous forme de liens
bien sûr - ). C'est pour ça que je suis parti sur une idée de page HTML jointe.
De plus, sur LF.NET j'ai l'habitude de mettre souvent dans l'article des liens
sur d'autres articles qui traitent ou illustrent le sujet mentionné. En texte
brut, il n'y a plus ces liens.

J'ai codé ce truc en fonction de mes propres besoins, mais je ne suis pas
vraiment un promoteur des mails en HTML.

--
H.Lefebvre aegir@free.fr http://www.linuxfrench.net
LINUX : Ne jetez plus votre argent par les fenêtres !

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le mail au format HTML, bof bof.

C'est une fonctionnalité intéressante, et du reste, si le codeur
connait un minimum les RFC, il peut générer un mail en MIME multipart
: plain text et HTML...

Techniquement,
Pierre
______________________________________
mailto:pierre.thierry@ulp.u-strasbg.fr
PGP Key DH/DSS 0xD9D50D8A

-----BEGIN PGP SIGNATURE-----
Version: PGP 7.0.4

iQA/AwUBO+pm9MXtdyDZ1Q2KEQK0rQCg6BKi/JjwKL2bqvWuzR4k1E/VPx4AoJce
hAXh7PdKqFm5CX9+1sJWlIHx
=9J6E
-----END PGP SIGNATURE-----