SendMail // Envoi de mails doté d'un mode 'scriptable'

sendmail01.pngsendmail02.png
français anglais allemand   (pour contribuer, rendez-vous sur la page des fichiers de langues)

Avec un tel nom, il n'est pas bien difficile d'imaginer la fonction principale de SendMail... Mais cet outil est bien plus qu'un simple logiciel d'envoi de mails !

Une des principales caractéristiques de SendMail est qu'il peut être utilisé soit en mode interface graphique, soit en mode script. Je suppose qu'il n'est pas utile que je m'étende sur le premier, le second nécessite en revanche quelques explications : SendMail est "scriptable", ce qui signifie que l'on peut aussi l'utiliser en mode "ligne de commande", grâce à une syntaxe complexe.

Il est par conséquent possible d'utiliser SendMail en complément d'autres outils qui permettent d'exécuter des traitements externes. C'est le cas de LanAlertCenter (que vous pouvez aussi trouver sur ce site) mais aussi de nombreux outils du commerce, dans divers domaines.

Codes erreurs (ErrorLevel) retournés lors de l'utilisation en mode ligne de commande :

  • 0 : message envoyé avec succès
  • 1 : erreur dans les paramètres passés par l'utilisateur
  • 2 : erreur d'accès à l'ActiveDirectory
  • 3 : erreur de destinataire (groupes vides)
  • 4 : erreur de pièce jointe (introuvable)
  • 5 : erreur d'envoi du message (OSSMTP)

Une autre particularité de cet outil est qu'il permet d'envoyer des mails soit à des destinataires désignés manuellement, soit aux membres de groupes globaux de l'ActiveDirectory. Cette dernière possibilité est pratique puisqu'elle peut ainsi éviter d'avoir recours à la création de listes de distribution.

Cet outil n'aurait pas été complet s'il n'avait pas permis à l'utilisateur de pouvoir joindre des fichiers, cette fonctionnalité est par conséquent présente !

Enfin, je tiens à préciser que SendMail utilise le composant OSSMTP développé par OstroSoft que je remercie vivement.

ATTENTIONcet outil ne doit pas être utilisé pour effectuer du spam !

Télécharger Télécharger ce logiciel (version installeur)
Télécharger Télécharger ce logiciel (version portable ZIP) Note importante aux utilisateurs des versions portables

Date de création : 21/02/2005 @ 14:26
Dernière modification : 06/07/2020 @ 18:32
Catégorie : - Aide à l'administration
Page lue 156310 fois
 

Réactions à cet article

Réaction n°17 

par Matthieu le 10/02/2007 @ 12:13

Bonjour,
je suis assistant en comm' dans un théâtre et j'ai un listing de 4000 adresses mails - je dois effectuer périodiquement des envois (notre programme) à tous ces destinataires.
Votre logiciel peut-il répondre à mes besoins ?

Cordialement,
Matthieu

[réponse de damien, le 11/02/2007 à 10h42]

La version actuelle de mon SendMail ne vous sera hélas d'aucune aide, à moins que la liste de vos destinataires soit stockée dans un groupe global de l'ActiveDirectory ce qui me surprendrait.

Toutefois, je pense ajouter de nouvelles fonctionnalités à l'avenir : il sera possible de spécifier le nom d'un fichier (voire même une base de données) qui contiendra la liste des adresses... Ça n'est ni très compliqué, ni très long à ajouter mais je manque de temps alors n'attendez rien dans les prochains jours !


Réaction n°16 

par JeanBaptiste le 17/01/2007 @ 16:58

Une question toute bête : je n'arrive pas à placer des accents dans le corps du message, que ce soit en mode interactif ou en ligne de commandes.

Y a-t-il un encodage spécial à utiliser ?

Merci en tout cas pour cet outil simple et complet.

[réponse de damien, le 17/01/2007 à 19h29]

Cela doit provenir de la config du serveur SMTP que vous utilisez car je viens de faire le test avec celui de free et ça fonctionne correctement. Si je n'oublie pas, j'ajouterai la possibilité de sélectionner le charset dans la prochaine version de SendMail pour éviter ce genre de désagrément.


Réaction n°15 

par Math le 30/11/2006 @ 00:29

Re-bonjour,

Désolé... Je n'ai pas réellement cherché (ou plutôt j'ai eu la flemme de me creuser les méniges... même s'il ne fallait pas tant que cela)
En effet, le paramètre pour les fichiers joint n'est pas "/a" pour attachment ou "/j" pour joint mais "/f" pour fichier (ou file?)
Désolé pour le dérangement... et encore félicitation pour ce très bon soft.

[réponse de damien, le 30/12/2006 à 12h10]

Tout est dans la boite "A propos de", comme vous l'avez trouvé par vous même ! cligne

Au passage, merci pour les compliments... Pour info, une nouvelle version de l'outil est en cours de finalisation : elle intégrera la possibilité de paramétrer l'accès à un serveur SMTP sécurisé, et quelques modifications sur la syntaxe pour le mode ligne de commande.


Réaction n°14 

par Math le 30/11/2006 @ 00:04

Bonjour,

Le soft est génial et très simple... Je n'ai qu'un petit soucis, je n'arrive pas à joindre un fichier en ligne de commande...
Quel est la syntaxe en utilisant un script tel que celui décrit un peu plus bas ?

J'ai essayé le  " /a:C:\attach.txt " (sans les guillemets) mais cela ne fonctionne pas.

Merci pour votre réponse.

[réponse de damien, le 30/11/2006 à 12h06]

Voir réponse suivante (réaction n° 15)


Réaction n°13 

par Norbert le 14/10/2006 @ 17:52

Merci beaucoup pour cet utilitaire qui manque sous Windows cependant de nombreux serveurs de messagerie interdisent le relayage. En laissant l'émetteur Sendmail (par défaut), les messages n'arrivent pas. Sinon je pense vraiment inclure cet outil dans les batchs de sauvegarde.
Merci pour ce développement.cligne

[réponse de damien, le 17/10/2006 à 17h48]

Comme je l'ai écrit en réponse à la réaction de Raph, je vais ajouter la possibilité de s'authentifier auprès du serveur SMTP. Ça devrait donc régler le problème, je pense ? Quoi qu'il en soit, il est de toute façon conseillé de modifier l'identité de l'expéditeur par défaut dans la config... cligne


Réaction n°12 

par Raph le 12/10/2006 @ 14:43

bonjour

je cherche à envoyer dans le cors du message du texte formaté avec les basise HTML. Je dois mal m'y prendre car le destinataire recoit "la source" du message sans l'interpretation des balises.

exemple, au lieu de recevoir:

hello

le destinataire reçoi

<b>hello</b>

merci.

[réponse de damien, le 12/10/2006 à 19h43]

C'est tout à fait normal puisque tout les messages sont envoyés en mode texte. Dans ce cas, si le client de messagerie (et/ou le serveur SMTP) s'en tient à ce qu'on lui demande, il ne cherchera pas à interpréter le HTML et restituera le message au format de l'envoi donc en texte brut.

Dans la prochaine version, j'ajouterai donc une option (via une case à cocher certainement) pour que l'utilisateur puisse indiquer si le message doit être envoyé en texte ou en HTML (ou les deux car c'est aussi possible)...

De toute façon, j'ai déjà d'autres modifs de prévues : je pense particulièrement à l'ajout des champs username et password que l'utilisateur pourra renseigner si l'accès au serveur SMTP est sécurisé.


Réaction n°11 

par kun le 21/08/2006 @ 11:19

bonjour

j'ai installé le sendmail1.7 sur Windows 2003. Je utilise la fonction de php: mail() à appeller sendmail.exe. Dans le fichier php.ini, j'ajoute les lignes suivants:

[mail function]
;SMTP = localhost
sendmail_from = me@localhost.com
sendmail_path = c:sendmailsendmail.exe -t

et je n'arrive pas envoyer le email, et j'ai vu le message: "Aucun paramètre indiquant la liste des destinataires n'a été détecté... L'outil va être fermé."

pourriez-vous m'aider à résoudre cette problème? Merci!!

[réponse de damien, le 21/08/2006 à 11h48]

Ma réponse va être courte car SendMail n'est pas prévu pour l'utilisation que vous essayez d'en faire : ce logiciel n'est pas un serveur SMTP mais simplement un client d'envoi de messages qui peut être utilisé soit en mode GUI (interface graphique avec l'utilisateur) soit en mode batch.

Ce qu'il vous faut, c'est installer un serveur SMTP ou configurer votre PHP.ini pour y déclarer l'adresse du serveur SMTP de votre fournisseur d'accès.

Désolé de ne pas pouvoir vous aider davantage... pas ma faute


Réaction n°10 

par Will le 18/08/2006 @ 13:57

Bonjour,

j'essaye de faire un batch avec sendmail, mais je n'arrive pas a le faire fonctionner avec des variables. Est ce possible ou pas?

voici un exemple:

cd
c:
cd program files
cd Dipisoft
cd SendMail


cmd /c "date /t

set subject=Server start %date% %time%
set SMTPserver=XXXX

set sender=%COMPUTERNAME%
set recipient=toto@toto.com
set body=C:\Program Files\DipiSoft\SendMail\body.txt

sendmail.exe /m:"%body%" /u:"%recipient%" /t:"%subject%" /s:"%SMTPserver%" /e:"%sender%"

Je n'ai meme pas de message d'erreur...

Merci

William

[réponse de damien, le 18/08/2006 à 20h12]   Attention, cette réponse fait référence à une ancienne syntaxe de SendMail

Les variables sont gérées par le DOS (enfin l'émulation) et non par SendMail qui n'en reçoit que le contenu. Le problème vient en fait de 2 erreurs que tu as commises dans ton batch ; après correction, tu verras que ça fonctionne nettement mieux. La première erreur est qu'il ne faut pas utiliser le slash (/) en dehors de l'appel des paramètres, or, ce signe est présent dans le titre du message (la date en contient). La seconde erreur vient du fait qu'il ne faut pas utiliser les double-quote dans les paramètres.

Exemple qui fonctionne (en tout cas avec un autre titre que celui que tu définis dans ta variable) :

sendmail.exe /m:%body% /u:%recipient% /t:%subject% /s:%SMTPserver% /e:%sender%

Attention aussi à l'expéditeur : certains smtp (celui de Free notamment) n'acceptent pas d'envoyer des messages dont l'expéditeur n'appartient pas à leur "domaine"... Pour Free, par exemple, il faut donc que l'expéditeur contienne toujours @free.fr (même si l'adresse n'existe pas portnawak)...


Réaction n°9 

par FredH le 20/06/2006 @ 18:18

Bonjour,
Est-il possible de préciser le port d'accès au serveur SMTP? (port d'accès différent de 25)
Merci

[réponse de damien, le 21/06/2006 à 09h41]

Je n'y ai malheureusement pas pensé (idem dans Pang v2.5 bêta 5), il n'est par conséquent pas possible de stipuler un autre port que celui utilisé par défaut. Je fais la modif dès que possible et je vous préviens dès que la prochaine release est dispo.


Réaction n°8 

par lamycassebonbon le 15/06/2006 @ 10:56

slt j arrive pa a faire marcher send mail ='( je suis sur un serveur qui utilise microsoft exchange et je n ai pas tous les droits accés que faire ^^ languelangue erreur: "statut:connecting to smtp serveur" pas ma faute

[réponse de damien, le 15/06/2006 à 13h15]

SendMail ne s'appuie pas sur Exchange, il faut simplement le configurer en lui indiquant le nom du serveur SMTP. Je vous conseille donc de vous rapprocher de votre admin messagerie.